Shared posts

05 Aug 12:48

Doing Terrible Things To Your Code

by Jeff Atwood

In 1992, I thought I was the best programmer in the world. In my defense, I had just graduated from college, this was pre-Internet, and I lived in Boulder, Colorado working in small business jobs where I was lucky to even hear about other programmers much less meet them.

I eventually fell in with a guy named Bill O'Neil, who hired me to do contract programming. He formed a company with the regrettably generic name of Computer Research & Technologies, and we proceeded to work on various gigs together, building line of business CRUD apps in Visual Basic or FoxPro running on Windows 3.1 (and sometimes DOS, though we had a sense by then that this new-fangled GUI thing was here to stay).

Bill was the first professional programmer I had ever worked with. Heck, for that matter, he was the first programmer I ever worked with. He'd spec out some work with me, I'd build it in Visual Basic, and then I'd hand it over to him for review. He'd then calmly proceed to utterly demolish my code:

  • Tab order? Wrong.
  • Entering a number instead of a string? Crash.
  • Entering a date in the past? Crash.
  • Entering too many characters? Crash.
  • UI element alignment? Off.
  • Does it work with unusual characters in names like, say, O'Neil? Nope.

One thing that surprised me was that the code itself was rarely the problem. He occasionally had some comments about the way I wrote or structured the code, but what I clearly had no idea about is testing my code.

I dreaded handing my work over to him for inspection. I slowly, painfully learned that the truly difficult part of coding is dealing with the thousands of ways things can go wrong with your application at any given time – most of them user related.

That was my first experience with the buddy system, and thanks to Bill, I came out of that relationship with a deep respect for software craftsmanship. I have no idea what Bill is up to these days, but I tip my hat to him, wherever he is. I didn't always enjoy it, but learning to develop discipline around testing (and breaking) my own stuff unquestionably made me a better programmer.

It's tempting to lay all this responsibility at the feet of the mythical QA engineer.

If you are ever lucky enough to work with one, you should have a very, very healthy fear of professional testers. They are terrifying. Just scan this "Did I remember to test" list and you'll be having the worst kind of flashbacks in no time. And that's the abbreviated version of his list.

I believe a key turning point in every professional programmer's working life is when you realize you are your own worst enemy, and the only way to mitigate that threat is to embrace it. Act like your own worst enemy. Break your UI. Break your code. Do terrible things to your software.

This means programmers need a good working knowledge of at least the common mistakes, the frequent cases that average programmers tend to miss, to work against. You are tester zero. This is your responsibility.

Let's start with Patrick McKenzie's classic Falsehoods Programmers Believe about Names:

  1. People have exactly one canonical full name.
  2. People have exactly one full name which they go by.
  3. People have, at this point in time, exactly one canonical full name.
  4. People have, at this point in time, one full name which they go by.
  5. People have exactly N names, for any value of N.
  6. People’s names fit within a certain defined amount of space.
  7. People’s names do not change.
  8. People’s names change, but only at a certain enumerated set of events.
  9. People’s names are written in ASCII.
  10. People’s names are written in any single character set.

That's just the first 10. There are thirty more. Plus a lot in the comments if you're in the mood for extra credit. Or, how does Falsehoods Programmers Believe About Time grab you?

  1. There are always 24 hours in a day.
  2. Months have either 30 or 31 days.
  3. Years have 365 days.
  4. February is always 28 days long.
  5. Any 24-hour period will always begin and end in the same day (or week, or month).
  6. A week always begins and ends in the same month.
  7. A week (or a month) always begins and ends in the same year.
  8. The machine that a program runs on will always be in the GMT time zone.
  9. Ok, that’s not true. But at least the time zone in which a program has to run will never change.
  10. Well, surely there will never be a change to the time zone in which a program has to run in production.
  11. The system clock will always be set to the correct local time.
  12. The system clock will always be set to a time that is not wildly different from the correct local time.
  13. If the system clock is incorrect, it will at least always be off by a consistent number of seconds.
  14. The server clock and the client clock will always be set to the same time.
  15. The server clock and the client clock will always be set to around the same time.

