January 2013 Archives

2013-01-29 20:40:35

The Apple Experiment: Conclusions

At this point I've used the iPhone continuously as a main phone for a month in a row. I've made serious attempts to replicate all workflows I used on my Android phone, with varying results.

Holding it Wrong

The first thing you'll notice is that data transfers appear to be really slow over GSM most of the time. It's ok for reading Twitter using the app, but if you open a web site it can take a number of minutes before you finally have at least the text to read in front of you. Under the same conditions, the Android phone could load the web site in a matter of seconds (still slow, but it's mobile, so well). Using the same carrier, of course.

There's the old joke that people are simply holding the iPhone wrong. I think it was Steve Jobs who came up with this joke when he was still alive. Either way, I tried various ways of holding the phone, including upside down, and nothing would improve the page loading speed.

To add to the pain, the iPhone interpretes touchscreen presses which arrive while the screen is darkened (to announce impending screen lock). So if you tap somewhere on the screen to keep it awake while loading the page, it suddenly follows some not-yet-displayed link and you'll never see the page you wanted to go to.

An additional annoyance is the switch to turn sounds on and off. It is generally a good idea, however, you will always end up switching sounds on and off like mad with your pocket.

Which brings us to the general point that the iPhone hardware is incredibly fragile. Android devices appear relatively sturdy with their gorilla glass. If you drop them by accident, they aren't usually damaged. If you drop an iPhone on the floor, the glass will typically be shattered, and worse effects may occur.

Multi-singletasking in Mind

One of the biggest points you will notice quite quickly is that there is an enormous lack of integration of the different apps. Imagine for example that you want to share a link to something. You have Twitter, Google+, Delicious, Soup (well ok, they don't have an iPhone client), mail, chat, etc. on the phone. However, there is no common sharing dialog like in Android. Every App has to integrate all those programs itself in its own sharing dialog. This means that you can only share to whatever the App writer was aware of.

Likewise, there are no URL namespaces. If you get a Google Docs link in mail (not GMail, which tries to work around this), it will be opened in the browser. YouTube links? Open them in the browser. Google+ links? Open the browser, too. It would be much more valuable to use the dedicated apps for those purposes instead so people can use the service more efficiently, especially given the painfully slow page loads.

To address this problem, App implementors have written the most useless workarounds. If you click on a link in the Twitter app, a new embedded browser will be launched inside Twitter, because Twitter doesn't want to lose everything which was currently open. That makes sense for Twitter, but not as a whole, especially since that embedded browser lacks some controls and is really awkward to use. Especially as you now have two back buttons. And you can't switch to a different tab from the main browser instance, because it is not the browser.

Another issue is copying and pasting. Just like in early Linux days, it works part of the time and sometimes you get inexplicable results. Some Apps just don't seem to care though and just don't offer copying and pasting. I would have expected this to work ok in anything implemented after 1993.

To add insult to injury, apps which don't get the focus for a while are quit. This is quite annoying when you use a Jabber client on the phone, because you have to get it back into the foreground every couple of minutes to prevent it from quitting and being disconnected. As a workaround, many Jabber clients send you push notifications a minute or two before they're terminated. But that's nothing more than an ugly, annoying hack and far from the nice integration of Jabber clients as background tasks in Android.

Notify … but about what?

Notifications (”push messages“) are another issue where the current solution is unbearable. It appears that every app has its own notification process which cannot communicate with the main process. This goes even as far as to add a counter to the app icon. For example, you have 2 Twitter notifications. They are displayed on your screen lock, although truncated. You unlock the screen and find that the Twitter icon has a small ”2“ besides it, indicating that two unread notifications have been received.

Then you open Twitter and you don't see anything at all. It doesn go to the replies tab because apparently the App doesn't know you want that. You open the replies tab and realize it doesn't have your reply yet because it hasn't been reloaded since the message arrived. Given that Twitter ran in the background, that's kindof logical, but it isn't helpful and not a way in which I would want to implement my Apps. And it doesn't just affect Twitter: it's everywhere! TweetDeck has it, Mail has it, GMail has it, even the App Store has it. If we're fetching all that data for the notification, why can't we just have it in the app as well? What kind of notifications are those? Especially given the poor data transfer rates of the iPhone you really don't want to wait for all your replies to be downloaded again.

Even worse, it's quite difficult to actually follow notifications because when you click on one, all the others tend to go away. So you will know that something happened but you have no way of following up without looking through your phone and installed Apps. Why?!

And since I mentioned the icon: there is no reasonable way to sort a list of generic things other than alphabetically. The phone knows the language of the user and thus the sorting alphabet to use. Yet all apps appear in the order in which they have been installed. That's cool if you just installed something, but in a few days you won't remember if you installed SecureChat before or after pterm. So either let the user categorize the icons into desktops, with grouping functions, all by themselves, or don't assume anything and just order the icons alphabetically. I know that SecureChat comes after pterm in the latin alphabet.

If you buy an iPhone, you must be rich

Another really big minus is the pricing of iPhone apps. On Android, you get a great variety of good apps for free. For example, you have ConnectBot, a decent SSH client which someone implemented. People like to share stuff for Android for free. And the average Android app in the market costs CHF 1.99, so not terribly expensive.

On the iPhone, the general idea appears to be ”You paid a lot of money for your phone, so you can pay a lot of money for your Apps“. The most reasonable SSH client appears to be pTerm, which costs CHF 5.-. It's merely a port of PuTTY to the iPhone, so it's based on Open Source software, yet you pay more for it than you pay for a loaf of bread.

The regular iPhone port of the RealVNC viewer is sold for CHF 10.-. It's even twice as expensive as the already-expensive SSH client. It costs more than a loaf of bread and a decent piece of cheese. Nagios clients cost between CHF 15.- and 20.-. A client for a web interface which lets you view fields and click buttons.

In this respect the so-called ”Genius“, a function in the App Store which advertises you Apps you could buy, becomes even more ridiculous.

Welcome to the iCloud, where everything

And then there's the iCloud. I already mentioned all the fun I had with trying to create an account there. Once I had my account I couldn't import my calendar from anywhere. Because why would you want to do that? Now that you have an iPhone you can make totally new, more shiny friends!

Then I tried exporting an ical file from a web site and importing it into iCloud. The phone didn't really know what an .ics file is supposed to be, so I tried using the web interface. It's full of fancy features for creating calendar events, but the one thing it cannot do is importing calendars. The data is siloed in the iCloud, no communication with the outside is permitted. No matter which way.

What went well

There are two things iPhones are really good at. The first is good support for customer apps by companies. For example, Crédit Suisse so far only released their online banking App for iPhones, not for Android. The same goes for the german institute Deutsche Bank.

(On the other hand, small indy apps like Soup tend to be more widely available on Android.)

The other thing is podcasts. Apple has had a lot of time to implement a good podcast App, and so far there appears to be no good equivalent for Android. There are some podcast apps, some of which even work ok. But none of the tested ones have the comfort of the Apple Podcast App at this precise moment.

Conclusions

It is possible to use the iPhone as ones primary device for a period of time. However, the discomfort of doing so and the various annoyances suggest it is not a good idea. I was extremely happy when I could finally pick up my Galaxy Nexus and use it again. All in all, the iPhone feels like the bad phone hardware from 2005 mixed with an operating system from 1993, which is not a very pleasant experience.

Especially given the high price, required involvement (owning and maintaining a Mac, buying MacOS upgrades, buying an iPhone, buying apps, etc.) and the high risk of damaging the phone, it seems a rather questionable investment.

In my opinion, the iPhone needs a couple of years to come to the same level that other phones already have. The entire operating system needs to be better integrated (like Linux desktops, for example). The hardware needs a revamp and needs to catch up with recent developments like gorilla glass and covered switches, or more sturdy hardware in general.

Flattr this

2013-01-29 02:32:44

Gender Liberalism: what got us here won't get us there

A frequently promoted strategy for tackling the issue of world hunger is liberalism. Just like any other -ism, it takes an idea to its extreme. And the idea is that you basically just need to make everything in the market equal, and equal opportunities for everybody are the result. So far though, there appear to be major gaps between the ideals and the actual results: people are still starving as you're reading this, on this very planet.

The same principle is frequently promoted as a solution to the problem of gender equality. Basically, if everybody agrees that it's ok to hire women into technical jobs, we will no longer have a huge bias in this job area.

There are many reasons why this doesn't work, and none of them is inherent to our species in any biological aspect.

Education for failure

Education of women is a vast topic and basically starts with a childs first breath. Because that's precisely the moment when we start learning new things, regardless of our gender. Starting from their birth, the child will observe its environment very closely and make observations. Those are not only based on its own family and things people say, but also actions. For example, if all women around the kid never pick up a hammer to build something themselves, and all men do, the kid concludes that hammers are for men. This gets even worse if Daddy keeps taking hammers, or for that matter, keyboards out of Mommys hands and does things for her. Very bad impression, don't do it for the sake of your kids future.

In the life of an average girl, there are more aspects preventing a more informed relationship with technology though. For example, there's all these people telling girls that technology is not meant for them or that they wouldn't be good at it. (Fatal misinformation; various women I know are extremely skilled at building things.) Even worse, the cognitive processes of a woman are set up to expect failure in those situation by people telling them that they are going to fail anyway. And especially when people tell them ”I told you you wouldn't make it!“.

Everybody fails. Girls do, boys do, hermaphrodites do and whoever else you could possibly think of does it too. Failure is normal. Failure gives you an opportunity to analyze what you did and improve it. And improvement is good, after all. This is the message which needs to be carried whenever somebody fails, regardless of the topic and other questions like gender.

No-opportunity learner

There are other ways parents set their girls up to have less of a chance to succeed in technology. A frequently observed pattern is to deprive them of the opportunities to learn. We all know of various cases where a boy was playing Doom 3, World of Warcraft, whatever computer game you can imagine all day on his own computer and would just be left alone. Likewise, I know of many cases where girls were using the family computer (because they never received their own one) to try and write programs or attempt to install server software to try and run their own test server, and were told after two hours to get away from the computer.

”You are spending way too much time in front of that computer! Go play with your friends or take a walk!“

These stories are from girls who actually made it as far as to write a program of their own or run their own web server on localhost. It's hard to imagine how many girls never get there because they don't have enough time in front of the computer to figure it out before they get frustrated. Or because they're not allowed to run their own software on the family computer. Sure, some of this also hits boys, but excessive use of computers by boys is more widely accepted.

Peer Pressure away from what Matters

The time in school is typically spent around a group of other girls who are already frustrated with technology and a group of boys and teachers who throw around the same old phrases which discourage involvement with technology. Such an environment, just like all of the previously mentioned environments, is toxic to any interest in technology.

There's not just the circumstance that no other member of the peer groups will want to be involved in having fun with technology. Additionally, any involvement will be punished verbally (”What, you're playing with computers? Eww!“). And even boys who appreciate some involvement with technology frequently choose words which are more of an insult than a compliment (”You're doing this quite well for a woman“).

If you ever worked in different types of environments, you might have noticed the effect yourself. If you're surrounded by unmotivated people and people who aren't very skilled at what they're doing, they are slowing you down too, and you will never get as much done as you usually would. Even worse, you will learn a lot less over the years, because the typical tasks are scaled down for the size of the average mind in the team. So if you're the most intelligent person on the job, you're not very likely to grow (except perhaps in leadership skills).

On the other hand, if you surround yourself with people who are better than you at something, you will learn a whole lot from them, and your productivity and learning curve will appear to be boundless. You will start to feel like you've never seen the world so clearly.

This is however not the typical environment of a girl in school. Typically, they're surrounded with other girls who don't want to have any contact with technological challenges. So the mind suffers.

And then there's the problem that most boys aren't very well trained in not assuming leadership, and that teachers don't attempt to teach that skill either. So when people work in pairs on a computer or work bench, boys tend to take the keyboard or dremel away from the girls, and generally take a more commanding role in the team. This means that the girls tend to get less to do and just watch the boy fulfill his task. She only gets the tasks the boy assigns to her. And typically, proper judgment isn't applied in those situations.

No Hire!

Life doesn't end with school. Eventually, girls become women and will start looking for a job. And there, part of the problem is that hiring for tech companies is frequently done by members of management who consider themselves technical. In tech startups, it is even done by technicians themselves. Thus, this area, too, is male dominated.

And now women are struck by the same problem foreigners are. Studies have shown that recruiters are significantly more likely to hire people who are more like them, and in case of male recruiters that would be men. Unfortunately, this means that more men will become tech recruiters in the future. And it makes women less likely to find a tech job. This produces gaps in the CV which are filled either by unemployment or non-tech jobs, where women have an easier time getting hired.

Unfortunately, the same recruiters will then hold this against the applicants. If they didn't spend all of their time on tech jobs, it will be assumed that their lives are unsteady, making them less likely to get the tech job. This means that women in technology get less tech experience through jobs on average. Add to that all the prejudice against women for having the capacity to become pregnant, which is another big reason why they don't get jobs. Or the prejudice that women are more prone to depressions — who wouldn't get depressed with such terrible prospects?

No Heavy Administration

And even on the job itself there are problems. If a woman takes a job as a sysadmin, for example, it is not infrequent that her male colleagues are reluctant to assign some of the heavier server-lifting work in the server room, because it's a male-dominated domain and muscles are invovled. So the men alone carry the server into the server room, mount the rack slides, slide it in, hook it up and start the installation (unless automated away, which is happening way too rarely, but that's another point).

So in many companies, only the menial tasks of clicking up 1000 similar users or making coffee are left to the women. And the effects are devastating: I've seen women with a diploma in computer science and a CCNA certificate working for an ISP who were making coffee and carrying files from office to office. Because only men were entering the server room. Ever. This of course means that even though these women are on the job, they are refused the privilege to gather experience.

This has even wider effects when it comes to upgrade training courses. Women who fell into the trap to be kept away from the real experience may be perceived by management and human resources as not yet having achieved their full in-house learning potential. So they might not win the fight over the few free seats in that network management course, because a male colleague already has a lot of experience and is perceived as the superstar who's just the right network administrator.

Of course, none of the points mentioned above apply necessarily to all women. Some of them get more lucky and end up in a really great company where they can do good stuff and gather a lot of experience. I am happy for every one where this is the case. The purpose of this article is to point to these effects and to outline their consequences.

What can we do better in hiring then?

Even though women are inherently as capable as men, the effects mentioned above have serious consequences. They mean that, unlike with a man, you cannot generally expect a woman interested in technology to have gathered a lot of experience at home and during childhood. There are simply reasons why some of them cannot take advantage of their childhood to gather tech experience. The same is by the way true for men who grew up in extremely conservative families who banned all use of technology from their homes, and the likes. So if in doubt, you should always treat the applicants as such.

It also helps to be more lenient on the CV. Women might have gaps in their tech career, or even not have worked at all for monthes. This might be because someone was looking at their application, just like you, and made some wrong decisions.

Another point is experience. Typically, if someone was working on a job for a longer time, you expect a certain level of experience from them. And you will check if the experience of the applicant matches your expectations. For example, a man who worked as a wind tunnel engineer for 5 years is expected to be able to make a lot of good estimations about aerodynamics, or to make good designs just from his good judgment.

Since however women in tech are frequently left with the menial tasks, this means that a lot of the time they never had the chance to gather as much on-the-job experience as you would expect from a man who has worked the same time on the same job. Be it because she wasn't allowed to operate the wind tunnel, or be it because her colleagues always took away her keyboard when something important happened.

So you cannot trust the regular rules for past experience and career development. Still, you have to find some metric to determine if the applicant is going to be a valuable resource to the company or not. After all, you don't want to just hire anybody. So what can you do to determine if the applicant has what you need?

The question you should ask yourself is a question which should generally be asked more frequently in job interviews. ”Does the applicant have the ability to learn what she needs on the job?“

Most of the time this is a very interesting question which is widely neglected. Most companies are different and run different applications or produce things in a different way. Experience can give you a lot of help in learning the ways of your new job, but it is in no way all you need. All these companies which throw out a list of 50 words the applicant must be familiar with forget that the company will probably have their very own framework built around PostgreSQL or something like that. It is much more important that you determine whether or not the applicant will ever learn to use your framework.

Good tech employees always learn on every job. It should be the biggest and most verified part of the job description. If people don't learn on their job, the job is evidently boring and the person should get a more suited one.

Please note that women quota aren't covered in this text because I have no idea about this topic. Whether or not they are a good idea, I hope that mankind will follow whichever path yields the better result.

Overprotectiveness?

You may have noticed that what is written above is quite controversial. It basically says that women need special treatment, must be nourished and brought on to the jobs, and that you should keep your expectations lower. This typically raises the suspicion that women indeed aren't up to the job and aren't hired for their skills. And when they are hired, they have to wonder if they're really good enough or if they just got the job because of gender questions.

The answer is: if you manage to find an employee who can learn your ways quickly and understands what needs to be changed and how, it is a very good employee, regardless of the gender. But right now we have this gap and all the effects associated with it which pull very forcefully to keep the gap open for as long as possible. In order to bridge over this gap, some special treatment is required for some amount of time until we just truly work together in an environment which is free of prejudices and provides equal opportunities to members of any gender or non-gender.

Right now, we're unfortunately too far from that to just ignore the whole problem and wait for it to go away on its own.

Flattr this