Thoughts on using JMeter to do web performance testing

There are many tools to use for web performance testing, but if you want a good tool that does the job, I recommend Jmeter. The good and bad thing about JMeter is that there are alot of different options and features. To make it simpler for you, the good folks at Digital Ocean have a good tutorial on getting it set up, here: How To Use Apache JMeter To Perform Load Testing on a Web Server | DigitalOcean. While this is fine for testing one page, there are test scenarios where you want to have the user perform multiple steps (e.g. go to the home page, login to their account, check their account balance, then logout). If that is the case for you, too, then you want to read this next: How To Use JMeter To Record Test Scenarios | DigitalOcean (I used Firefox for this: if you are going to use JMeter to develop your performance test cases, then download Firefox too.) For any performance testing that follows a sequence, you really want to use the recording feature of JMeter.

Some other thoughts….

On my thread group, I added the following listeners:

  • Response time graph
  • Graph results
  • Aggregate report
  • View results tree (with scroll automatically on)

I also login to the web server and tail -f  the access log (and sometimes the error log).

I do all this because it is easy to run have a lot of errors when you first (and even later) run your test. For example, if you are testing a sequence, you might see good performance, but you might also see 404s in the access log, or you might see other anomalies in the aggregate report (e.g. good response 90% of the time, but bad response on average). Having more data is better and it insures you don’t have false positives (e.g., you think performance is good, but it really isn’t because the application is failing).

As soon as your developers have some code in place, have someone run Jmeter against it. Don’t wait until towards the end of the project. Jmeter is free and anyone can use it.

Back up your test plans often. It is easy to change your test plan, have it go from a successful one to an unsuccessful one because of the change, and then find it hard to go back because you changed a number of variables.

For your test plan, have multiple thread groups. This will allow you to test different test scenarios for different test groups. You can have different test plans too: it’s up to you how you manage it. For example, I recorded a long sequence for one test group, then I copied it and made a simple test group with less steps by removing them.

On being great and still having to deal with rejection from employers

Is this you: despite having a great resume and being really good at your job, you aren’t appreciated at your current workplace or you are struggling to find a new place to work? If so, I encourage you to read this: The Life of a Free Agent Kicker | The Players’ Tribune

It doesn’t matter if you love or hate football, it is a great example of how you need to think in order to stay positive and maintain perspective when your work situation gets tough.

You can be great at your job, you can have a record of success, and you can still be rejected by employers. It can happen to anyone. You have to stay ready, stay focused, and do your best when the next opportunity comes along. Read the article and grab some perspective.

How to stop Whatsapp from sharing information with Facebook 

Instructions are here as to how to stop Whatsapp from sharing information with Facebook.

Facebook owns Whatsapp. I expect this simple opt out may not be so simple in the months and years to come. You may have to make a harder choice then when it comes to privacy on Whatsapp. In the meantime, you can follow those instructions to maintain the separation between your Whatsapp data and your Facebook data.

Uber is reaching an inflection point (and may be reaching a crisis point)

Why? According to Bloomberg:

After touting profitability in the U.S. early this year, the ride-hailing company is said to post second-quarter losses exceeding $100 million.

A main source of the losses: subsidizing Uber drivers. As Christopher Mims commented on Twitter, “So Uber is a giant machine for transferring wealth from venture capitalists to underemployed Americans”. This is both clever and something that can’t go on indefinitely. It makes clearer to me now why Uber is keen to make self driving cars work. Sure, Uber could charge more for cabs or pay cab drivers less, but in either case, they risk losing market share.

The losses this quarter certainly are an inflection point. It remains to be see if it is a crisis point. That will depend on how the VCs see this loss. I believe they will have patience and they haven’t reached a crisis point yet. Uber should hope that their investors have the same patience that Amazon’s investors have.

For the rest of the story, see: Uber Loses at Least $1.2 Billion in First Half of 2016 – Bloomberg (Image above via the Bloomberg article)

Anil Dash says: ‘There is no “technology industry”’. In reality….

There is a technology industry. Specifically, there is an information technology industry. There are lots of companies, big and small, whose sole aim is providing information technology products and services. Take a look at this list: they are some of the largest companies in the world whose purpose is I.T. They don’t focus on food, or entertainment, or logistics, or advertising: they focus on information technology.

The point he seems to be raising in his piece: There is no “technology industry” — Humane Tech — Medium is that there are companies leveraging I.T. that are considered tech companies, but aren’t. That’s a valid point. But that doesn’t mean there isn’t a technology industry. Should we treat these companies differently that I.T. companies? Possibly. Companies like Theranos, for example, partially ran into trouble because they were treated the way a I.T. startup should be treated, when in my opinion they should have been treated more like a pharmaceutical or medical equipment company is treated. It’s important to look at what the companies do and not just how they model their business.

Towards the end of the piece, he says, “All it takes is a little discipline in how we communicate”. I agree.

Tug of War, 56 pound weight throw, and other discontinued sports of the Olympics

Watching athletics events like javelin and discus, you might think that the sports for the Olympics have been constant since the beginning of the modern games. But as this shows, Unusual and Discontinued Olympic Sports, there are many sports and events that have been dropped since the revival of the modern day Olympics. In particular there was a lot of tinkering in the early years. Not that that is stopping: many sports have been added in the last few decades, and some (e.g. softball) have been dropped.

It would be sad to see your sport dropped from the Olympics, though it would be something to be the last Olympic record holder for it.

Enjoy this year’s Olympics in Rio.

The decline of Peter Thiel – a marker

After reading these three profiles on Peter Thiel in the New Yorker:

1. From 2011: No Death, No Taxes – The New Yorker

2. From 2016, just after he spoke at the Republican Convention: Peter Thiel’s Conservative Vision – The New Yorker

3. From May 2016, How Peter Thiel’s Gawker Battle Could Open a War Against the Press – The New Yorker

What came to mind is the decline of his reputation in the last half decade. A decline he has brought on himself. Whatever you thought of him in 2011 — if you thought of him at all — you likely joined a majority by 2016 in thinking poorly of him.

I’m just putting this here for now. I am sure his reputation will decline further, and I want to revisit that when it happens.

Food! Recipes! Techniques! :)