Are there more? Of course there are! There's even a whole additional list of stuff he forgot when he put that giant list together.

Catastrophic Error - User attempted to use program in the manner program was meant to be used

I think you can see where this is going. This is programming. We do this stuff for fun, remember?

But in true made-for-TV fashion, wait, there's more! Seriously, guys, where are you going? Get back here. We have more awesome failure states to learn about:

At this point I wouldn't blame you if you decided to quit programming altogether. But I think it's better if we learn to do for each other what Bill did for me, twenty years ago — teach less experienced developers that a good programmer knows they have to do terrible things to their code. Do it because if you don't, I guarantee you other people will, and when they do, they will either walk away or create a support ticket. I'm not sure which is worse.

[advertisement] Find a better job the Stack Overflow way - what you need when you need it, no spam, and no scams.
13 Jul 17:21

To up your value, be a master of time

by Paul Glen

Whether you are an IT manager or an individual contributor, there’s one thing you can always do to increase the value you provide to your organization, get yourself noticed and increase the likelihood that you’ll get a promotion. It doesn’t matter whether you want to stay technical or move in a managerial direction. It doesn’t matter whether you are just starting your career or are a veteran. At every level of every organization, the ability I’m talking about is always in short supply.

It’s the ability to manage time horizons, to plan your own work and provide direction for others. That might sound like I’m talking about personal time management — managing your own activities to improve your personal output, or the activities and output of people you manage. That’s important, of course, but I’m talking about something more expansive: thinking about the future holistically and using your insights to help select and adapt today’s tactical activities to account for the threats and opportunities you are able to perceive. The greater the breadth of issues you are able to think about and the further into the future you are able to consider, the more value you have.

To read this article in full or to leave a comment, please click here

24 Sep 07:24

Tasks

In the 60s, Marvin Minsky assigned a couple of undergrads to spend the summer programming a computer to use a camera to identify objects in a scene. He figured they'd have the problem solved by the end of the summer. Half a century later, we're still working on it.
11 Apr 06:27

Heartbleed Explanation

Are you still there, server? It's me, Margaret.
19 Feb 15:18

Radio-Controlled Mops, Trash Cans Let You Clean From the Couch

by Tim Moynihan
Even a lazy, couch-bound weekend watching House of Cards requires some amount of sanitary effort. Those soda puddles, empty ice-cream containers, and various tetanus hazards can't dispose of themselves, right? Right ? unless of course you have a fleet of radio-control cleaning and grooming supplies at your disposal.
    






31 Jul 08:40

Neil Gaiman présente Wayward Manor en vidéo - Une histoire de fantôme...

by rami_008@gameblog.fr (Rami_008)

Neil Gaiman, auteur britannique, notamment connu pour des romans comme Moi, Cthulhu ou Stardurst, a décidé de lancer son propre jeu vidéo nommé WayWard Manor. L'auteur effectuera le scénario du jeu,…


19 Jul 10:22

ReKey – Ne soyez plus les 99%

by Korben

Face à l'inaction des constructeurs suite à la divulgation de la faille Master Key dans Android, les entreprises Duo Security et System Security Lab de la Northeastern University (NEU SecLab) ont décidé de réagir en mettant en ligne un patch qui permet de corriger la faille.

Baptisé ReKey, cette application que vous pouvez trouver sur le Google Play Store injecte dynamiquement du code dans la machine virtuelle Android Dalvik afin de corriger les classes ZipEntry et ZipFile dans lesquelles se trouvent la faille. Pour rappel, cette faille serait présente dans 99% des téléphones Android actuellement en circulation.

green ReKey   Ne soyez plus les 99%

Evidemment, pour que cela fonctionne vous devrez être root sur le téléphone.

Attention, ce n'est pas un fix permanent, mais plutôt un correctif qui nécessite que ReKey soit relancé à chaque reboot... jusqu'au jour où les constructeurs voudront bien régler ce problème en implémentant le patch officiel mis en ligne par Google depuis plusieurs jours...

