280-Character Wisdom

A guest post by John Shade

The good folks at Twitter want every person in the world to be able to express their thoughts fully and without restraint. That’s why they’re trying out a new, longer tweet limit. Now you can express yourself in 280 characters. I thought I’d see what we can expect from this expansion of the basic tweet. What follows are some familiar quotes that fit in the existing 140-character limit, enhanced with the new freedom of 280 characters.

140-character quote:
Walking on water and developing software from a specification are easy if both are frozen. — Edward V. Berard

Improved 280-character version:
Walking on water and developing software from a specification are easy if both are frozen, because when water is frozen it becomes ice, and thus a solid, while when a specification is frozen it can’t be modified, removing the need to keep up with the modifications. — Edward V. Berard

140-character quote:
I invented the term ‘Object-Oriented,’ and I can tell you I did not have C++ in mind. — Alan Kay

Improved 280-character version:
I invented the term ‘Object-Oriented,’ and I can tell you I did not have C++ in mind. What I had in mind was communication via messaging, local retention and protection and hiding of state-process, extreme late-binding of everything, and none of that Simula inheritance crap. — Alan Kay

140-character quote:
Hofstadter’s Law: It always takes longer than you expect, even when you take into account Hofstadter’s Law. — Douglas Hofstadter

Improved 280-character version:
Hofstadter’s Law: It always takes longer than you expect, even when you take into account Hofstadter’s Law. — Douglas Hofstadter, the author of Hofstadter’s Law and, in accordance with Hofstadter’s Law, of this attribution and the attribution of the attribution, recursively forever.

140-character quote:
Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris. — Larry Wall

Improved 280-character version:
Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, hubris, and surprise. Four. There are four virtues of a programmer: laziness, impatience, hubris, surprise, and ruthless efficiency. Amongst the virtues are …. — Larry Wall

140-character quote:
Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates

Improved 280-character version:
Measuring programming progress by lines of code is like measuring aircraft building progress by weight. That’s stupid. Measuring programming progress is done by asking harder and harder questions until they can’t answer, and then yelling at them for being unprepared. — Bill Gates

November PragPub

The November PragPub is out!

It’s not hard to spot the glaring problem in security these days: bonehead users. We give them excellent security advice like “Use long, hard-to-remember passwords,” “Change your passwords often,” and “Use two-factor authentication,” and they don’t follow our advice. There’s the problem, right there. And of course the solution is…

Right. When you can’t come up with a good solution to a problem, maybe you need to redefine the problem. In the case of security, maybe you need to define the bonehead user out of the equation. The best tool in the world is useless if the user won’t use it.

In this November PragPub, Troy Hunt looks at Apple’s Face ID, Touch ID, No ID, and PINs, and comes up with some ideas about security as friction and what Pragmatic Security might look like.

We’ve got a couple of code-rich features this month, too. Venkat Subramaniam continues his series on refactoring to functional style in Java 8, this month tackling a particularly knotty problem: exploiting the benefits of functional style with one-to-many relationships.

You’re probably not as familiar with the other language featured this month. Crystal is a very young language. It’s a functionally-flavored object-oriented language out of Argentina, and its slogan is: “Fast as C, slick as Ruby.” Ivo Balbaert is writing a book on Crystal and this month he shows how Crystal’s macros can radically simplify your code.

Karen Xie is a young software engineer, but she has already had some cool jobs and some interesting experiences. This month she shares her experience as a young woman in software engineering.

Marcus Blankenship is a more seasoned developer, but he remembers a time when he was just getting started and deleted 42,000 lines of code before checking it in. He found that there’s a difference between just learning from a mistake and actually growing from having made a mistake.

Johanna Rothman wants to keep you from making a mistake at the very beginning of a project, by showing you strategies for deciding what tasks to tackle first.

Plus: Antonio Cangiano has all the new tech books, I have the tech news, and John Shade “improves” some tweets by expanding them to 280 characters.

I hope you enjoy it!