Why Do You Think, We Have To Put Up With This?

I just have three questions. Why do you think, we have to put up with this?

  • The inability to run an operating system of choice on a mobile device
  •  The restrictions on what language we can use to build mobile apps
  •  The restrictions on how to distribute your apps

Is it capacity constraints of devices? I don’t think so. We ran much more powerful kernels in smaller amounts of memory.

Is it the lack of a reference design (for hardware)?

Is it because mobile operating systems need to work under different assumptions?

Is it because there is no Apache like organization for mobile operating systems?

Is it because mobile is heavily linked to the cloud?

Why can’t I write my app in PERL or Python or  C or any other language? On Android, it is Java (yeah I know about SL4A) and on IOS it is Objective C, both pretty yukky languages for rapid prototyping and innovation. And the alternative is html5 and Javascript? Wow!

Why do we, as an industry keep walking into these dead ends? I am surely missing something here.

Want to be an Innovator? Take a Look At This Document.

This document  is certainly worth a read.

The key ingredient for great innovation is not great ideas but great innovators.  And what makes a great innovator is a rare combination of passion, skills, tenacity and fortitude needed to slog through the process of prototyping, testing, refining and rejecting ideas until they hit on a combination that works.

It starts with a this compelling, provocative statements:

 

 

And I am not going to pollute it with my comments now. Read the doc and let us have a conversation. Here is the link .

Why Math Can Be Hard (for some people)

There was a long discussion on why Math is hard (for some people) in this talk on Thinking. It was a fascinating discussion. Some notes and quotes.

Why do some children find Math hard to learn? I suspect that this is often caused by starting with the practice and drill of a bunch of skills called Arithmetic—and instead of promoting inventiveness, we focus on preventing mistakes. I suspect that this negative emphasis leads many children not only to dislike Arithmetic, but also later to become averse to everything else that smells of technology. It might even lead to a long-term distaste for the use of symbolic representations. – Marvin Minsky

“Math know-how is cumulative, which means it works much like a stack of building blocks. You have to gain understanding in one area before you can effectively go on to “build upon” another area.” – from Why Math is Hard

Some comments from the students from the class and my own questions.

  • One student thought that Math was considered hard because lot of others thought it was hard. He attributes it to the Social Influence.
  • Lack of a cognitive map of the subject. What is it? Why are we learning it? What is it used for?
  • Math is the opposite of commonsense which other subjects leverage, to some extent. Is it too abstract? One student mentioned that he thought of Math mostly in terms of procedures.

There may be many other reasons. It will be great to see why.

Meta:

I loved Math. Not sure why. I was lazy as a student and this was  one subject in which your return on investment in time was very high. May be because,  I had great Math teachers and I learned and liked the subject.  Now after almost 40 years, I want to go back and understand it better, dig deeper and get that “Cognitive Map” , Marvin Minsky talks about.

If you are interested in digging a bit deeper, these links and books may help

What makes Mathematics hard to learn?  A very good article by Marvin Minsky

Why Math is Hard from About.com

Letters to a Young Mathematician (about college level Math) by Ian Stuart

What Is Mathematics? (Just started reading it)

The Hacker Way

A couple of days ago, I posted a couple of paragraphs from the O’Reilley book I am reading – Machine Learning for Email on my Facebook page.

What is a hacker? Far from the stylized depictions of nefarious teenagers or Gibsonian cyber-punks portrayed in pop culture, we believe a hacker is someone who likes to solve problems and experiment with new technologies. If you’ve ever sat down with the latest O’Reilly book on a new computer language and knuckled out code until you were well past “Hello, World,” then you’re a hacker. Or, if you’ve dismantled a new gadget until you understood the entire machinery’s architecture, then we probably mean you, too. These pursuits are often undertaken for no other reason than to have gone through the process and gained some knowledge about the how and the why of an unknown technology.

Along with an innate curiosity for how things work and a desire to build, a computer hacker (as opposed to a car hacker, life hacker, food hacker, etc.) has experience with software design and development. This is someone who has written programs before, likely in many different languages. To a hacker, UNIX is not a four-letter word, and command-line navigation and bash operations may come as naturally as working with windowing operating systems. Using regular expressions and tools such as sedawk and grep are a hacker’s first line of defense when dealing with text. In the chapters of this book, we will assume a relatively high level of this sort of knowledge.

Today, I find a reference to The Hacker Way,  in this article on Facebook IPO and got this text from the IPO document and felt that it is worth preserving and sharing.

The word “hacker” has an unfairly negative connotation from being portrayed in the media as people who break into computers. In reality, hacking just means building something quickly or testing the boundaries of what can be done. Like most things, it can be used for good or bad, but the vast majority of hackers I’ve met tend to be idealistic people who want to have a positive impact on the world.

The Hacker Way is an approach to building that involves continuous improvement and iteration. Hackers believe that something can always be better, and that nothing is ever complete. They just have to go fix it — often in the face of people who say it’s impossible or are content with the status quo.

Hackers try to build the best services over the long term by quickly releasing and learning from smaller iterations rather than trying to get everything right all at once. To support this, we have built a testing framework that at any given time can try out thousands of versions of Facebook. We have the words “Done is better than perfect” painted on our walls to remind ourselves to always keep shipping.

Hacking is also an inherently hands-on and active discipline. Instead of debating for days whether a new idea is possible or what the best way to build something is, hackers would rather just prototype something and see what works. There’s a hacker mantra that you’ll hear a lot around Facebook offices: “Code wins arguments.”

Hacker culture is also extremely open and meritocratic. Hackers believe that the best idea and implementation should always win — not the person who is best at lobbying for an idea or the person who manages the most people.

 

Do you know of similar quotes? Send me comments. Meanwhile, whenever I come across a quote on Hackers and their ways, I will try to update this post.