Archive for June, 2010

Is StackOverflow hitting its limits?

Tuesday, June 29th, 2010

An interesting critique of Stack Overflow:

A Community of Specialists
As more developers find themselves unable to contribute to already solved or discussed problems, they must rely on their more specific skills for any opportunity to answer questions. In certain communities, (*ahem* .NET *ahem*) this is totally fine, and there are enough entrenched specialists to create a sort of ‘feedback loop’ — any esoteric questions they may have, someone else may have the answer for, and vice versa.

If these niche communities don’t have a critical mass of users asking interesting or useful questions, you get the opposite effect: a sort of ghost town of sparse activity. In these neglected pockets, questions usually can be classified into a few fairly useless categories. You have the “what is this bug idiosyncratic to my machine setup” questions, which don’t really do much for the actual software development side. You have the person asking obvious questions that could be answered by a quick check of an online manual. You also have the person asking you to basically do a specific implementation of something for them. These are time-intensive questions, but they are often the only ones that won’t get poached by someone else while you’re writing your answer, and are the best chance to actually improve your reputation. Or how about the “how do I implement this one jQuery plug-in that maybe 30 developers have ever used on my site” people? And then you have all the people getting their questions closed because they were already addressed. These are often in combination with each other, with optionally indecipherable Babelfish English. The worst, though, is probably the users who have a question about a bug that’s really only a code smell. They’re not willing to accept that they’re approaching the problem the wrong way, and refuse to accept a thoughtful answer and helpful recommendation if it involves too much work or isn’t what they want to hear. This isn’t usually a problem in the higher-traffic communities, because the amount of users reading questions and voting on answers is high enough that the opinion of the question-asker doesn’t really come into play. Less trafficked disciplines become too dependent on answer acceptance.

So that’s too bad. Every month or so I’ll look up questions about natural language processing, the Zend Framework, or other things I’m interested in, only to find myself in a desert of less than useful questions — not useful for me to answer, not useful for me to read. And all the stuff on the front page, of course, is for framework- or implementation-specific Java and .NET, and getting a lot of action. Of course this is to be expected, right? But it didn’t always used to be that way — I swear. So how did it get that way?

The Fatigue
Stack Overflow uses ‘reputation’ points and an achievement system to promote high activity among its users. I think that as the opportunity to increase your reputation and your number of achievements dwindled, so did a lot of user activity. There’s a plateau you hit there where you either have to devote way too much time to help other people do their work, or you just fall out of it. When you do, you don’t have a lot of incentive to get back into the game.

Early in Stack Overflow’s history, a need for knowledge engineering and a community with growing rules skewed the amount of reputation points towards early adopters. Games of code golf, “what’s your favorite programming comic strip” threads, and “What language should I start learning now” threads made it way too easy to attain points without actually demonstrating real knowledge or expertise. Obviously, there are users with tens of thousands or hundreds of thousands of reputation points who actually earned most of them by demonstrating expertise. But how do I tell them apart from the people who had the funniest joke about Ruby programmers, posted a few Dilbert comic strips, and then went after a series of low-hanging fruit with well-formatted responses?

Understand the problem you face by talking or writing about it

Tuesday, June 29th, 2010

Interesting bit about solving problems by writing them out, or talking them out:

By talking to yourself (again, words or paper is good – words may be better because of how unusual you may experience the sensation), your conscious brain gives a clear set of instructions to your other-than-conscious brain. You ask yourself the question and often answer it very quickly yourself because the totality of your resources (conscious and unconscious) are now engaged to a common endeavour (and in most cases, you knew the answer to the problem: it just needed unlocking by you being clear with yourself)

Brain scientist Jill Bolte Taylor takes the essence of this a big step further in her book, My Stroke of Insight, when she says ‘From my perspective, the focused human mind is the most powerful instrument in the universe, and through the use of language, our left brain is capable of directing (or impeding) our physical healing and recovery

On a connected use of articulation (left brain/ right brain), related to my previous post on rules for personal productivity, some great advice from Harvard Business on How to Write To-Do Lists that Work – the second section is all about providing sufficient detail in a ‘to-do’ on a to do list as you would if you were instructing a personal assistant.

Criticism of functional languages

Tuesday, June 29th, 2010

Ben Rady offers some criticism of functional languages. Everyone in the comments seems to respond with “Try Clojure!”

My problem with the functional programming cure to this problem is that I haven’t seen a cure yet that’s better than the problem. Maybe it’s me. Maybe my tiny Ben brain just can’t comprehend the magic and majesty of OCaml, but every time I’ve tried to learn a new functional language, it’s ended it disaster. First with Erlang, and then Haskell, I’ve now had two aborted attempts to understand the supposed cure to the concurrency problem. The languages are just too complex, too terse, and absolutely full of academic shitheaddery. I mean, seriously, what the hell.

