Archive for May, 2012

Replicating MySQL AES Encryption Methods With PHP


  

At our company, we process a lot of requests on the leading gift cards and coupons websites in the world. The senior developers had a meeting in late October to discuss working on a solution to replicate the MySQL functions of AES_ENCRYPT and AES_DECRYPT in the language of PHP. This article centers on what was produced by senior developer Derek Woods and how to use it in your own applications.

Security should be at the top of every developer’s mind when building an application that could hold sensitive data. We wanted to replicate MySQL’s functions because a lot of our data is already AES-encrypted in our database, and if you’re like us, you probably have that as well.

Why Does Encryption Matter?

We will begin by examining why security and encryption matter at all levels of an application. Every application, no matter how large or small, needs some form of security and encryption. Any user data you have is extremely valuable to potential hackers and should be protected. Basic encryption should be used when your application stores a password or some other form of identifying information.

Different levels of sensitive data require different encryption algorithms. Knowing which level to use can be determined by answering the basic question, “Will I ever need access to the original data after it has been encrypted?� When storing a user’s password, using a heavily salted MD5 hash and storing that in the database is sufficient; then, you would use the same MD5 hashing on the input and compare the result from the database. When storing other sensitive data that will need to be returned to its original input, you would not be able to use a one-way hashing algorithm such as MD5; you would need a two-way encryption scheme to ensure that the original data can be returned after it’s been encrypted.

Encryption is only as powerful as the key used to protect it. Imagine that an attacker breaches your firewall and has an exact clone of your database; without the key, breaking the encryption that protects the sensitive data would be nearly impossible. Keeping the key in a safe place should always be priority number one. Many people use an ini file that’s read at runtime and that is not publicly accessible within the scope of the Web server. If your application requires two-way encryption, there are industry standards for protecting such data, one being AES encryption.

What Is AES Encryption?

AES, which stands for Advanced Encryption Standard, was developed by Joan Daemen and Vincent Rijmen. They named their cipher, Rijndael, after a play on their two names. AES was announced as the winner of a five-year competition conducted by the National Institute of Standards and Technology (NIST) on 26 November 2001.

AES is a two-way encryption and decryption mechanism that provides a layer of security for sensitive data while still allowing the original data to be retrieved. To do this, it uses an encryption key that is used as a seed in the AES algorithm. As long as the key remains the same, the original data can be decrypted. This is necessary if your sensitive data needs to be returned to its original state.

How Does It Work?

AES uses a complex mathematical algorithm, which we will explore later, to combine two main concepts: confusion and diffusion. Confusion is a process that hides the relationship between the original data and the encrypted result. A classic example of this is the Caesar Cipher, which applies a simple shift of letters so that A becomes C, B becomes D, etc. Diffusion is a process that shifts, adjusts or otherwise alters the data in complex ways. This can be done using bit-shifts, replacements, additions, matrix manipulations and more. A combination of these two methods provides the layer of security that AES needs in order to give us a secure algorithm for our data.

In order to be bi-directional, the confusion and diffusion process is managed by the secret key that we provide to AES. Running the algorithm in one direction with a key and data will output an obfuscated string, thus encrypting the data. By passing that string back into the algorithm with the same key, running the algorithm in reverse will output the original data. Instead of attempting to keep the algorithm secret, the AES algorithm relies on complete key secrecy. According to its cryptographic storage guidelines, OWASP recommends rotating the key every one to three years. The guidelines also go through methods of rotating AES keys.

PHP Mcrypt Specifics

PHP provides AES implementation through the Mcrypt extension, which gives us a number of other ciphers as well. In addition to the algorithm itself, Mcrypt provides multiple modes that alter the security level of the AES algorithm to make it more secure. The two definitions that we will need to use in our PHP functions are MCRYPT_RIJNDAEL_256 and MCRYPT_MODE_ECB. Rijndael 256 is the encryption cipher that we will use for our AES encryption. Additionally, the code uses an “Electronic Code Book� that segments the data into blocks and encrypts them separately. Alternative and more secure modes are available, but MySQL uses ECB by default, so we will be crafting our PHP implementation around that.

Why Should You Avoid AES In MySQL?

Using MySQL’s AES encryption and decryption functions is very simple. Setting up requires less work, and it is generally far easier to understand. Apart from the obvious benefit of simplicity, there are three main reasons why PHP’s Mcrypt is superior to MySQL’s AES functions:

  1. MySQL needs a database link between the application and database in order for encryption and decryption to occur. This could lead to unnecessary scalability issues and fatal errors if the database has internal failures, thus rendering your application unusable.
  2. PHP can do the same MySQL decryption and encryption with some effort but without a database connection, which improves the application’s speed and efficiency.
  3. MySQL often logs transactions, so if the database’s server has been compromised, then the log file would produce both the encryption key and the original value.

MySQL AES Key Modification

Out of the box, PHP’s Mcrypt functions unfortunately do not provide encrypted strings that match those of MySQL. There are a few reasons for this, but the root cause of the difference is the way that MySQL treats both the key and the input. To understand the causes, we have to delve into MySQL’s default AES encryption algorithm. The code segments presented below have been tested up to the latest version of MySQL, but MySQL could possibly alter their encryption scheme. The first problem we encounter is that MySQL will break up our secret key into 16-byte blocks and XOR the characters together from left to right. XOR is an exclusive disjunction, and if the two bytes are the same, then the output is 0; if they are different, then the output is 1. Additionally, it begins with a 16-byte block of null characters, so if we pass in a key of fewer than 16 bytes, then the rest of the key will contain null characters.

Say we have a 34-character key: 123456789abcdefghijklmnopqrstuvwxy. MySQL will start with the first 16 characters.

new_key = 123456789abcdefg

The second step taken is to XOR (⊕) the next 16 characters in the value in new_key with the first 16.

