April 30, 2008

The Rise and Rise of Analyst Meredith Whitney

It all started back on Oct. 31, 2007, when she published her now-legendary report on Citigroup Inc. In it, she pointed out that the company's dividend now exceeded its profits -- the bank was handing money back to its investors faster than it was taking it in from its customers.

The U.S.'s biggest bank was being managed to ensure only its bankruptcy. Citigroup would need either to raise capital, sell assets or slash its dividend -- possibly all three.

Whitney now says ``that call was absolutely straightforward, the easiest call I've ever made.'' But at the time, none of her fellow analysts was saying anything like it.

.. I guess my clients knew who I was,'' she says, ``but the rest of the world -- I don't think so.''

Now, six months later, she's probably the most feared analyst on Wall Street. The rise in her status is truly sensational, and due, largely, to a single prediction. On Oct. 31, 2007, she was right, and the world was wrong.

.. Meredith Whitney was the first person inside Wall Street to grasp that something important, but intangible, has changed in the relationship between Wall Street and the outside world.

This is my explanation. The central truth about Wall Street firms just now is that nobody knows what they're worth.

Of course, nobody ever really knows. In the best of times, Wall Street firms cannot divulge their positions without exposing themselves to their market predators. In the worst of times (now), their positions are so complex that the people who run them don't fully understand what they own.

Even if they did, those assets are illiquid, hard to price, and changing in value from moment to moment. If Robert Rubin didn't know that Citigroup had written tens of billions of dollars of liquidity puts -- or even what, exactly, a liquidity put was -- how can he do anything but pity the poor fellow whose job it is, from the outside, to figure out what Citigroup is worth?

"You can't really know,'' says Whitney. ``The financial disclosure is terrible. They're all either liars or they don't know -- but I assume they really just don't know.''

Posted by Tim at 09:24 PM | TrackBack

Dave Barry: On the Stimulus

Be sure to mail your return in a timely manner, because this year, filing taxpayers will receive an Economic Stimulus Payment. This is a very exciting new program that I will explain using the Q and A format:

Q. What is an Economic Stimulus Payment?

A. It is money that the federal government will send to taxpayers.

Q. Where will the government get this money?

A. From taxpayers.

Q. So the government is giving me back my own money?

A. Only a smidgen.

Q. What is the purpose of this payment?

A. The plan is that you will use the money to purchase a high-definition TV set, thus stimulating the economy.

Q. But isn't that stimulating the economy of China?

A. Shut up.

Posted by Tim at 08:52 PM | TrackBack

The Whitehouse Email Archiving System: Ad Hoc

When the Bush administration took office, it decided to replace the Lotus Notes-based e-mail system used under the Clinton Administration with Microsoft Outlook and Exchange. The transition broke compatibility with the old archiving system, and the White House IT shop did not immediately have a new one to put in its place.

Instead, the White House has instituted a comically primitive system called "journaling," in which (to quote from a recent Congressional report) "a White House staffer or contractor would collect from a 'journal' e-mail folder in the Microsoft Exchange system copies of e-mails sent and received by White House employees." These would be manually named and saved as ".pst" files on White House servers.

Posted by Tim at 08:38 PM | TrackBack

April 26, 2008

State Secrets: Guessing at the Arguments

When Judge King did not dismiss Al Haramain’s case, the Bush Administration appealed. Along with public filings to the federal appeals court in San Francisco, government lawyers included a set of secret arguments that Eisenberg was not allowed to see. Based on his knowledge of the document, Eisenberg decided to guess at these arguments, and counter them.

Because the document was still classified, anything Eisenberg wrote about its contents would become “derivatively classified,” so he was obliged to write his brief under supervision—not of the court but of the Litigation Security Section of the Justice Department, his adversary. A security officer, Erin Hogarty, explained the special procedures for the drafting: it must take place at the department’s offices in San Francisco; Eisenberg could bring no notes with him, and must use a government computer. Hogarty also said that Steven Goldberg, one of Eisenberg’s colleagues, could join him but that Tom Nelson, another lawyer for Al Haramain, could not. According to Eisenberg, Hogarty later told him that the order about Nelson came directly from one of the government lawyers working on the case.

Posted by Tim at 09:58 PM | TrackBack

Python: Generator Tricks for Systems Programmers

This tutorial discusses various techniques for using generator functions and generator expressions in the context of systems programming. This topic loosely includes files, file systems, text parsing, network programming, and programming with threads.
Posted by Tim at 02:40 PM | TrackBack

25 Finance-related APIs