If your concern with the death of Moore’s law is that you won’t be able to afford/find skilled programmers to scale your systems using multicore processors, these are not the droids you’re looking for.

But even if you’re got a bunch of really sharp developers on your team, I’m not sure this is the solution either. Message based architectures (especially asynchronous ones) are good, pretty easy to understand, and easy to test. Shared state in concurrent systems is a pain, and you shouldn’t do that. Interprocess communication is relatively easy through various methods. Whether you’re using an object oriented, pure functional, or hybrid language, these things are true. And while it might be possible to ignore thread safety problems by just working in a purely functional language, I think you’re just trading one kind of complexity for another. And if you’re working in a hybrid language, what assurances do you have, really, that your system is really thread safe? Indeed, the risk compentation effect might give you a false sense of security, giving you a system that actually had more concurrency problems that one written in a “dangerous” language.

I think the downfall of some of these languages is that they get wrapped up in being “functional” rather than focusing on solving a particular class of problem. They abandon convention and common sense for complex type systems and functional purity. You can have an actor model architecture without using a functional programming language. You can avoid shared state in any modern language (even JavaScript). These things are not synonymous with functional programming.

Why is LinkedIn content to just coast?

Tuesday, June 29th, 2010

Back in 2008, everyone knew that LinkedIn would have a good year, due to the recession. People burnished their online resumes and looked for new jobs. So LinkedIn has seen some big growth in numbers. But, aside from that, it seems to be just coasting. When was the last time LinkedIn introduced a feature that dazzled you? It seems to just drift along, occasionally implementing the stuff that Facebook has already done.

I like this bit about why a new CEO was brought in:

While I have no inside information, here is what I think happened:

The $53 million round was the pre-IPO round and there is no IPO market in the near future. Now the VCs have no quick flip on their investment and have to live with the company for several years (grumpy VCs)

Remember those pitch books and promises you make to the VCs–they remember. Mr Nye, the now former CEO of LinkedIn, probably did not fulfill his plan
LinkedIn has a large, fast growing membership, but the members do not use the site very often (I have not been there in six months for any amount of time)

By the nature of its membership model and “closed community”, LinkedIn missed the trend toward sharing information

Most of its new features on LinkedIn are me-too copies of things that have been on Facebook for a long time

With several failed initiatives, LinkedIn has no real, believeable go forward strategy. The recent hire of a senior Google executive to take charge of product development at LinkedIn supports this conclusion

I also like this bit about how much LinkedIn is stagnating:

Lesons to be learned from LinkedIn:

Acquisitions rarely work (Cisco would be a notable exception)

Focus on improving the customer experience when investing new capital

Recognize that mobile is just a delivery mechanism and it is not a new strategy for growth; focus on the user experience and content and be platform independent

I don’t have anything against LinkedIn or the management. I just become incensed when a great franchise is “squandered”. It is very difficult to find and develop a great franchise and it should be treated with a care and respect similar to what you hopefully give your children. I have the same feelings about Microsoft abusing their franchise, but I will leave that to a future post or post mortem.

Why I hate Gmail, reason #435

Monday, June 28th, 2010

Ugh! I hate Gmail. I wrote an email and sent it to the wrong address, so of course the mail daemon at the other server bounced it back to me. I did not need that error message from the mail daemon cluttering up my inbox, so I deleted it. Then I went to my “Sent Mail” folder to get the email that I just sent, so I could correct the email address and resend it. And it is not there! It was deleted when I deleted the error message! Gmail deleted the whole “conversation”.

This is one of many reasons why I prefer traditional interfaces like what is provided by Thunderbird. I want to deal with specific email, not abstract concepts like “conversations”.

So, then I go to the Trash and recover my email. But I can not recover just the email I want, I have to recover the whole “conversation” including the error message that I want to get rid of.

I hate Gmail. Sometimes when traveling I have to use it, but I hate it.

Import substitution lead to healthy economic growth

Sunday, June 27th, 2010

I was suckered again. Funny how that happens. Something seems like common sense to me, but then for 20 years it is out of fashion, and even people I respect go along with the fashion, intelligent people too, people who are correct about a lot of other things, and in the end I get suckered and decide to ignore what seems like common sense and I go along with what is fashionable. And then, finally, the evidence emerges that what seemed like common sense was, in fact, true, and the theories that people have been promoting for the last 20 years were no more than a pack of sophisticated lies.

So, here is a common sense statement that is also true: import substitution lead to healthy economic growth.

…Focus on the differences between the periods of import-substitution (IS, 1950-1975) and Washington Consensus (WC, 1990-2005). What do we see?

Labor productivity under IS grew at a rate that is double the rate under WC.

The rate of labor productivity growth within sectors (the component identified as “within” in the chart) was comparable under the two policy regimes.