new_key = new_key ^ hijklmnopqrstuvw
new_key = 123456789abcdefg ^ hijklmnopqrstuvw
new_key = Y[Y_Y[YWI

Finally, the two remaining characters will be XOR’d starting from the left.

new_key = new_key ^ xy
new_key =  Y[Y_Y[YWI ^ xy
new_key = !"Y_Y[YWI

This is, of course, drastically different from our original key, so if this process does not take place, then the return value from the decrypt/encrypt functions will be incorrect.

Key Padding

The second major difference between Mcrypt PHP and MySQL is that the length of the Mcrypt value must have padding to ensure it is a multiple of 16 bytes. There are numerous ways to do this, but the standard is to pad the key with the byte value equal to the number of bytes left over. So, if our value is 34 characters, then we would pad with a byte value of 14.

To calculate this, we use the following formula:

$pad_value = 16-(strlen($value) % 16);

Using our 34-character example, we would end up with this:

$pad_value = 16-(strlen("123456789abcdefghijklmnopqrstuvwxy") % 16);
$pad_value = 16-(34 % 16);
$pad_value = 16-(2);
$pad_value = 14;

MySQL Key Function

In the previous section, we dove into the issues surrounding the MySQL key used to encrypt and decrypt. Below is the function that’s used in both our encryption and decryption functions.

function mysql_aes_key($key)
{
	$new_key = str_repeat(chr(0), 16);
	for($i=0,$len=strlen($key);$i<$len;$i++)
	{
		$new_key[$i%16] = $new_key[$i%16] ^ $key[$i];
	}
	return $new_key;
}

First, we instantiate our key value with 16 null characters. Then we iterate through each character in the key and XOR it with the current position in new_key. Since we’re moving from left to right and using modulus 16, we will always be XOR’ing the correct characters together. This function changes our secret key to the MySQL standard and is the first step in achieving interoperability between PHP and MySQL.

Value Transformation

We run into the last caveat when we pull the data from MySQL. For the data encrypted with AES, the padded values that we added before encryption will remain tacked onto the end after we decrypt. In general, this would go unnoticed if we were only fetching the data in order to display it; but if we’re using any of basic string functions on the decrypted data, such as strlen, then the results will be incorrect. There are a couple ways to handle this, and we will be removing all characters with a byte position of 0 through 16 from the right of our value since they are the only characters used in our padding algorithm.

The code below will handle the transformation.

$decrypted_value = rtrim($decrypted_value, "\0..\16");

Throwing all the concepts together, we have a few main points:

  1. We have to transform our AES key to MySQL’s standards;
  2. We have to pad the value that we want to encrypt if it’s not a multiple of 16 bytes in size;
  3. We have to strip off the padded values after we decrypt the encrypted value from MySQL.

It’s advantageous to segment these concepts into components that can be reused throughout the project and in other areas that use AES encryption. The following two functions are the end result and perform the encryption and decryption before sending the data to MySQL for storage.

MySQL AES Encryption

function aes_encrypt($val)
{
	$key = mysql_aes_key('Ralf_S_Engelschall__trainofthoughts');
	$pad_value = 16-(strlen($val) % 16);
	$val = str_pad($val, (16*(floor(strlen($val) / 16)+1)), chr($pad_value));
	return mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $val, MCRYPT_MODE_ECB, mcrypt_create_iv( mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB), MCRYPT_DEV_URANDOM));
}

The first line is where we get the MySQL encoded key using the previously defined mysql_aes_key function. We are not using our real key in this article, but are instead paying homage to one of the creators of OpenSSL (among other technologies that he’s been involved in). The next line determines the character value with which to pad our data. The last two lines perform the actual padding of our data and call the mcrypt_encrypt function with the appropriate key and value. The return of this function will be the encrypted value that can be sent to MySQL for storage — or used anywhere else that requires encrypted data.

MySQL AES Decryption

function aes_decrypt($val)
{
	$key = mysql_aes_key('Ralf_S_Engelschall__trainofthoughts');
	$val = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $val, MCRYPT_MODE_ECB, mcrypt_create_iv( mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB), MCRYPT_DEV_URANDOM));
	return rtrim($val, "\0..\16");
}

The first line of the decrypt function again generates the MySQL version of our secret key using mysql_aes_key. We then pass that key, along with the encrypted data, to the mcrypt_decrypt function. The final line returns the original data after stripping away any padded characters that we might have used in the encryption process.

See It In Action

To show that the encryption and decryption schemes here do in fact work, we must exercise both encryption and decryption functions in PHP and MySQL and compare the results. In this example, we have integrated the aes_encrypt/aes_decrypt and key function into a CakePHP model, and we are using Cake to run the database queries for MySQL. You can replace the CakePHP functions with mysql_query to obtain the results outside of Cake. In the first group, we are encoding the same data with the same key in both PHP and MySQL. We then base64_encode the result and print the data. The second group runs the MySQL encrypted data through PHP decrypt, and vice versa for the PHP encrypted data. We’re also outputting the result. The final block guarantees that the inputs and outputs are identical.

define('MY_KEY','Ralf_S_Engelschall__trainofthoughts');

// Group 1
$a = $this->User->aes_encrypt('test');
echo base64_encode($a).'';

$result = $this->User->query("SELECT AES_ENCRYPT('test', '".MY_KEY."') AS enc");
$b = $result[0][0]['enc'];
echo base64_encode($b).'';

// Group 2
$result = $this->User->query("SELECT AES_DECRYPT('".$a."', '".MY_KEY."') AS decc");
$c = $result[0][0]['decc'];
echo $c."
"; $d = $this->User->aes_decrypt($b); echo $d."
"; // Comparison var_dump($a===$b); var_dump($c===$d);

Output

The snippet below is the output when you run the PHP commands listed above.

L8534Dj1sH6IRFrUXXBkkA==
L8534Dj1sH6IRFrUXXBkkA==
test
test
bool(true) bool(true)

Final Thoughts

AES encryption can be a bit painful if you are not familiar with the specifics of the algorithm or familiar with any differences between implementations that you might have to work with in your various libraries and software packages. As you can see, it is indeed possible to use native PHP functions to handle encryption and decryption and to actually make it work seamlessly with any legacy MySQL-only encrypted data that your application might have. These methods should be used regardless so that you can use MySQL to decrypt data if a scenario arises in which that is the only option.

(al)


© Chad Smith & Derek Woods for Smashing Magazine, 2012.


Publication Standards Part 2: A Standard Future

Publication Standards Part 2: A Standard Future

This is the second part in a two-part essay about digital publishing. You can read part 1, “The Fragmented Present,” here.

It’s never been a better time to be a reader. We’re partly defined by the things we read, so it’s good to have an embarrassment of enriching, insightful writing on our hands. We hold hundreds of books in lightweight, portable e-readers. We talk to authors over Facebook and Twitter. Thousands of public domain works are available for free, and blogs afford us a staggering array of high-quality writing. Long-form journalism and analysis is experiencing a minor renaissance, and we’re finding new ways to discuss the things we read.

It’s never been a better time to be a writer. Anybody can publish their thoughts. Anybody can write a book and publish it on demand. Authors can reach out to readers, and enriching, fulfilling conversations can blossom around the connections we develop out of the things we make.