I read an awful lot about food on my iPad and my iPhone, and as I do, I save the links on Instapaper.com or getPocket.com. You might not believe it, but I don’t blog all of them. The ones I do post, like the ones you see below, are ones I think people who love to cook or love to eat (or both!) would enjoy. So…enjoy! 🙂

  1. Here’s a good review of one of Mark Bittman’s latest books: The new fast food: Why Mark Bittman is revolutionizing the recipe with How To Cook Everything Fast | National Post
  2. If you want to jazz up the presentation of your food, consider this: How To Plate Food Like A 3-Star Michelin Chef | Co.Design | business + design
  3. Of course what is a good plating without some good sauces. Here’s some you can try: Simple Pan Sauces : The Reluctant Gourmet. Here’s more from the same site: How to Make Reduction Sauces : The Reluctant Gourmet. A great sauce can make a dish.
  4. If you think you need to run a fancy restaurant to win a Michelin star, read this and change your mind: Michelin star for Singapore noodle stall where lunch is half the price of a Big Mac | Life and style | The Guardian.
  5.  If you are struggling with dieting, you might find this useful: Hunger is psychological – and dieting only makes it worse | Aeon Essays
  6. Any good cook should know some fundamentals. The site Food 52 is helpful with articles like this: The 10 Dishes to Know By Heart This Year. I think part of the fundamentals of cooking is knowing how to make a good stock. If you don’t know how, check this out: How to make soup stock – Chatelaine
  7. Some simple but good pasta recipes, here: A niçoise pasta that you can make with whatever’s in the pantry | Metro News and here: Orecchiette with turkey and broccoli in less than 30 minutes | Metro News and here: Macaroni Milanaise Recipe – NYT Cooking
  8. If you feel like more of a challenge, try this: Bouillabaisse – Lucky Peach
  9. If you don’t feel like cooking at all and just want to drink wine and eat cheese, this can help: 13 Helpful Diagrams For People Who Only Care About Cheese
  10. This says “Summer Express”, but you can easily use it all year round: Summer Express: 101 Simple Meals Ready in 10 Minutes or Less – The New York Times
  11.  This is dead simple. And if you have this, you can make pulled pork sandwiches, enchilladas, etc. Slow-Cooker Pulled-Pork Tacos Recipe | Real Simple

A sign of the times: Adblock blocks Facebook. Facebook circumvents Adblock. Now Adblock circumvents Facebook.

No doubt this game of cat and mouse will go on for some time. For Adblock to prosper, they need to block ads on Facebook. Likewise, for Facebook there is too much money at stake to allow Adblock to block their ads.  For details on this, see: Adblock Plus and (a little) more: FB reblock: ad-blocking community finds workaround to Facebook

One thing for sure: developers from both sides will be pushing out changes on a regular basis as this battle heats up.

Of course, behind such tactics, the deeper questions are left unresolved, questions around business models and the viability of services without access to advertising revenue.

The Globe and Mail on the plan to defeat Usain Bolt is sports writing at its best

Usain Bolt and Andre De Grasse running in the Olympics

Here’s the story behind the photo, above.  Andre De Grasse, the up and coming runner from Canada, was going against the legend from Jamaica, Usain Bolt, in the 200 meter race at the Olympics. Rather than just concede to Bolt, De Grasse and team came up with a plan to beat him. It’s was a smart plan, and the story of it is equally good. Read it here: De Grasse’s plan was to beat Bolt by making him run faster. It almost worked. Here’s why – The Globe and Mail

While it didn’t work, it was likely the best way to beat Bolt (assuming he was beatable).  And the confidence to think he could beat the Jamaican legend is one of the reasons we’ll be reading about the success of Andre De Grasse for some time to come.

A primer on how to understand and compare health care systems around the world

McMaster University Teaching Hospital
If you are interested in comparing health care systems in various countries, then one place to start is here: Health systems by country – Wikipedia.

While it seems like there is a different setup for each country in the world, many of them are variations of four different models, which are summarized here: Health Care Systems – Four Basic Models | Physicians for a National Health Program

(Image = McMaster University Teaching Hospital. Via Wikipedia)

Democracy in action – An Introduction to Field Organizing

If you want to do more than vote in an election, especially if you are an American, then read this: THIS ELECTION IS FREAKING ME OUT, WHAT CAN I DO!? (An Introduction to Field Organizing). Obviously this is geared towards Hillary Clinton supporters for president, but read it regardless of you who you plan to vote for and at what level.  It should help you get to the point of at least knowing the right questions to ask and where you might go next to get more involved.

Voting is important, but there is much more to democracy than that. If you step up, your involvement will make a difference, regardless of your role. Good for you for taking that next step.

What is Rule 40  and how did athlete Emma Coburn get around it

This piece, During Rule 40 Blackout, Emma Coburn Showcases New Balance on Olympic Stage, FloTrack, has a good run down of Rule 40 and how Emma Coburn cleverly circumvented it. In short, Rule 40 prevents all but official brands and whom they sponsor from promoting them during an blackout period of time surrounding the time of the Olympics. For example, US athletes using Nike can promote the Nike brand, but US athletes using other brands like New Balance cannot.

How did Coburn circumvent this? According to that article,

After crossing the finish line in third behind Ruth Jebet and Hyvin Jepkemoi, respectively, Coburn immediately removed her New Balance spikes and draped them over her shoulder before carrying the American flag. As a result of the bold move, thousands of photos snapped during her victory lap included her sponsor, New Balance, which otherwise would not have been featured. It’s more than likely that Coburn, who is vocal about sponsorship rights, did this intentionally to spotlight New Balance in the middle of the Rule 40 “blackout period” and circumvent Nike’s exclusive sponsorship rights with USATF.

One thing to note is that there are different rules for different athletic federations, it seems. The US swim team has more latitude than the track and field athletes.

As always, this is about money. Whatever else the Olympics are about — and obviously they are about many good things — money is one of the big aspects of these games.

Palo Alto vs. Tokyo: some modest thoughts on housing 

Image of Palo Alto linked to from Wikipedia

Two pieces on housing got me thinking of housing policy and what if anything can be done to improve it. The two pieces are this:

  1. Letter of Resignation from the Palo Alto Planning and Transportation Commission — Medium
  2. Tokyo may have found the solution to soaring housing costs – Vox

(Note: I don’t have much expertise on housing policy. These are just some notes I jotted down after thinking about these pieces. Take the following with a (huge?) grain of salt.)

The first piece describes how housing in Palo Alto, California is becoming too expensive for all but the rich. Part of what is causing this is the limits placed on adding new housing in the area. The second piece describes how Tokyo gets around this, namely by removing the decisions about housing from city politics and making it at a national level.