The worse overall performance under WC is accounted entirely by the fact that there was much less desirable structural change — labor moving from low to high-productivity activities — under WC than under IS.

We already knew 1, and I have long suspected points 2 and 3 to be true as well. But I had never seen the facts laid out so clearly.

Here is what seems to have happened:

For all its faults, IS promoted rapid structural change. Labor moved from agriculture to industry, and within industry from lower-productivity activities to higher-productivity ones. So much for the inherent inefficiency of IS policies!

Under WC, firms and industries were able to accomplish a comparable rate of productivity growth, but they did so by shedding (rather than hiring) labor. The displaced labor went not to higher-productivity activities, but to less productive lines of work such as informality and various services. In other words, the WC ended up promoting the wrong kind of structural change.

This account reinforces the centrality of structural change in driving rapid economic growth. It should also cause us to be wary of productivity studies that focus on what is happening within manufacturing alone. After all, productivity within manufacturing can be stellar, but if manufacturing or other high productivity sectors as a whole are rapidly shedding labor, economy-wide productivity performance will be disappointing.

What comes after the prototype?

Sunday, June 27th, 2010

On LinkedIn, Nitin Singh asked what comes after the prototype. My response:

What matters is how fast you can get feedback and act on it. You need to figure out a marketing message that works. That means you need to start talking to whoever you imagine as your ideal customer. You need to find out if they’ll actually behave in the manner that you need them to behave.

Do not worry about other people stealing your idea. You have to assume that a 100 other entrepreneurs are going to have the same idea as you. You will have to beat them on execution, not on the idea itself. If you can not execute better than others, then just give up now. In a normal startup, each worker has 2 or 3 great ideas every week. I’ve heard fantastic ideas for businesses, while working on something else. Do not get distracted. Ideas are a dime a dozen. What matters is how fast you can get feedback and act on it.

Stay clear about your overall goal. Above all, be disciplined in your execution. Avoid the mistakes I mention here:

http://www.teamlalala.com/blog/2008/11/12/how-much-do-websites-cost/

At all times, remain critical of your own idea:

http://www.teamlalala.com/blog/2009/04/06/the-importance-of-having-a-negative-attitude/

Assuming you are working with web developers, urge them to adopt strategies that allow your idea to work quickly. Urge them to avoid those development strategies that are theoretically correct and pure, but which involve a lot of up front expense:

http://www.teamlalala.com/blog/2009/11/07/are-corporate-programmers-bad-for-startups/

As fast as possible, get feedback from your potential customers, and build that into the next iteration of your service. Assume that your initial idea is only 50% perfect, and your goal is to get it to 90% perfect (which will be better than any of your competitors). You need to adopt a development style that allows for fast response to feedback:

http://www.teamlalala.com/blog/2008/12/12/iterative-design-processes-help-lower-risk/

Avoid venture capital, especially in the early stages. Find some way to to make money immediately, or keep costs to what you can afford to pay out of pocket:

http://www.teamlalala.com/blog/2009/08/29/the-venture-capital-model-is-broken/

Critically, the way you describe yourself is the way you think about yourself. And that influences behavior:

http://www.teamlalala.com/blog/2009/02/01/for-startups-careful-study-is-better-than-a-unique-creative-idea/

Avoid these 17 mistakes:

http://www.teamlalala.com/blog/2008/11/19/mistakes-that-startups-make/

The American public first praises people, then heaps scorn on them

Sunday, June 27th, 2010

A very good post by Alex Marshall:

I was aware 10 or so years ago, when Sammy Sosa, Mark McGuire and others were slamming 50, 60 and 70 home runs a year, that players were juicing themselves up. Even an idle glance at the sports page revealed that baseball teams, unlike the National Football League and the Olympics, were not requiring mandatory testing for drugs. Surely people knew what that would lead to. Even a blind man could see that something was going on, as these heavily muscled sluggers faced beefy pitchers and knocked balls out of the park.

A few years later came the steroid scandals, and eventually various players were hauled before courts and Congress and grilled for their use of illegal performance enhancing drugs. As these scandals continued, the attitude of both the public and officials reminded me of the inspector in the movie Casablanca, who pronounced himself “shocked, shocked to find out that gambling is going on.”

But wait a second. If I, a non sports follower, realized what was going on surely more astute observers did as well. When it was convenient, the public, the press and the officials collectively averted their eyes from steroid use. They worked hard not to see something. Later, again when convenient, they cast scorn on those same players, the very ones once cheered.

I think something similar happened with Robert Moses.

Moses, who now symbolizes power run amok and bad urban planning, was extremely popular for most of his career from the 1920s to the late 1960s. The public loved the speed with which he built the Triborough Bridge, Jones Beach and hundreds of other parks, highways and bridges. The efficiency with which Moses and his men performed his tasks stood in contrast to the sclerotic nature of New York state and city government in general at that time. In the early part of Moses career, New York City was still under the Tammany hall Machine, while New York State was no modicum of efficiency.

