July 27, 2014

Tweets for 2014-07-26

  • Switched to the Yosemite Public Beta – so far so good but it's early days still :) First issue for me is that some fonts seem to be smaller. 04:29:55
Posted by Fahim at 12:07 am  |  No Comments

July 26, 2014

Tweets for 2014-07-25

  • Developers discussing not wanting to learn new tech – https://t.co/dTqHGAnzKi & http://t.co/XLDtUEv3dp I find that rather strange, myself :) 04:45:48
  • I guess learning new tech depends on your reason for learning it – some do it for the love of learning, others only if there's a "reason". 04:47:22
  • I've been developing for over 20 years and I enjoy every new language/tech that I learnt – is the key that *I* made the decision to do so? 04:50:35
  • And one from @mattgemmellhttp://t.co/3ty0aKphiQ Lots of interesting things there – commentary just won't fit in 140 :) 04:59:43
Posted by Fahim at 12:06 am  |  No Comments

July 7, 2014

Tweets for 2014-07-06

Posted by Fahim at 12:06 am  |  No Comments

June 27, 2014

Tweets for 2014-06-26

  • The Android One phones look like good travel phones – especially the dual SIM ones. Wonder when they are available outside India? 16:22:54
Posted by Fahim at 12:06 am  |  No Comments

June 16, 2014

Tweets for 2014-06-15

  • Why is it that a fair number of people seem to automatically say "Use CoreData" when you complain about trying to access SQLite C API? 18:28:51
  • If I wanted to use CoreData, I would. I don't want to. So if you don't have an answer to my question, why not keep quiet? :D 18:29:42
Posted by Fahim at 12:08 am  |  No Comments

June 14, 2014

Tweets for 2014-06-13

Posted by Fahim at 12:06 am  |  No Comments

June 12, 2014

Tweets for 2014-06-11

  • Testing Swift apps (and other iOS 8 features) on iOS 7.x – interesting and illuminating :) 18:59:16
Posted by Fahim at 12:06 am  |  No Comments

June 9, 2014

Tweets for 2014-06-08

  • Apple, Swift and the Whining (and oh, how they whine …): http://t.co/d1tkqQSOXo 07:26:41
  • Made some headway with the WWDC videos today but not as much as I'd like. Plus, I keep adding more :) 23 more videos to go. 18:38:45
Posted by Fahim at 12:07 am  |  No Comments

June 8, 2014

Apple, Swift and the Whining (and oh, how they whine …)

I am not particularly fond of iOS developers who take potshots at Android as if to prove that Apple/iOS is somehow superior. (Or to prove their loyalty to the cause? :p) It feels unwarranted and somewhat cheap. Why argue about whether a hammer is better than a screwdriver or not? Just use the best tool for the job and be done with it! Live and let live.

That said, I also get annoyed when people start talking about Apple as if everything it does is negative just because it’s from Apple. I’ll probably tune out most of these comments most of the time because some of these people just can’t seem to help themselves (and some are simply trolling :p) but sometimes, the sheer amount of illogical commentary just gets me going enough to write about it. This is such an instance :)

This is all about Swift (and people’s reaction to Swift). And oh, do I have a lot to say!

To start with, soon after the WWDC keynote announcement for Swift, I started seeing comments along the following lines:

I don’t want to learn another programming language!
(I imagine this to be said in a whiny child’s voice – I think my imagination might be slightly mean …)

That is totally your prerogative, buddy. Nobody is forcing you to learn another language. If you want to develop for iOS, you can still use Objective-C. If you don’t want to develop for iOS, then why do you care?

Why do we need another programming language? Why can’t they have used <insert language of choice here> instead?

What I find interesting about this complaint is that nobody seemed to complain when Google introduced not one, but two new languages in the form of Go and Dart. Or when Facebook introduced Hack.

Of course, to be fair, maybe somebody did complain and I wasn’t paying attention. We pay attention to things we are interested in after all – and I’m very interested in Swift. I wasn’t as interested in the other languages I mention above but I did read about each one when it was introduced. So, to be fair, let’s say some people did complain at the time and that I just don’t remember it being so. But, I do see a lot of complaining about Swift.

When I mentioned that nobody was complaining about Go, Dart, Hack etc. somebody responded with “those languages weren’t developed in secret without an open spec”. Umm … what? Leaving aside the fact that that comment might be inaccurate (with regards to the “secrecy” bit), you can’t create a new language unless you do it in public? Who made this rule? And why wasn’t I informed of it? :D

It’s simply amazing how people create new rules to justify their own complaints when they aren’t being consistent! Or is that just me being an Apple fanboy? That’s probably it, I’m a fanboy sheep who can’t understand the highly evolved reasoning behind the rules for creating a new language that obviously exist in the rarified circles of computer language designers/developers … or something :)

But it gets better. Oh yes, way, way better.

I also came across what purported to be a critique of the Swift language. The author claimed that Swift just didn’t go far enough in its changes. I was interested in reading the post because I wanted to know more about Swift. I wanted to see how it might be improved or to learn about features in other languages which were better/different/interesting.