It seems pretty straightforward then: all cities should remove decision making about housing from the local level and assign it to a body at a national level. But is this true? And would it work in North American cities?

It depends on what you expect your housing policy to be and how effectively you can impose it. If the policy is to have affordable and available housing for a city, then the Tokyo model makes sense. However, there is an assumption that decisions made at a national level will be in line with the desires of the residence of the city. This is a big assumption.

There are at least two sets of desires that home owners have for their homes and their city. One, that their homes and the neighbourhood they live in remain stable or improve. Two, that their homes appreciate in value. The first desire could be wrecked by the Tokyo model. The second desire would definitely be affected by the Tokyo model. With cities like Palo Alto, you have the two sets of desires met, at least in the short term. In the longer term, the second desire could level off as people and industry move elsewhere.

The ideal is to have a national policy that takes into account the need for neighbourhoods to grow organically, for house values to appreciate over time but still allow for affordability, and for cities to  allow for new housing as well as account for when neighbourhoods become depopulated. Having such a policy would support vibrant cities at a national level. You would treat cities as a network of systems, and you would allocate or remove resources over time to keep all cities vibrant, regardless if they are growing or declining.

This is the ideal. Practically, I just can’t see this happening in North American cities. North Americans are too strongly capitalist to allow what is happening in Japan to happen here. If national organizations tried too hard to manage cities and resulted in cooling off housing markets, people would oppose that. For many people, their house is their chief asset, and any efforts to restrict that from appreciation would be met with defiance.

Sadly, I think there are going to have to be many failures within cities such as Palo Alto and San Francisco before there is enough political will to change the way housing is managed. I think the Tokyo/Japan model is out of reach for my continent for decades, still.

It’s unfortunate: you have cities in the U.S. in the rust belt suffering great decline, while cities on the coasts struggling to come to terms with growth. A national policy on housing would help all cities and have a greater benefits for people than the current approach.

I like Palo Alto. It’s a great city, in a great region. I think it would be greater still if it had more housing.

A simple tutorial to set up an about.me site on github

I used to be a big fan of about.me: they enabled me to create a personal home page far better than what I could do. Unfortunately they stripped out some of the things that made the page look great, and when they did that, I decided to make my own about.me page, using free hosting on Github.

First off, here is what my page looks like: http://blm849.github.io

Here’s the steps I took to make it.

Before you start, here’s what you will need if you want to follow my steps. You’ll need:

  • a text editor. Notepad or Textpad or vi will all work fine.
  • some knowledge of HTML. Not too much. If you just follow the steps below, you should be fine. If you want some quick knowledge of HTML, see this: HTML Tutorial
  • some knowledge of  git and github.com. Again, not too much. If you follow the steps below, you should not need any. If you want some quick knowledge of git and github, see this: How to learn github fairly easily | Smart People I Know
  • Some words describing yourself that you want to have on the site.
  • An image file of yourself that you would want to serve as the background of the site. The one I had was a simple photograph I took with my smartphone.
  • A working file directory on your computer to hold your files.

Here are the steps:

  1. Set up your site on Github. To do this, follow the steps, here: GitHub Pages – Websites for you and your projects, hosted directly from your GitHub repository. Just edit, push, and your changes are live. Check it out. Use your working file directory to store the files. Once you complete the steps, and pointing your browser at http://username.github.io works, you are going to want to personalize the site. (Note: username = the name of your userid. e.g. my userid on github is blm849)
  2. Use a repository from someone else to make the job simpler. To create my site, http://blm849.github.io, I used a repository from here: https://github.com/weightshift/The-Personal-Page. It’s great. I simply downloaded the ZIP file, unzipped the files, and copied and replaced the files in the working file directory. In your case, I would recommend you take my repository and my files and modify them. I’ll explain in a bit. My repository and my files are here: https://github.com/blm849/blm849.github.io. Click on the “Clone or Download” button and then click “Download ZIP” to do this. Like I said, download the zip file, unzip the files, put them in your working file directory.
  3. Also, copy your background image (e.g. background.jpg) into the working file directory.
  4. Now edit the index.html file in the working file directory. Make the following changes and then file index.html:
    1. On line 5, change the text between <title> and </title>. This text will appear on the browser tab when someone opens your site.
    2. For lines 41-51, replace the lines I have in here with the words describing yourself. The only HTML I used here is:
      • the <br> tag to add some blank lines before the line “My name is….”. I found it looked better when I did this.
      • the <p></p> tag to format the words into paragraphs. Again, it makes it more presentable.
      • the <b></b> tag to make my name bold. I wanted it to stand out. If you don’t, remove those tags.
      • the <a></a>tag to have links to other web pages about me. If you don’t have links elsewhere, you can remove those.
    3. On line 58, replace “blm.jpg” with “background.jpg” (assuming that the file name of your background image is called background.jpg. If it is called something else, use that file name instead.)
  5. Once you have made the changes and saved index.html,  open it with your favourite browser. (To do this, right click on the file and select “open with…” and pick your browser.) Check to see if the words are correct and the background image is correct and the formatting is correct. If not, you will have to go back and edit the file and fix your errors.
  6. Once you are happy with it, do the following:
    1. Delete any background image files in the working file directory that are not yours (blm.jpg and nh_bg.jpg)
    2. Enter: git add –all
    3. Enter: git commit -m “secondary commit with my own information”
    4. Enter: git push -u origin master
    5. Point your browser at http://username.github.io and make sure it works.

That’s it!

One final note: I recommended using my repository and not the original one I worked on. I did that because I had some problems with displaying my page on my iPhone 6s plus. I added some files and tweaked the index.html file to get it to work. By using my package and my index.html file, there are less changes for you to make, I believe. That said, I am grateful for the code from the original repository and I am making sure I credit the owner of that repository (as should you).

Zara makes good fragrance for young men


My teenage son was wanting to wear fragrance, and I found that when it comes to this, there is something of a dilemma. On one hand, low cost fragrances (e.g. under $20) smell awful. (Think fresh cut lime juice mixed with a bottle of cat urine.) Fragrances that are appealing, on the other hand, can easily cost $50, $60, $70 and more. This wouldn’t be so bad if it weren’t for the fact that teen age boys (based on my limited observations) go through a lot of fragrance.

A way out of that dilemma is to buy fragrance from Zara. The fragrances above cost around $15 and they cover a range of scents. Some have more citrus, others more floral, some have dominant woody notes. In short, you can likely find a scent he will like that won’t cost you a fortune.