17 Jul 15:49

Une nouvelle façon de lutter contre le stress

Pensez-y à deux fois si vous avez l'habitude de masquer vos émotions pour éviter de vivre un sentiment de rejet lorsque vous subissez une rebuffade lors d'une soirée. Des scientifiques ont démontré...
17 Jul 13:45

Become a Better Writer by Learning to Be a Skilled Reader First

by Tessa Miller

Become a Better Writer by Learning to Be a Skilled Reader First

A lot of people want to improve their writing skills, both professionally and personally. In order to achieve that, a key ingredient is often ignored: Reading. Belle Beth Cooper from social sharing service Buffer uncovers what it takes for you to become a more skilled reader—and in turn, a better writer.

Read more...

    


16 Jul 15:58

Hyperloop : le moyen de transport du futur sera présenté par Elon Musk le 12 aout

Elon Musk, le milliardaire qui a fondé PayPal, Space X ou encore Tesla a récemment abordé sa vision du prochain moyen de transport révolutionnaire et annoncé une présentation approfondie le 12 aout prochain.
26 Jun 21:09

June 16, 2013


Thanks to your contributions I will be doing a drawathon Wednesday. My first with a tablet.
24 Jun 14:19

Techniques d'enquête : « obtenir ce volume d'informations en si peu de temps, c'est précieux »

L'écoute du consommateur ou de l'utilisateur est une étape incontournable dans le processus de lancement d'un projet. Les techniques d'enquête sont multiples et font souvent l'objet d'une expertise par des prestataires spécialisés. La plateforme AdoctA a choisi de soutenir les porteurs de projets, en les mettant en relation avec des panélistes de
21 Jun 09:38

Curiosity : des panoramiques de 1,3 milliard de pixels de la surface de Mars

La NASA vient de mettre en ligne plusieurs vues panoramiques de la surface de Mars. Avec une définition de 1,3 milliard de pixels, la qualité est au rendez-vous et il est possible de zoomer sur certains détails afin de les observer de près. Bien évidemment, il s'agit d'exploiter les clichés pris par la sonde Curiosity qui est sur place depuis le mois d'août de l'année dernière. 
21 Jun 07:48

Privilèges : les propositions des 10 députés trublions au banc d’essai

by Sophie Caillat
Avec leur appel pour l'"abolition des privilèges", dix députés de tous bords ont dérangé une partie de la classe politique. Quels conservatismes sont bousculés ?


20 Jun 08:25

XKCD: moral panics about modern times from times gone by

by Cory Doctorow


Today's XKCD, "The Pace of Modern Life," is a lovely collection of 19th century and early 20th century quotations about the hurried pace of modern life, the atomisation and trivialisation of knowledge thanks to modern media, the disobedience of children (again, thanks to modern media) (this topic was a favorite of Socrates's!) and other hand-wringing editorial subjects frequently chosen by modern critics of the Internet age. A great companion piece to Tom Standage's wonderful catalog of moral panics through the ages.

The Pace of Modern Life

    


20 Jun 06:38

37 Conversation Rules for Gentlemen (1875)

by Mark Frauenfelder

The Art of Manliness has reprinted "37 Conversation Rules for Gentlemen" from a 1875 book entitled, A Gentleman’s Guide to Etiquette by Cecil B. Hartley. The rules are still valid!

33. When asking questions about persons who are not known to you, in a drawing-room, avoid using adjectives; or you may enquire of a mother, “Who is that awkward, ugly girl?” and be answered, “Sir, that is my daughter.”

37 Conversation Rules for Gentlemen

    


19 Jun 16:22

The Pace of Modern Life

'Unfortunately, the notion of marriage which prevails ... at the present time ... regards the institution as simply a convenient arrangement or formal contract ... This disregard of the sanctity of marriage and contempt for its restrictions is one of the most alarming tendencies of the present age.' --John Harvey Kellogg, Ladies' guide in health and disease (1883)
13 Jun 08:55