But we have considerable work ahead. Our ebook reading and creation tools are primitive, nascent, born of necessity, and driven by fear. We have one-click ePub to Kindle conversion, but it’s buried in a clumsy, bloated, cross-platform application that screams for improvement. We have page layout software, but it saves natively in a proprietary format, and it exports ePub files almost entirely as a set of <span> tags, rather than proper, semantic HTML. (Think <span class="header"> instead of <h1>.) ePub may be saved as a zip file, but Mac OS X’s default zip archiver doesn’t handle ePub’s mimetype correctly, requiring a separate application. And there is still, as of this writing, no native reader for Mac OS X that’s up to both iBooks’ design standards and ePub’s native spec. (When creating ePub, my workflow involves uploading a new ePub to Dropbox, opening the Dropbox app on my iPad, and sending the ePub to iBooks—every time I want to view a change.) There is so much work yet to be done to make publishing easier. Farming out ePub development—overwhelmingly the current accepted solution—isn’t the answer.

Does this madness look familiar?

Even if writers know HTML, they face many more hurdles. Writing now generates less income for people, but it costs the same to produce. The publishing landscape of 2012 looks similar to the music landscape of 1998, crossed with the web designs of 1996: it’s encumbered by DRM and proprietary formats, it treats customers as criminals, it’s fragmented across platforms, and it’s hostile to authors who want to distribute their work through independent channels. Libraries are almost ignored wholesale with every new development around DRM and pricing. Publishers take DRM on faith, in the face of considerable evidence that DRM hurts both readers and sales.

At the beginning of the aughts, major record labels weren’t behaving any differently than publishers are now. And for almost a decade, one browser maker held back technical progress in web development by not fully, reliably supporting web standards: this is no different than the Kindle entirely ignoring the recommendations of the International Digital Publishing Forum, despite Amazon being a paying member.

In 1997, the Web Standards Project was founded to encourage browser makers and web developers to embrace open standards. We need a similar advocacy organization for publishers, e-reader manufacturers, and readers. We need a Web Standards Project for electronic publishing.

Self-publishing and its discontents

Before the web, self-publishers bankrolled their own operations. Edward Tufte took out a second mortgage on his house to self-publish The Visual Display of Quantitative Information in 1982, because no printer could meet his quality standards. But even after getting the copies made, there was no way for self-publishers like Tufte to effectively market their work. You could take out an advertisement in a newspaper or magazine, or you could call bookstores and see if they might be interested, but in 1982, you didn’t have the luxury of a website or email account.

These days, anybody can publish their own work. You can go through a print-on-demand service like Lulu. You can connect with readers via Kickstarter to handle upfront printing costs. You can set up a website and sell copies of your work through Fetch, Shopify, and Digital Delivery. You can print postage with Endicia. You can sell in person with Square. You can establish subscriptions with Memberly.

In large part, we—those who help craft the web—have embraced such a model. The Manual is a beautifully crafted independent journal of the “whys” around design. 8faces is a semi-annual typography magazine. Five Simple Steps covers all manner of design techniques. I run a quarterly journal for long essays called Distance, and I set up the whole thing to function over the internet. Finally, partly because of this very site, A Book Apart connects with like-minded readers. And more publications come by the day. Codex. Bracket. Kern & Burn. As web designers learn the details of print production, there will only be more publications like this. (I can’t speak for others, but I find a tremendous amount of pride in making physical goods, after so many days of crafting intangible things for the web.)

Many self-published projects receive less marketing and advertising, but they foster a greater intimacy with audiences, provide better customer service, and require more self-promotion. Self-publishers hustle.

And while I’ve focused mostly on design-related projects, the notion of connecting with readers over the internet is genre-agnostic. Anybody can do this—and writers are becoming empowered to take publishing into their own hands.

How must publishers evolve?

There is still a role for publishers, though, if they adapt to the new landscape. What are the problems and trade-offs? Ebook cover design would probably change, for instance, now that it doesn’t need to stand out on a bookstore shelf. And while editorial increases in importance, frequently differentiating quality writing from stuff that’s written alone, marketing would change substantially. An ebook author probably doesn’t need to do a book tour. Print and display ads will be less frequent. Mailing lists will be more frequent. Publishers that understand the trade-offs and shifts in their work will be able to nimbly respond to the internet before the internet does their work for them.

Where are the standards?

When it comes to ebooks, we’ve abandoned the standards we claim to embrace. In numerous conversations that I had while researching this article, many self-publishers said that it simply isn’t worth publishing their work in ePub—and the only people who were excited about ePub hadn’t tried to publish in ePub yet. It doesn’t have the same reach as other formats, and its features are implemented piecemeal, meaning it’s hard to ensure a consistent typographic standard from device to device.

Often, publishers start by producing a PDF in a tool like InDesign, and there simply isn’t an effective way to translate PDF layout and typography into HTML for ePub. As editor Allen Tan told me, “our workflow is pretty digital, it’s just that our output isn’t digital.” Lack of typeface support and robust layout tools are major pain points, and often publishers simply export their proof PDF and call it the digital edition. When people do make ePub files, they usually farm the task out, saying it’s too painful to create in-house. These are hacks, and they indicate a deeper problem.

But as web workers, we’re used to responding to such concerns better than other industries, and we’re uniquely equipped to discuss publishing issues from an outsider’s perspective. The web is typography; books are typography; ePub, the prevailing standard in books, is HTML, CSS, and XML, saved as a Zip file. Allen Tan added: “the advantage of having ePub as a standard is that any improvements with ePub can be pulled back into the web, because they use a common base.” We can provide deep, meaningful, constructive change in both ePub and the publishing industry if we apply what we’ve learned in our struggles with HTML and CSS.

So what have we learned?

Standards and disruption

In 1997, competition between Netscape and Internet Explorer drove a handful of trailblazing web workers to found the Web Standards Project, which called for browsers to adopt the open standards of HTML and CSS. These days, we debate the fragmentation of the landscape, calling for cross-platform solutions and expressing worry when browser makers independently develop their own capabilities.

Meanwhile, the IDPF—essentially the W3C equivalent for books—has developed and released the ePub specification. But tools to create ePub efficiently haven’t kept up, there’s no way to semantically develop a book in page layout software, the largest e-reader company doesn’t follow the ePub spec at all, and no e-reader on the market fully supports the latest published spec, ePub 3.0. The IDPF has moved out of sync with the realities of the e-reading market—not unlike when the W3C released XHTML, which was out of step with the realities of the browser market. Publishers have taken to painstakingly developing digital bundles with many different formats, one for each potential e-reader—not unlike when websites were “best viewed in Netscape 4.0 at 800x600 resolution.” What did we learn fourteen years ago, and why are we letting this happen again?