In this light, in this context, Moses stood out as a savior.

But as he was doing things, people surely knew, or should have, that he was cutting corners, pushing people around, and bending and breaking rules. And in the later part of his career, as Moses pushed more and more freeways through the middle of dense urban neighborhoods, displacing hundreds of thousands of people, there was also an awareness, or should have been, that he was taking one line of action — roads — too far, doing more damage than good.

37 Signals gives bad business advice

Friday, June 25th, 2010

This is a great bit of criticism aimed at 37 Signals:

What’s with the Strident Insistency(SI)?

It is clear that Mr. Fried has not had exposure to all of these varied “real reasons” for hiring. Mr. Fried has not seen 100′s of companies in different stages of growth with different risk/opportunity sets. The more you read from Mr. Fried and the 37Signals cohort, the more you start to feel that every article should be sub-titled:

Advice On How To Run Our(37Signals) Business.

Or:

What We’ve Learned On How One Should Run Our(37Signals) Business.

It’s fine to write up all these things as anecdotes or amusing stories if you have an audience for it, but why package this Pernicious Lack of Perspective (PLP) as advice?

And why with such a Strident Insistency (SI)?

Where does the “I-know-better” and the “they-just-don’t-get-it” tone come from?

The reason speculated is interesting too:

Unfortunately, I think the answer is: Chicago. I’ve lived in Chicago. I lived there for a few years. It’s a great town with great institutions(UofC). It is also a town where it seems like everybody works for the Chicago Park District (or is working on their uncle for a slot). It’s a town where discussing neighborhoods you’ll still hear things along the line of “it’s where a lot of the young people live.” And as far as those young people, if they work in tech at Motorola in “Schaumburg” or do IT at a law firm—hell, you’ll practically own the town.

It’s in this environment that Mr. Fried and the 37Signals cohort, “came into their own.” They had money coming in, they figured things out, on their own, and they became successful—they even attracted fans!

…This gives a person a fat head. And the business environment contributes: all the old school companies that have suites in the same building as Mr. Fried’s, the old school companies that all of candidates Mr. Fried interviews work for and all these Park District Employees everywhere, desperately searching for a shrub to trim. I am sure Mr. Fried eventually wanted to scream, “They don’t get it! What the hell are they doing with their lives!?! Can’t they see what I see??”

…It’s nearly impossible to get that idea in SF. In fact, quite the opposite. Usually what one comes away with is “Danm, how the hell did they do that?” It’s a common experience to be at a social soiree in SF, maybe feeling good because you’ve busted your ass for the last 2-years and got your revenues up to $1 million per year and they’ll be somebody from not-quite-a-competitor-but-kinda-in-your-space and you’ll be talking and they’ll mention “we’re going to do $10 million this year.” Eventually that happens enough and you really get the idea, that if you ever did come back to that party with $10 million in revenue, you are going to bump into the guy that’s working at the company doing $100 million.

This sums it all up:

The foible of piquing one’s ego once in a while aside, in the end, the galling from Mr. Fried and the 37Signals cohort, comes from that potent combination of Pernicious Lack of Perspective (PLP) with Strident Insistency(SI).

I recall discovering the 37 Signals blog around 1999 or 2000, when they were still a design shop. I thought their insights on design were fantastic. Later, they transformed into a web software/service company, and, at first, their advice about business was very intelligent. Circa 2004, I felt they understood how to build a business on the web better than 99.9% of everyone out there giving advice. Since then, they have gone downhill. They are a textbook case of people who were ruined by early success. Since they seemed to have everything figured out by the age of 25, they adopted the pose of gurus whose every thought was a morsel of purest genius. And yet, its been about 5 years since they said anything that struck me as really original, interesting or transformative.

I own you, and you are replaceable

Thursday, June 24th, 2010

Another memo demonstrating harsh management. Via Hacker News.

What bad management sounds like

Thursday, June 24th, 2010

From a business perspective, there are ideas in this memo which may have merit. They probably deserved a rational discussion by sane human beings. However, as presented, the meta-message overwhelms the message, and the meta-message is “I am feeling panic. I feel that my company is out of control. I am feeling emotional, stressed and overwrought. If I lash out at someone, it will make me feel better, therefore I will lash out at my managers. I am out of control, and unable to control my anger, fear, disappointment or frustration.” When you work at a company that has a leader like that, the only rational thing to do is quit.