Do these fragrances have the richness or complexity of a product from Issey Miyake or Tom Ford? Nope. But he’ll smell better than his buddies drenched in Axe, even if he puts on too much at first, which he probably will. Your pocketbook and the people who have to share close space with him will thank you.

P.S. The two fragrances above come from a line of Zara fragrances named after famous streets. The packaging looks like the kind you would get with high end fragrances. I recommend them. That said, Zara has a number of fragrance lines. It will likely be painful, but try and get him to go and check out the fragrances himself so he will pick one he’ll like and wear.

P.S.S. These fragrances are not just for teenage boys,  of course. Anyone can wear them if it appeals to them.

Is facadism/urban taxidermy bad?

In this piece, Are we killing Yonge Street? from NOW Toronto Magazine, there is a good discussion on what is happening to development on Yonge Street in Toronto. NOW reports that for a lot of development happening on Yonge Street, the facades of the existing building are kept and much of the development is happening behind it. The article argues that this is a bad thing, and they raise some good points.

What I think they don’t touch on are some of the alternatives. Toronto is fortunate in that there is development ongoing. For poor cities, the alternative is boarded up or demolished buildings and vacant neighborhoods.  Instead, we have neighborhoods and buildings being improved. That’s good.

Another alternative is the old buildings being torn down and replaced with new storefronts and new buidlings. I think some of that is good, but I also think preservation of old buildings is also good.

When it comes to preservation and improvements of old buildings, I also think that some of them should be preserved outright. However, Toronto is a growing city, and in some cases, we need larger buildings. In that case, facadism is a good compromise.

Now whether or not facadism is effective or not depends on at least two things. The first is how well the new architecture uses the existing architecture. Done well, the marriage of the old and new building results in something that enhances the area and preserves the city while allowing it to grow.  The second thing that determines if facadism is effective is how the new building affects the neighborhood. Here, I think, is the root of the problem. It’s not so much facadism as it is gentrification. Old buildings get preserved, but old stores do not. New developments can cause rents to rise, driving out the stores and organizations that made the neighborhood great. You get bank branches and big chain stores replacing old bookshops and cafes.

I hope the next phase of development tries to understand how to preserve not just the existing architecture, but the neighborhood as well. I realize that is a difficult task, but it is one worth trying to accomplish.

Developers and IT people: you need to have more than a good resume/CV

If you are a software developer or someone working in IT, you need to consider having more than a good resume or CV. You should consider having:

  1. an up to date profile in LinkedIn
  2. a professional web site (at least a one pager). It could be a blog, or an about.me page…something that provides information about yourself in a summary form.
  3. some repositories on github showing your work or an example of what you can do.

If you use github.io to host your professional web site, you get to cross off #2 and #3 with one effort.

I was reminded of this when I went to check out this page: DevProgress Tech Volunteer Questionnaire. You can see them asking for this information. It makes sense: if you are looking to hire a developer, it would be great to see not just what people are saying about them on LinkedIn, but what their code looks like too.

For some employees, putting code on github may not be an option. In that case focus on the first two and have a page somewhere on the web that discusses why you can’t host code there.

 

A great primer on self driving trucks that everyone should read. (Really!)

This piece, 1.8 million American truck drivers could lose their jobs to robots. What then? (Vox) is a great primer on self driving trucks and how they are going to have a major impact sooner than later.

If you are interested in IT, AI or robots, it really shows one of the places where this technology is going to have a significant impact.

If you are interested in economics, politics, or sociology, then the effect of robots replacing all these truck drivers is definitely something you want to be aware of.

If you drive on highways, you definitely want to know about it.

In any case, it’s a good piece by David Roberts. That is his beat and I find he always does a great job of breaking down a topic like this and making it easier to understand and relevant to me. I recommend any of his pieces.

The Superbook, the decline of the Personal Computer, and the future of computing

Superbook, a $99 computer project on Kickstarter, is impressive in itself. Based on the sponsorship of this project, many agree with me.

Essentially it extends your phone like a Smart Watch does, but instead of the form factor diminishing, it’s increasing. In some ways, it does what the Chromebooks do, but with the use of your phone. If it works well, it is one more nail in the coffin of the personal computer. Already tablets and other devices have distributed computing away from the personal computer. I can only see this trend increasing as displays and memory and CPUs get better. Sooner than later, the attachment of the display to the keyboard will dissolve, and people will assemble “personal computers” from a variety of tablets and other displays, keyboards, and whatever smart phones they have. The next step is better designed and detachable keyboards, along with more powerful phones. (The phone isn’t a phone anyway: it’s a handheld computer with built in telephony capability).

Networks are going become more pervasive, faster and cheaper. Displays are going to become cheaper. Phone makers are going to need to give you more reasons to buy phones. All of these things point to computing devices like this becoming more prevalent and personal computers getting further and further displaced.

You can find out more about the project, here here.

How the ‘Spicy Boi’ comments on Hillary’s Instagram shows the difficulty of dealing with trolls

To see what I mean, read this piece in NYMag, Everyone Is Commenting ‘Spicy Boi’ on Hillary’s Instagram. Note how the social networks cross over the various platforms. The social organization of this activity goes from platform (iFunny) to platform (Twitter) to platform (Instagram). No doubt at some point it will appear on Reddit, 4chan, and who knows where else. It’s very hard to deal with trolls when you have people on one platform (e.g. Twitter) trying to control things, yet you can have social groups planning raids, etc. on other platforms.

Three thoughts:

  • the comment section for big accounts on Instagram is next to useless. I wonder why it is even enabled for them? I think they should disable it, or give the user the option to disable it.
  • In many cases, the comment sections should be limited to such things as “Likes” or “Thumbs Up” or simple polls.
  • Social media needs to involve either really good AI or (better) really good people to moderate things. It can’t happen soon enough.

Want to understand what artificial intelligence and machine learning is?

If you want a better understanding of artificial intelligence or if you want to gain some insight into the future of machine learning, I recommend these two free reports, found here: Free AI Reports from  O’Reilly Media. There’s so much hype and speculation about AI: these reports cut through all that noise and they will give you a better understanding of what A.I. really is and where it is going.

P.S. If you like them, check out the many great non-A.I. related reports as well. You don’t have to be a technologist to be able to read them.

For Fans of Blade Runner and Typography

This article will surprise you if you are fan of Blade Runner: Blade Runner | Typeset In The Future. It speaks to a level of detail in the film that I hadn’t appreciated. Not just the typography, but a number of other aspects, too. I was surprised, since I had seen the film dozens of times and read countless articles on it.