Because the largest publishers make us. Even though DRM has been proven, time and time again, to be hostile to both consumer and publisher, almost all e-books sold today are encumbered by it. But media distribution usually runs this course: DRM is enforced out of fear, and in the face of flagging sales and rampant piracy, the industry moves toward open standards. On the iTunes Store, FairPlay gave way to unencumbered MP3s. With movies, DivX died; DRM-cracked DVDs flourished. Creators will only gain control of their industry if they stand up for themselves.

Likewise with web standards, and now publishing standards: we can only kill off Amazon’s DRM if we become fierce advocates for open standards and vote with our wallets until things are made right. And proprietary tweaks to ePub, like Apple’s iBooks Author spec, are not unlike the approach that WebKit takes to its own proprietary -webkit styles; such an approach can be refined and reformed if we approach it with the same perspective. As the W3C had WaSP in the late nineties and early aughts, the IDPF needs its own advocacy watchdog, too. We’re used to the web disrupting many industries, and it’s time to embrace the turbulence around publishing, for better and worse. The only alternative is to abolish the internet, and we’d rather not see that happen.

The Publication Standards Project

That’s why, along with this issue of A List Apart, and with the support of many great people, I’ve launched the Publication Standards Project, which has the following long-term goals:

  • Fully featured, native support of the most modern ePub standard in all ebook reader software. You can support your own proprietary format in tandem, but if your reader does not fully support ePub 3.0, we will continue to advocate for you to do so.
  • Support of the most modern ePub standard in creation tools. Same as above: your book-making software should write semantically correct markup, even if it also exports to other publishing formats.
  • Improving the existing ePub standard. It is not perfect, and it needs to be improved. In the long run this might result in a fork of the specification—essentially a WHATWG equivalent—but for now we’ll begin working with the IDPF.
  • Page layout software that exports semantically correct, standards-compliant HTML and CSS code. Software developers, take heed: after speaking with many publishers and independent writers, I've concluded that this market is wide open right now. If you build a better mousetrap, it will do very well by you.
  • Abolishing DRM in all published writing. DRM has provably aided piracy, and it works against the customer by assuming they’re a thief. Removing DRM, on the other hand, has been proven to increase sales in many situations.
  • An end to gatekeeper standards. As power consolidates in the hands of a few booksellers, they have a decreasing motivation to accept radical viewpoints or contentious, “banned” books. Rejecting a book because it contains a third-party link may fulfill the letter of Apple’s law, but it violates the spirit of open access, sharing, and healthy competition—and it could arguably be interpreted as an act of censorship.
  • Simpler, more humane library lending policies. We desperately need libraries to support under-served communities without pervasive broadband. Refusal to simplify pricing models, and refusal to inter-operate among e-readers and lending systems, means that libraries will simply opt out of ebook adoption entirely—something they can’t afford to do if they’re going to stay relevant in the future.

At least in the short term, we’ll accomplish it in these ways:

  • Education. Many people don’t know everything about the issues, and how they parallel our prior technological progress in other areas. Publishers don’t understand the new mindset that readers are in, readers don’t understand why publishers won’t join the 21st century, writers don’t understand why readers won’t pay anymore, and writers don’t want publishers to have full editorial control. Very few people have a clear sense of all the competing publishing formats and why such fragmentation is a bad thing. And we still don’t have the right tools to build the best writing that we can, share it with others, and constructively discuss it. At the Publication Standards Project, we’re ridiculously passionate about these issues, and we’d love you to join the conversation.
  • Outreach. Part of the Publication Standards Project is a call to action: sign on to our goals as a reader, writer, and publisher, and resolve to work to improve the way that we communicate with one another. Another part is lobbying: we need to collectively advocate for e-reader manufacturers, publishing software developers, booksellers, and publishers to adopt better practices in the way they work. Everyone who reads this article is capable of action, and nobody else will stand up in your place.
  • Your ideas. We know we haven’t thought of everything, and the best thing you can do to help is to volunteer. Get in touch with us and tell us about your vision for this; it cannot happen in a vacuum, and it cannot come from a handful of people. We will adapt to new developments in the publishing landscape, and there’s no way to tell exactly how things will play out.

Concluding thoughts

We discussed ePub’s promise in 2010, but we’ve only regressed since then. Our prospects look dim these days, but this is an opportunity for all of us to assert control over the way these standards are adopted. Right now, the landscape is dismal. But we solved these sorts of problems once. We can do it again. You can help. We set up a site at http://pubstandards.org. Our Twitter name is @pubstn. We’d like you to sign up for our mailing list so we can begin to take action with your help.

The internet was built on the foundation of free and open access to information, and it’s time for us to act like it. This isn’t going to happen by going to the companies and reforming them from the inside. It’s going to happen by building a new movement that can reform the older model. If we’re going to follow standards and openness in the things we publish, it starts with every single one of us, on every side of the table. Otherwise, we may end up with the walled gardens that we deserve. 

Translations:
Basque
Italian


RSS readers: Don't forget to join the discussion!


Publication Standards Part 1: The Fragmented Present

ebooks are a new frontier, but they look a lot like the old web frontier, with HTML, CSS, and XML underpinning the main ebook standard, ePub. Yet there are key distinctions between ebook publishing’s current problems and what the web standards movement faced. The web was founded without an intent to disrupt any particular industry; it had no precedent, no analogy. E-reading antagonizes a large, powerful industry that’s scared of what this new way of reading brings—and they’re either actively fighting open standards or simply ignoring them. In part one of a two-part series in this issue, Nick Disabato examines the explosion in reading, explores how content is freeing itself from context, and mines the broken ebook landscape in search of business logic and a way out of the present mess.

Collection of the Coolest Uses of the Google Maps API


  

Without a doubt Google Maps has opened new windows to our world and enabled us to look at ourselves a little differently. The ingenuity of 3rd party developers using the Google Maps API has created a dazzling array of apps and tools that range from the brilliant to the bizarre. Here are 30 of the coolest waiting for you to check them out.

Cool Uses of Google Maps API

The Wilderness Downtown
Fantastic and revolutionary, Arcade Fire’s new music video The Wilderness Downtown enables web users to enter their childhood address to have Google Map images of the area appear within director Chris Milk’s film, creating instant nostalgia.

Tweeted Trips
Simply by tweeting, Twitter users can generate a map of their journey, whether it is a vacation, road trip or cycle tour, enabling family and friends to chart their progress.