From: Patterson,Neal To: DL_ALL_MANAGERS; Subject: MANAGEMENT DIRECTIVE: Week #10_01: Fix it or changes will be made Importance: High To the KC_based managers: I have gone over the top. I have been making this point for over one year. We are getting less than 40 hours of work from a large number of our KC-based EMPLOYEES. The parking lot is sparsely used at 8AM; likewise at 5PM. As managers — you either do not know what your EMPLOYEES are doing; or YOU do not CARE. You have created expectations on the work effort which allowed this to happen inside Cerner, creating a very unhealthy environment. In either case, you have a problem and you will fix it or I will replace you. NEVER in my career have I allowed a team which worked for me to think they had a 40 hour job. I have allowed YOU to create a culture which is permitting this. NO LONGER. At the end of next week, I am plan to implement the following: 1. Closing of Associate Center to EMPLOYEES from 7:30AM to 6:30PM. 2. Implementing a hiring freeze for all KC based positions. It will require Cabinet approval to hire someone into a KC based team. I chair our Cabinet. 3. Implementing a time clock system, requiring EMPLOYEES to ‘punch in’ and ‘punch out’ to work. Any unapproved absences will be charged to the EMPLOYEES vacation. 4. We passed a Stock Purchase Program, allowing for the EMPLOYEE to purchase Cerner stock at a 15% discount, at Friday’s BOD meeting. Hell will freeze over before this CEO implements ANOTHER EMPLOYEE benefit in this Culture.

Aren’t you worried about getting bored?

Tuesday, June 22nd, 2010

I love this paragraph:

A job fills the time. This isn’t relevant to me, but I’ve heard a few times “Won’t you get bored without a job?” This is so far outside my conceptual space I didn’t even think of it. If you are worried about being bored without a job, first try cutting TV out of your life and see how you find ways to fill that space. A job is a TV that takes up even more time.

I also like these:

A job is working on someone else’s schedule. I was expected to be productive for eight hours in the middle of the day, five out of seven days a week. This doesn’t match my natural rhythm. Some days I can work for fourteen hours, others I just need a day off. If I work in the mornings only, I don’t need a weekend. I’m really keen to explore different modes of working to find what is most productive for me.

A job means you have to show up. Forty hours of every week were sold to someone else. That’s a huge opportunity cost. I couldn’t put everything on hold for a few days to chase a new idea. I couldn’t use the burst of energy I get often when I had a great idea late at night, because I had to be up early the next day.

A job is working on someone else’s dream. This isn’t necessarily bad—helping people achieve their dreams is fantastic—but those dreams didn’t align with my own.

Get your product out the door. Fast.

Tuesday, June 22nd, 2010

The Point becomes Groupon. Interesting:

If it hasn’t been driven home enough, failure can often provide the types of lessons that lead to future success. The Point swallowed their failure, abandoning their original goal of changing the world through the power of groups and honed in on a small segment of their original idea. They revolutionized deal discovery and amassed a $1.85 billion valuation, all by making things simpler and focusing on what people actually wanted.

Problems with MongoDB

Tuesday, June 22nd, 2010

Interesting report on the problems with MongoDB:

Speaking of Mongo… here area a few things I do not like about Mongo besides the lack of stability, and why I am going back to Mysql

Lack of Transactions – there is simply no way to create a transaction as of yet, this is my biggest need.

Missing Records – I lose probably about 5-10 records a week, I can sometimes get most of them back if I take the site down, and run a db.repair.

No means to do any joins, though I must agree, it ends up much quicker this way.

Schema-less, although this is the main reason I moved from Mysql, it is the same reason I am moving away from it. I always (usually) test my code, however, sometimes small things get missed. I noticed that some of my data was incorrect… it turned out that I had a typo in my table selector, and it automatically created another table with my typo. (More descriptive: I had two tables: Balances and Balancse). I had to create a migration program to move data from ‘balancse’ and merge it into ‘balances’ Perhaps there is a way of stopping this, but I just didn’t like the fact that it would just create anything on the fly. I am simply not perfect, and I will make mistakes, therefore, I’d rather see an error when the table, or field doesn’t already exist.

Unstable Replication – I have had nothing but problems with the replication, however, I should admit- they do get fixed and pushed into the latest ‘stable’ version all the time.

Not stable… after using MongoDB for a few months, I have come to the realization (which I already knew) that Mongo is new, bleeding edge, and is nowhere near stable. I am doing a server reboot every few days as there are still memory leaks on the process.

Anonymity has more in common with cowardice than with courage

Monday, June 21st, 2010

Interesting:
:

Like faint praise, anonymous criticism is empty criticism. Consider a recent example from The Chronicle Review. Carlin Romano’s article “Heil Heidegger!” was savaged in numerous anonymous comments. “Romano writes like an undergrad convinced by the argument of the last book he has read,” wrote one critic. “And, yes, he is a professor of philosophy, and yes, he was a Pulitzer Prize finalist, but his understanding of philosophy is so paltry that it beggars belief.” To that and other similar comments, Romano responded: “Those who savage me and my article from behind anonymous Internet tags emulate the cowardice, dishonesty, and taste for mobbing of the Nazi thinker they revere. It has often been that way with dupes who defend Heidegger—an abysmal thinker and writer, an immoral monster, and a disgrace to the historic enterprise of philosophy.”

Whether or not one agrees with Romano’s views of Heidegger, his take on anonymity is worth thinking about. Anonymity has more in common with cowardice than with courage—and is antithetical to critical dialogue. The common rationale for academic anonymity is quite clear: Honesty and truth require anonymity. To offer critical judgment anonymously, or, as Michel Foucault puts it in The Archaeology of Knowledge (Pantheon Books, 1972), as “a nameless voice,” allows one to stand outside the order of discourse, dialogue, and language. Writes Foucault, “I don’t want to have to enter this risky world of discourse; I want nothing to do with it insofar as it is decisive and final; I would like to feel it all around me, calm and transparent, profound, infinitely open, with others responding to my expectations, and truth emerging, one by one.” In other words, anonymity is more calming and less risky—or even more cowardly—than named criticism.

I think anonymity on the web is important because it gives whistle blowers a way to tell the public about facts that the public needs to know. However, I personally dislike anonymity in any conversation that I’m a part of. I always use my own name when I engage in a conversation online. Search my name online and you will find hundreds of posts on subjects of every kind – political, cultural and technological – going back to the 1990s. I am now embarrassed by many of the arguments that I made, and I am often embarrassed about the tactless way I put things, but that is the whole point of using one’s own name – it means you have to take responsibility for what you write.

I like this conclusion:

We need to grow thicker critical skin. Why? Because critical behavior that always results in a chorus of affirmation is nothing more than conformity; because allowing views to persist that need to be challenged is nothing less than critical mediocrity; and because failure to tell our colleagues what we truly think about their work is simple dishonesty. A reshaped critical culture will help build a more robust, honest, and transparent academy.

Math only exists in your head

Monday, June 21st, 2010

Interesting:

3. Science in fact answers comparatively few problems. We have the illusion that science has answers to most of our questions, but this is not so. From the earliest of times man must have pondered over what Truth, Beauty, and Justice are. But so far as I can see science has contributed nothing to the answers, nor does it seem to me that science will do much in the near future. So long as we use a mathematics in which the whole is the sum of the parts we are not likely to have mathematics as a major tool in examining these famous three questions.

Indeed, to generalize, almost all of our experiences in this world do not fall under the domain of science or mathematics. Furthermore, we know (at least we think we do) that from Godel’s theorem there are definite limits to what pure logical manipulation of symbols can do, there are limits to the domain of mathematics. It has been an act of faith on the part of scientists that the world can be explained in the simple terms that mathematics handles. When you consider how much science has not answered then you see that our successes are not so impressive as they might otherwise appear.

4. The evolution of man provided the model. I have already touched on the matter of the evolution of man. I remarked that in the earliest forms of life there must have been the seeds of our current ability to create and follow long chains of close reasoning. Some people [11. H. Mohr, Structure and Significance of Science, Springer-Verlag, 1977.] have further claimed that Darwinian evolution would naturally select for survival those competing forms of life which had the best models of reality in their minds-”best” meaning best for surviving and propagating. There is no doubt that there is some truth in this. We find, for example, that we can cope with thinking about the world when it is of comparable size to ourselves and our raw unaided senses, but that when we go to the very small or the very large then our thinking has great trouble. We seem not to be able to think appropriately about the extremes beyond normal size.

Just as there are odors that dogs can smell and we cannot, as well as sounds that dogs can hear and we cannot, so too there are wavelengths of light we cannot see and flavors we cannot taste. Why then, given our brains wired the way they are, does the remark “Perhaps there are thoughts we cannot think,” surprise you? Evolution, so far, may possibly have blocked us from being able to think in some directions; there could be unthinkable thoughts.

My sense is that math does not model the universe, it only models human’s understanding of the universe. In the old debate between Karl Popper and Thomas Kuhn, I’m strongly on the side of Kuhn – science does not discover the truth about the universe, it does give us useful models with which we can do useful things. And the same can be said of math – it teaches us nothing about reality, but it helps us build models that allow us to do useful things.

Why is love so awful?

Sunday, June 20th, 2010

This is great:

It makes the most sense to begin with a clarification of terminology – what do we mean by “romantic love”? Almost 3 decades ago, in 1978, Elaine Hatfield wrote a seminal book on the topic of love – teasing apart passionate and companionate love. She defined passionate love as “a state of intense longing for union with another” and companionate love as “the affection we feel for those with whom our lives are deeply entwined”. Around the same time, Dorothy Tennov was trying to answer the same question in her book “Love and Limerence” and, similar to Hatfield, quickly differentiated between the “love” that is sincere concern and caring as opposed to the “love” that is fiery, euphoric and ephemeral. But Tennov realized that there is something more irrational and complex about this latter kind of love than what Hatfield described. Tennov coined the term “limerence” for the latter so as to be able to discuss it as a concept separate from “love”. She noted that “love” is an emotion that is acted on, while “limerence” is more of a transformed state that people go into (the difference in the proverbial “I love you, but I’m not in love with you”). After interviews with hundreds of individuals who were “in love”, Tennov put together a list of the symptoms of limerence:

1) Intrusive thoughts about the object of passionate desire (the “limerent object” or LO)
2) Acute longing for reciprocation
3) Mood becomes dependent on the LO’s actions
4) Inability to react limerently towards more than one person at the same time (except when limerence is at low ebb)
5) Unsettling shyness and fear of rejection when in the presence of the LO
6) Intensification through adversity (up to a certain point)
7) Acute sensitivity to any act or condition that could be interpreted as favorable
8) An aching of the “heart” (a palpable heavy sensation in the front of the chest)
9) Buoyancy (a feeling of “walking on air”)
10) An intensity of feeling that leaves other concerns in the background
11) A remarkable ability to emphasize the positive traits of the LO, while rendering the LO’s negative traits as “endearing” to the point where it is perceived to be another positive trait. — (pg. 23)

The central paradox of limerence is that someone who is actively limerent feels like they are experiencing the most unique, rapturous experience in the world even though limerence seems to have fairly universal characteristics (at least in Western cultures, although it could be argued that traditional Asian cultures do understand limerence but don’t use it as a basis for marriage). In fact, as Tennov noted, there is a very well-rehearsed cultural script for falling in and out of limerence: the initial buoyancy, the ensuing anxiety and self-consciousness, intense distraction and euphoria, usually followed by a devastating disillusionment. Everyone knows this script.

And one reason why we know this script so well is because we’ve been hearing about it since we were children. We have all gone to bed as a child with the freshly-told fairy tale story still bubbling in our mind. Marcia Lieberman has criticized fairy tales as conditioning girls into becoming submissive women who believe that beauty and docility are the only traits that are rewarded in life, but in her essay “Some Day My Prince Will Come”, she also points out something very interesting about romantic love itself. Most fairy tales end with the “happily ever after” clause, but these same fairy tales almost always have the protagonist come from a broken family. Either one of the parents is dead, missing, or there is an evil step-parent. These fairy tales imply that romantic love leads to happy marriages and yet all the families that they portray are broken. The paradox of love in fairy tales is that everyone ends up happily ever after, but no one seems to be happy. The “happily ever after” of love is always emphasized, but never shown.

How much can you learn from a CEO’s salary?

Sunday, June 20th, 2010

Kyle Bragger writes:

I have a really hard time absorbing this at face value. Here’s the relevant quote from the article: (emphasis mine)

The lower the CEO salary, the more likely it is to succeed. The CEO’s salary sets a cap for everyone else. If it is set at a high level, you end up burning a whole lot more money. It aligns his interest with the equity holders. But [beyond that], it goes to whether the mission of the company is to build something new or just collect paychecks. In practice we have found that if you only ask one question, ask that.

Alright, so if you’re looking to evaluate a startup’s chances of success, just ask them how much the CEO makes. Right.

I respect Peter Thiel, but I just can’t seem to digest this one. Granted, he does also say “…it goes to whether the mission of the company is to build something new or just collect paychecks.”, but it seems like that is, in his mind, secondary to the CEO’s pay rate.

What ever happened to looking at the team, their vision, their track record, how well they’re executing, is the product solid, etc. Do those things matter when trying to predict the success (or not) of a young company? I guess not. I do believe that CEOs of early stage companies should not be taking gargantuan salaries, but to say that that should be the only factor when evaluating a startup’s chances of success, well, I just can’t stomach that one.

My sense is that Kyle is reversing cause and effect. It does not matter how good a product a startup says it has, since most startups have to change all the time. Remember that Twitter started off with a content management system, and then had to change direction and become more of a message platform. Why did Twitter do so well whereas Pownce did not, when Pownce started off with all the advantages? The initial product is meaningless. The initial business plan is meaningless. Execution matters, but how do you measure it? What is the simplest metric you can find for discovering the cohesion of the team? The salary of the CEO is a great metric in that regard – public, certain, and revealing.

What is the benefit of college to entrepreneurs

Saturday, June 19th, 2010

I can recall in high school my teachers used to say “You need to get good grades so that companies will want to hire you.” And I used to think in reply “But I am going to be self-employed, so why does it matter?”

Interesting post from Caterina Fake:

Fred Wilson and I, on the way back from an Etsy board meeting, were talking about how many entrepreneurs had dropped out of college. Rob Kalin, Etsy’s founder, never finished college. Evan Williams, Biz Stone, Jack Dorsey — the founders of Twitter — are not college graduates. Mark Zuckerberg, Facebook founder, is another dropout. And of course Steve Jobs and Bill Gates. As an angel investor, I’ve invested in two college dropout founders this month. What gives?

College works on the factory model, and is in many ways not suited to training entrepreneurs. You put in a student and out comes a scholar.

Entrepreneurship works on the apprenticeship model. The best way to learn how to be an entrepreneur is to start a company, and seek the advice of a successful entrepreneur in the area in which you are interested. Or work at a startup for a few years to learn the ropes. A small number of people — maybe in the high hundreds or low thousands — have the knowledge of how to start and run a tech company, and things change so fast, only people in the thick of things have a sense of what is going on. Take a few years off and you’re behind the times. Some publishers have asked Chris to collate his blog posts on entrepreneurship into a book, but he said, What’s the point, it’d be out of date by the time it hit the bookstores.

The advantages of knowing one thing well

Sunday, June 6th, 2010

Interesting:

He gave me an answer that is one of the most important sentences I have ever heard:

“What do I know about selling motorcycles? I know about selling bodies, that’s what I do, it’s what I’m good at, and I’m not going to throw away all I have learned over these years and do something where I have absolutely no experience.”

Nowadays, a few years later, in this internet business, I see people constantly making the mistake that that Indonesian gigolo would not make. They are jumping about and moving from one business to another. For example, you’d see someone who made a web app to teach languages suddenly show up with a web app for designers or so. That’s inconsistent. There is little overlap between the two areas – you can move the technical knowledge across, but the business knowledge does not apply.

Is it okay to learn jQuery but not know Javascript?

Thursday, June 3rd, 2010

Over on LinkedIn, Steve Suranie writes:

In my office we were discussing how there might be a whole generation of programmers who have no knowledge of the core capabilities of something like javascript because they lean on frameworks to do the heavy lifting all the time and do not want to take the time to dig deep into the language they are using. I’ve even seen on message boards where someone has suggested an outright javascript solution to a problem and been ridiculed for not using jquery or mootools to solve it. …if a framework can do something I want to know how it is doing it. Taking this approach has really upped my knowledge of both PHP and Javascript.

My reaction: It is impossible to know everything. And can I point out how very ironic it is to imply that getting to know a light-weight scripting language such as Javascript is somehow putting you in touch with programming fundamentals?

I picked up programming in the 90s. Mostly I learned through light-weight scripting languages: Applescript, Hypertalk, PHP, Perl, etc. At the time the bias was still very strong that none of these were real programming languages. In the 90s, many older programmers still held the attitude that if you were not programming in C (or at least Java) then you were not doing real programming.

The argument about low-level languages versus script languages didn’t really end till 2005, when Ruby On Rails took off, and when suddenly a whole generation of C and Java programmers began looking for the productivity boost they felt they could get from Ruby. The turning point was around the time that Bruce Eckel wrote: “The departure of the hyper-enthusiasts“:

The Java hyper-enthusiasts have left the building, leaving a significant contingent of Java programmers behind, blinking in the bright lights without the constant drumbeat of boosterism. But the majority of programmers, who have been relatively quiet all this time, always knew that Java is a combination of strengths and weaknesses. These folks are not left with any feelings of surprise, but instead they welcome the silence, because it’s easier to think and work. Where did the hyper-enthusiasts go? To Ruby, apparently.

Now it is 2010.

Personally, I wish I knew more about XML, Unicode, SCSI, USB, ActionScript, JavaFX, Eclipse, Ant, Hibernate, R, Groovy, Clojure, multi-variate regression, population decay models, Adobe’s script APIs, Oracle, MySql, linear transformations, the limits of floating point accuracy, Moo tools, statistics, jQuery, PDFlib, Drupal, HTML5, UNIX sockets, email headers, Sendmail, Objective-C, MEL, the iPhone API, Amazon’s cloud services API, Intel’s instruction set, Ethernet, IP, ssh, Cisco routers, wifi, Samba, Lisp, NSF, C, Ruby, PHP and a lot more.

I’m not even listing the non-technical stuff I would like to learn, like the history of China, the German language, the human genome, etc.

And every subject has sub-subjects.

When I write “I wish I knew more about XML” you can assume I mean the many dialects and their uses:

OWL

RDF

Atom publishing

Google’s extensions to Dublin Core

When I write “the limits of floating point accuracy” I surely also mean:

standard error detection methods

standard rounding practices

recovering accuracy from lost data

finding the limits of allowed accuracy for a given sparse matrix

etc

However, I do not have time to learn it all. I move through the world knowing that there will always be an infinite amount that I do not know. I need to make myself comfortable with that. To be effective at work, I know I need to go along with the trend toward highly productive, light-weight script languages.

Therefore, it makes perfect sense to me to learn jQuery, but not Javascript.