Highly recommended for fans of type and especially fans of the film.

On the rise and roots of our current minimalism

Minimalism is a foreign concept to some Westerners, especially as it is practiced in parts of Japan. Indeed, this line:

Fumio Sasaki’s one-room Tokyo apartment is so stark friends liken it to an interrogation room. He owns three shirts, four pairs of trousers, four pairs of socks and a meagre scattering of various other items.

You see “interrogation room” and “meagre”, which gives you some insight into how this writer sees it. The article which this comes from (and which is linked to below) does get more insightful and you gain a better insight into Japanese minimalism, from its cultural roots to its practicality (such as the real problem of how earthquakes make home objects dangerous).

Minimalism seems to be growing as a cultural concept throughout the world, and it’s good to know more about it, how the Japanese see it, and to think about how it should differ in Western cultures. To do that, see:

Three shirts, four pairs of trousers: meet Japan’s ‘hardcore’ minimalists in The Guardian

My latest batch of technical links

Here are some things I’ve been interested in lately or that I found interesting. By the time you read this, some of them may even be dated, which is the nature of tech blogging!

My latest batch of home decor links

Image of a bedroom from Cup of Jo website

As I redo my place, I have found dozens of interesting links, mostly from  the site Apartment Therapy. There’s lots of great ideas, tips, and other news from that site. Buzzfeed Home also has some good stuff, some of which you’ll find below. (The image is a link to the Cup of Jo website. It also has some great home decor ideas, among other things.)

Before & After: Budget Bathroom Upgrade | Apartment Therapy – it doesn’t take much to upgrade your bathroom, and if you want a manageable space to redo, this may inspire you to get going on this.
Furniture Finds: 10 bold and brilliant removable wallpapers – perfect for people who want the boldness of wallpaper, but also the ability to change your mind.
Renters Rejoice: Stylish Solutions to Your Most Common Design Woes | Apartment Therapy – if you are new to decorating, this is worthwhile
The Best Plug-in Sconces (No Electrician Needed!) | Apartment Therapy – like the wallpaper, this is another good idea for people who don’t want to commit.
31 insanely clever cleaning hacks for your messy home – before you decorate, you need to clean. Use this to get your going.
Decorating Mistakes First-Time Homeowners Make – Hither & Thither  – more good advice for those starting off
Affordable Vintage Rugs – Best of Etsy – rugs make such a difference, but they can be very expensive. Use this to help with that.
5 Ways to Update Thrift Store Art | Apartment Therapy – original art is better, in my opinion, but if you have lots of walls and/or lots of thrift art you want to use up, check this out.
A Brief History of Memphis, The Design Group that Defined the Look of the 80s | Apartment Therapy – I don’t know if we will ever see a resurgence of the Memphis Design style, but in the 80s it was influential. Not everyone’s cup of tea, but interesting nonetheless.
The Kitchn’s Guide to Cleaning Your Small Electric Appliances — Cleaning Guides from The Kitchn | The Kitchn – more good cleaning advice.
A Bubbly Life: DIY Wooden Shoe Rack – this is a great, simple project for anyone. I am not sure how good it is to sit on, though. Be advised.
Small Design Details That Make a Big Impact | Apartment Therapy – a handful of good ways to simple ways to improve your living space
A First Apartment in Boerum Hill | A Cup of Jo – a great place. Lots of ideas to take away from here.
31 creative ways to hide eyesores around your home – good advice from Buzzfeed Home
31 insanely clever cleaning hacks for your messy home – good cleaning advice here
How to Make Vinegar Cleaning Spray (That Smells Good!) | The Kitchn – …and here
Grown-Up Versions of Your Favorite Teenage Decorating Trends (You Won’t Believe How Good They Can Look) | Apartment Therapy – ha! If you miss your old room, you can go back again…and reuse those ideas.
DIY Mid Century Modern Coffee Table (Under $50!) – Wonder Forest – another good DIY project. This one is especially good if you want to design a table that fits a particular place. Other than Ikea’s Lack table, you won’t find a cheaper one anywhere, save a garage sale.
25 Clever DIYs for Small Spaces | Apartment Therapy – more good do it yourself ideas.
Get the Warm Industrial Look on a Big Box Store Budget | Apartment Therapy – if you like that look, you can get it without shelling out big bucks at places like Restoration Hardware by reading this.
This is What It’s Really Like to Live in One of Those Tiny Houses | Apartment Therapy – intriguing.
Bright Ways to Beautify a Basic, Boring Bookcase | Apartment Therapy – more good ways to improve your house.
12 Useful & Beautiful Things You Can Do With Butcher Paper | Apartment Therapy – plus you can let your kids draw on the walls and not freak out. 🙂
7 Ways to Fill a Wall that Are as Useful as They Are Beautiful | Apartment Therapy – have a big wall? Here’s some good ideas to make it look great.

Want to know why it is so expensive to get tickets to special events?

Then you want to read these two really good pieces on why it is brutally tough to get tickets to an event without paying a fortune:

What it comes down to is a very limited supply and a very high demand. But that’s obvious. Read the pieces to see just how it really plays out.

More thoughts on Waze

I have thought a lot about Waze since I started using it. Without a doubt, it has improved my life substantially. Here are some other thoughts I had as I used it.

  1. Waze is an example of how software will eat the world. In this case, the world of gPS devices. Waze is a GPS on steroids. Not only will Waze do all the things that a GPS will do, but it does so much more, as you can see from this other Waze post I wrote. If you have a GPS, after you use Waze for a bit, you’ll likely stop using it.
  2. Waze will change the way cities work. Cities are inefficient when it comes to transportation. Our work habits contribute to that, in that so many people commute at the same time, in the same direction, on the same routes, each work day. Waze and other new forms of adding intelligence to commuting will shape our work habits over time. Drivers being able to take advantage of unbusy streets to reduce congestion on major thoroughfares is just the start. City planners could work with Waze to better understand travel patterns and travel behaviour and incorporate changes into the city  so that traffic flows better. It’s not that city planners don’t have such data, it’s that Waze likely has more data and better data than they currently have.
  3. Waze is a great example of how A.I. could work. I have no idea how much A.I. is built into Waze. It could be none, it could be alot. It does make intelligent recommendations to me, and that is all I care about. How it makes those intelligent recommendations is a black box. Developers of A.I. technologies should look at Waze as an example of how best to deploy A.I. Those A.I. developers should look at how best A.I. can solve a problem for the user and spend less time trying to make the A.I. seem human or overly intelligent. People don’t care about that. They care about practical applications of A.I. that make their lives better. Waze does that.