Zombie Outbreak Simulator
Now available as an iPhone app, Zombie Outbreak Simulator places you in peril within a Google Map of your area overrun by marauding zombies. Kill the zombies to save your neighbours, except of course the one who won’t give your ball back.

Disney’s Giant Steps
One the kids will love, this Google Maps based app lets you extend an invitation to beloved Disney character Goofy, who runs right up your street to the door of your house.

MapsTD
This highly addictive tower defence game involves placing defence towers to stop invading attackers from overrunning a world generated using 8-bit map tiles and the Google Maps API.

Plane Finder
Plane Finder is a rather ingenious real-time plane tracking tool that presents a clear view of the congested skies. It now also features cloud and weather layer viewing options.

Phresheez
The smartphone app for skiers, cyclists, runners and hikers who not only want to chart their runs and routes on Google Maps, but have beautifully generated animations of them created to impress their friends.

Old Maps Online
Cartography and history enthusiasts around the globe can now get access to historical maps published online by libraries, seeing the world through the eyes of those who came before us.

Streetviolence.org
Launched by UK charity Witness Confident, Streetviolence.org is an interactive map allowing victims of muggings and assaults in London to pinpoint where the crime took place, alerting people to risky areas and enabling possible witnesses to come forward with information.

CNN iReport Map
More and more news stories and footage are being sent in by citizens. The CNN iReport Map identifies where stories came from, what has occurred and enables people to share information about the events.

Floating Shiny Knot
Choosing a chrome or glass finish, the viewer is treated to a wonderfully reflective shiny knot hovering through a Street View map, distorting the world around it in its mercury-like mirror.

Resource Intensity of Cities
Focused solely on cities, this tool lets you hone in on any area of America’s cities to find out where over population is running rife.

Leafly
Yes, this is real. Leafly enables people to find the finest marijuana dispensaries and strains available. The tool Cheech and Chong wished they had in their heyday, it’s all for medicinal purposes, of course.

Weather Hopper
Nothing can wreck a vacation like poor weather. However, use this Google Map app and you will be prepared for all conditions as it gives a weather history for every inputted region imaginable.

KESM Brain Atlas
Completely taking anything location related out of the equation, the boffins of Texas A&M University’s Brain Networks Laboratory instead used the Maps interface to capture brain scans of mice, in incredible detail. Who’d-a-thunk-it!

Startup Weekend Events
In today’s economic climate budding entrepreneurs need all the help they can get. This innovative tool identifies weekend events where businesspeople can discuss their startups and seek advice.

Show Us Your Earth Hour 2012
The World Wildlife Fund has created a Google Map use enabling eco-friendly people around the globe to share pics and vids of the action they took to celebrate Earth Hour. A green way to Google.

Mapping Wikipedia
Tracemedia and the Oxford Internet Institute have teamed up to create the Mapping Wikipedia project, indicating the source of all geotagged Wikipedia articles on an interactive map.

Save the Rain
There are many environmentally friendly Google Map tools, revealing the laudable ethical stance of many developers. Save the Rain helps homeowners work out how much rainwater can be reaped from their roof.

CEO – Heatmap
Another superb example of Google Maps being used to help combat climate change is the national CEO – Heatmap created by the UK’s Department for Energy and Climate Change, which helps people develop low carbon heat projects for their buildings.

AllTrails
More than 45,000 hiking, skiing, biking and snowboarding trails have already been mapped out using the innovative AllTrails tool. Join the thriving community of 200,000+ members to share your daring routes and runs.

London Typographica
Graphic design geeks will go mad for this awesome iPhone app enabling people to make a photographic record of publicly available typography adorning the streets of the big smoke.

Moet Rose
Wanting to show your other half an epic display of your undying love, but don’t quite have the resources or effort to do it? That’s where this nifty little tool from Moet comes in handy. Using Street View, you can simply pick any location in the world and tag it up with slushy gold tags and squiggles.

State of Chaos
Whether you’re an avid fan of Michael Bay, or you just hate the place you live; watch your place of residence get blown to smithereens in this thrilling, no holds barred joyride of a customized action flick.

First Peoples Language Map of British Columbia
Discover and learn about the first languages ever spoken by all 203 First Nation communities of British Columbia, as well as how many people still communicate in the native tongue.

Minefold
Minecraft continues to be an amazingly popular game. Minefold not only provides 10 hours a month free through their on demand servers, they also enable players to make an interactive Google Map of their Minecraft world.

Global Conservation Maps
This tool uses the Google Maps API to show us how much is left of our worlds resources as a way to illustrate where the world should be focusing its efforts in preserving the environment.

We Tell Stories: “The 21 Steps� by Charles Cumming
An example of innovative digital fiction using Google Maps, this first of six stories sees Charles Cumming rewrite John Buchan’s The 39 Steps. Check out the other great stories.

Earthquakes in the Last Week
Utilizing the data from Google’s news, blog and video search options, this tool does pretty much exactly what it says on the tin. See where earthquakes have cropped up in the last week, anywhere in the world.

Map of the Dead
At last, a Google Map detailing how to survive a zombie apocalypse (it’s on its way). Indicating zombie danger zones circling your abode, this fun tool helps you keep your brains. Out of my way!

Meograph
While it’s still in beta, Meograph is essentially a four-dimensional storytelling experience that integrates videos, photos and imagery with Google Earth and Street View. It will be a great tool for learning about news and historical events, and, eventually, will offer the ability for everyone to indulge in pure narcissism by creating their own Meographs. Expected to open up for registration by this summer.

Fin

It’s impressive just how customizable the Google Maps API really is, especially in relation to KESM’s brain mapping example. While the Maps API can be a great tool for creating an interactive viral marketing campaign, it’s real benefit is evident in the education sector, as well as its use for non-profit purposes; especially in environmental issues.

If you’ve come across any other ingenious uses of the Maps API on your travels then please share them in the comments section.

(rb)


How To Choose The Right Face For A Beautiful Body


  

What is it that makes a typeface into a text font, instead of a font for larger sizes? The answer differs slightly, depending on whether one aims for print or Web-based environments.

Nevertheless, there are certain features that most good text faces have in common. Familiarity with these helps to select the right fonts for a given project. This article presents a few criteria to help the process along.

Some of today’s most successful typefaces were designed to excel in very specific areas of use: Frutiger grew out of airport signage, Georgia and Verdana were among the first mass-market fonts created for on screen reading, FF Meta was conceived as a telephone book face, and even the Stalwart Times New Roman was tailored for the pages of the London Newspaper The Times. Many typefaces are also often fine-tuned for using in certain sizes.