You're Not Wrong, Microsoft, You're Just An Asshole

by Matt Burns
3ut5il

“We have a product for people who aren’t able to get some form of connectivity,” explained Xbox chief Don Mattrick. “It’s called Xbox 360.”

With those snarky words, Microsoft lost E3. That much was clear as soon as Sony’s press conference started. And it’s not because the Xbox One is a bad system. If we ignore Microsoft’s terrible marketing and judge the Xbox One objectively, it’s a fine system – a home entertainment system built for the future that should provide an unparalleled user experience.

But damn it, Microsoft: stop being a jerk.

Don Mattrick, the head of Xbox at Microsoft, explained to GameTrailers that Microsoft built a system that’s future-proof and if you don’t like it, there’s another option: the eight-year-old Xbox 360.

This is Microsoft’s stance and the company doesn’t care if you complain. That message came through loud and clear during the company’s E3 press conference. Take it or leave it. Microsoft doesn’t care. They know they’ll sell millions of boxes and a group of vociferous web trolls won’t change that – or will they?

Microsoft has a reason to be cocky. The Xbox 360 rules the living room. It’s the best-selling gaming console of the last generation and is the standard for media streaming devices. There have been hiccups and mistakes along the way, but overall the Xbox 360 is a fantastic system. Microsoft baked in the best of the Xbox 360 into the Xbox One, that much is apparent. However, after years of piracy and the embarrassment of briefly backing the wrong physical media platform, the company is now working on the assumption that you don’t deserve an Xbox One if you’re not connected to the Internet. It’s a fair assumption – the target market already has broadband – but there are still plenty of reasons someone doesn’t want the One to phone home every 24 hours.

The Xbox One has the potential to outsell the PS4. It has the potential of being a better investment for the casual and hardcore gamer alike. It has the potential to seamlessly bring the best of the Internet and TV to the living room.

Look at it this way: The Xbox One is an always-connected device that interfaces with subscription TV. It’s also a portal to a person’s Windows’ ecosystem, bringing the most popular computing platform on Earth to the main screen in the house. It’s a gaming system, a cable guide, a Skype machine, and a media streaming box that you can talk to. And as David Pierce explains on The Verge, the Kinect could usher in a new dimension of gaming. It’s the most pure all-in-one home entertainment system ever built.

But Microsoft went too far.

The Xbox One treats every owner as a potential thief. By nearly requiring a broadband Internet connection to check a game’s DRM, the Xbox One is locked to a living room. Forget about rigging up a system for a long road trip. Forget about taking the system to the family cabin or grandma’s house. Without broadband Internet, the Xbox One is useless.

This always-connected scheme is even scarier when updates are considered. Microsoft will essentially be able to remotely control all these systems and push updates unbeknownst to the owner. But it gets worse: The Xbox One doesn’t work without Kinect, which is always on as well. Xbox One owners cannot trade or easily sell back games. The console is worthy of a mention in a George Orwell novel.

These downsides put Microsoft in a powerful position with game publishers. It’s all about making money and selling systems. It guarantees that games will not be pirated, theoretically putting them at ease and more likely to publish exclusives on the Xbox One. But once you put making money above the user, you start down a slippery slope.

Then there’s the PS4.

As Sony stated loudly and clearly at the PlayStation 4 press conference, the system doesn’t require games check-in online. Games can be traded like baseball cards. The system doesn’t require an Internet connection.

Best yet, indies can self-publish on the PS4.

Sony won E3 by being the anti-Microsoft. The Xbox One has ridiculous DRM and all Sony had to do is state that the PS4 takes a familiar, old-school approach to gaming. It’s just a new PlayStation. Nothing more.

The Xbox One launch is a marketing disaster even though the product itself is solid. Forgive the hyperbole, but every time Microsoft makes a statement, the hole gets deeper. But at the very least Microsoft isn’t hiding anything. There shouldn’t be anymore surprises. Hopefully.

[pics from /r/gaming]