Why I love Waze. 13 good reasons why it is my favourite app


Inspired, in a way, by this article, Why I hate Waze in LA Times, I’d like to share some of the ways that Waze has made my life a lot better. 13 ways, in fact. There are more, but if this doesn’t convince drivers to use Waze, I don’t know what will.

  1. It saves me a lot of time: I used to take my son to hockey practice every week on a trip that took me 50 minutes. After talking to some other parents, I downloaded Waze. The result: my hockey commute went from 50 minutes to 25 minutes! Before Waze, I was stuck taking the major roads that were severely congested because I didn’t know what else to do. Waze recommended roads close to the roads I was on but that had no traffic problems. Over one year, I have saved hours of unnecessary commuting and saved on gas as well.
  2. It gets me to places on time: not only will Waze give you a fast route to travel, but it will tell you to the minute when you will get there. At first I didn’t think this was possible, but I was and continue to be amazed at how accurate it is. Now, before I am going somewhere, I will put the destination in Waze and know when I will arrive. No more being too early or late.
  3. It gives me options on how to get to a place: What I love about Waze is that it gives me 3 different routes to get to a place. It always recommends the fastest, but I like having the options. Sometimes it will recommend a road or a highway and I will think: I prefer to spend a bit more time and go a more scenic route.
  4. It gives me better times to travel if that is an option: Waze will also show me how long over the course of a day the route I want will take.  a 40 minute route at 4 p.m. might be a 24 minute route at 7:30 p.m. If you can shift your travel time, you can save yourself some time on the commute, according to Waze. This is a great feature.
  5. It has made me a calmer driver: I used to get anxious when I would get stuck in traffic. I’d think: God! I am never getting out of this jam! With Waze, not only do I know how long it will take to get to a place, traffic jam or not, but Waze will tell me things like: you will be stuck in traffic for 6 minutes. Now I feel much more in control of my commutes. Plus, I always know the route I am going is the best way to get to a place.
  6. It’s made me a more confident driver: one thing I didn’t like about Waze at first but now I do is that it often tells you to make left turns. Sometimes on busy streets. I used to avoid this on my own and I would go and turn at an intersection with lights. However, left hand turns save time, and the more I do them, even on busy streets, the more I realize they are no big deal. You just have to be patient and wait for an opening in traffic. It will come, often in a few seconds.
  7. It has helped me know the city better: when traffic is busy, Waze will have you going down streets you might normally skip. As I have done this, I have been amazed at how many new streets in the city I have discovered. Now, even when I don’t use Waze, I know about these streets and that knowledge helps me get around my city better.
  8. It helps you with cities you have no clue in: if you are driving into a city that you don’t know well, Waze is essential. I was driving into Montreal which has busy streets that go all different ways. With Waze I could just type in my hotel’s name and it gave me the route to get there. I had done this before Waze and it was a nightmare for me. With Waze it was easy.
  9. You don’t need to know addresses: that’s the other great thing about Waze. You can type in a name of a place and it will do a search and give you a list you can choose from. It’s perfect for when you are out with people and they say: let’s meet up at restaurant XYZ. You can enter that in Waze and off you go.
  10. It is the perfect navigator for solo drivers: I used to write down maps to help me get to places. It was ok, but not easy. It was especially difficult in new cities or driving on highways. Waze is constantly telling you how long you have to travel on a road, when you can expect to turn, and then telling you exactly where to turn. And if you miss a turn, it will recalibrate on the fly and tell you have to get back to where you need to go.
  11. It is great at night: I travel to a lot of rinks at night in the winter. Many of them are down small roads and poorly marked. I would have a heck of a time without Waze. With Waze, it is dead simple to get to the rinks. Can’t see a road sign? Can’t see the rink set far away frm the street? No problem: just follow the directions that Waze is giving you and you’ll get there.
  12. It gives you lots of time to turn: with Waze, you get lots of warning about when you have to turn. It will say: “in 1.2 kilometers, turn left….in 300 kilometers turn left….turn left at street X. ” You never have to worry about being told to turn left at the last minute.
  13. You can be flexible: Waze will suggest the fastest route. However, sometimes I will be tired or not in a rush and I will stick to a road I prefer driving down. Waze will quickly recalibrate and make additional recommendations, right to the point I arrive at my destination.

Nate Silver and Paul Krugman on the importance of good models to understand and predict

This piece by Nate Silver, How I Acted Like A Pundit And Screwed Up On Donald Trump in FiveThirtyEight, is ostensibly about how he messed up in his predictions on the rise of Donald Trump. What I think is worth reading is how he goes about his work and what he learned from his mistakes. Specifically, it’s a great study on how important models are and how a good model works and what it can tell us.

Related, Paul Krugman talks about his model here: Economics and Self-Awareness in The New York Times. Like Silver, he uses models both to understand and predict. Obviously they are modelling different things, but in both cases good models are the basis of their thinking and the work they do.

It’s likely too much to ask now, but eventually anyone doing analysis and making predictions should have to disclose the models they are basing their decisions upon. The opinions of anyone not having such models are likely not worth much.

The beauty of when science and poetry intersect

According to a post by Clive Thompson,

Recently, two scientists got interested in the poem, because they realized these two facts could be used to determine precisely what time of year Sappho wrote the poem.

The poem, the post, and the work the scientists did are all great. Highly recommended. (Click on the link to the post for more details.)

The rich stay richer and the poor stay poorer (now with data to back this up)

I was impressed by this study of economic mobility over many generations in Florence: What’s your (sur)name? Intergenerational mobility over six centuries | VOX, CEPR’s Policy Portal. They make a good case that the richer families stay richer and the poorer families stay poorer regardless of the many other changes that occur in an area.To add to this, VOX reviews it and also references a study done in Sweden that finds something similar (Today’s rich families in Florence, Italy, were rich 700 years ago – Vox).

It’s depressing, but not surprising to me. I suspect that while individuals may rise and fall in terms of economic mobility, specific families work to insure that the wealth acquired is maintained through marriage and inheritance. Worse, conditions for poorer families are such that they can never acquire enough wealth to move them from the lower percentile to a higher one.

What drives A.I. development? Better data

This article, Datasets Over Algorithms — Space Machine, makes a good point, namely