It should be noted that in this article, when “text� is mentioned, it is in discussion of body text, or running text (in other words, text at a similar size to what you are probably reading right now, rather than much larger sized words).

Features Of A Good Text Typeface

The features outlined in this article are those that type designers keep in mind while developing new typefaces. It’s important to realize that these aspects of typeface design are different from the text treatment a graphic designer employs while laying out a book page or website—no matter what a typeface’s inherent rhythm and niceties are, setting a text is still something that must be done with great care in respect to readability. There are problems that good fonts themselves cannot solve—whether or not a text sings on the page or screen depends on factors like the width of the column, the amount of space between each line, the contrast between the foreground/background and a number of other factors.

Different versions of the Bembo design
Above, Bembo over the years: this typeface was a favorite of many book designers throughout the 20th century. At the top of the image is a scan of the original Bembo typeface, printed with letterpress. The digital version of the typeface—Bembo, seen in the middle, is too light for ideal text in print. A newer digitization was published in 2002—Bembo Book, seen at the bottom. This font is much darker, and is a better representation of the original Bembo idea. However, the middle version is still very elegant, and may still be used well in sub-headlines.

Every typeface has its own inherent rhythm, created by the designer who made the font. With typefaces that are intended for use in body text, it is primarily this rhythm that will make the typeface readable. But there are additional factors that go into the making of a good text face: the space between the letters, the degree of contrast in the letters’ strokes, as well as the x-height and relative size of the whitespace inside of the letters. Not every typeface that works well in text will apply all of these factors in the same way, but all good ones will have many of these features in common.

1. Stroke Contrast

When it comes to typefaces, the term “monolinear” is used to describe letters that appear to be designed with a consistent stroke thickness. Monolinear typefaces are low-contrast typefaces. Stroke contrast can be a helpful feature in small text sizes, but it is not paramount that a text face appears to be monolinear. Indeed, many newspapers employ high-contrast fonts; the question that must be considered is just how thick the thin strokes in high-contrast typefaces are.

Sample Layout in the Cycles typefaces

The images in this section show different ends of the contrast spectrum: the Cycles types shown above are serifed, with a good deal of contrast. Sumner Stone’s Cycles typeface is an excellent choice for book design as its letter forms combine clarity with a rather high degree of stroke contrast and an almost timeless appearance. Five separate “versions” of Cycles are used in the above image; each block of text is set in its own optically-sized font.

Below, Avenir Next—also a great text face—is from another style of letter, and has very little contrast. I wouldn’t split good typefaces up into good contrast and bad contrast groups. Rather, some typefaces have a degree of contrast—be it too high or too low—that makes them less suitable for use in text. There is no definite rule on how much or how little contrast impacts a text face’s legibility. However, it is clear that both no contrast and excessive contrast can have adverse effects.

Text in Planeta and Avenir Next

Geometric sans serif typefaces often appear to be monolinear stokes; their letters seem not to have any stroke contrast. In order to achieve this effect to the max, type designers have always made slight optical corrections. To look monolinear, a geometric sans needs some degree of thinning. In the image above, Planeta (left) is compared with Avenir Next (right). Both typefaces are more recent additions to the geometric sans category than stalwart faces (like Futura), or classic display designs (like ITC Avant Garde Gothic). Planeta has no visible stroke contrast, which must be a conscious decision on the part of its designer. While this does give it a unique style, it makes the face less suitable for text than Avenir Next, which is actually not as monolinear as it appears at first glance.

2. Optical Sizes

Text in Garamond Premier Caption and Display Sizes

The Garamond Premier typeface family features different versions of each font. These variants are tailored for use in a certain size range. Above, the Display font (left) is compared with the Caption font (right). The Display font is optimized for texts that will appear in very large point sizes, while the Caption font has been optimized for very small text.

In her book Thinking with Type, Ellen Lupton writes:

“A type family with optical sizes has different styles for different sizes of output. The graphic designer selects a style based on context. Optical sizes designed for headlines or display tend to have delicate, lyrical forms, while styles created for text and captions are built with heavier strokes.�

The intended size of a text should be considered when selecting the typeface: is the typeface you want to use appropriate for the size in which you need to set it? Does the family include optical sizes (that is, different versions of the typeface that are tailored specifically for use at different sizes)? As with each of the factors mentioned in this article, the size at which a font is set can make or break your text.

In many ways, it is easiest to see the qualities necessary for good text faces by comparing potential selections with “displayâ€� faces. Like the term “text,â€� “displayâ€� refers to the size at which a specific font may best be used. In print media, as well as in many screen and mobile-based applications, the term “displayâ€� is often analogous with “headlines.â€� If a typeface that you are considering looks more like something that you might like to use for a headline, it won’t be the best choice for body text.

In the comparison image below, the Garamond Premier Display font has a tighter rhythm than the Caption font—not as much space is necessary between letters when they are set in large point sizes. Why should one consider type families with optical sizes, anyway? Well, as users bump up the point size of digital fonts, the space between letters increases in equal proportion. This inter-letter space slowly becomes too large, and makes a text feel like it is breaking apart. When a proper text font is set large, it may require some tighter tracking. Typeface families that offer optically-sized variants of their styles play a helpful role here.

Text in Garamond Premier Caption and Display Sizes

In the image above, the first line of text—“Stanley Morisonâ€�—is set in the Garamond Premier Display font, while the lines of text underneath it are set in Garamond Premier Caption. Each font is balanced for its size, and they also harmonize well with one another. In another image (below), these fonts have been switched: the headline is now set in the Garamond Premier Caption font, and the text in the Garamond Premier Display. The letters in the Caption face look too clumsy when they are set so large, while the Display fonts’ letters appear uncomfortably thin in a “textâ€� setting.

Text in Garamond Premier Caption and Display Sizes

The amount of stroke contrast visible in caption-sized fonts is much lower than in display-sized fonts. If the Garamond Premier Display font (from the above image) was rendered in a smaller point size, its thin strokes would begin to break apart, making the text unreadable. But this would not occur with the Caption version.

Garamond Premier Caption can robustly set real text, even in poor printing conditions. How well a font will render in small sizes on screen depends on the operating system and applications in question. Font formats themselves also play a role; in certain environments, TrueType fonts with “hinting� information may vastly improve on screen display (see the “Hinting� section at the end of this article).

3. x-Height

Text in Garamond Premier Caption and Display Sizes