12 Jun 14:23

Le scandale de la surveillance des données personnelles booste les ventes de "1984"

Avec le scandale du programme Prism, les ventes du roman de référence de George Orwell, "1984", ont augmenté de 6 000 %.

11 Jun 06:56

Wri.pe, un gestionnaire de notes, simple, pratique et élégant

Google a lancé récemment « Keep », son bloc-notes web et mobile ultra minimaliste. Un nouveau service du genre pourrait bien venir rivaliser avec le petit dernier du géant américain. Wri.pe est un gestionnaire de notes plutôt bien conçu, intuitif et design. A travers son interface ergonomique, Wri.pe vous permet de gérer facilement
10 Jun 14:13

5 Tools For Creating Your Own Infographics

by Chris McConnell

Five years ago, almost nobody knew what the heck an infographic was. (I sure didn’t, and I was a graphic design major in college at the time.)

Now that the infographic craze has saturated us with new visual knowledge (and marketing gimmicks), something interesting has happened: The creation of infographics has become democratized. No longer is the act of creating a visual data story confined to professional designers using professional tools like Adobe Illustrator or Photoshop. Now anyone with a data set can build an infographic.

(See also 5 Business & Design Tools Every Tech Freelancer Should Learn.)

Trust me when I say that with these tools, you don’t have to be a designer to create a high-quality, effective infographic. Does this mean there’s no place for professional designers and data? Not at all. Uniqueness and customization will always carry a premium (as Column Five can attest), but there are plenty of instances where a prefab or low-cost alternative can be mighty useful.

With that in mind, I’ve cobbled together a list of five services/methods that even non-designers can use to create or commission great infographics.

Infogr.am: All The Bells And Whistles

Infogr.am is free, and free is good. It’s a popular platform that has seen more than 800,000 infographics created to-date. Infogr.am is nice and simple, but the features it does have are power-packed. For instance, you can make more than 30 different types of charts (compared to 11 in Excel). Speaking of Excel, Infogr.am’s built-in spreadsheet editor makes editing data easy and enables importing of XLS and CSV files.

One of its best features is the ability to download files in PNG or PDF format. This is perfect for including the infographic in a presentation or emailing itto a colleague. Many people will like the fact that you can publish your infographic online, which makes it sharable and embeddable. If your data is sensitive, give it a password and a private link.

Infogr.am is far and away my favorite online infographics editor.

InfoActive: Interactive, Live And Mobile-Friendly

Of all the infographic tools that claim to make data “fun,” (there are more than you’d think), InfoActive – now in beta testing - probably comes closest to delivering on the promise. It’s unique features – including interactivity and live data - make it seem more “up-to-date” than the competition.

The platform lets you visualize data that isn’t just static - a big plus in today’s environment where people want to become part of the story. The addition of embedding live data is important given how quickly information can become outdated. The InfoActive website phrases it like this: “Hitting ‘publish’ isn’t the end of the story; it’s just the beginning.”

Simplicity is a core feature here: the InfoActive site boasts that you don’t even need a tutorial to get started. No word yet on what, if anything, InfoActive will cost post-beta.

Piktochart: Drag-And-Drop Templates Galore

For $29 a month, Piktochart gives you access to a WYSIWYG editor that will let you drag and drop elements to create an infographic. Some 300,000 users strong, including clients such as Harvard University, Red Bull and GE, Piktochart has built that following on the back of more than 90 included themes. But from a design standpoint, many of those themes are decent, but others are mundane or downright bad.

As with Infogr.am, you can share your creations via social networks or download print-quality files. If you like the Piktochart editor - which is free to try - you may find the service worth paying for. One nice bonus: In the latest version, Piktochart lets users create search friendly graphics!

Easel.ly: Theme-Based Drag-And-Drop With Objects

Like InfoActive, Easel.ly is currently in beta. Easel.ly also takes a theme-based, drag-and-drop WYSIWYG approach to infographic creation, but it comes loaded with a modest selection of just 10 “vhemes” (visual themes).