Among the 25 finance-related APIs now listed on ProgrammableWeb, there are services from old and new companies, and large and small companies. For example, the venerable Dun and Bradstreet offers the Dun and Bradstreet Credit Check API, personal finance startup Wesabe offers an API and there’s an API from Prosper, a peer-to-peer lending service. Overall, most current business and finance APIs fall into one of two categories: APIs from SaaS-based business administration and management services, and APIs that provide financial markets data.
Posted by Tim at 02:02 PM | TrackBack

April 24, 2008

Boy or Girl? The Answer May Depend on Mom’s Eating Habits

Although sex is genetically determined by whether sperm from the father supplies an X or Y chromosome, it appears that a mother’s body can favor the successful development of a male or female embryo.

The study, published in the journal Proceedings of the Royal Society B: Biological Sciences, shows a link between higher energy intake around the time of conception and the birth of sons. The difference is not huge, but it may be enough to help explain the falling birthrate of boys in industrialized countries, including the United States and Britain.

Posted by Tim at 07:08 PM | TrackBack

April 23, 2008

Timeframe Calendar: Date Ranges

Calendar date-time picker
Posted by Tim at 08:57 PM | TrackBack

April 18, 2008

Less Cursing, Better Pictures: 10 Suggestions

Suddenly it dawned on me that this guy didn't know the half-pressing trick. He didn't realize that you can usually eliminate the shutter lag by half-pressing the shutter button before the action begins. The camera prefocuses, precalculates and locks in those settings as long as you continue to half-press. Then, when the child finally leaves the diving board, you press the rest of the way down to capture the shot. No lag - no lie.

The guy was so happy, he bought me a ginger ale.

I realized that day that the world could use a handy, clip-and-save digital camera primer - not so much an FAQ (frequently asked questions) list, but more of an FGA (frequently given answers) list. Here are 10 tips everyone should know:

Posted by Tim at 06:01 PM | TrackBack

April 15, 2008

Abolish All Taxes: Call them "Dues"

It’s time to take a page from the conservative playbook, the one where they reframe the debate by changing the language — for instance, calling the “estate tax” a “death tax,” or making equal rights for same-sex partners a “protection of marriage” issue. I propose we stop saying “taxes” and start calling them “dues.”
Posted by Tim at 05:43 PM | TrackBack

April 11, 2008

Mapnick: Mapping API

Mapnik is a Free Toolkit for developing mapping applications. Above all Mapnik is about making beautiful maps. It is easily extensible and suitable for both desktop and web development. More ...
Posted by Tim at 09:33 PM | TrackBack

April 09, 2008

Simpsons ditched by Venezuelan TV

The Simpsons has been dropped from morning TV in Venezuela after being deemed unsuitable for children - and has been replaced by Baywatch.
Posted by Tim at 08:45 PM | TrackBack

PottyMouth: Python Text Scrubber

PottyMouth transforms completely unstructured and untrusted text to valid, nice-looking, completely safe XHTML.

PottyMouth is designed to handle input text from non-technical, potentially careless or malicious users. It produces HTML that is completely safe, programmatically and visually, to include on any web page. And you don’t need to make your users read any instructions before they start typing. They don’t even need to know that PottyMouth is being used.

Posted by Tim at 06:35 PM | TrackBack

April 08, 2008

Google App Engine

Google App Engine lets you run your web applications on Google's infrastructure. App Engine applications are easy to build, easy to maintain, and easy to scale as your traffic and data storage needs grow. With App Engine, there are no servers to maintain: You just upload your application, and it's ready to serve your users.
Posted by Tim at 07:00 PM | TrackBack

April 07, 2008

Preserving the Semicolon

An unlikely row has erupted in France over suggestions that the semicolon's days are numbered; worse, the growing influence of English is apparently to blame. Jon Henley reports on the uncertain fate of this most subtle and misused of punctuation marks. Aida Edemariam discovers which writers love it - and which would be glad to see it disappear
Posted by Tim at 06:07 PM | TrackBack

April 04, 2008

JSLint: The JavaScript Verifier

JSLint is a JavaScript program that looks for problems in JavaScript programs.

When C was a young programming language, there were several common programming errors that were not caught by the primitive compilers, so an accessory program called lint was developed which would scan a source file, looking for problems.

As the language matured, the definition of the language was strengthened to eliminate some insecurities, and compilers got better at issuing warnings. lint is no longer needed.