The article started out well enough, but then we got to the author’s first point – he was not happy that Swift was mutable by default. He had some code to illustrate the point he was making, but the issue was, that that code was wrong. Disregarding the variable naming issues he had in his code, the code he provide just would not compile on Swift. Turns out that he just read the publicly available Swift book but did not actually try anything out on Swift to see if his assumptions were correct.

His justification? Apparently, he could not justify shelling out $99 to download the Xcode 6 beta. Fair enough. But then why talk as if you were an authority on a language that you’d actually not tried out? Why sow misinformation just because you assumed certain things but weren’t sure? If you are a scholar of languages, shouldn’t you know that assumptions land you in trouble? Or is it OK to just spread misinformation out there as long as you get to create another blog post?

I tweeted about the above blog post in general terms, commenting that if somebody were to do a critique of a language, shouldn’t they have at least tried it out first. The response I got to that from somebody else (not the author of the blog post) was to the effect that – “if a language is closed source or platform dependent one need not to (or cannot) try to critique”.

Huh? What? You need not critique a language if it is closed source or platform dependent? So nobody ever took a look at .NET to see how it could be improved? Nobody should examine Java more closely?

How does that compute? I asked this person that. His response? “if someone has to download an SDK of several gigs just to try a language it’s worrisome”.

Leaving aside the fact that it doesn’t even answer my original question, that makes no sense whatsoever, again. Why is it worrisome that you have to download an SDK of several gigs? If you don’t want to download the SDK, fine, don’t do it. But then don’t claim to know the language in the first place. Or, if you do want to critique the language, then shouldn’t you download the SDK and try out the language first?

Colour me confused.

But then I got more feedback/comments – “Languages should be developed independent of platforms. Otherwise there’s very little incentive for putting an effort to learn.”

Where do people come up with this stuff? Do they think that it’s somehow “noble” or “pure” to develop for open source or cross-platform languages? How does that work?

And did this person seriously believe that people don’t put in the effort to learn a language if it was platform dependent? Then how do you explain the popularity of .NET or Delphi or even Objective-C? (Of course, Objective-C is technically cross-platform and so might not qualify as a platform-dependent language …)

I asked him about the whole incentive thing and mentioned that there were lots of people making plenty of money developing for .NET, Delphi, Objective-C etc. Why were these people working with these dead-end (according to him) languages if there was no incentive for them to do so?

His response was “That’s the whole point. Closed-platforms allow select few to rake money on consulting, maintenance & training.”

Wha …….? Evil closed platforms rake in the money doing consultancy, maintenance, and training while nobody makes any money from open-platform products? How does that work? You mean nobody makes any money from open-platform, open-source languages? The poor dears. I feel so bad for these noble souls toiling away on these open languages at this point. I’m almost ready to give up raking in gobs of cash from working for the evil overlords and convert to the pure and noble cause of open languages …

Oh wait, that’s not true! None of the above is true!! What the hell? Open languages developers (probably, given that I don’t have actual figures) make as much money as developers working for closed-source, platform-dependent languages. There is no such divide as he seems to claim. In the old days, this used to be called FUD (fear, uncertainty, and doubt). Microsoft used to claim that you’d get some sort of cooties if you worked with Linux. Now apparently, the shoe is on the other foot and open-source, cross-platform developers are (or to be fair, this particular developer is) using FUD the same way that Microsoft used to. Oh, how things stay the same :)

I don’t even know who the “select few” he’s talking about are. Does he really think that there’s some shadowy mafia behind closed-source, platform-dependent language developers who go, “Hey, you, you can take this project and make this much money. But be sure to pay us our cut, capisce?”

And does that mean that I’ve been working for the IT mob all this time? How horrible! (Or how wonderful, if you’ve always loved Goodfellas :D)

Perhaps the person I talked to really believes that open-source, cross-platforms is an idyllic, Arthurian Camelot where everybody gets along and decisions are made democratically, and nobody has to bow down to a shadowy overlord. And maybe he’s right. But that’s not the reality I’ve seen myself and I’ve worked on both sides – I’ve worked on open-source, and closed source, cross-platform and platform-dependent languages. In the end, they are all just tools. (And whether I’m talking about the languages or the people, I’ll let you decide :p)

Yes, I’m straying away from the whole Swift topic. But the above conversations are real. And they illustrate the kind of logic I’ve been encountering and I guess I can either just shake my head and move on, or just jump into the fray. Or, I can blog about it :D

I really wanted to talk about this article too, but this post is already too long as it is. So I’ll save that rant for another day …

Tags: , ,
Posted by Fahim at 7:26 am  |  2 Comments

Tweets for 2014-06-07

  • Still have around 30 WWDC 2014 session videos to watch – so much goodness, so little time :) 05:29:42
  • It's a little annoying when people try to critique a language without actually trying it out. They might have valid points but I tune out >> 06:39:04
  • << once I hit the first error or assumption in their code. So wish they'd take the time to check code/assumptions … 06:39:42
  • semi-colons and @ signs, I really have to teach myself not to type those automatically anymore :D 08:31:55
  • If Google introduces Go or Dart, or Facebook introduces Hack, nobody asks why another language. But if Apple does it, cue the cannons :D 09:37:39
  • If you're learning Swift, you really need to take a look at the Playgrounds session video from WWDC 2014. Very interesting stuff :) 11:25:07
Posted by Fahim at 12:08 am  |  No Comments

Next Page »