|
||||
|
January 25, 2011
Rewriting Yourself Out of a Job I just read an excellent article by Steve Blank about the dangers of Rewriting the Code. I will add that being involved in a large code rewrite is also an excellent way to commit job suicide. I was phased out of my last job primarily because I bet the farm (at least my part of the farm) on a very complex architectural standardization effort. I enthusiastically followed what the team leader and a very prominent developer on the team wanted us all to do, which was as intricate and modern as perl5 can get. I chomped the bit and then got way in over my head while most everyone else continued working on incremental improvements to running systems. As with working on any large project that does not have immediate business value, many aspects of a rewrite can attach a huge target around your neck. The political situation became as complex as the rewrite and I believe that putting all of my time into the rewrite (without hedging) -- and then defending my decision to do so -- ruined my position there. In most organizations, a high-risk project like a rewrite might not be worth participating in unless you can get significant and provable buy-in from other developers on the team, not to mention political coverage from managers across the company. And if the support wanes, I would advise any developer stuck knee-deep in a rewrite to get working on something that is practical and much-appreciated. Otherwise, the whole exercise can lose you your valuable time and energy, your mental well-being, your job, and even the friends that you made on the job. Beware. October 19, 2010
What Is the Motive? When I studied, wrote, and performed in stage plays in high school, I learned that every character's action should have a driver. Often this driver would be a direct reaction to an event in the near or distant past, sort of a chip on every character's shoulder that made it all make sense to the audience. One of my acting teachers even once told us: "I'll take one reactor over two actors," which had a big impact on my work at the time. So watching the The Social Network movie was interesting because I understood a lot about what the entertainment people - the writers, actors, director - were thinking when they produced the move, and I also understood a lot about the phenomenon they were trying to depict. In the mid-90s I actually helped start a college-centric web site with several of my friends, which was when I first started learning html. I saw a lot of parallels between the movie and the experiences I had "back in the day." But the main thing that struck me as incorrect was the primary motives of the main character. If he was in fact motivated by social acceptance, why did the movie depict him coding while girls were partying all around him? I think that Mark Zuckerberg actually hit it on the head in this interview clip: Mr. Zuckerberg said that they "can't wrap their head around the idea that someone might build something because they like building things." Actually, people in the entertainment industry can, because they are all about building things themselves (and not just for the power, sex, fame, money, etc). Perhaps they just don't think that this "build to build" motive would appeal to an audience ostensibly driven by more base urges. August 29, 2010
Let Go of Your Advantages Age-related discrimination is real and it is rampant in the tech industry. While many people get hurt by this sort of discrimination, it is simply the mundane outcome of rational, productivity-maximizing hiring and project assignment decisions in tech teams across the industry. Incentives drive the underlying behavior, and these incentives intersect with the natural short-sightedness, ruthlessness, and selfishness that exists in each of us. Some of the decision-makers are aware of their discriminatory behavior, others are in denial. Often it is the nature of many engineers (who may find themselves in a leadership position) to also have a somewhat diminished sense of empathy, and this adds to the potential for all sorts of discrimination to occur. Whatever its origin, this nasty environmental factor is not going to away without some serious social engineering. We can exploit it, or cope with it, depending on where we are in life. We can also try to kill it. And we should, because we are only getting older. If enough people change what they do, we can all collectively benefit. Sort of like planting trees in our neighborhood. Ridiculously, I first felt age-related discrimination when I was only 25. More recently, I watched one partner in a rapidly expanding tech company tell an unemployed 55 year old developer (who was asking about what kinds of people the company is looking for) that the company was looking to hire young grads from the university. While this was at an informal gathering of developers, the insensitivity of it was palpable. But sensitivity does not help a tech company survive. The young programmer possesses a naivete and a drive to learn that is prized, and at a low price. The old programmer possesses an equally valuable experience level, but at a high price. The advantages and disadvantages of each are clear, but short-term answers to cost contraints rule over the long-term benefit of experience. This is because experience can be learned, and naivete cannot. Usually. If you are an aging programmer, get into the habit of unlearning. Stop being good at something old, and start being bad at something new. Take on what seems to be a stupid, newfangled technology that does not appear to be a better solution than the older solution (that you happen to know inside and out). Let go of your advantages. And plant a tree or two. April 27, 2008
Looking for the Mouse Gin, Television, and Social Surplus by Clay Shirky has me riveted. I've been reading essays about post-television culture since Alvin Toffler keeled me over half-way through my senior year in high school, but Shirky's write-up of his 2008 Web 2.0 Conference speech is among the best. I think that's going to be a big deal. Don't you? While this hopeful logic echoes the "1% of a billion people" fallacy, the immense amount of work directed at projects such as wikipedia attests to huge reserves of untapped intellectual energy. We're going to need it. Posted by Jamie Pitts at 2:59 PM | Comments (0) | TrackBack (0)March 10, 2007
What is Open? Henry Story, Danny Ayers and Shelley Powers wrote some astute criticisms of Tim O'Reilly's write-up on freebase. Why do Tim O'Reilly, Cory Doctorow, and others continue to mis-cast a means to agree on how to communicate as a centrally-controlled system? I'm half-joking here, but is this all some sort of gesture to the postmodern concept that language itself is a form of oppression? Less humorous is how the concepts of openness and control are thrown about as loaded language to promote a technology or service. To say that one technology is about control, while another is about openness is total bunk - what really matters are the intentions of the designers and the implementers, and, above all, the outcomes. November 1, 2005
The Attention Economy I have been thinking a lot about attention lately. At work, several developers complained about having problems concentrating (due to a noise problem), and we plan to improve the work environment by building higher cubicle walls. In my investing activities, I have created a new class of companies that are positioned to convert attention into profits (GOOG and YHOO are at the top of that list). And in my spare time (walking to and fro), I often think about how units of attention could eventually be added to the economic toolbox, along with labor, GDP, and money supply. I got to writing all of this down because I just read The Looming Attention Crisis on A VC. In this article, Fred quoted Herbert Simon: I do not see this surplus of options as negatively as Fred does. Humanity has been toiling for millenia so that we may have a few spare moments to think, and pass the results on to the next generation. The only poverty of attention I see is in all of the precious cycles that continue to be spent on survival instead of on some other pursuit higher up Maslow's hierarchy. As human progress accelerates, we find ourselves having spare cycles, and having more ways to spend these spare cycles. And in these moments, apart from the attention I give at work and at home, I work on tools to help me get even out of my limited attention span. This is because I see technologies such as XML, RDF, and OWL as a way to optimize the ongoing consumption of attention. January 31, 2005
When Do Assertions Become Facts? At the core of all of the apps that I have developed is a relational database. I am used to it being there, available to answer any question, and ready to receive updates about the current reality of any given object instance in the system. Now I find myself developing a web application and semantic data service which are fed from a very large number of SEC filings and news stories. All of the data will be available for others to interpret in their own apps, but I would also like to provide a "current interpretation" for any given object instance. Poor me, I must have my oracle. Take the case of an executive's various roles in a corporation: "Chairman and CEO, Former President, Semantic Widgets Division". This is complex data that changes. As time passes, the latest assertions about role will inevitably contradict previous assertions. Such as shareholders firing their CEO. When should an assertion lead to a re-assessment of the current understanding? It goes without saying that interpretations of reality are formed in the mind through an ongoing process of re-assessment. We qualitatively compare present impressions with recent impressions. Enough contradiction, and we form a new working state of understanding. Larger thinking systems such as scientific communities also follow this basic process. I will use this approach in generating the current interpretation (CI) for changeable objects such as company role. Each CI of an object will have a strength, based on the number and reliability of the assertion sources. Any contradictory assertion rolling into the system puts the CI into a "state of question". After the strength of a CI has been sufficiently undermined, it is replaced with a new CI reflecting the congruent assertions that caused the shift. This instance is reflects a "state of re-assertion". Example: a WSJ article about the CEO resigning amidst scandal and shareholder revolt would be sufficient to only momentarily put the CI into question, soon to be followed by a re-assert to: Former CEO. And what if a series of contradictory assertions from reliable sources are received by the interpreter? Well, I'd have to work out how to properly reflect a "state of confusion" for that object instance. :) |
Winnow My Bloglines Down Memecat TigerLead
The Art of Unix Programming
Eric Raymond Dave Beckett Tim Berners-Lee Tim Bray Dan Brickley Marc Canter Paul Ford Seth Ladd Seb Paquet Clay Shirky Roland Tanglao Dave Winer
Syndication: Categories
AI
Recent Entries
Archives
|
|||
| Copyright © Jamie Pitts | ||||