JavaScript is a young-for-its-age language. It was originally intended to do small tasks in webpages, tasks for which Java was too heavy and clumsy. But JavaScript is a very capable language, and it is now being used in larger projects. Many of the features that were intended to make the language easy to use are troublesome for larger projects. A lint for JavaScript is needed: JSLint, a JavaScript syntax checker and validator.

Posted by Tim at 07:20 PM | TrackBack

ASP.NET MVC: Building Web Apps without Web Forms

ASP.NET Web Forms made it very easy to get started, but, in other ways, trying to apply my design principles to Web apps was a struggle. Web Forms are relentlessly UI focused; the fundamental atom is the page. You start by designing your UI and dragging controls. It's very seductive to just start slapping your application logic into the page's event handlers (much like Visual Basic® enabled for Windows® apps).

On top of that, unit testing of pages is often difficult. You can't run a Page object through its lifecycle without spinning up all of ASP.NET. While it is possible to test Web apps by sending HTTP requests to a server or automating a browser, that kind of testing is fragile (change one control ID and the test breaks), hard to set up (you have to set up the server on every developer's machine exactly the same way), and slow to run.

As I started building more sophisticated Web apps, the abstractions that Web Forms provides, like controls, view state, and the page lifecycle, started to chafe rather than help. I was spending more and more time configuring data binding (and writing tons of event handlers to get it configured correctly). I had to figure out how to reduce the view state size to get my pages to load faster. Web Forms require that a physical file exist at every URL, something that dynamic sites (like a wiki, for example) make difficult. And successfully writing a custom WebControl is a remarkably complex process that requires a comprehensive understanding of both page lifecycle and the Visual Studio® designer.

Related

Posted by Tim at 10:49 AM | TrackBack

Estimating Schedules with Trac

The ‘trick’ was though, that I had added two custom fields to trac: estimated time and actual time (which is easily done by just adding a few trivial lines to trac.ini). As we created each ticket we collectively agreed on an estimated time. After having entered all tickets we were then in the happy position (using a custom sql-based query) to arrive at a precise total of estimated man hours — and based on that, of course, an estimate of cost and finish date.
Posted by Tim at 10:23 AM | TrackBack

April 03, 2008

How Microsoft Says: It'll be late

Here's how Microsoft says, “SQL Server 2008 will be late:”

“We want to provide clarification on the roadmap for SQL Server 2008. Over the coming months, customers and partners can look forward to significant product milestones for SQL Server. Microsoft is excited to deliver a feature complete CTP during the Heroes Happen Here launch wave and a release candidate (RC) in Q2 calendar year 2008, with final Release to manufacturing (RTM) of SQL Server 2008 expected in Q3. Our goal is to deliver the highest quality product possible and we simply want to use the time to meet the high bar that you, our customers, expect.”
Posted by Tim at 04:50 PM | TrackBack

qGallery

qGallery is an easy to use, fully customizable image Gallery. You can change the look and the size of the Gallery with pure CSS settings.
Posted by Tim at 04:21 PM | TrackBack

Questions on Agile Development

Q: In what environments will Agile be most successful?

A: Full-blown Agile seems to me to be best suited for environments in which the budget is fixed on an annual basis, team sizes are fixed on an annual basis (because of the budget), and the project staff's mission is to deliver the most valuable business functionality that they can deliver in a year's time with a fixed team size. This mostly describes in-house, business systems dev organizations.

Full-blown agile (especially the flexible requirements part) is less-well suited to companies that sell software, because maintaining a lot of requirements flexibility runs counter to the goal of providing mid-term and long-term predictability. We've found that many organizations value predictability more than they value requirements flexibility. That is, they value the ability to make commitments to key customers or to the marketplace more than they value the ability to "respond to change."

Posted by Tim at 01:22 PM | TrackBack

April 02, 2008

Python by example

This guide aims to show examples of use of all Python Library Reference functions, methods and classes. At this point, only the more widely used modules were added and only functions use examples are given. Example of output of a function is shown in the form of function_call(args) - [output]:
Posted by Tim at 08:43 PM | TrackBack

Dealing With Recursive Sets With PL/PGSQL

It's a well known fact that one of the more difficult things to do in SQL is deal with nested sets. While SQL has been extended to deal specifically with this problem, it is awkward to work with and (even worse) PostgreSQL doesn't have it yet. A patch to add WITH to Postgres has been suspended in the queue indefinitely because of severe implementation problems. As it turns out, this doesn't really matter because we have a first class stored procedure language which is the preferred way to deal with these problems anyways.
Posted by Tim at 02:57 PM | TrackBack