Garamond Premier’s Display face (above left) is shown next to the Caption face (above right). Both fonts are set at the same point size. The Caption face features a much higher x-height than the Display font.

Many successful text faces feature high x-heights; this means that the ratio of the central vertical area of lowercase letters—the height of the letter x, for instance—is large when compared to the length of the ascenders and descenders. Depending on its design, a text face may have a low x-height and still be quite legible. But the benefit of incorporating a large x-height in a design is that it maximizes the area of primary activity.

A high x-height may also prevent some letters, like the a or the s, from appearing to become too dark; these two letters have three horizontal strokes inside the x-height space, which is a very small area in text sizes. In order for letters to maintain clarity and understandability, they must have a consistent rhythm, as well as include large, open forms.

4. The Spaces Inside of Letters

The images below illustrate just a few of the intra-letter spacing elements that should be understood and considered when choosing which typeface to choose for your body text. In order for the white spaces inside of letters to remain visible in small sizes, it is necessary for their counterforms to have a certain minimum mass, proportionally.

Counters
ITC Bodoni Six and ITC Bodoni Seventytwo

The image above shows text set in two members of the ITC Bodoni family: ITC Bodoni Seventytwo and ITC Bodoni Six typefaces. In the first line, “Randgloves� is set in a size mastered for 72pt display (ITC Bodoni Seventytwo), while “and jam� is in the Caption size (ITC Bodoni Six). These words are reversed in the second line. Note how the enclosed white space in the top portion of the e changes between the display and text optical sizes.

Apertures
Apertures in FF Meta

“Aperturesâ€� are the gateways that whitespaces use to move in and out of the counterforms of a typeface’s letter. The above image highlights the wide apertures in four letters from Erik Spiekermann’s FF Meta typeface. These allow for the typeface’s letterforms to feel more open. In certain sizes and settings, wide apertures—and the large counterforms that are their result—will make a text more readable.

Apertures in Frutiger and Helvetica

The top line of the image above is set in Helvetica, and the bottom line in Frutiger. While the counterforms inside the letters of these two typefaces are similar in size, Helvetica’s apertures are much smaller. Because of this, white spaces inside of Helvetica’s letters and between Helvetica’s letters are much more closed off from each other than in a typeface with more open counters—like Frutiger.

Other counterforms and problematic letters worth remembering include the c; if the apertures of a, e, s are very open, the c should follow this same route. Then there are lowercase letters like a, e, g, s that often have rather complex shapes—specifically, they each feature several horizontal strokes inside a small amount of vertical space. How do their forms relate to one another? How large is the typeface’s x-height? Do the ascenders and descenders have enough room, particularly f and g? Do the counterforms inside of roundish letters (e.g., b, d, p, q, o) have the same optical size and color as those inside of straight-sided letters like, h, n, m, and u? How different from one another are the forms of the capital I, the lowercase i and l, and the figure 1? Can the 3 and the 8 be quickly differentiated from each other? How about the 5 and the 6?

5. Kerning

Sample text in Carter Sans, with and without kerning

In the sample above, kerning has been deactivated for the second line. The gaps between the letters T y and V o are too large when compared with the amount of space between the other letters in the text. The typeface used in the image is Carter Sans.

Despite the popular misuse of the term in graphic design circles, “kerningâ€� does not refer to the spacing values to the left and right of the letters in a font. Rather, fonts contain a list of kerning pairs to improve the spacing between the most troubling lettering combinations. The importance of kerning in a font is the role it may play in maintaining an optimal rhythm. Just as kerning describes something much more specific than a typeface’s overall spacing—or the tracking that a graphic designer might apply to a text—kerning is not the rhythm of a typeface itself, but an element that may strengthen a typeface’s already existing rhythm. Not every typeface design requires kerning, and there are typefaces on the market that indeed may have too many kerning pairs—a sign that the basic letter spacing in the font could have been too faulty in the beginning.

6. Consistent Rhythm Along the Line

Simple Text Sample in Frutiger and Helvetica

In the image above, compare the spaces between the letters of the Helvetica typeface (first row) with Frutiger’s (second row). Frutiger is a more humanist design, featuring a slight diagonal axis in its letters; many of them look similar to Helvetica’s, at least at face value. However, the space between Helvetica’s letters is much tighter.

While most of the images in this article feature typeface families that include Optical Size variants, many commonly used typefaces on the market today do not offer these options. This is why it is helpful to be able to identify text typefaces based on their features, rather than just on their names in the font menu. As mentioned earlier, it is primarily the typeface’s rhythm that dictates the readability of a block of text.

Take Frutiger and Helvetica, which are both commonly used in text, especially for corporate communication—Neue Helvetica is even the UI typeface in iOS and MacOS X 10.7. Yet, despite its popularity, Helvetica is not very effective as a text typeface; its rhythm is too tight. By rhythm, I’m not referring to tracking—or any other feature that a designer can employ when typesetting—but the natural flow of space between letters, and within them as well. Frutiger is a much more open typeface—the spaces between its letters are closer in size to the white spaces inside of the letters than in the case of Helvetica. Like all good text typefaces, Frutiger has an even rhythm—space weaves in and out of the letters easily.

7. Caveat: Signage Faces

To round off my discussion on text typefaces, I’d like to briefly mention some fonts that are often shown in rather large sizes: fonts for signage. Interestingly, many signage typefaces have design features very similar to typefaces created for very small applications. The Frutiger typeface, based on letters that Adrian Frutiger originally developed for the Roissy airport in Paris (now named after Charles De Gaulle), is quite legible in small sizes precisely because it is a good signage typeface. Despite their size, signage fonts serve a rather different purpose than Display fonts.

Frutiger in an airport signage-like setting

Additional Elements To Consider

After considering the criteria mentioned above, the next question that often comes up is, “does this font have oldstyle figures, or small caps and ligatures, etc.?� A font’s letters might look really great in text, but if they do not include additional elements and features, their use is somewhat minimized. I avoid using fonts with small character and feature sets where I can, because I feel that the lack of these “extras� may break the kind of rhythm I aim to achieve.

1. OpenType Features

Once you’ve established a consistent rhythm by setting your text according to the correct size and application, it would be a pity to inadvertently break that flow. Large blocks of tall figures or capital letter combinations do just that.

Even in languages like German, where capital letters appear at the start of many words, the majority of letters in a text planned for immersive reading will be lowercase letters. Every language has its own frequency concerning the ratio of “simpleâ€� lowercase letters like a c e m n o r s u v w x z to lowercase letters with ascenders or descenders—b d f g h j k l p q y. In international communication, language support is a key consideration when choosing a font, and other character set considerations may especially play a role.