…perhaps many major AI breakthroughs have actually been constrained by the availability of high-quality training datasets, and not by algorithmic advances.

Looking at this chart they provide illustrates the point:

I’d argue that it isn’t solely datasets that drive A.I. breakthroughs. Better CPUs, improved storage technology, and of course new ideas can also propel A.I. forward. But if you ask me now, I think A.I. in the future will need better data to make big advances.

The Real Bias Built in at Facebook <- another bad I.T. story in the New York Times (and my criticism of it)

There is so much wrong in this article, The Real Bias Built In at Facebook – The New York Times, that I decided to take it apart in this blog post. (I’ve read  so many bad  IT stories in the Times that I stopped critiquing them after a while, but this one in particular bugged me enough to write something).

To illustrate what I mean by what is wrong with this piece, here’s some excerpts in italics followed by my thoughts in non-italics.

  • First off, there is the use of the word “algorithm” everywhere. That alone is a problem. For an example of why that is bad, see section 2.4 of Paul Ford’s great piece on software,What is Code? As Ford explains: ““Algorithm” is a word writers invoke to sound smart about technology. Journalists tend to talk about “Facebook’s algorithm” or a “Google algorithm,” which is usually inaccurate. They mean “software.” Now part of the problem is that Google and Facebook talk about their algorithms, but really they are talking about their software, which will incorporate many algorithms. For example, Google does it here: https://webmasters.googleblog.com/2011/05/more-guidance-on-building-high-quality.html At least Google talks about algorithms, not algorithm. Either way, talking about algorithms is bad. It’s software, not algorithms, and if you can’t see the difference, that is a good indication you should not be writing think pieces about I.T.
  • Then there is this quote: “Algorithms in human affairs are generally complex computer programs that crunch data and perform computations to optimize outcomes chosen by programmers. Such an algorithm isn’t some pure sifting mechanism, spitting out objective answers in response to scientific calculations. Nor is it a mere reflection of the desires of the programmers. We use these algorithms to explore questions that have no right answer to begin with, so we don’t even have a straightforward way to calibrate or correct them.” What does that even mean? To me, I think it implies any software that is socially oriented (as opposed to say banking software or airline travel software) is imprecise or unpredictable. But at best, that is only slightly true and mainly false. Facebook and Google both want to give you relevant answers. If you start typing in “restaurants” or some other facilities in Google search box, Google will start suggesting answers to you. These answers will very likely to be relevant to you. It is important for Google that this happens, because this is how they make money from advertisers. They have a way of calibrating and correcting this. In fact I am certain they spend a lot of resources making sure you have the correct answer or close to the correct answer. Facebook is the same way. The results you get back are not random. They are designed, built and tested to be relevant to you. The more relevant they are, the more successful these companies are. The responses are generally right ones.
  • If Google shows you these 11 results instead of those 11, or if a hiring algorithm puts this person’s résumé at the top of a file and not that one, who is to definitively say what is correct, and what is wrong?” Actually, Google can say, they just don’t. It’s not in their business interest to explain in detail how their software works. They do explain generally, in order to help people insure their sites stay relevant. (See the link I provided above). But if they provide too much detail, bad sites game their sites and make Google search results worse for everyone. As well, if they provide too much detail, they can make it easier for other search engine sites – yes, they still exist – to compete with them.
  • Without laws of nature to anchor them, algorithms used in such subjective decision making can never be truly neutral, objective or scientific.” This is simply nonsense.
  • Programmers do not, and often cannot, predict what their complex programs will do. “ Also untrue. If this was true, then IBM could not improve Watson to be more accurate. Google could not have their sales reps convince ad buyers that it is worth their money to pay Google to show their ads. Same for Facebook, Twitter, and any web site that is dependent on advertising as a revenue stream.
  • Google’s Internet services are billions of lines of code.” So what? And how is this a measure of complexity?  I’ve seen small amounts of code that was poorly maintained be very hard to understand, and large amounts of code that was well maintained be very simple to understand.
  • Once these algorithms with an enormous number of moving parts are set loose, they then interact with the world, and learn and react. The consequences aren’t easily predictable. Our computational methods are also getting more enigmatic. Machine learning is a rapidly spreading technique that allows computers to independently learn to learn — almost as we do as humans — by churning through the copious disorganized data, including data we generate in digital environments. However, while we now know how to make machines learn, we don’t really know what exact knowledge they have gained. If we did, we wouldn’t need them to learn things themselves: We’d just program the method directly.” This is just a cluster of ideas slammed together, a word sandwich with layers of phrases without saying anything. It makes it sound like AI has been unleashed upon the world and we are helpless to do anything about it. That’s ridiculous. As well, it’s vague enough that it is hard to dispute without talking in detail about how A.I. and machine learning works, but it seems knowledgeable enough that many people think it has greater meaning.
  • With algorithms, we don’t have an engineering breakthrough that’s making life more precise, but billions of semi-savant mini-Frankensteins, often with narrow but deep expertise that we no longer understand, spitting out answers here and there to questions we can’t judge just by numbers, all under the cloak of objectivity and science.” This is just scaremongering.
  • If these algorithms are not scientifically computing answers to questions with objective right answers, what are they doing? Mostly, they “optimize” output to parameters the company chooses, crucially, under conditions also shaped by the company. On Facebook the goal is to maximize the amount of engagement you have with the site and keep the site ad-friendly.You can easily click on “like,” for example, but there is not yet a “this was a challenging but important story” button. This setup, rather than the hidden personal beliefs of programmers, is where the thorny biases creep into algorithms, and that’s why it’s perfectly plausible for Facebook’s work force to be liberal, and yet for the site to be a powerful conduit for conservative ideas as well as conspiracy theories and hoaxes — along with upbeat stories and weighty debates. Indeed, on Facebook, Donald J. Trump fares better than any other candidate, and anti-vaccination theories like those peddled by Mr. Beck easily go viral. The newsfeed algorithm also values comments and sharing. All this suits content designed to generate either a sense of oversize delight or righteous outrage and go viral, hoaxes and conspiracies as well as baby pictures, happy announcements (that can be liked) and important news and discussions.” This is the one thing in the piece that I agreed with, and it points to the real challenge with Facebook’s software. I think the software IS neutral, in that it is not interested in the content per se as it is how the user is responding or not responding to it. What is NOT neutral is the data it is working off of. Facebook’s software is as susceptible to GIGO (garbage in, garbage out) as any other software. So if you have a lot of people on Facebook sending around cat pictures and stupid things some politicians are saying, people are going to respond to it and Facebook’s software is going to respond to that response.
  • Facebook’s own research shows that the choices its algorithm makes can influence people’s mood and even affect elections by shaping turnout. For example, in August 2014, my analysis found that Facebook’s newsfeed algorithm largely buried news of protests over the killing of Michael Brown by a police officer in Ferguson, Mo., probably because the story was certainly not “like”-able and even hard to comment on. Without likes or comments, the algorithm showed Ferguson posts to fewer people, generating even fewer likes in a spiral of algorithmic silence. The story seemed to break through only after many people expressed outrage on the algorithmically unfiltered Twitter platform, finally forcing the news to national prominence.” Also true. Additionally, Facebook got into trouble for the research they did showing their software can manipulate people by….manipulating people in experiments on them! It was dumb, unethical, and possibly illegal.
  • Software giants would like us to believe their algorithms are objective and neutral, so they can avoid responsibility for their enormous power as gatekeepers while maintaining as large an audience as possible.” Well, not exactly. It’s true that Facebook and Twitter are flirting with the notion of becoming more news organizations, but I don’t think they have decided whether or not they should make the leap or not. Mostly what they are focused on are channels that allow them to gain greater audiences for their ads with few if any restrictions.

