Hans Pinckaers

Why I do not ridicule the gluten-free diet

Tons of people swear by the gluten-free diet. Saying that gluten is bad for your health is ignorant, just as saying that it’s healthy. There are a ton of people who have undiagnosed celiac disease for which eating gluten results in pain and altered bowel movements and for which the gluten-free diet helps. Laurie Laforest wrote a good summary about the evidence behind gluten-free diets on the Science-Based Medicine blog. In short: there isn’t enough evidence yet that non-celiac gluten sensitivity exists, however, if you suffer from abdominal pain and your symptoms resolve with a gluten-free diet you should get tested for celiac disease.

People who do not suffer from condition for which glutens should be avoided, but who feel better not eating them, aren’t lying. Although it’s easy to ridicule these people, there is probably another reason why they feel better. Maybe their focus on food results in feeling good about what they eat, feeling in control. By complying to a gluten-free diet, you start thinking about what you actually put into yourself. By consciously deciding what to eat, they are reminded with every bite how healthy their lifestyle is. I can imagine that makes you feel better. I wish I had the discipline not to take that last piece of cheesecake and hate myself afterwards.


Low-sodium diet linked to mortality

A recent study in the New England Journal of Medicine reports that too much salt is bad for you, which we kinda expected. However too little salt intake is just as bad, which goes against the widely used advice to patients with high blood pressure to adhere to a low-sodium diet.

The lowest risk of death and cardiovascular events was seen among participants with an estimated sodium excretion between 3 g per day and 6 g per day. Both higher and lower levels of estimated sodium excretion were associated with increased risk, resulting in a J-shaped association curve.

Martin O’Donnell, M.B. et al. Urinary Sodium and Potassium Excretion, Mortality, and Cardiovascular Events (NEJM 2014; 371:612-623)

These studies always makes me afraid that a lot of medical protocols are actually based on general wisdom among physicians instead of real evidence. We may think we understand enough about pathofysiology of diseases to guess what treatment will result in the best outcomes, but this study underlines the need for actual studies, even for therapies that just seem too logical not to do. Which makes me wonder: are we even close to genuine evidence-based medicine?

Why you should stay in school to win

It is my honest belief that our educational system strips young people of their creativity. When you know what the rules are, you end up playing within them, so when you haven’t even read the rulebook, you have no choice but to do things your own way. Sometimes those things don’t work out, but sometimes you do something that would have been considered unacceptable by the old rules, and it works perfectly. You’re considered “disruptive” or “rogue” when in reality, you’re just doing what makes sense in that moment.

Gary Vaynerchuk in “I Failed All My Classes and that’s Why I’m Winning”

I admire the way that Gary presents and most of the things he says make sense. But in my opinion he doesn’t quite hit the nail on the head here. To be truly disruptive you have to know the current rules, know what could be improved and be able to move without the heavy luggage bigger companies generally have. If you try doing things your own way, without learning from the past, you have a high risk of repeating mistakes that already have been made. It is very important to know the “it has always been done this way”-rules in order to disrupt. Disruption happens not when someone doesn’t know the ‘current’ rules, but when they don’t make sense to him. You need the freedom to use other rules, to move quickly – something bigger companies often lack.

Motivation for a crowded app category

There has been some talk lately about crowded app categories. As you may know some app categories, such as to-do or weather, are overpopulated in the App Store. However developers are still writing new apps for those categories every day. I found myself in the same position when developing my chess game En Passant. Let me explain why a lot of developers, including me, are motivated for these crowded categories.

First of all, these categories run the gamut in terms of quality. There are a ton of really bad and mediocre apps, only a few relatively good ones, yet the most polished apps can often be counted on one hand. One reason these categories have so many apps is that everyone has a different use case for this type of apps. What I’m looking for in a to-do app may differ greatly from what you want. Even the best polished apps cannot serve everyone’s needs.

Next to that, it is noticeable that (new) apps in these categories primarily serve their respective developers’ needs. Looking at other categories – say, medical apps – you will find an even lower, almost non-existing, amount of good-quality apps. This is because developers are likely to notice room for improvement in apps they use daily themselves, thus investing more time bettering their apps. I’m the same: as a developer, I’m way more driven to work my ass off for apps that solve my own problems.

Therefore, because even the best polished apps lack functionality and developers love to work on their own problem, the constant feeling of “I can do better” arises. This feeling is the biggest motivator of all, even bigger than, say, money. The best apps I wrote started out with my frustration with apps I felt I could have done better.

Next time you encounter an “I can do this better”-thought, don’t be thrown back by the number of existing apps. Start developing; it will probably become one of your greatest apps.

I recently launched En Passant. Give it a try: it’s free on the App Store.

Multi-line/Autoresizing UITextView similar to SMS-app

I’ve been tinkering around the last days, creating a multi-line UITextView. I wanted a SMS-app like experience and needed a growing (and shrinking) textView. I tried using three20′s TTTextEditor, but it disables the bounces of the scroll (which is ugly) and has this big white margin on the bottom when you scroll down manually. So I needed a UITextView which grows/shrinks with the text always on the bottom and a bouncing scroll. This blog post described how it is done. (It is not up to date, this was written in the days of iOS, check GitHub for the latest version)

Read the rest of this entry »

Routes/Lines on a MKMapView
(as a MKAnnotationView) – Part 2.5

First, I should credit Craig for his example of drawing lines on a MKMapView (http://spitzkoff.com/craig/?p=108), that’s where you can find part 1 and part 2. This post is a teaser of what I am going to post later this month. It’s a improvement on his code and makes overlays on a MKMapView possible without the need to hide it when zooming/panning around.

Read the rest of this entry »

How to create a UITableViewCell with “copy” ability (< iOS 5)

It’s possible to copy the content of a UITableViewCell in the Contacts app of Apple. When you tap and hold you will see a small menu with “Copy”. I needed this functionality myself, so I subclassed the class. You are free to use this in any application, but it would be awesome if you mention me in the credits of your App.

Read the rest of this entry »

Custom action on Back Button UINavigationController

Yes! There is a way of using the backBarButton with a custom action. No, it’s not by overriding the backBarButton property of navigationItem. This is not an ugly solution with images that simulate the “Back”-button (arrow-shaped.) It’s possible to use the backBarButton for popping the current viewController as normal, but for example with other animations such as UIViewAnimationTransitionCurlDown.

Read the rest of this entry »

Reproducing an UITableView like in Stocks/Spotlight/Weather (< iOS 7)

Here is a solution. The advantage of this one is that it is fast, but it’s not that easy and straightforward. Read the rest of this entry »

Multiple NSURLRequests with different cookies (asynchronous)

I searched the whole internet for a solution but I didn’t find one answer to this problem. I managed to get it to work. My problem was that I had several NSURLRequests who had to connect to one webservice, without an API, so I had to login behind the scenes with the provided login form from the normal website. This webpage uses cookies, but the NSURLRequest object on the iPhone uses a shared cookie storage. I wanted to use different accounts on one webservices with each their own cookies.

Read the rest of this entry »