FF Meta Pro Book and two examples from its many figure styles

Traditionally, the style of figures used in running text also have ascenders and descenders. These figures—often called oldstyle figures or text figures—harmonize better with text than the “uppercaseâ€� lining figures. These so-called lining figures either align with the height of a typeface’s capital letters, or are slightly shorter. It is no surprise that, when shipping the Georgia fonts for use onscreen and online, Matthew Carter and Microsoft made the figures take the oldstyle form. Many other typefaces that have long been popular with graphic designers, like FF Meta (seen above), also use oldstyle figures as the default style. In my opinion, lining figures are best relegated to text set in all-caps.

Long all-caps acronyms—like NAFTA, NATO, or USSR—also create an uncomfortable block in the line for the reader. Setting these letter-strings in small caps helps reestablish a specific typeface’s natural rhythm in reading sizes, as may be seen in the first line of the image below (set in Erik Spiekermann’s FF Meta).

FF Meta Pro Book and its small caps

Along with common ligatures like fi ff fl, small caps and the many figure options are the most common OpenType features found in quality text fonts. Aside from having both lining and oldstyle figures, OpenType-functionality can enable a font to include both tabular and proportionally-spaced figures, numerators and denominators for fractions, as well as superior and inferior figures for academic setting. Additional OpenType features (such as contextual alternates or discretionary ligatures), are more powerfully noticed in display sizes, and in some cases can even be distracting in text.

2. Hinting

The display of text on screen, particularly on computers running a version of the Windows operating system, may be fine-tuned and improved with the help of size-specific instructions inside of the font file. These instructions are commonly referred to as “hints.â€� A TrueType font (or a TrueType-flavored OpenType font), is capable of including hinting. However, not every font manufacturer goes to the effort of optimizing the onscreen appearance of its fonts for Windows—even those fonts specially created for use in text sizes.

Prensa in three different rendering environments

All of the text in the above image is shown in the same font: Prensa, set at 18 pixels. The lowest row shows this at actual size in three different onscreen rendering environments. In the enlargements, the top row shows a close-up of rendering in Safari on MacOS X, which ignores the hinting data in fonts. The second row shows rendering in Internet Explorer/WindowsXP (Grayscale only, for this sample). The third row is from a ClearType environment—in this case, from Firefox on Windows7. Prensa is a typeface designed by Cyrus Highsmith at the Font Bureau; the Web font is served by the Webtype service.

Recommended Typefaces For Readability

Aside from the typefaces already mentioned in this article and its images, here is a small selection of faces that I personally enjoy at the moment. Even though lists of “favoriteâ€� typefaces are about as useful as lists of favorite songs or favorite colors, I am happy to pass my subjective recommendations along. No doubt that as new projects arise, my list of favorites is likely to change, too. I do think that these typefaces serve as great starting places. Some are also just from cool friends whose work I dig. Alongside each selection, I mention whether this choice is currently available for print only, or if there is a Web font version, as well. Don’t forget: the typefaces that you pick in the end should depend on your projects, their audience, and the content at hand.

Small sample of the Arnhem typeface

Arnhem is a no-nonsense high-contrast oldstyle-serif face. It is a contemporary classic for newspaper and book setting, designed by Fred Smeijers and distributed via OurType. Available for print and Web.

Small sample of the Benton Sans typeface

Benton Sans is a Tobias Frere-Jones performance of Morris Fuller Benton’s News Gothic genre. Designed for Font Bureau, it is not only a great typeface for small print in newspapers, but one of the best-rendering text faces for the Web as well. Available for print and Web.

Small sample of the Ibis typeface

Ibis is another Font Bureau typeface, designed by Cyrus Highsmith. This square serif family is also no stranger to cross-media text-setting. Ibis works just as well whether you use it in print or on screen. Available for print and Web.

Small sample of the Ingeborg typeface

Ingeborg is modern serif family from the Viennese type and lettering powerhouse, the Typejockeys. Like any proper family should, Ingeborg has optically-sized variants for text and display settings. The display versions of the typeface can get pretty far out, too! Designer Michael Hochleitner named this typeface after his mother. Available for print and Web.

Small sample of the Ludwig typeface

Fred Smeijer’s work in contempory type design is so significant that he gets two shout-outs in my list. His Ludwig type family takes a nod from 19th century grotesques, but he does not try to sanitize their quirky forms, as so many type designers had tried to do before him. Available for print and Web.

Small sample of the Malabar typeface

This is one of the typefaces that I’ve designed. I’m somewhat partial to Malabar. Available for print and Web.

Small sample of the FF Scala Sans typeface

Martin Majoor’s FF Scala Sans has been my top go-to typeface for almost 15 years. It mixes well with the serif FF Scala type, but it’s also really great on its own. Available for print and Web.

Small sample of the URW Grotesk typeface

Of all the typefaces designed by Hermann Zapf over his long career, URW Grotesk is clearly the best. Unfortunately, it has been a little overlooked. URW Grotesk is a geometric sans, with a humanist twist that brings much more life into the letters than this genre usually allows for. Plus, the family is super big. Available for print and Web.

Small sample of the Weiß-Antiqua Typeface

Are you a DIY-fan? Do you like to print with letter press, whether you set your own type by hand, or have polymer plates made? Then check out the typefaces of Emil Rudolf Weiß! His Weiß-Antiqua is an eternal classic. Weiß may have passed away 70 years ago, but his work is still relevant. He was German, so his last name is sort of pronounced like Vice, as in Miami Vice. Available for print and Web.

Conclusion

There are many factors that play a role in typeface selection. Aside from just browsing through the available fonts that they have, or fonts that could be newly licensed for a project, designers regularly spend considerable effort determining the right typeface to complement a project’s content, or the message at hand. Understanding some of the thoughts that go into the making of text typeface—including how a typeface’s letters are fitted to each other to determine a text’s default underlying rhythm—helps lead to better informed decisions regarding what types are indeed apt, and which faces are better suited for other sorts of jobs. After having read this article, I hope you feel more comfortable with this kind of decision making, and that you will know what to look for with a font in the future.

Other Resources

For more information about choosing the right text fonts, you may be interested in the following books and Web resources:

1. Websites

2. Books

Note: A big thank you to our fabulous Typography editor, Alexander Charchar, for preparing this article.

(jvb) (il)


© Dan Reynolds for Smashing Magazine, 2012.


  •   
  • Copyright © 1996-2010 BlogmyQuery - BMQ. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress