Yearly Archives: 2011

December 30th, 2011

Don’t manage memory in PHP

Interesting:

PHP’s foreach is a very neat and to-the-point language construct. Still some people don’t like to use it, because they think it is slow. One reason usually named is that foreach copies the array it iterates. Thus some people recommend to write:

Source

December 28th, 2011

Amazon is unfair to its Kindle partners

This is a surprising story, wherein Amazon seems to casually break its contract to demand more money from a company that sells through Amazon:

M-Edge’s success and recognition by Amazon should have been news to celebrate, but a lawsuit filed by M-Edge paints a very different picture. Here’s the background information summarized from the lawsuit:

October 2008: M-Edge start selling Kindle jacket paying Amazon’s standard 8% commission

February 2009: M-Edge enter “Kindle Compatible” agreement with Amazon taking their commission payment to 15% ...

December 27th, 2011

The loves of Ayn Rand

Interesting:

While Greenspan (tagged “A.G.” by Rand) was the most famous name that would emerge from Rand’s Collective, the second most well-known name to emerge from the Collective was Nathaniel Branden, psychotherapist, author and “self-esteem” advocate. Before he was Nathaniel Branden, he was Nathan Blumenthal, a 14-year-old who read Rand’s The Fountainhead again and again. He later would say, “I felt hypnotized.” He describes how Rand gave him a sense that he could be powerful, that he could be a hero. ...

December 26th, 2011

Bad management is more powerful than good programmers

If Facebook is full of such smart people, why is so little care shown for a clean API?

I could pick from hundreds of examples from the last few years, but here’s why Facebook wasted a couple hours of my valuable time today:

The Javascript SDK lets you subscribe to events ‘auth.login’ and ‘auth.logout’. They are documented like so:

auth.login – fired when the user logs in auth.logout – fired when the user logs out Pretty simple, right? Of course it isn’t. In fact, ...

December 26th, 2011

Can you solve the quintic?

A very nice summary of Galois Theory, which I have read about before but which I still don’t understand. But, you know, every time I read about it, I feel like I come closer to understanding it.

For a long time, people wondered whether it is possible to write down something like the “quadratic formula” for cubic, quartic and quintic polynomials with integer coefficients. We now know that for cubic and quartic polynomials, this is possible. But for degree 5 ...

December 25th, 2011

Institutional memory and mass layoffs during recessions

During recessions, companies sometimes fire too many people, losing the institutional memory that glues the organization together:

I’ve seen memory drains during down-turns in the economy. The company will offer the oldest, most-experienced, highest paid employees a buy-out or they’ll offer them five years extra pension/retirement if they leave now. Mgt figures that consultants can be hired if they ever need X, Y or Z done again at a fraction of the cost of the employees.

Many senior employees accept the offers, ...

December 25th, 2011

The end of constitutional limits in Hungary

Worrisome that a member of the EU can slide back into authoritarianism.

That’s not all. The long arm of the current Fidesz government can grab and shake any foreseeable future government through the officials they are now putting into place. The new constitutional order extends the terms of office for the public prosecutor (9 years), the head of the state audit office (12 years), the head of the national judicial office (9 years), the head of the media board (9 ...

December 24th, 2011

Married women rating low on project completion?

Source

December 23rd, 2011

1 Comment

PHP memory management is bloated

PHP memory management is weak compared to something like the JVM. Perhaps that is because PHP scripts usually execute in a few seconds and then stop, whereas JVM software often has to maintain 99.99% uptime?

In this post I want to investigate the memory usage of PHP arrays (and values in general) using the following script as an example, which creates 100000 unique integer array elements and measures the resulting memory usage:

Source

December 23rd, 2011

Volkswagon cuts off employees email during non-working hours

I am so very American, when I first heard of this, I assumed this was management attacking the rights of the workers, rather than the workers winning something they had specifically fought for.

The backlash against twenty-four-hour connectivity has started.

Carmaker Volkswagen (VOWG_p.DE) has agreed to deactivate e-mails on German staff Blackberry devices out of office hours to give them a break.

Under an agreement with labour representatives, staff at Europe’s biggest automaker will receive e-mails via Blackberry from half an hour ...

December 23rd, 2011

Frustrating that there are people anywhere who argue about the obvious stimulus that comes from a weak dollar. If a strong currency leads to a strong economy, then why did China just spend $5 trillion dollars to keep its currency weak? Matthew Yglesias finds John Cochrane ridiculing the notion that devaluation makes it easier to bring a country’s relative wages down, whereas the empirical evidence is overwhelming that devaluation does, in fact, do just that. Now, Yglesias has some fun with ... Read More Source December 23rd, 2011 No Comments Is ambition more difficult as you get older? I am doubtful of this argument. Is ambition more difficult as you get older? It seems to me when you are younger you are looking for love, when you are older you are worried about children, so there is always something that might act as a break on ambition. But real ambition means putting all of that aside, and focusing on a single goal. This is difficult at any point in life. I’m in my 40s and I’ve spent quite ... Read More Source December 23rd, 2011 In Business No Comments Could Poland become a super-power of energy production? Poland has immense deposits of shale gas. With shale deposits distributed generously worldwide, Europe is beginning to catch the trailing edge of this game-changing moment in global energy production. Today the European Union is engaged in a crucial debate over whether and how to tap into its own shale deposits, which contain more than 17.5 trillion cubic meters (and with the recent discovery of a new major deposit in the United Kingdom, possibly as much as 22 trillion). In Europe, Poland ... Read More Source December 23rd, 2011 No Comments Developers as Kings Interesting: There’s never been a better time to be a developer. Thanks to an unprecedented range of open-source software, learning resources and useful web services at our disposal, we can learn new languages, get help, collaborate with others and, if our ideas win traction, there’s now a multitude of investors waiting in the wings to help us build companies around our products. This is not to say that our work is easy. Standards must remain high. But the resources available offer us ... Read More Source December 22nd, 2011 No Comments Teachers hate creativity My 5th grade teacher called me “an enigma”. This fits with my own experience as a student: From Creativity: Asset or Burden in the Classroom?, a good review paper. What the paper shows is that the characteristics that teachers use to describe their favorite student correlate negatively with the characteristics associated with creativity. In addition, although teachers say that they like creative students, teachers also say creative students are “sincere, responsible, good-natured and reliable.” In other words, the teachers don’t know ... Read More Source December 21st, 2011 No Comments What I want most right at this moment is to punch you in the face Laura Klein wisely points out that Penelope Trunk is a moron who needs to shut the fuck up: Similarly, long before women had the right to vote in the US, many women didn’t actually want the right to vote. Some even felt that women were biologically not capable of voting well. And for years after they had the right to vote, many people still felt that it was the wrong decision. How many women in the US do you know who ... Read More Source December 20th, 2011 No Comments Context and environment suggest who belongs and who does not Do you belong? Subtle cues including how a room looks could tell people they do not belong. This may have a big impact on questions such as why there are so few women in tech. Meanwhile, other psychologists wondered how much you can tell about someone from the stuff in their bedrooms. Samuel Gosling of the University of Texas at Austin gave students permission to enter the dorm rooms or apartments of other students and asked them to rate ... Read More Source December 19th, 2011 No Comments When I really want to share something with a friend I send them an email When I really want to share something with a friend, I send them an email. The remarkable thing about a lot of “social” sites is how anti-social they are. It’s sort of like the problem with dating sites. With dating sites, there is no way to limit the trolls. With social sites, there is no way to limit the sharing enough to communicate “this is important”. The other day, I read a perceptive article, “In Defense of Friction,” arguing that ... Read More Source December 18th, 2011 No Comments College is a scam Why let others judge you? Why not define yourself? Another anti-college screed. I agree with all of it: We may have been fooled by one of our generation’s biggest scams. In fact, not only do we blindly accept it, but most of us will be working our way out of debt for a decade because of it. It’s a system that penalizes creativity, scatters our focus thinly between unrelated errands and unashamedly conditions us to believe that a few people can ... Read More Source December 17th, 2011 In Business No Comments How women get cheated at work Interesting if true: Our process, despite the pay gap, is identical for men and women. We start with phone interviews, and move into a personal and technical interview. Once a candidate passes both of those, we start salary negotiations. This is where the women seem to come in last. The reason they don’t keep up, from where I sit, is simple. Often, a woman will enter the salary negotiation phase and I’ll tell them a number will be sent to them in ... Read More Source December 17th, 2011 No Comments How to trip yourself up with Clojure In some ways, this sounds like an insightful write up, comparing the ability to add numbers in Lush versus Clojure: I have avoided the JVM my entire life. I am presently confronted with problems which fit in the JVM; JVM libraries, concurrency, giant data: all that good stuff. Rather than doing something insane like learning Java, I figured I’d learn me some Clojure. Why not? It’s got everything I need: JVM guts, lispy goodness; what is not to love? Well, as it ... Read More Source December 16th, 2011 No Comments How does hiring happen at elite law firms and hedge funds? What’s interesting to me is how powerful the forces are to ensure that the new people who get hired are similar to the people who are already there. The possibility of large cultural differences or shocking differences of opinion are therefore reduced to negligible. 1. Most applications practically go straight in the trash. Because professionals balanced recruitment responsibilities with full-time client work, they often screened resumes while commuting to and from the office and client sites; in trains, planes, ... Read More Source December 16th, 2011 No Comments Why a poor black kid might get pregnant Very interesting: The key is the pregnancy. For a 16 year-old girl regular unprotected sex will result in a full term pregnancy in the modern world with roughly probability one. There is little chance she will die in child birth. Late term miscarriages at her age are rare. Now, just like any other parent the birth of that child will be the most important event in her life. And, the love of that child will be the most valuable thing she ... Read More Source December 16th, 2011 No Comments Grit determines the winners Grit is more important that IQ or self control. Why might most people think that IQ and self-control are more important than consistent, long term effort? There are many possible answers, but Duckworth’s research suggests an explanation I hadn’t thought of before: that it’s harder to observe long term focused efforts by others. We speculate that individual differences in the intensity dimension of effort are salient and, therefore, described by many adjectives in the English language (e.g., energetic, conscientious, dutiful, ... Read More Source December 16th, 2011 In Business No Comments Lego no longer markets to girls It is strange that Lego will no longer run ads like this: We ended up getting the Lego Star Wars calendar instead, which is awesome except that it’s not particularly Christmassy (though you do get a Yoda dressed as Santa at the end (that’s in continuity, right?)) and it cost an unbelievable$40 because of the licensing fees (it’s like $10 more than the normal calendar). This is par for the course in old Legoland now. Outside of the Movie tie-ins ... Read More Source December 15th, 2011 No Comments A strange bug in Ruby On Rails: CSRF protection was eating sessions This sounds like a very difficult bug to track down: My personal understanding of Rails up until an hour ago was that a CSRF violation would raise an exception. This would practically never get seen by a legitimate user operation, so few people are aware of that, but I had seen it a time or two when security auditing BCC. (Some of my geeky friends had, back in the day, exploited BCC with a CSRF and helpfully told me ... Read More Source December 14th, 2011 In Business No Comments The pressure of startups can drive some people to suicide Startups are intense, and can drive some people to depression. This article hits home for me on many levels, it speaks about the passing away of Diaspora’s co-founder Ilya Zhitomirskiy due to unknown reasons, however highly associated with the pressures of startup life. As a follow up to my post “The Start Up Girlfriend”, it is clear that startup culture becomes a lifestyle. It is not a 9-5 job with the ability to turn yourself into “off” mode. Do people actually ... Read More Source December 14th, 2011 No Comments Easy to read does not equal quicker comprehension In theory, this is a rant against Coffeescript, but at the theoretical level, it is a rant against easy to read languages that are actually tough to comprehend. CoffeeScript encourages writing code in sentences instead of logical statements. eat food for food in foods That looks great on the demo page, but eventually you end up with something more like this: wash plate, brush, sink for key, plate of dishes when plate.dirty if meal.status is ‘done’ That is verbally readable code, but it’s not ... Read More Source December 14th, 2011 No Comments How to build desktop applications with Clojure and Swing This makes me hopeful. More to the point, it makes me want to work on desktop apps with Clojure. Starting a Clojure Desktop Application We’re starting up our first desktop application in Clojure. We’re a heavy vim and ruby shop. We’ve done several desktop applications in JRuby. This is the first time we’ve tackled swing UIs and GUI testing in Clojure. It’s still early in the process, but here’s what we’ve found so far. Swing For Swing, we’re using seesaw. It provides Clojure bindings ... Read More Source December 14th, 2011 No Comments How does HTTP work? This is a great chart: Source December 14th, 2011 In Business No Comments What is your customer churn rate? A great article with a lot details about figuring customer churn: The problem here is that the [number of churns over period] value is affected by the entire period but the [number of customers at beginning of period] value is a snapshot from the beginning of the period. This might not have much impact if new customers only make up a small percentage of your user base but for a company that’s growing this can lead to some major misinterpretations. Consider you ... Read More Source December 13th, 2011 No Comments The next Java isn’t A year ago the hype surrounding Scala was red hot. Some programmers, like Colin Steele, didn’t like it, but many others argued that it was the next Java, Java 2.0. But now the backlash is setting in: In two years we went from having Scala as a very strategic choice to have it simply as an interesting (and mostly enjoyable) technology that we use to develop some (and rather small) parts of our platform. I still think, as I always did, ... Read More Source December 13th, 2011 In Business 6 Comments Fred Dewey is misunderstood [[ I leave the post below as it was written in 2011, for historical purposes. But I would no longer assume that Kachingle's actions can be understood in a positive light. ]] Mike Krahulik is angry about Kachingle. What is the issue? There are 2 possible ways of putting this: 1.) the subscribers of Kachingle wanted to give money to Mike Krahulik and he is very angry about this 2.) Kachingle claimed it was raising money for Mike Krahulik, and some people donated ... Read More Source December 13th, 2011 No Comments Spider emulates intelligence by considering parts of a problem in turn Interesting Most of you probably know about Turing machines: hypothetical gizmos built of paper punch-tape, read-write heads, and imagination, which can — step by laborious step — emulate the operation of any computer. And some of you may be old enough to remember the Sinclair ZX-80— a sad little personal computer so primitive that it couldn’t even run its video display and its keyboard at the same time (typing would cause the screen to go dark). Peer into the darkness between ... Read More Source December 12th, 2011 No Comments A comparison of different admin frameworks for use with Ruby On Rails How to build admin interfaces for Ruby On Rails? This is a great summary: RailsAdmin started its life as a port of MerbAdmin to Rails 3 and was implemented as a Ruby Summer of Code project by Bogdan Gaza with mentors Erik Michaels-Ober, Yehuda Katz, Luke van der Hoeven, and Rein Henrichs. The project is self described as a Rails engine that provides an easy-to-use interface for managing your data.. Its main features include: Display database tables Create new data Easily update data Safely delete data Automatic ... Read More Source December 12th, 2011 No Comments Cheeseburgers are difficult Only modern technology allows the invention of the cheeseburger: A few years ago, I decided that it would be interesting to make a cheeseburger from scratch. Not just regular “from scratch,” but really from scratch. Like, I’d make the buns, I’d make the mustard, I’d grow the tomatoes, I’d grow the lettuce, I’d grow the onion, I’d grind the beef, make the cheese, etc. It didn’t happen that summer, by the following summer, my wife and I had built a new house, ... Read More Source December 12th, 2011 No Comments The connotations of the words “women” and “girls” Garann Means has a great post about the meaning of the words “women” and “girls”. I know women who are driven just as crazy by the use of the word “girl” as the presenter and the other women she references, and they have every right to feel that way. But I’d like to speak for the other side, as someone who frequently refers to herself and other women as girls, and is much less likely to refer to “men” than to ... Read More Source December 12th, 2011 No Comments Nothing is changing My friends and I have been wondering why the word “cool” hasn’t become uncool, whereas words like “groovy” were immediately outdated. Seems related. On the one hand, the last 40 years were the 3rd biggest cultural revolution of the West: 1.) the adoption of Christianity in the late Roman times 2.) the Protestant Reformation of the 1500s 3.) the abandonment of Christianity in the 1960s But in other ways, the era has been one of remarkable non-change. Go deeper and you see that just ... Read More Source December 11th, 2011 In Business No Comments Why does Netvibes fail? I am tired of startups that start off well and then run out of energy and just sort of give up. I am exhausted by all the startups that stop innovating past a certain point. Why do they stop? Bad management? Lack of resources? Failure of nerve? Some startup needs to do more to help me manage what I read. Netvibes is in a good position to do this. I have 1,000 RSS feeds in Netvibes. I can not read ... Read More Source December 11th, 2011 No Comments The system can not be fixed, it needs to be burned down I am puzzled and confused at the way my friends are taking their kids out of the school system. Either they home school their children or, if they have money, they send the kids to private school. “If they have money” includes working 3 jobs and, in one case, meeting men in hotel rooms for sessions of nude photography — it is incredible the sacrifices some of my friends are making to keep their children out of the public schools. ... Read More Source December 10th, 2011 No Comments The Swedish Pirate Party gains another vote in the European Union This is interesting on several levels, both because of her youth and also because the idea of copyright piracy, the fight against intellectual property, is the most radical economic agenda that seems to have a mainstream following at this time. From the article: In a few weeks Amelia Andersdotter will be the second Pirate Party member to take a seat at the European Parliament in Brussels. The 24-year-old Swede was voted in more than two years ago, but due to bureaucratic quibbles ... Read More Source December 9th, 2011 In Business No Comments The USA shadow banking system is made up of European banks Interesting if true: The paper covers much more ground than that, of course. This is the latest in a series of papers arguing that the U.S. shadow banking system consists in large part of … European banks. This suggests that the creation of the euro had large implications even in US capital markets; and of course it suggests that the financial fallout of the euromess could be very large here as well. In short, the ECB could be in the process of ... Read More Source December 8th, 2011 No Comments Build it in a way that you can improve it later Some code is junk and needs to be re-written from scratch. Yet no code gets everything right the first time, so some re-writing must be done, without re-writing everything from scratch, since the re-write will also get things wrong. The ideal has to be write code in a style that makes it easy to incrementally fix the mistakes that you are currently making, even though you don’t know you are making them. I Point the Finger at You, I Have ... Read More Source December 8th, 2011 No Comments Build systems, versioning and dependency In my mind, the most impressive thing about the Ruby On Rails eco-system is Bundle, which manages dependencies among gems (in other words, it is a great package manager). It locks down a given build/version when you run “bundle install” but it doesn’t allow this when you deploy, as they didn’t want versions changing at deploy time. Maven, in the Java ecosystem, has problems because it will include changing versions: This is the largest practical issue I’ve had with developing a ... Read More Source December 8th, 2011 In Business No Comments Bank bailout goes to hookers and drugs Your tax dollars at work? Wonder where the billions in bank-bailout money was used for? No need to worry. It seems that our tax dollars are indeed ttrickling down to support a wide number of small business—particularly small businesses like tony escort services, strip clubs, night-clubs and A-list drug dealers favored by Wall Street’s high-rolling brokers and traders. FBI investigations in thepast have found that many of Wall Street’s top firms regularly spent millions of dollars a year on booze, drugs and ... Read More Source December 7th, 2011 In Business No Comments Why startups are great This is very well said. These are the very things I like about startups: 3. The fast pace A great thing of a small team is the fast pace everything moves at. Since you’re talking directly to those in charge and everyone shares the vision at least a bit (otherwise why work for this startup?) everything moves quickly. An idea is pushed into the system and a couple of days later it can be implemented and tested. Conversely when working with an ... Read More Source December 6th, 2011 No Comments How much of politics is about who you like? I think this is very true. Much of politics is about who you like. I think intellectuals build elaborate verbal excuses to explain their politics, but in their politics are mostly determined by who they like. The Madoff affair, as you may know, was a classic case of “affinity fraud”; Madoff was able to gain the trust of wealthy Jews by persuading them that he was their kind of guy. Affinity fraud lies behind a lot of financial scams ... Read More Source December 6th, 2011 In Business No Comments PayPal is dangerous This is why I plan to spend January building support for other payment providers. I need to get away from PayPal. YOU CAN ONLY HELP CATS PAYPAL: Only a nonprofit can use the Donate button. ME: That’s false. It says right in the PDF of instructions for the Donate button that it can be used for “worthy causes.” PAYPAL: I haven’t seen that PDF. And what you’re doing is not a worthy cause, it’s charity. ME: What’s the difference? PAYPAL: You can use the donate ... Read More Source December 5th, 2011 In Business No Comments Emergency Linux Support Taryn East writes: I recently had some trouble with my internet broadband connection. I changed to another provider while overseas, and when I got back, discovered that something I’d installed had broken my at-home internet setup… so I was bereft of teh intarwebs[1] for day while I figured it out. As is usual in this kind of situation, I first tried getting it working by myself. I googled, read forums and generally faffed about installing and uninstalling various internet and USB-related packages ... Read More Source December 5th, 2011 In Business No Comments What would we do if we weren’t us? Steve Blank is wrong about everything. How does this make any sense? My formal definition of a startup is a temporary organization in search of a scalable and repeatable business model. Yet if you’ve founded a company you know that regardless of any formal definition, startups are inherently pure chaos. As a founder, keeping your company alive requires you to think creatively and independently because more often than not, conditions on the ground will change so rapidly that any original ... Read More Source December 5th, 2011 No Comments Responders as a controller in Rails 3 This is a great intro to responders. Source December 5th, 2011 No Comments Websockets foreseen in HTTP 1.1 Crazy. I had no idea that HTTP 1.1 had already defined an upgrade response code: 10.1.2 101 Switching Protocols The server understands and is willing to comply with the client’s request, via the Upgrade message header field (section 14.42), for a change in the application protocol being used on this connection. The server will switch protocols to those defined by the response’s Upgrade header field immediately after the empty line which terminates the 101 response. The protocol SHOULD be switched only when it ... Read More Source December 5th, 2011 No Comments It seems overly emotional to me to write this article “You are too emotional” tends to be a gendered accusation, thrown at women, and yet I’ve seen men get very uncomfortable in meetings, and then lash out. I don’t recall seeing a man cry at the workplace, but anger is as much an emotion as tears, and there seems to be a much higher tolerance of anger from men than either anger or tears from women. I write this in response to a post from Rachel By The Bay (which ... Read More Source December 4th, 2011 No Comments Why are payroll systems so complex? People on the business side never seem to realize the true costs of complicated business rules. I once thought payroll was simple too. It turns out that it is essentially complex, because of all the special deals and weird practices that have been set up over years of union negotiations and HR people with strange ideas. For example, these are pretty accurate: People in Dayton get paid differently from people anywhere else. Ex-Jeep employees accrue certain benefits six months out ... Read More Source December 3rd, 2011 No Comments Social networks are anti-social Publicly labeling someone a friend is a social act, yet most of the social networks ignore the potential awkwardness of this fact. I like this: There’s no way to take a time-out from our social life and describe it to a computer without social consequences. At the very least, the fact that I have an exquisitely maintained and categorized contact list telegraphs the fact that I’m the kind of schlub who would spend hours gardening a contact list, instead of going ... Read More Source December 3rd, 2011 No Comments How cells program other cells When I look at my body I notice that 100 trillion cells are cooperating. How do they sync their actions? How do they communicate? I have been assuming they must pass RNA back and forth among themselves, communicating important information. I pleased to read that this apparently happens: Other subcellular packages drawing attention are exosomes — tiny membrane-enclosed sacs that form inside the cell and are later spat out. These nanoscale vessels were discovered in the 1980s and then ignored ... Read More Source December 3rd, 2011 No Comments What does Poland ask of Germany? A remarkably honest speech from the Polish foreign minister: Then came the crunch, headlined “What does Poland ask of Germany?”. First came six points Mr Sikorski wanted Germany to acknowledge. 1) it is the biggest beneficiary of the current arrangements and therefore under the biggest obligation to sustain them 2) it is not the “innocent victim of others’ profligacy…You, who should have known better, have also broken the Growth and Stability Pact…your banks…recklessly bought risky bonds” 3) the crisis has lowered Germany’s borrowing costs 4) ... Read More Source December 2nd, 2011 In Business No Comments Failure is the most stressful part of a startup Most startups fail. And failure is stressful. Defeat can sink a person into a deep depression. Some very good comments on Hacker New about this: The founders of Diaspora were in a really unenviable position. They started off with a wave of national press as well as solid financial support from grassroot users. As time went on, it became increasingly clear that they would not be able to accomplish the goal they originally set out to do. They had failed. Publicly. ... Read More Source December 2nd, 2011 No Comments Great videos about git These are a great introduction to git. Source December 2nd, 2011 No Comments The need for an in-house graphic designer who can interact with the front-end developer When should you outsource work? When should you bring it in-house? I work at a place that had an in-house designer for several years, but got rid of them in August and has since tried to rely on outside firms. This has problems. We hired an outside design firm and they were sloppy in the manner they got us the designs and assets. I wrote an email to our internal team, including our management: I think next time we hire ... Read More Source December 2nd, 2011 No Comments John Nunemaker: how to create an API I have been asked to build an API for managing our subscribers. I’m researching how to build APIs in Rails. I previously linked to John Nunemaker’s debugging advice. I like these rules: 1. Document as You Build 2. Be Consistent 3. Provide the URLs 4. Present the Data About #2, I find it easy in the short term but almost impossible over the long term. Give me a year and I’ll clutter any API with a stupid mix of return values. All the same, ... Read More Source December 1st, 2011 No Comments The correct, socially-acceptable amount of padding Taryn East writes: I still find it a much easier atmosphere to work in – if you don’t have to go through backflips of pleasantries just to say something without accidentally insulting the other person: not because what you’re saying is insulting – but because you failed to put in the correct, socially-acceptable amount of padding… Compare: “hi there, how are you, hope your holiday went well. By the way, you know a few weeks back you borrowed my stapler. I was ... Read More Source November 30th, 2011 No Comments Representers: a brilliant idea from Nick Sutterer This article is like a complete education regarding REST in Rails, both its strengths and weaknesses. And then Nick Sutterer ends by suggesting a new abstraction layer that cleans up the clutter that can occur if you are not very, very careful. What’s wrong with form POSTs? Nothing! Using the #form_for helper and Rails params is absolutely ok. However, I want to point out that POSTs are not limited to HTML forms – they can also send other representations. So, what Rails ... Read More Source November 30th, 2011 In Business No Comments When an entrepreneur loses their nerve To me, the most interesting part about this story is how the entrepreneur tries to quietly throw Steve’s words back in his face. This makes all of his excuses sound reasonable, as if he’s only trying to do what Steve has taught. And yet, it’s all a transparent lie. A month went by, and the product stopped getting better. The U/I still sucked, and new features had stopped appearing. The next month, the same thing. I got a call from ... Read More Source November 30th, 2011 No Comments What is the REST interface? REST means that URLs mean something. REST can mean that every possible state has a specific URL. It follows then that most websites are not RESTful, since most have state that varies at a given URL. For instance, a lot of sites ask users to login. Only a site made of static documents is truly RESTful (or a site that imitates static documents). What else can REST mean? Some people associate with verbs: GET, POST, PUT, DELETE. What is the ... Read More Source November 30th, 2011 No Comments Into the Ruby community: RubyFlow Sometimes it is difficult to get into a community, especially if you don’t know where the heart is. What are the most popular blogs and forums and mailists? I’ve been trying to discover this for Ruby. I just discovered RubyFlow, a community aggregation of blogs, and am impressed with the amount of writing that is happening. Source November 30th, 2011 No Comments Why entrepreneurs are giving up on the USA If you can overlook the nonsense about inflation and fiat currency, this is a really good comment about how disappointing the USA has become, for entrepreneurs, and for everyone else: I was born in the USA, and worked for startups for nearly 2 decades in the USA, but when it came time to do my own startup, I left the USA. There are many reasons for this, and further, when I come back to the USA, I’m reminded of some of ... Read More Source November 30th, 2011 No Comments WhatFont tells you what font Give info on a font, faster and easier than FireBug. Source November 30th, 2011 No Comments Mental decay and religion Intense religious experience could be a sign of mental decay: According to the study, people who said they were a “born-again” Protestant or Catholic, or conversely, those who had no religious affiliation, had more hippocampal shrinkage (or “atrophy”) compared to people who identified themselves as Protestants, but not born-again. The study is published online in PLoS ONE. As people age, a certain amount of brain atrophy is expected. Shrinkage of the hippocampus is also associated with depression, dementia and Alzheimer’s disease. In the study, ... Read More Source November 29th, 2011 No Comments Cultures that oppose the startup mentality There is no such thing as being pro-business. There is big business and there are startups. The culture that defers to one may not defer to the other. The country that worships Berlusconi because he has concentrated all business power in his own hands is not going to be a country that celebrates the daring entrepreneur who sets out on a perilous adventure and tries to do something new. The existence of obstacles shouldn’t be a good enough reason to ... Read More Source November 28th, 2011 In Business No Comments Google inflation Google gives out a lot of vouchers for free ads. For the most part, this simply serves to create inflation among the bids people have to make to get certain keywords. The winner is Google. For a while now, Google has been busy handing out$75 to $100 AdWords vouchers as a means of drumming up more advertiser activity. I’ve redeemed multiple such vouchers on my partially inactive account over the last year. I also received one with an invitation to ... Read More Source November 28th, 2011 In Business No Comments The newspapers are surviving on momentum When a major newspaper closes down, its readers stop reading newspapers. They do not turn to other newspapers instead. Source November 27th, 2011 No Comments Rabl for easy APIs in Rails Probably the best way to create an API for a Ruby On Rails project: More Frustrations with API Generation The issues above were just the beginning of the issues we ran up against using the ‘to_json’ method because that approach is interested in ‘serializing’ a database object while we are interested in creating a relevant representation for our public API platform. The ‘serialization’ of the object so directly just didn’t quite fit what we were trying to do. The easiest way to ... Read More Source November 27th, 2011 No Comments Kill math Really brilliant: The power to understand and predict the quantities of the world should not be restricted to those with a freakish knack for manipulating abstract symbols. When most people speak of Math, what they have in mind is more its mechanism than its essence. This “Math” consists of assigning meaning to a set of symbols, blindly shuffling around these symbols according to arcane rules, and then interpreting a meaning from the shuffled result. The process is not unlike casting lots. This mechanism ... Read More Source November 26th, 2011 No Comments Current interaction design lacks tactile sensation Interesting Go ahead and pick up a glass of water. Take a sip. Notice how you know how much water is left, by how the weight shifts in response to you tipping it. Almost every object in the world offers this sort of feedback. It’s so taken for granted that we’re usually not even aware of it. Take a moment to pick up the objects around you. Use them as you normally would, and sense their tactile response — their texture, pliability, temperature; ... Read More Source November 25th, 2011 No Comments John Nunemaker: using EventMachine with Passenger Interesting: In order to fully explain this post, we first need to cover some back story. Originally, Gaug.es was hosted on Heroku. Recently, we moved Gaug.es to RailsMachine (before the great AWS outage luckily), where we are already happily hosting Harmony. At Heroku, we were running on 1.9.2 and thin. The most common RailsMachine stack is REE 1.8 and Passenger. Sticking with the common stack meant it would be a far easier and faster transition to Railsmachine, so we tweaked a ... Read More Source November 25th, 2011 No Comments Coal continues to kill, nuclear does not Once again, it is worth remembering, coal kills lots of people and nuclear does not. Yet, people fear nuclear more than they fear coal. This is due to what might be termed the illusion of control. It shows up in many parts of life: people fear getting on an airplane more than they fear driving a car, even though driving a car is vastly more dangerous than flying in an airplane. In the USA, 3500 people die every month in ... Read More Source November 25th, 2011 In Business No Comments Never seen this done effectively: it is important to be able to go back a number of years to determine the facts that were considered in arriving at a decision John Cook says something very important: Here are a few thoughts on institutional memory from a talk by Admiral Hyman G. Rickover. When important decisions are not documented, one becomes dependent on individual memory, which is quickly lost as people leave or move to other jobs. In my work, it is important to be able to go back a number of years to determine the facts that were considered in arriving at a decision. This makes it easier to resolve new problems ... Read More Source November 24th, 2011 No Comments Mike Gunderloy’s Double Shot Just now discovering Mike Gunderloy’s frequent updates on the world of Rails. Very useful. I like: I swapped my MacBook for an iPad+Linode – Tempting thought, as my Mac Pro ages and needs to be replaced. This might be a new trick that I am too much an old dog to learn, though. Mojolicious – Yeah, there’s a reason I’m looking at Perl web frameworks. This one looks pretty good. Calendroid Pro – I’m much happier with my calendar on the Android ... Read More Source November 23rd, 2011 No Comments Ditching your ORM and using straight PDO I can relate to a lot of this. I’m doing a lot of these things for the TMA software, including ditching the ORM and just using PDO. I received a lot of great responses from my post on ditching your ORM and using straight PDO. The product we are building lets you review all of your Google AdWords and Bing AdCenter ads in one central location. This project was given to us by a group of marketers who do this manually ... Read More Source November 22nd, 2011 In Business No Comments Very cool places to work in NYC This place, the Grind, looks very cool. I would love rent space there, if I had the money. Source November 21st, 2011 No Comments Every recession, people write essays about how this is “the end of work” Since the 1800s people have been writing about how increasing productivity would eventually cause everyone to become unemployed. The most famous writer to make this argument was Karl Marx. He argued that the one thing that the capitalists were good at producing was their own grave diggers — that is, they were hiring workers to build machines that would eventually lead to everyone being unemployed which would lead to world revolution which would lead to a world where the wealth ... Read More Source November 21st, 2011 No Comments Korma Korma, sql for Clojure. This could be very useful. Source November 21st, 2011 In Business No Comments Stop listening to other peoples advice. Go with my gut. I wonder how many entrepreneurs have this moment? I only recently had this feeling with WP Questions. I am no longer taking people’s advice about design. From now on I will do what is “bad”, if I think it is right. I wonder if it takes a few years of trying before you can “go with your gut”? Having gut instincts implies some experience. Source November 20th, 2011 In Business 2 Comments Sometimes I regret being a murderer For the most part, I think innovation is good, but I regret what is sometimes lost along the way. I have many fond memories of afternoons spent at Borders bookstore, reading books, drinking coffee, discussing things with friends, or maybe just skimming magazines. When the big box book chains came on the scene in the early 90s, they were a revelation, the variety they offered was exciting. I recall one time in the 90s when myself and my girlfriend read ... Read More Source November 20th, 2011 In Business No Comments The focus on short term profits is destroying the possibility of long term growth Interesting: Christensen retells the story of how Dell [DELL] progressively lopped off low-value segments of its PC operation to the Taiwan-based firm ASUSTek [LSE: ASKD]—the motherboard, the assembly of the computer, the management of the supply chain and finally the design of the computer. In each case Dell accepted the proposal because in each case its profitability improved: its costs declined and its revenues stayed the same. At the end of the process, however, Dell was little more than a ... Read More Source November 20th, 2011 In Business No Comments If the deflation of 1930-1932 brought Hitler to power, why should Germans fear inflation? Hitler got elected after deflation hit Germany in 1930-1932. So why do people cite the inflation of 1923? Joe Weisenthal tells us about an analyst willing to risk a Godwin’s Law citation; Dylan Grice of SocGen points out that it was the deflationary policies of 1930-32, not the inflation of 1923, that brought you-know-who to power. Indeed. When we hear assertions that Germans are deeply hostile to loose money because of their historical memories, I always wonder why those memories are ... Read More Source November 20th, 2011 No Comments Just use divs for everything I recall in 2002 posting to some forum and asking for help with some site I was working on. My PHP code was generating HTML that wrapped divs inside of divs. I was trying to position things by CSS. Someone accused me of div-itis, that is, over-reliance on divs. We got into a long argument about semantic meaning. I argued that semantic meaning was useless. The rest of the people on the forum disagreed with me. Around 2004, I gave ... Read More Source November 19th, 2011 In Business No Comments Nouriel Roubini foresaw Italian crisis back in 2006 Everybody hates Nouriel Roubini just because he happened to be correct about everything. I respect the guy because he saw this crisis coming and described it so well. I am astonished to see that, back in 2006, he correctly foresaw the crisis in Greece and Italy: Unlike some transatlantic observers that were always skeptical of EMU – perhaps because of their concerns about the rising economic, political and geostrategic power of a united Europe – I was an early and ... Read More Source November 18th, 2011 No Comments Computer programming is complicated, Rails is not Taryn East writes: A whole slew of controversy has been stirred up with the post: What the hell is happening to rails – which managed to top the hackernews charts for quite a while last week. It basically gave vent to a lot of concern in the rails community that rails is becoming too difficult to learn, and that may be scaring off newbies. The new rails has certainly been in a great state of flux – and pushes the whole framework ... Read More Source November 17th, 2011 No Comments John McCarthy has died This is a great tribute: John McCarthy died four days ago. He was 84. His obit in the “New York Times” made specific reference to his generally attributed parenthood of artificial intelligence. John was my good friend and a terrible patient. For 30 years he resisted my best effort to shape up his dissolute lifestyle. He made 84, despite his derelictions. But a large reason why I recall him as a miserable patient is my fault. Every one of his visits to ... Read More Source November 16th, 2011 No Comments Goals are unhappy Taryn East writes: There are heaps of processes that I enjoy far more than the actual end-result. Crochet is my example. I’m quite happy to continue crocheting something pretty (it has to be pretty – I don’t enjoy crocheting abominations) for a long time and never “owning a crocheted thing” at the end. Before I hit upon the solution, I spent a long time starting projects – some of which I finished, but lots I didn’t… because I didn’t care about finishing – just ... Read More Source November 15th, 2011 No Comments We’ll fix it later Three big lies we tell ourselves? Michael Blake writes: #2 We’ll fix it later No you won’t. We both know you won’t. This is a lie we tell ourselves, or that we’re told, to try and pretend we’re not taking shortcuts. Every now and then something will come up that forces you to fix it later, but most the time it will stay broken, and other people will have to keep working around your broken code and rushed ideas. Accept this simple statement: “It is ... Read More Source November 14th, 2011 In Business No Comments Land rush or gold rush? I like this: It’s tempting to view recent tech startup successes this way though many would agree that there are still at least more than a few untapped veins, in terms of opportunities to create innovative and valuable software, which have yet to be mined, so to speak. Typically though, a gold rush is characterized by the relative scarcity of opportunities to the numbers of prospectors looking to ‘strike it rich’. In the end, the vast majority of latecomers lose out ... Read More Source November 14th, 2011 No Comments Dynamic programming asks for a dynamic mindset Taryn East writes: ruby encapsulation is for$%*t Wow, I just learned that ruby encapsulation can be broken by simply using:

my_object.send(:my_secret_private_method) That’s kinda useful to know if you’re trying to unit test a private method, but makes the concept of encapsulation totally meaningless in ruby.

Apparently, Ruby 1.9 revokes this “special” privilege, but then there are still many ways to use the power of ruby meta-programming to get to them anyway (see above link for some examples).

November 14th, 2011

The un-shared sacrifice of the millions

Possibly people in England about the sacrifices they are asked to make, due to the fact that the wealthy are not being asked to make any sacrifices:

Source

November 14th, 2011

Drugs have nothing to do with the crime wave of 1960-2001

I doubt that drugs had anything to do with the American crime wave of 1960-2001. The fact that drug use in 2009 was higher than ever, even though the crime wave had ended, should offer conclusive proof to everyone that drugs had nothing to do with the crime wave. The crime wave was its own social process, playing out on its own timescale, for reasons unknown.

“The drop of crime in the 1990s affected all geographic areas and demographic groups,” ...

November 14th, 2011

Amazing video of Earth

Thanks to Nasa, there is this amazing video of Earth.

Source

November 13th, 2011

Honey pots to keep comment quality high

Interesting:

There has been a lot of recent debate regarding how to improve quality control on HackerNews (HN), and to his credit, Paul Graham (pg) has tried a lot of tactics. There is a very clear set of HN guidelines, which very few members these days probably read. For a while, pg tried playing around with the karma formula and, even if I disagree about the way karma should be measured, at least he gave it an effort. He also hid ...

November 12th, 2011

The influence of race in the tech world

Interesting:

First, let me say, I think Mike truly believes everything that he has said about the tech world being a meritocracy. Lots of people believe that.

But I do not believe Silicon valley is a meritocracy. I would more properly say that tech *markets* are a meritocracy. There are very few businesses where a single individual in her bedroom can create a piece of software that can potentially touch millions of people without any additional capital. No matter how talented ...

November 11th, 2011

Racket is a good language for creating languages

Lisp is a good language for inventing new languages:

Choosing the right tool for a simple job is easy: a screwdriver is usually the best option when you need to change the battery in a toy, and grep is the obvious choice to check for a word in a text document. For more complex tasks, the choice of tool is rarely so straightforward—all the more so for a programming task, where programmers have an unparalleled ability to construct their own tools. ...

November 11th, 2011

Open invite to anyone on LinkedIn

Taryn East writes:

How not to invite me on LinkedIn

- J Citizen I hate that… I really do.

So – who the hell are you? and why should I add you to my LinkedIn? and is it really so hard to type just a few words into the text box?

If we’ve never met before – I don’t know you from Adam. If you couldn’t be bothered writing a few words about why ...

November 11th, 2011

A classic psychopath at Zynga

A good comment at Hacker News:

Perversely, I enjoyed reading this memo. Mark Pincus is a classic psychopath and it’s always educational to observe how people like him attempt to justify themselves.

The psychopath’s language is usually a caricature (sometimes to the point of absurdity) of going assumptions of the culture in which he’s trying to win acceptance. Though they have no values, they are skilled at picking up others’ values and using them to make their actions seem acceptable. In Pincus’s ...

November 10th, 2011

Why are comment systems so broken?

Some criticism of Discus:

The problems with Disqus surprise me, because they’ve been around a while and I would have expected them to understand how online discussions actually work, and adjust their tool to facilitate conversation. Instead, Disqus quashes conversation. Here are the issues, and possibly a few solutions:

Comment display is broken There has long been a debate in commenting circles about whether threaded comments or flat comments are best. The truth is, neither are better than the other, both have ...

November 10th, 2011

My trip to the Apple Store

The Apple Store on 14th St and 9th Ave in Manhattan, New York:

I go into the Apple store and say “Hi, I need to upgrade my Mac from 10.5 to 10.6″.

The first sales rep says: “You need to go to our online store. We only sell that online.”

I explain that the previous day I went to the online store and engaged in live chat with someone on the store and they explained that software could only be bought through the ...

November 9th, 2011

Anti-women activists

How much should gender be allowed into a posting that advertises a job? This is wisely said:

I think that we (as a society) want young people to see all avenues as open to them regardless of gender. I highly doubt that the company doesn’t want to hire women or has any sexist intention. However, it is unwise for us (as individuals and an industry) to use terms like “brogrammer” because it subtly suggests gender. One might not mean it ...

November 9th, 2011

Apple Computer is stupid

My conversation with the Live Chat person at the online Apple Store:

MICHAEL: Hi, my name is Michael . Welcome to Apple!

MICHAEL: Happy to help! MICHAEL: Snow Leopard 10.6 is not available as a download, it’s a physical copy that is only sold online and has to be shipped to you.

ME: that is insane

MICHAEL: The next version of Mac OS X Lion is ...

November 8th, 2011

The problem with fields such as ‘type’ in database tables

Most programmers seem to prefer short, generic names for variables and database columns, but I dislike them since generic names can also be reserved keywords in various languages or systems. Words like “class” or “type” or “status” or “state” or “variable” or “update” or “create” or “model” or a bunch of others might be reserved keywords and using them will get you into trouble.

For my part, I just ran into this problem with Rails. (We’ve an old database that ...

November 8th, 2011

Soulver

This looks brilliant. I need to get this and play around with it.

Soulver helps you work things out.

It’s quicker to use than a spreadsheet, and smarter and clearer than a traditional calculator.

Use Soulver to play around with numbers, do “back of the envelope” quick calculations, and solve day-to-day problems.

Work with numbers the way you think them.

Just type your problem as you’d write it on paper. You see your answer instantly. No setting up formulas, no equals button. If you ...

November 8th, 2011

This is when Java programmers smugly proclaim why their ecosystem is superior

Taryn East writes:

and when I ran my fresh new rspec spec over it -> which looks somewhat like:

it “should raise an error if we don’t pass a thing” do lambda { my_class = MyClass.new(:thing => nil) }.should raise_exception(RuntimeError) end I kept getting something weird:

expected RuntimeError, got # Source

November 6th, 2011

Democracy doesn’t work

There is a thread on Hacker News about how automation will get rid of all jobs. Much of what is said in the comments is incorrect. The incorrect comments are getting upvoted, because apparently the majority of the folks on Hacker News believe incorrect things about the economy. How can voting be trusted when the majority is in the wrong? How can a discussion be any good if the people who are wrong get upvoted, because their incorrect beliefs ...

November 6th, 2011

Overconfidence to accuracy

Taryn East writes:

An eye-opening article by Robin Hanson, called Who Cares About Forecast Accuracy?, describes how and why corporations spend heaps of money on making predictions… but almost none on testing whether those predictions actually worked out.

The article discusses the fact that actually recording the accuracy of pie-in-the-sky forecasts means that it’s much harder to hide a poor track-record for leadership. That a lot of forecasting is more about signaling affiliation to the company (“yeah, we’re doing great, I predict ...

November 4th, 2011

Ah, damn. This is exactly what I am doing right now.

Taryn East writes:

Consulting is like selling crack. If you get hooked on the consulting lifestyle (and income), it can be hard to give that up to work on your own startups, yet many people get into consulting with the dream of working on their own projects on the side.

Yet it seems that consulting work can actually be detrimental to your startup-founding prospects. Read more from the original article

I have ...

November 3rd, 2011

Memory allocation in ruby

Michael Blake writes:

But the real surprise?

Okay, so I started this by saying there’s a big difference in a ||= b vs. a = a || b and that is only sort of true. Yes you’re calling a setter every time (setting a to a) in the second example but did you know redeclaring a variable to itself does not reinitialize it in memory?

And did you know that when setting a variable to another variable, you’re actually creating a pointer to ...

November 3rd, 2011

John Nunemaker offers drop-dead-simple debugging tips

Since I’m fairly new to Rails, this kind of basic debugging advice is really helpful to me. It’s nice to know how to do everything in the simplest way, before diving into complicated IDEs that try to be helpful but actually hide too much from me.

There are all kinds of fancy debugging tools out there, but personally, I get the most mileage out of good old puts statements.

When I started with Ruby, several years ago, I used puts like ...

November 3rd, 2011

Using Rspec to write tests

Some nice examples of using Rspec to write tests (article says it is about Shouda, but that is incorrect).

Source

November 2nd, 2011

Why are there no dating sites started by women?

Women like to date people. And yet every single dating web site has been started by men? Is that true? Are there any dating sites that were started by women? You’d think maybe 50% of the dating sites out there might have been started by women, but I think its actually 0%. I find that surprising.

When I go looking for blogs about dating, the majority are written by women. Women clearly enjoy writing about dating, either their own experiences, ...

November 2nd, 2011

Clients can be extreme

Taryn East writes:

ANOTHER DAY…

“That’s it, close the doors, no customers are allowed in!”

“What’s going on? why are you closing up?”

“It’s a disaster! You see this picture here? it should be over there! and it’s hanging askew!”

“Look at the other two pictures here… they line up with the edges of the cashier’s desks exactly… but this one? Do you see why it’s so wrong?”

*looks*

*looks some more… *

“I’m… really sorry, but I just don’t se…”

“I don’t believe it. ...

November 2nd, 2011

College is worthless for most

Another voice arguing college is over sold:

Consider computer technology. In 2009 the U.S. graduated 37,994 students with bachelor’s degrees in computer and information science. This is not bad, but we graduated more students with computer science degrees 25 years ago! The story is the same in other technology fields such as chemical engineering, math and statistics. Few fields have changed as much in recent years as microbiology, but in 2009 we graduated just 2,480 students with bachelor’s degrees in ...

November 1st, 2011

Money versus reputation: a woman kills a woman for sweatpants, or for reputation?

Someone earlier today accused me of thinking that money is a more powerful motivator than reputation. I said that I knew reputation was a powerful motivator.

Then I came upon this story. 2 women work at a store, and late one night, as they lock up the store, one of the woman finds out that the other woman is stealing a pair of sweatpants from the store. So the other woman then beats the first woman to death. Is the ...

October 31st, 2011

Cubic-bezier animations

This is brilliant. And simple.

Source

October 31st, 2011

True skunkworks, the programmers work without pay

A fantastic story about a skunkworks project at Apple, back in the early 90s:

I asked my friend Greg Robbins to help me. His contract in another division at Apple had just ended, so he told his manager that he would start reporting to me. She didn’t ask who I was and let him keep his office and badge. In turn, I told people that I was reporting to him. Since that left no managers in the loop, we had ...

October 31st, 2011

Drupal has decided to become Symfony

Drupal is going to borrow a bunch of components from Symfony. If they keep going down this road, then eventually they just become one of the CMS that is built on top of Symfony. In which case, what exactly is the unique thing that Drupal offers? The CMS’s built on Symfony are very good. Seems like this amounts to admitting that Drupal has hit a dead end.

The PHP library world has been changing rapidly in recent years. Once upon ...

October 30th, 2011

In Japan, programmers must retire at age 35

Interesting:

I don’t think outside of Japan there’s anything like this “retirement age” of 35 that is imposed on programmers here. There’s absolutely nothing special about being over 35 years of age over there. All that matters is ultimately whether you can do the work or not, and often you have younger people in senior positions. But in Japan, there actually are a lot of places that impose this age limit of 35 when recruiting programmers, and from my experience, they ...

October 29th, 2011

In the real world, most programming is boring internal apps

This is true:

90% of programming jobs are in creating Line of Business software: Economics 101: the price for anything (including you) is a function of the supply of it and demand for it. Let’s talk about the demand side first. Most software is not sold in boxes, available on the Internet, or downloaded from the App Store. Most software is boring one-off applications in corporations, under-girding every imaginable facet of the global economy. It tracks expenses, ...

October 29th, 2011

Lying is useful because it is rewarded

Taryn East writes:

I’ve spoken before about how I personally prefer Truth over Harmony, with estimation as a prime example. Mainly because, when it turns out that an estimate was inaccurate… you know who’s going to get the blame for “coming in late”.

And yet I’ve found in the past that if I try for accuracy, the truth is taken as “pessimism” (by comparison with the overconfident, optimistic estimates given by others).

What I found particularly scary (and accurate) was the final quote ...

October 28th, 2011

The impossibility of the pure API

Michael Blake writes:

Not too long ago I was working on Prometheus and realized “This is not going to be the clean, beautiful, API I want,” and I gutted the whole project.

I still failed.

The goal I was trying to accomplish was simply too large in scope to maintain a clean API (a goal I’ve gone on about before) and I shifted my goals. Beauty was not the inherent purpose of Prometheus, so I resolved to keep it as clean as I ...

October 28th, 2011

Felcia Day writes:

Basically I’ve noticed a huge trend not only in websites moving away from RSS to Twitter and FB, but REMOVING IT COMPLETELY! Personally, I feel like this is NOT a good move for people who provide content to stay in touch with consumers. Why?

-Twitter has no good way to filter information sources and brands from friends. Lists are really not useable, I don’t think a lot of people use them, and the UI has them buried so ...

October 28th, 2011

The newspapers are doomed

Interesting

Source

October 27th, 2011

If parts of the following make no sense, it’s because I’m trying to hide my disappointment and occasional anger, both with others and with myself.

Taryn East writes:

I’ve recently read the Jeff Atwood’s post: A blog without comments is not a blog, and realised that, while I don’t have comments turned off – I don’t exactly go out of my way to encourage much commenting on this blog.

I’d just like to say that I really do want to hear ...

October 26th, 2011

How should I interpret this?

I am not sure how to interpret this. Maybe it is good that more people are exploring the ask-a-question process? Or is it bad that so many start to ask a question and then abandon it? The spike at the end is interesting, but I do not know what it means.

Source

October 26th, 2011

The importance of trust

Taryn East writes:

Assuming Goodwill is about the decision to trust, because trust pays. It’s one of those common-sense things that we often forget, that people will live up to your expectations. Expect the worst and that’s what you’ll get, but expect great things and you’ll get the best. Seth talks about trust as it relates to, say, a restaurant trusting you to pay *after* you’ve eaten your meal… or Tiffany’s trusting you to try on their expensive jewels… but obviously ...

October 24th, 2011

How wrong is David Brooks?

David Brooks is sloppy in his use of sociology:

In this case, Mr. Brooks has taken his science from the work of Richard E. Nisbett, as described in his 2003 book The Geography of Thought: How Asians and Westerners Think Differently and Why, and in many papers, some of which are cited below. I was familiar with some of this work, which has linguistic aspects, and so I traced Brooks’ assertions to their sources. And even I, a hardened Brooks-checker, was ...

October 17th, 2011

If Haskell is a failure, does that mean that math is a failure?

If a language based on math concepts is inpractical, then how can we reconcile the failure of math models in this practical application, with The Unreasonable Effectiveness of Mathematics?

But despite all that experience, I conclude that writing Haskell code is hard. I don’t mean that in the “math is hard, let’s give up”, sense, but that getting from an empty page to a program that does the job is a harder process than it is with e.g. Perl. A resulting ...

October 17th, 2011

Patents are evil

Interesting:

There have been a string of similar “deals” announced recently (though we do wonder about the details), but Microsoft has announced that Qanta is the latest company to “license” its usage of Android and Chrome. Here’s Microsoft’s quote on the subject:

“We are pleased to have reached this agreement with Quanta, and proud of the continued success of our Android licensing program in resolving IP issues surrounding Android and Chrome devices in the marketplace.”

Let’s sit back and consider the sheer insanity ...

October 15th, 2011

How complicated is modern software?

Interesting:

Simple, isn’t it?

What just actually happened?

Well, when you know a bit of about how browsers work, it’s not quite that simple. You’ve just put into play HTTP, HTML, CSS, ECMAscript, and more. Those are actually such incredibly complex technologies that they’ll make any engineer dizzy if they think about them too much, and such that no single company can deal with that entire complexity.

Let’s simplify.

Simple, isn’t it?

What ...

October 12th, 2011

Interesting:

My colleague and I joined on the same day and were employees #25 & #26 of Walkabout. As we walked out of the meeting room I asked if we would be the last, thinking this was a sizeable number for any startup let alone an early-stage one. I was met with a somewhat incredulous “No, no. Not at all!” That was a red flag I ignored wilfully.

Fast-forward six months and Google was in a lavish, new office with Walkabout fully ...

October 10th, 2011

lsof does everything

lsof is a very useful linux tool

Source

October 5th, 2011

Sometimes the best thing you can do is quit

People often improve their lives a lot when they realize they need to quit something. I’ve certainly seen friends stay in bad relationships for way too long.

DUBNER: That’s Robert Reich. He was the U.S. Secretary of Labor during President Clinton’s first term. He helped put in place the Family and Medical Leave Act; he raised the minimum wage. On his watch, unemployment fell below 5 percent — the lowest it had been in 20 years! Now it’s hard ...

October 5th, 2011

Startups are sexy

Why did Josh Miller drop out of Princeton to work at a startup:

Many people hate the fact that working on a startup is now sexy. They gripe that everybody and their mother is building an app, while writing-off budding entrepreneurs as Social Network wannabes looking to make a quick, easy buck. I find this disdain to be disgusting, and I would like to try to explain why.

My former roommate – we’ll call him “John” – spent the summer doing exactly ...

October 4th, 2011

Guidelines for getting into YCombinator

What it takes to get into YCombinator.

Source

October 3rd, 2011

Stored procedures do not scale

Stored procedures failed at Etsy:

After starting off with just a single web server and database in 2005, the company’s IT architecture evolved over the next two years to rely heavily on business logic written as stored procedures in a back-end Postgres database. The presentation side was driven mostly by PHP on Lighttpd web servers, chosen at the time because the Etsy team felt Lighttpd was less common and less likely to be hacked.

And the organization mirrored the architecture: Etsy’s engineering ...

October 2nd, 2011

Airbnb cheats its own workers out of they money they deserve via their stock options

Yet another story about the creepy, low-life ethics at Airbnb:

From: Chamath Palihapitiya Date: Sat, 1 Oct 2011 11:16:05 -0700 To: Brian Chesky Subject: Airbnb financing… Brian, Cc Marc, Reid, my deal team Thanks again for giving me the chance to participate in your latest financing. I had a chance to review the docs at length yesterday and I wanted to follow up as, quite honestly, I’ve never seen a deal like this over ~60 investments I’ve done and I’m pretty concerned. I’m all for getting the best ...

October 2nd, 2011

The movement against organizations

Peter F Drucker said that we were living through the era of organizations. He was writing about the mid 20th century. I think that era is ending. Life for 100 years was about organizations and nation states, and during that era people enjoyed an increase in their standard of living, but during the whole era there was a constant criticism that organizations were infringing on people’s freedom. The criticism had right-wing and left-wing variations, but there was unease the whole ...

September 30th, 2011

Sometimes a computer programmer needs to fire their entrepreneur

I do not know Josh Weinstein and for all I know he is a really great guy, and very trustworthy. None of my remarks here should be regarded as aimed at Josh.

However, I am a computer programmer who has worked with a lot of inexperienced entrepreneurs. In the style of the movie Rashamon, I feel like I could write something like Josh’s post, where the same events happen yet they have a completely different meaning when told from a ...

September 29th, 2011

How one person can wreck a startup

I have promised to work on a lot of startups, but then backed off, usually because I realized the entrepreneur was a total flake. This sounds like the opposite happened, that the engineer decided to back out. But I wonder.

I had been searching and reaching out to the dozen or so top candidates in small world of the bi-directional video space. This individual, let’s call him Ted, in particular was a perfect fit — we connected on LinkedIn through ...

September 28th, 2011

How to add and delete remote branches in git

This is a good tutorial:

The Workflow

My workflow is generally something like this:

Create a remote branch Create a local branch that tracks it Work, Test, Commit (repeat) – this is all local Push (pushes commits to the remote repository) Git commands can be a bit esoteric at times and I can’t always seem to remember how to create a remote git branch and then start working on new code. There also seems to be multiple ways of doing it. I’m documenting the way that seem ...

September 28th, 2011

Most people are miserable

But there is hope:

They dislike their jobs, they dislike their boss, they dislike the things they must do in order to make the living that will allow them to continue disliking their life.

They don’t yell and scream and complain about it, in fact, they shuffle their way through it peacefully enough and teach their children that life is hard and painful and that they should appreciate any ounce of goodness that the universe deems them worthy of.

I think that ...

September 28th, 2011

Does “git push” make sense?

I agree, especially for those of us coming from Subversion, there is a lot here that is counter-intuitive.

Let’s say you are a web developer, and you do development on your laptop, then when things are nice and shiny you want to push those changes to the webserver. Seems natural enough, right?

git clone server:/var/www/foo # … git pull

# edit stuff git commit -a -m ‘i edited stuff’ Now, let’s say you’re a (possibly former) darcs/bzr/mercurial user and this time you’re using git. Git has ...

September 28th, 2011

A possible job interview question?

What is wrong with this code?

Here are five lines of code I found during a review not too long ago. This code had been tested and was ready for release.

for ( int i=0 ; i < this.MyControl.TabPages.Count ; i++ ) { this.MyControl.TabPages.Remove ( this.MyControl.TabPages[i] ); i--; } Feel free to stare at this for a while and absorb the quality.

When I was at school I had an excellent teacher who taught me how to bench-check a loop. The basic ...

September 26th, 2011

HTML5 validation does not check for much

Sadly disappointing. This is horrible HTML that is valid under HTML5:

<!DOCTYPE html>

<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>

<title>HTML5 Validation</title>

<script></script>

<embed>    Text Snippet #1<br>

<p>

<p>Text Snippet #2</P>

<FOrM>

<input>

</form>

<textarea></textarea>

<a href=index.html target=”_blank”><div>& Text Snippet #3</div></a>

Source

September 26th, 2011

The Board of Directors of Hewlett-Packard is criminally stupid

Also incredible:

Turning to HP, this week was their Board’s opportunity to solidify its reputation for incompetence and bad manners. They rose to the occasion. As recounted last year in August (Curious Summer), September (Redemption of More Insanity Ahead), and October (HP’s Board Gets No Respect) Monday Notes, this group of supposedly wise and experienced individuals managed to accumulate a sorry track record of boneheaded decisions. Admittedly, there’s a revolving boardroom door, directors have come and gone, but something in the ...

September 26th, 2011

The Board of Directors of Yahoo is criminally stupid

Incredible:

Today, Yahoo leaders — all of them in two different memos — took to the keyboards to fill their 14,000 employees in on what’s up. Reading them, Yahoos must now be more confused than ever.

To summarize: Yahoo is for sale, sort of. But we’re taking it slow, because we always like to drag out the uncertainty here at Sunnyvale HQ. Hey, keep working hard and innovating, despite the still-matrixed system. But don’t fret that your job and career hang in the ...

September 15th, 2011

Is cooperation more powerful than competition?

People helping people, in business. So much for the idea of competition.

We’re all in this together – The Chips are Down in 1962 Walker’s Wagon Wheel Bar/Restaurant in Mountain View became the lunch hangout for employees at Fairchild Semiconductor. When the first spinouts began to leave Fairchild, they discovered that fabricating semiconductors reliably was a black art. At times you’d have the recipe and turn out chips, and the next week something would go wrong, and your fab couldn’t make ...

September 14th, 2011

Getting git

Nick Farina on git:

In Git there is no “client” and “server”. A repository is a repository, no matter if it’s on my machine, your machine, or Github.com.

Each repository lives in a single hidden folder called .git. This is in stark contrast to Subversion which infects your source tree with little .svn folders everywhere.

The .git “repository” is more than just metadata and bookkeeping. It’s everything. All of your source, all your changes, all your branches, all your commit notes with ...

September 14th, 2011

The internet is the place where people say anything, a lot of is unpleasant

From Wikipedia:

The message board, which bills itself as “the most prestigious admissions board in the world,” has drawn the attention and criticism of some in the legal community and the media, most notably the Wall Street Journal, and National Public Radio for its lack of moderation of offensive and defamatory content.

Also:

On March 11, 2005 Brian Leiter of the University of Texas at Austin accused AutoAdmit of being “a massive forum for bizarre racist, anti-semitic, and viciously sexist postings, mixed in ...

September 13th, 2011

Homophobic recruiting

Really awful that this stuff still happens:

Lesson 1: spam a public developer list On Fri, Jan 21, 2011 at 3:35 PM, Beau Gould wrote: Hey guys and gals, I’m recruiting for a bunch of NYC clients seeking Junior to Mid-level Front-End Developers. All jobs are full time, on-site salaried, roles in the 50-100k range + benefits. If you’d like more information, please shoot me a resume and I’ll get back to you.

Thank you, Beau J. Gould ————————— Open Source Staffing http://opensourcestaffing.wordpress.com beau[AT]open-source-staffing.com

You may find this ...

September 13th, 2011

Surprises from linear algebra

Interesting:

Numerical linear algebra applies very advanced mathematics to solve problems that can be stated with high school mathematics.

Practical applications often require solving enormous systems of equations, millions or even billions of variables.

The heart of Google is an enormous linear algebra problem. PageRank is essentially an eigenvalue problem.

The efficiency of solving very large systems of equations has benefited at least as much from advances in algorithms as from Moore’s law.

Many practical problems — optimization, differential equations, signal processing, etc. — boil ...

September 12th, 2011

There is no overnight success

Overnight success takes 3 years:

We launched the new idea in a three-day scramble, got some initial press, users loved it, and four months later raised $1 million from amazing investors. A year after that, we’ve raised$6 million, made real revenue, attracted hundreds of thousands of users, and recruited amazing people to join our team (we’re hiring! join us!). And, best of all, we’re just getting started.

So, what happened in those three days?

I’m convinced that if we had the ...

September 11th, 2011

Drupal in crisis

Interesting:

in other words: “Core developers really didn’t want to take on this burden, but it happened nonetheless.”

Those last-minute product features not only blocked Drupal 7 from being released. They also distracted and prevented many high-profile core developers from working on the much more important API and subsystem issues in Drupal core, of which many still remain unresolved today.

Newly introduced subsystems in Drupal 7 have a fair amount of complexity and interdependencies on even more complex subsystems. Newcomers are locked ...

September 11th, 2011

Take risks, don’t bother with contracts

I love this:

It was 1998 and the dot-com boom was in full effect. I was making websites as a 22 year old freelance programmer in NYC. I charged my first client $1,400. My second client paid$5,400. The next paid $24,000. I remember the exact amounts — they were the largest checks I’d seen up til that point. Then I wrote a proposal for$340,000 to help an online grocery store with their website. I had 5 full time engineers at ...

September 8th, 2011

Notifo is shutting down

I am surprised by this. Chad Etzel (aka JazzyChad) is shutting down Notifo:

Today is a bittersweet day. I am closing one chapter of my life and opening a brand new one.

You can read the official announcement on the Notifo Blog. After 20 long months of trying to build the best notification platform for the modern, mobile web I must come to terms with the fact that I failed in one critical area: creating a ...

September 6th, 2011

Who exactly is Scala for?

Interesting:

One of the things I’m particularly bad at is spelling. My brain just doesn’t remember the spelling of words. When I was the editor of my college newspaper, one of the reporters got up in my face about being lazy because I couldn’t spell (this was 1985… before spell checkers.) I wrote a integral on the blackboard (this was before whiteboards) and asked her to solve it. She said, “That’s math… that’s hard… I’m talking ...

September 6th, 2011

The software revolution

Interesting:

When I was at IBM I noticed that their decisions for when to hire and when to cut staff was driven by its own internal logic more than external results. Even when the company overall posted strong quarterly results they may, understandably, choose to de-invest in some business units or product lines. The result was that my co-workers there never appeared to feel any more secure by working for a large, outwardly stable company. And certainly those working for large ...

September 6th, 2011

One of those rare moments that makes you think all the rhetoric about a new era of openness is true. Utterly remarkable:

As of late last week TechCrunch no longer has editorial independence. Some argue that the circumstances demanded it. I disagree. Editorial independence was never supposed to be an easy thing for Aol to give us. But it was never meaningful if it shatters the first time it is put to the test.

We’ve proposed two options to Aol.

1. Reaffirmation of ...

September 6th, 2011

You’re so cute

Interesting

I went to a dinner party at a friend’s home last weekend, and met her five-year-old daughter for the first time. Little Maya was all curly brown hair and doe-like dark eyes, and adorable in her shiny pink nightgown. I wanted to squeal, “Maya, you’re so cute! Look at you! Turn around and model that pretty ruffled gown, you gorgeous thing!” But I didn’t. I squelched myself. I always bite my tongue when I meet little girls, restraining myself from ...

September 5th, 2011

Managers are incompetent

This confirms for me something I’ve believed for awhile, that the vast majority of all managers are incompetent:

Managers can help ensure that people are happily engaged at work. Doing so isn’t expensive. Workers’ well-being depends, in large part, on managers’ ability and willingness to facilitate workers’ accomplishments — by removing obstacles, providing help and acknowledging strong effort. A clear pattern emerged when we analyzed the 64,000 specific workday events reported in the diaries: of all the events that engage ...

September 2nd, 2011

Ruby is just a temporary name for Ruby

It’s funny how these things develop.

Source

September 2nd, 2011

A map of out-of-wedlock birth

I guess I knew this but it is still a surprise to see. A map of out-of-wedlock birth. See the “conservative values” of the traditional South! They have an out of wedlock birth rate on par with Sweden!

It is curious that Southern political movements tend to emphasize traditional values, yet the people of the South engage in behavior that is not in accord with the usual description of those conservative values. I personally don’t see anything wrong with out-of-wedlock ...

September 1st, 2011

Can governments fund startups?

Governments can clearly fund basic research, either through academia or by becoming the first customer for an expensive product that will eventually become cheaper and better. Radio, radar, rockets, the Internet, jet airplanes, computers and more all benefited from government support.

But can the government directly fund startups? I’m doubtful. I suspect it is wiser for the government to simply fund basic research, and then let entrepreneurs build startups around that research.

This is well said:

I’ve interacted with several ...

September 1st, 2011

Burnout among programmers is common

Interesting:

Burnout isn’t unique to the Linux community, of course. However, at times, the problem can seem almost epidemic in the community, and people seem reluctant to talk about it publicly.

Both Ubuntu community manager Jono Bacon and Ubuntu volunteer and journalist Amber Graner find that, when they deliver talks based on Herbert Freudenberger and Gail North’s The Burnout Cycle, afterwards people approach them privately to talk about their own experiences with burnout.

Similarly, kernel hacker and Ada Initiative co-founder Valerie Aurora ...

August 31st, 2011

GitHub Flow

Interesting criticism of Git-Flow, and an interesting alternative:

So, why don’t we use git-flow at GitHub? Well, the main issue is that we deploy all the time. The git-flow process is designed largely around the “release”. We don’t really have “releases” because we deploy to production every day – often several times a day. We can do so through our chat room robot, which is the same place our CI results are displayed. We try to make the process of ...

August 31st, 2011

Tutorials for RSpec

Mark Herschberg of ShermansTravel shared this email, which I re-post here.

Below are some good links for an intro to rspec. Some of it is in the context of some example code which may not make sense.

http://www.lukeredpath.co.uk/blog/developing-a-rails-model-using-bdd-and-rspec-part-1.html good intro

http://blog.emson.co.uk/2008/06/understanding-rspec-stories-a-tutorial/ another good intro

http://blog.davidchelimsky.net/2007/05/14/an-introduction-to-rspec-part-i/ yet another good intro

http://rspec.info/documentation/ some examples

http://marklunds.com/s5/rspec.html powerpoint overview

http://media.pragprog.com/titles/achbd/examples.pdf more examples

http://ruby.railstutorial.org/chapters/sign-up#sec:rspec_integration_tests

good form example

http://www.jairrillo.com/blog/2008/08/18/introduction-to-rspec-part-2-testing-the-rails-model/ an ok intro

http://media.pragprog.com/titles/achbd/outside-in.pdf how to use it

http://media.pragprog.com/titles/idgtr/RSpec.pdf worth skimming over

Source

August 29th, 2011

Understanding JIT spray

A very clever hack:

As mentioned earlier, the JIT has to mark its own assembly buffers as executable. An attacker may look at using that fact to generate executable stage 0 shellcode, in order to bypass some of the pain inflicted by DEP. But how could you possibly use JIT compilation process to make shellcode?

JIT spraying is the process of coercing the JIT engine to write many executable pages with embedded shellcode.

—Blazakis, 2010

Dion Blazakis wrote the seminal paper on JIT spray, ...

August 26th, 2011

More innovation from CouchSurfing

CouchSurfing is becoming a new kind of corporation. CouchSurfing does not get credit for the level of social innovation it has shown.

We started CouchSurfing with a crazy idea in mind. We thought that maybe, just maybe, the world could be changed one couch at a time. 5,766,182 inspiring experiences later, we couldn’t be more sure of it.

What you’ve done as a community has inspired us to take our mission and our vision to a whole new level. We ...

August 26th, 2011

Looks have a bigger impact on earnings than education?

Interesting if true:

Physically attractive women and men earn more than average-looking ones, and very plain people earn less. In the labour market as a whole (though not, for example, in astrophysics), looks have a bigger impact on earnings than education, though intelligence—mercifully enough— is valued more highly still.

So education is less important than both intelligence and looks?

Source

August 25th, 2011

Changing the gender ratio at SXSW

Interesting

The number of women submitting proposals to the SXSW Interactive Panel Picker has increased 8 times over the last 5 years, from just 140 in 2008 to over 1200 this year. That represents a mean growth rate of 76% year on year, with a peak rate of over 100% growth from 2009 to 2010. Simultaneously, the number of men submitting proposals has experienced a mean growth rate of 37%. Female involvement in the Panel Picker process has increased steadily since ...

August 25th, 2011

Steve Jobs resigns

End of an era:

Reading around the web an hour ago, looking for confirmation of the then-minutes-old news that Steve Jobs had resigned as CEO, I repeatedly encountered and bridled each time at use of the adjective “shocking” to describe the announcement. But my initial resentment was unwarranted. This is not out of nowhere, it’s not even unexpected. We could all see this was coming — but it is a shock.

I saw that headline and my nervous system took a jolt.

The ...

August 17th, 2011

Feeling like a phony

I can relate to this:

If I had a dollar for every time I wondered when I was going to get fired for incompetence, I’d be a millionaire. Most of the time I know that I know my trade — I get a fairly regular stream of compliments from coworkers, customers, peers on random projects, etc and I generally feel I produce a lot of value. But the second something happens that points in the other direction, even something minor ...

August 17th, 2011

May 15th, 2011

Interesting.

Source

May 14th, 2011

The master and the novice

Interesting:

A novice was trying to fix a broken Lisp machine by turning the power off and on.

Knight, seeing what the student was doing, spoke sternly: “You cannot fix a machine by just power-cycling it with no understanding of what is going wrong.”

Knight turned the machine off and on.

The machine worked.

Source

May 12th, 2011

Sugar Helps Antibiotics Kill Dug-In Bacteria

Interesting

What’s the News: Adding sugar to certain antibiotics can boost their bacteria-battling ability, according to a study published today in Nature. In particular, sugar helps the drugs wipe out persisters, bacteria that evade antibiotics by essentially going dormant only to flare up again once the danger has passed. This technique could lead to the development of inexpensive, more effective treatments for bacterial infections.

Source

May 11th, 2011

How to hire computer programmers

Interesting.

Everyone wanted to be like Microsoft, even Google, until everyone wanted to be like Google (until recently); and so that interview meme persisted. Check out these two recent posts on the subject of interviewing, courtsey of Hacker News: one from a would-be employee, one from a Google interviewer. A couple of illuminating quotes from the latter: “I’m not even necessarily saying that this is a good metric” and “If it’s any consolation, at least we don’t ask gotcha riddle questions ...

May 10th, 2011

Kill math

I like this idea, trying to get away from the abstract symbols that make up the methods of math, and instead focus on the underlying problem solving.

Source

May 8th, 2011

Why do mommy bloggers have such a strong online presence?

Later this summer I will probably end up doing some work at one of the companies that is working to reinvent publishing. I’ve spoken with the CEO and we seem in agreement on many things. I’ll post more details when appropriate. Suffice it for now to say this is one of the firms that is trying to find new ways to funnel money to writers, and this does not involve my co-developer-of-wpquestions, Darren Hoyt.

One thing the CEO said to ...

May 2nd, 2011

Can mortals and immortals be friends?

If you are immortal, do you really want to give your heart to someone from a mortal species? You’ll have to watch as your loved one grows old and dies. Here we have a baby hippo that’s fallen in love with a century old tortoise:

Sadly, the hippo will grow up, then grow old, and die. The tortoise will probably be here 100 years from now, but the hippo will not be.

Unless things change a great deal.

Source

May 1st, 2011

Tomboy is useful for notes I take during a project

I gave Tomboy a try because Sam Ruby spoke of it highly. I didn’t initially find it useful. I think the version they had in Ubuntu back then was too limited. But I am using it now at my newest project, and I find it is really useful. Mostly when I’m debugging something complicated, and the bug appears in multiple places, and it takes hours of detective work to track down the real problem, I’ve been using Tomboy to track ...

May 1st, 2011

What is “best practice” in programming?

Interesting:

This is the kind of possibility that the pointy-haired boss doesn’t even want to think about. And so most of them don’t. Because, you know, when it comes down to it, the pointy-haired boss doesn’t mind if his company gets their ass kicked, so long as no one can prove it’s his fault. The safest plan for him personally is to stick close to the center of the herd.

Within large organizations, the phrase used to describe this approach is “industry ...

April 28th, 2011

Madam, Sir, a file or a resource you requested does not exist on this server

An oddly formal 404 message:

I had been looking for this Subversion card.

Source

April 21st, 2011

College is over-rated

Put me down as someone who believes that college education is experiencing a bubble.

Like the housing bubble, the education bubble is about security and insurance against the future. Both whisper a seductive promise into the ears of worried Americans: Do this and you will be safe. The excesses of both were always excused by a core national belief that no matter what happens in the world, these were the best investments you could make. Housing prices would always go up, ...

April 18th, 2011

Do you remember when Facebook was doomed?

Does anyone remember the uproar that occurred when Facebook rolled out the Wall that allows you to see what your friends are doing? That was about the first time I’d heard of Facebook, and at the time I thought, “Sounds like they really fucked up. I guess they are doomed. No company can survive this much negative feedback.” Every blog I read posted a scathing attack about this new feature, and how it undermined people’s privacy.

The funny thing ...

April 15th, 2011

The curse of Lisp

So true:

The Lisp Curse does not contradict the maxim of Stanislav Datskovskiy: Employers much prefer that workers be fungible, rather than maximally productive. Too true. With great difficulty does anyone plumb the venality of the managerial class.

Source

April 14th, 2011

Set to music.

Source

April 14th, 2011

My last day at M Shanken!

The end of a very long year: yesterday was my last day working at M Shanken, the publisher that creates Wine Spectator magazine and Cigar Aficionado. They initially hired me for a 3 month contract, but then that was extended a month, and then another month, and then another and another, till I had worked a little over a year. I joked with my friends that I had just finished the longest 3 month contract in history.

There are good ...

April 13th, 2011

Eating has a big influence how judges render decisions

Food effects how judges judge

Source

April 12th, 2011

The complete Emacs function list

A comprehensive list.

Source

April 12th, 2011

How much are programmers paid?

Salary negotiations:

The conversation ended up in numbers. Coworker building the house pulled about $140K base (median for a programmer was probably$125K), and his bonus nearly matched the new guy’s salary, which was an insulting 60K — and got cut out of the bonus and raise in January for not being there a full year, only 11 months. Turns out he was a doormat in negotiating, though his salary history was cringeworthy. It pained everyone to hear it, considering how nice ... Read More Source April 12th, 2011 No Comments How does Clojure shape your code? Interesting: I have come to realize how the language shapes how I code. Specifically, and this is probably the most meaningful change, is that immutability has forced me to keep each function short, sweet, and to the point. Besides in a few special cases, my functions are typically less than 15 lines, and the majority of the time it comes from a large let block creating bindings (which could probably be replaced with a few -> or ->> functions). ... Read More Source April 6th, 2011 In Business No Comments Like buying a house in 2006 I’m finishing up my contract at Wine Spectator. It is a very nice place to work, but I am excited to be moving on. They are busy trying to hire new computer programmers. For hiring, New York is a tight scene right now. Sometimes programmers do not bother to show up for interviews. One of the managers at the place today made the remark “It’s like trying to buy a house in 2006. We interview a programmer and they’ve got ... Read More Source April 5th, 2011 No Comments Where PHP regex fails Andrei Zmievski has a post about a regex that should have detected primes, but it ran into a problem with the PHP code that handles regex. Source April 4th, 2011 In Business No Comments “Professor, we don’t need to be studied. We need help!” The disappearing city: Flint is elusive. It’s like this for me now, after twenty-plus visits: Buildings once there are now gone, replaced by lawns, by weeds, maybe by gardens. Buildings I photographed are now charred rubble or have disappeared. I knew something once, but now it’s changed; or maybe my memories are faulty, maybe I’m at the wrong intersection, expecting to see a building that is a block away. That happens. People I knew have left. They lose jobs, lose interest, ... Read More Source April 4th, 2011 In Business No Comments The short term versus the long term I don’t think there is a right answer here, but to the extent that some later investors get ripped off, the laws should be changed to better align the incentives of owners with potential investors. Let’s come up with an analogy and then torture it like we’re the Cheney administration: imagine you’ve just purchased a plot of land. What are you going to do, mine or farm? If you farm, you’ll have to purchase seed up-front, and work on it for ... Read More Source April 4th, 2011 No Comments Clojure is almost as big as Common Lisp The standard libraries of Clojure match Common Lisp, and of course, Clojure has all of Java to fall back upon. Source April 4th, 2011 No Comments The difficult of handling line endings The way different platforms handle line endings remains a persistent problem. Source April 4th, 2011 No Comments Lisp lamda: When you need to use the same variable twice This says well at what point people switch to lamda: But for more complicated functions, points-free style gets awkward quickly, especially if you don’t have other combinators like s. As soon as we want to use some variable twice, it’s usually easier to switch to lambda: (mapc (lambda (x) (format t “~S (really ~S)~%” (round x) x)) numbers) And that switch requires rewriting the whole function in a completely different way. Having more than one way to write functions ... Read More Source April 1st, 2011 In Business No Comments Bad CEOs come up with rationalizations, good CEOs deal with the pain How much pain can you take? As CEO, there will be many times when you feel like quitting. I have seen CEOs try to cope with the stress by drinking heavily, checking out, and even quitting. In each case, the CEO has a marvelous rationalization why it was OK for him to punk out or quit, but none them will ever be great CEOs. Great CEOs face the pain. They deal with the sleepless nights, the cold sweat, and what my ... Read More Source March 31st, 2011 In Business No Comments Bad names for startups can cause big problems Embarrassing: While building the technology we didn’t spent (nearly enough) time on a name for the company. At some point we decided we understood the basics concept and reached a point where the question of a name for the company/service needed to be answered. We did the usual brainstorming, mind mapping, finding inspiration elsewhere, but couldn’t get to a name we felt comfortable with. One day I decided we should just pick something. Not having a name was blocking our release ... Read More Source March 31st, 2011 In Business No Comments The New York Times is doomed The New York Times is badly mismanaged. Source March 31st, 2011 No Comments Radiation near Fukushima is now at twice the level of Chernobyl I can not believe how awful the situation in Japan is. And it seems to keep getting worse, even though its already a lot worse that the worst thing I could imagine. Radiation 40 kilometers northwest of Fukushima-Dai-Ichi is now at twice the level as what the Soviet Union considered critical enough to order an evacuation. Absolutely incredible and awful. Source March 31st, 2011 No Comments With computers, reliability is the most important feature There is a lot of truth in this: The other day I was thinking about how Toyota and Honda overcame scepticism about their abilities and became dominant car companies. They looked at the virtues a car is supposed to have and identified one that is the top priority for most people using cars – reliability. Most people just want to get from point A to point B and not encounter any breakdowns in the process. Most people use computers the same ... Read More Source March 30th, 2011 In Business No Comments Most job interviews for computer programmers are done poorly I think this is very true: A candidate would come in, usually all dressed up in their best suit and tie, we’d sit down and have a talk. That talk was essentially like an oral exam in college. I would ask them to code algorithms for all the usual cute little CS problems and I’d get answers with wildly varying qualities. Some were shooting their pre-canned answers at me with unreasonable speed. They were prepared for exactly this kind of interview. ... Read More Source March 28th, 2011 In Business No Comments Spec work makes people angry This is a fight my dad fought as well. It is an important reminder for me. Source March 28th, 2011 In Business No Comments Working remotely at Deviant Art Interesting article at Deviant Art about how the whole team is remote. Source March 28th, 2011 No Comments Maintenance programming requires telepathy I’m cleaning up old code and I come upon this: /* * Sanity… */ if(this->timer < 1 ) $this->timer = 1; I wonder why they did this? And why do they write “Sanity”? Sometimes, when I do maintenance programming, on code ... Read More Source March 25th, 2011 In Business No Comments Funding Makes Lots of People Miserable There is some truth in this: In my line of work, I’ve met a lot of startup people. I’ve met quite a few who’ve had their startups yanked out from under them… who sold, only to watch their babies murdered… who built something they loved, only to end up employees once more at the acquiring company. I’ve met people who’ve had their VCs and boards run their companies into the ground, replace them, force sales. I’ve met people who were had to ... Read More Source March 25th, 2011 In Business No Comments The decay at Google, the struggle for organization at large scale An ex-engineer says that Google should return to its startup roots. Personally, I do not think a large company can behave like a small company. Additional organization is needed. But this sounds like very good advice: Make it very clear that good, small ideas matter. This is so important. One of the things I heard over and over was “If your product isn’t a billion-dollar idea, then it’s not worth Google’s time.” This message sucks. What you’re saying is ... Read More Source March 25th, 2011 No Comments Earliest humans to North America were here at least 13,000 years ago Intersting Source March 24th, 2011 No Comments Every job interview should offer you valium The world would be a better place if every company was legally obliged to offer valium when you come in for a job interview. I think it would be a win-win: you would be more relaxed and they would probably get more honest answers out of you. Source March 23rd, 2011 No Comments All of Chrome, every window, can die at once Google’s web browser Chrome has the reputation that it can never die in total, rather, each window might crash, but the other windows will be safe. But I just had all of Chrome die on me, as you can see here: Source March 23rd, 2011 In Business No Comments How much should entrepreneurs network with other entrepreneurs? There is some truth to this: Getting your startup in the newspaper is cool. You can call your parents and they will be proud. Who knows, someone might even read it and become a customer. Attending networking events is cool too. You get to meet people, exchange information and who knows, you might even meet a customer. Meeting with other entrepreneurs to drink coffee is great. You can exchange experiences and maybe even become partners. You might even convert the other entrepreneur to ... Read More Source March 23rd, 2011 In Business 1 Comment Gregory Dal Piaz writes his own articles? I’m currently working on a contract on Wine Spectator, so I’m getting to know the various websites devoted to wine. One of the competitors is Snooth, started by Gregory Dal Piaz. I notice there are articles such as this one: Talking with Chiara Lungarotti — Women in Wine: Umbria’s ambassador. The byline is Gregory Dal Piaz. Is it possible that the founder really finds time to write the articles, as well as run the business? This is well written: That ... Read More Source March 23rd, 2011 No Comments What else ends when a man dies in a bus accident? This man from China died in a bus accident recently. His family at home faces deep poverty, so he came to America to hopefully earn a better life. He spent$75,000 to get smuggled into the USA. One assumes he would have paid that off with time, but he was here only 3 years, and now he is dead.

The task was a group undertaking, with all his closest relatives appealing for loans from everyone they knew. Ms. Wang said ...

March 23rd, 2011

Coal is more deadly than nuclear power

The eco-system of the Earth can not survive in anything like its current vibrant state, so long as there are 6 billion or more humans on the planet. People live in denial about this fact. People want to have children, and they do not want to face up to the consequences of having children. Like anyone running from an important truth, people get defensive, and they look for scapegoats. The last few weeks have given people a chance to vocalize ...

March 23rd, 2011

Wine was invented at least 6,000 years ago

Interesting that they found a wine making site in Armenia that is 6,000 years old. Of course, it is likely that we have not yet found the truly oldest wine making site, nor is it likely we will ever find the first site. It is worth noting that wine goes back into the earliest days of agriculture.

Source

March 22nd, 2011

A developer’s personal history with Twitter

I read all of the Twitter API docs (which was easy back then, there were about a dozen methods, and everything was typed out on a page in the Google Groups forum). Then I just needed an idea for something to do.

For the next three years, ideas sprang forth like a fountain. I just could not stop creating every goofy idea that popped into my head.

He worked as tech support for Twitter for ...

March 22nd, 2011

http_build_query

PHP is an odd language, with odd habits. I was just looking for the file upload syntax in Symfony 1.4 and stumbled upon this bit of code.

if ($this->form->isValid()) { foreach ($request->getFiles($this->form->getName()) as$uploadedFile) { ...

March 22nd, 2011

Checking to see if a secure page really is secure

As a functional test for Symfony, I like the idea of testing to see that the secure pages are really secure.

Source

March 22nd, 2011

Automated creation of functional tests for Symfony

If I stick with Symfony, then I should start using this.

Source

March 22nd, 2011

Functional programming lets you create your own language, specialized for your project

Interesting

Simplicity and Abstractness Ending up with a language tailored for the problem is not the only nice feature of functional programming. Compared to object-oriented, functional code tends to be a lot more abstract. There are no intricate nets of heavy stateful objects that very often can’t talk to each other without adaptation and need a lot of care to weave together.

Data structures are very simple (if not minimalistic), what makes them easy to use with more functions. They also are immutable, ...

March 21st, 2011

Interesting

Source

March 15th, 2011

The correct way to add context information to a form class in Symfony

This is a great tutorial on how to add context sensitive methods to the form classes in Symfony.

Source

March 12th, 2011

You will be influenced by who you work with

Studies show that happiness, smoking, obesity and many other behaviors spread through social networks. So be careful who you work with.

Source

March 10th, 2011

The end of publishing as we know it

Tien Tzuo has a manifesto for publishers:

We also believe there’s a much better way for subscribers to keep getting their news on the iPad 2 that doesn’t put journalists in the poorhouse. It’s absolutely true that online ad models have dried up and it’s clear that “free” is not a strategy.

In order to survive, publishers need to commit to a new manifesto:

Media companies need to take charge of their own destiny, not hand the keys to Apple.

Media companies need to ...

March 9th, 2011

StackOverflow continues to expand the range of sites in its network

StackOverflow just got another \$12 million in funding.

The discussion of this on Hacker News tends to be cynical.

Source

March 9th, 2011

What sort of free work are women willing to do online?

Sue Gardner goes looking for quotes from women about why they don’t contribute to wikis, and the main reason seems to be aggression from others:

From a commenter on Feministing: “I agree that Wikipedia can seem hostile and cliquish. Quite simply, I am sensitive and the internet is not generally kind to sensitive people. I am not thick-skinned enough for Wikipedia.”

…“From the inside,” writes Justine Cassell, professor and director of the Human-Computer Interaction Institute at Carnegie Mellon University, “Wikipedia may ...

March 9th, 2011

Oxygen: an XML editor

I’m told that Oxygen is a good XML editor. I will have to try it at some point.

Source

March 9th, 2011

The word “passion” is terribly over-used regarding startups

There is little that justifies the usage of the word “passion” in this critique. I think it is reasonable to talk about “time on task” as useful to someone working on a project, but that would apply to the Project Manager at Facebook as well. The below description sets up an entrepreneur-versus-corporate-drone conflict that does not need to exist.

Why does Foursquare just keep winning? If I could tell you the specific features or user interactions that are lacking in ...

March 9th, 2011

Sleep is the most important thing that top performers have

Sleep is really, really important:

So how much sleep do you need? When researchers put test subjects in environments without clocks or windows and ask them to sleep any time they feel tired, 95 percent sleep between seven and eight hours out of every 24. Another 2.5 percent sleep more than eight hours. That means just 2.5 percent of us require less than 7 hours of sleep a night to feel fully rested. That’s 1 out of every 40 people.

When I ...

March 8th, 2011

How to recover from burnout

Jacques Mattheij offers this list of symptoms of burnout:

* A compulsion to prove oneself

* Working harder

* Neglecting one’s own needs

* Displacement of conflicts (the person does not realize the root cause of the distress)

* Revision of values (friends or hobbies are completely dismissed)

* Denial of emerging problems (cynicism and aggression become apparent)

* Withdrawal (reducing social contacts to a minimum, becoming walled off; alcohol or other substance abuse may occur)

* Behavioral changes become obvious to others

* Inner emptiness

* Depression

I can relate ...

March 8th, 2011

DNA is Turing complete

Via Hacker News I found out about Rule 110, which is apparently the simplest known system that is Turing complete (capable of any calculation).

Rule 110, like the Game of Life, exhibits what Wolfram calls “Class 4 behavior,” which is neither completely stable nor completely chaotic. Localized structures appear and interact in various complicated-looking ways.

While working on the development of NKS, Wolfram’s research assistant Matthew Cook proved Rule 110 capable of supporting universal computation. Rule 110 is a simple enough ...

March 8th, 2011

Dealing with burnout

I occasionally deal with burnout, since I work too much, so I could relate to this comment:

The first thing I’ve learned is that I can’t accurately judge my limits. Even if I feel okay and on top of the world… things start to slide. Suddenly I’m writing code so bad, I’m committing code that doesn’t even work, but thinking it does, because my brain is in outright rebellion.

Both times, I couldn’t code for six months. The first time, I just ...

March 8th, 2011

The many failures of Lisp: are they fixed by Clojure?

Steve Yegge wrote about the failures of Lisp in 2006. I find it fascinating to read about the state of Lisp in 2006, as Lisp was not on my radar back then. I do not think I had the slightest idea what Lisp was, back then. When I look at my old blog, it would appear my first reference to Lisp was in 2009, and it only came on my radar screen because of my increasing interest in JVM ...

March 8th, 2011

The advantages that Ruby has over Lisp

This is an interesting conversation, from way back in 2005. Eric Kidd makes the argument that Ruby is better than Lisp in several of the ways that Lisp itself likes to be judged.

A Lisp is a Lisp because it’s code is represented as its basic data structure. Ruby’s isn’t (unless you argue that Ruby’s code consists of strings, and string is a baic data structure; though I’m sure you’ll ...

March 8th, 2011

My friends, this conversation happened several decades ago

The USA has been in decline for several decades. In 1945 the US economy amounted to 50% of the world economy, now the figure is closer to 20%.

Conversations like this are odd.

Is America in decline?

Can anything reverse growing inequality of wealth?

What is odd is that people act as if this is the first time we are having this conversation. Possibly I’m sensitive to the issue since I’ve been a big believer in America’s decline since I was ...

Check out my books:

August 20, 2019 2:29 pm

"Which is fine. Like I said, there are dance scenes that have strict “no alcohol” rules. That might appeal to y..."

August 20, 2019 1:35 pm

""Promise of an early bed" - the whiff of danger keeps me away from many venues like the one you describe...."

August 20, 2019 12:22 am

"I think any time you go to any club there is the possibility of running into an angry person, maybe a person w..."

August 19, 2019 7:56 pm

"I'm confused. You and your friends went out, had a fight, and it's still a great place to go to? Maybe..."

August 18, 2019 8:57 pm

"You seem to have little patience for people who choose different tech paths than you. Although it looks like o..."

August 18, 2019 8:53 pm

"You don't suffer slights well, do you? Others who choose to waste time with dumb tech, do they keep you up at ..."

August 18, 2019 8:34 pm

"Me again. I've worked for a company that focuses on containerized applications for some time now. There is abs..."

August 18, 2019 8:00 pm

"To build on my last statement, I'm not trying to show that I'm "smarter." I'm probably not, or if I am, who gi..."

August 18, 2019 7:48 pm

"You think that containerization is going anywhere? I agree that it isn't strictly necessary, but you mistake y..."

August 18, 2019 7:40 pm

"If you weren't criticizing Docker, why did your frame the article as anti the Docker/Kubernetes/Python troika?..."

August 13, 2019 1:34 pm

"No tool is every perfect, and you're certainly free to use whatever you want. But, I doubt very much the huge ..."

August 5, 2019 5:23 pm

"DangerNorm, as to your last point, I was recently consulting with a startup that focused on the privacy of med..."

August 5, 2019 3:55 pm

"This is tangential to the above point, but on the subject of mental health, I'll also take this chance to say ..."

August 5, 2019 3:51 pm

"Your description of most people's response is correct, but I consider it to be a problem, rather than the corr..."

August 5, 2019 3:28 pm

"DangerNorm, thank you for writing. I think you are missing the moral element here. You should understand the d..."