Easel.ly sets itself apart by making it easy to insert a selection of objects from categories as varied as people, banners, icons, animals and nature (among others).

While the current theme selection is a bit limited, people who enjoy the platform and interface can completely customize their infographics through the upload feature.

Many Eyes V2: Pre-Made Visualization Filters

While there are no themes in the new (beta) version of IBM’s Many Eyes, there are 11 different ways to visualize data, many of which you won’t find on the other platforms and services listed here. These visualization features let you go beyond pie charts to harness the power of word trees, heat maps, tree maps and yes, the infamous word cloud.

It all starts by uploading a data set (or selecting one from the site, though many are basically useless at the moment) and then simply applying a visualization style. The visualizations can be broken down into three categories: Compare A Set Of Values Track Rises And Falls Over Time See Parts Of A Whole

One of the coolest options is the View In Context visualization, a type of line graph that shows changes in data over a long set of intervals (like time, for example).

Note that the output of Many Eyes might not technically qualify as an infographic all by itself. But it’s a great tool to add variety to other offerings, like Infogr.am.

 

Lead image courtesy of Shutterstock

07 Jun 14:45

The Pros & Cons Of Being Tall

by DOGHOUSE DIARIES

The Pros & Cons Of Being Tall

Standing up too quickly can be a doozy.

06 Jun 16:03

Phonetic description of annoying noises teenagers make

by Xeni Jardin
James Harbeck created this video to demonstrate various vocalizations that young adults make, to express emotions that are endemic to teens. From an accompanying article at The Week:
The next time you find yourself wondering about the highest use of linguistics, or enduring the insulting grunts and groans of petulant adolescents and wondering how such noises could even be described, bring the two worlds together. Clearly, linguistics exists just so we can give a technical description of those hard-to-spell sounds that erupt from callow youths. Here are seven examples (with three bonus variations).
    


06 Jun 14:50

Tester le métier de ses rêves avec Jobsenboite

Que diriez-vous de prendre la place d'un mentaliste, d'un community manager ou d'un barman, le temps d'une journée ? Et bien c'est possible, avec Jobsenboite ! Le principe : tester le métier de vos rêves, en compagnie d'un professionnel qui vous fait partager son activité au quotidien. Une immersion dans l'entreprise Jobsenboite va vous permettre de vous immerger
06 Jun 08:33

La durée de vie des produits frais pourrait être allongée

by Le figaro.fr
Quelque 300 produits frais font l'objet d'une date limite de conservation différenciée en métropole et dans les départements d'outre-mer.
03 Jun 11:20

What It’s Like To Be Short

by DOGHOUSE DIARIES

What It's Like To Be Short

I’m gonna start an amusement park with rides requiring people to be ‘At Least This Short’.

24 May 09:45

Vers la fin de la gratuité des classes prépas

Les étudiants des classes préparatoires aux grandes écoles devront acquitter des droits d'inscription, comme ceux des universités, selon un amendement accepté ce mercredi en commission à l'Assemblée.
24 May 09:04

New console specs compared

by Rob Beschizza
Mashable compares the specs of this year's new game consoles, Microsoft's XBox One (Already affectionately nicknamed the XBone due to its awful branding), Sony's Playstation 4, and the already-out Wii U. The PS4 comes out ahead, but the XBone is architecturally very similar.
    


24 May 09:02

Pope cool with atheists

by Rob Beschizza
Steve Anderson at The Independent:
Pope Francis has said that atheists should be seen as good people as long as they do good, in a move to urge people of all religions - or no religion at all - to get along.
    


24 May 08:31

Dyed chicks go for less than a dime

by Rob Beschizza

These chicks, dyed in the egg before hatching, were sold as pets for 4 pesos (8 U.S. cents) at a market in Manila, The Philippines. WikiHow offers instructions for dying your own chicks, while The New York Times reports the downside of all that impulse-bought cuteness: humane societies overflowing with now-normal chickens a few weeks after Easter. (Photo: REUTERS/Cheryl Ravelo)