In short, like many of the IT think pieces I have seen the Times, it is filled with wrong headed generalities and overstatements, in addition to some concrete examples buried somewhere in the piece that likely was thing that generated the idea to write the piece in the first place. Terrible.

29 IT links to things I am working on or interested in: AI, Python, Netscaler, automation and more

Things I am interested in or working on these days: AI, WebSphere setup, Python, Twitter programming, development in general, configuring Netscalers, cool things IBM is doing, automation, among other things.

  1. If you have the AI bug and think you want to do some Prolog programming, you need this: What Prolog implementation to choose? What’s fastest? Compatibility?
  2. Deep Learning is hot in AI. If you want more info, this is good: Deep Learning Tutorials — DeepLearning 0.1 documentation
  3. Sigh. This debate never goes away in AI: Why AlphaGo Is Not AI – IEEE Spectrum
  4. More on the hysteria that AI brings: The founder of Evernote made a great point about why AI (probably) won’t kill us all – Vox
  5. Ignore most AI hysteria, but do read this: What does it mean for an algorithm to be fair? | Math ∩ Programming
  6. Want to whip up a quick mobile app? Consider: Mobile App Builder – new service now available – Bluemix Blog
  7. For power users, there’s: How to create an insane multiple monitor setup with three, four, or more displays | PCWorld
  8. Need virtual images? Take a look at this: Images | VirtualBoxes – Free VirtualBox® Images
  9. For hardcore WAS users, this is helpful: Installing optional Java 7.x on WebSphere Application Server 8.5 (Application Integration Middleware Support Blog)
  10. A classic. Anyone tuning WAS needs this: Case study: Tuning WebSphere Application Server V7 and V8 for performance
  11. Want to learn Python? Write your own Twitter client? Or do both? Then there’s this: How To Build a Twitter “Hello World” Web App in Python | ProgrammableWeb
  12. More on programming Twitter: How To Use The Twitter API To Find Events | ProgrammableWeb
  13. Nice little project to try, here: Create a mobile-friendly to-do list app with PHP, jQuery Mobile, and Google Tasks
  14. Creating Simple Responsive HTML5 and PHP Contact Form | Future Tutorials
  15. Setting up a Linux system? Then you want to read this: Most secure way to partition linux? – Information Security Stack Exchange
  16. Want to learn Linux? This is essential! IBM developerWorks : Technical library concerning Learning Linux
  17. If you are doing performance work on Unix, you will likely use vmstat. Even if you know vmstat, this is good to review: What to look for in vmstat – UNIX vmstat command
  18. Wow! OS/2 is still alive! OS/2: Blue Lion to be the next distro of the 28-year-old – Yahoo Finance
  19. Talk about old tech! This makes OS/2 seem fresh! It’s Insane that New York’s Subway Still Runs on This 80-Year-Old Switchboard | Motherboard
  20. I was doing some work on Netscaler and found this useful in comparing the set up of one Netscaler config with another: Export Netscaler Config – NetScaler Application Delivery – Discussions. This is also useful:  Netscaler 9 Cheat Sheet.doc – netscaler9cheatsheet.pdf
  21. I thought this was a good development for everyone interested in Node: IBM Buys StrongLoop To Add Node.js API Development To Its Cloud Platform | TechCrunch
  22. Alot has changed with IBM’s OpenPOWER. Forbes gets you up to date, here: IBM’s OpenPOWER: A Lot Has Changed In Two Years – Forbes
  23. Cool stuff here: Access your Docker-based Raspberry Pi at home from the internet · Docker Pirates ARMed with explosive stuff
  24. I was using Perl scripts on Linux to send me messages to my mobile device via Pushover. This was good for that: pushover Archives – Perl Hacks
  25. I was also using WinSCP for that and this helped: Scripting and Task Automation :: WinSCP
  26. For all those trying to succeed in IT but feeling you are running into ceiling, you should read this: Tech’s Enduring Great-Man Myth or this When It Comes to Age Bias, Tech Companies Don’t Even Bother to Lie | Dan Lyons | LinkedIn
  27. Linus Torvalds is always interesting, and this is especially good: Linux at 25: Q&A With Linus Torvalds – IEEE Spectrum
  28. Very cool! Particle | Build your Internet of Things
  29. And finally some links to good stuff on UML online: Multi-layered web architecture UML package diagram example, web layer depends on business layer, which depends on data access layer and data transfer objects.

Fascinating jobs unique to specific countries

This post on Quora has a long list of jobs unique to specific countries. For example, in Iran, there are professional licence plate blockers, like this guy:
And why doe such a job exist? You will have to read this: What is a unique job that you’ve only seen in your country? – Quora

The whole thread contains dozens of jobs you can’t believe exist, but once you know something about them, they make sense. A great read.

Should you take St John’s wort for depression, and other advice on supplements

This is a wonderful interactive chart that shows you how worthwhile (or worthless) certain supplements are, based on evidence (as opposed to anecdote or worse): Snake Oil Supplements from Information is Beautiful.

If you are a fan of a certain supplement, you can use this chart to discover what it is good for. And if you have a certain health concern, you can use the chart to determine what may work and what’s a waste of money.

If you like this, check out more of the charts on the information is beautiful site. They have lots of good charts.