Fast Times at Brooklyn Tech: Putting Wall Street Programming in the Hands of High Schoolers

Putting Wall Street programming in the hands of high schoolers

August 3, 2009
Tom Steinert-Threlkeld

Not too long ago--call it the dawn of this decade--it was a pretty big deal to write programs that made coordinated use of 64 different computers.

This was called parallel programming.

In the not too distant future--call it the dawn of the next decade--the same 64 processors that used to be spread across all those computers will be contained on a single microchip. Code jockeys will have to figure out how to harness the power, again.

This, too, will be called parallel programming.

On Wall Street, all that power will be used to figure out how to value the next round of derivative securities. Or determine risks, across all kinds of complex economic scenarios, before trades are made.

So who is Bank of America Merrill Lynch trying to get to make sense of all that power, in ways it can't currently conceive?

High schoolers.

For three days in late July, Bank of America and Intel, the maker of the "multicore" processors that need to be tamed, ran a boot camp for 15 students and six teachers at Brooklyn Technical High School. The primary goal: to see just how far fresh "uncorrupted" minds could pick up on the central concepts of what in short order will become the fundamental form of programming for computers. And start to think about how to tackle complex problems in new ways.

"The idea was to, you know, to see how it goes, see what the interest level is in the students, see how easily they adapt to it,'' said Jeffrey M. Birnbaum, the global head of platform solutions at BofA Merrill Lynch, the Wall Street executive who conceived of the camp and helped select Brooklyn Tech as its first test bed. "Is it too advanced for them? There's a myth that it's too advanced. I believe that's been shattered here."

The boot camp for pushing the edge of the electronic era in global industry took place in a classroom that once trained young minds in the cutting edge of ... cutting metal. It was a machine shop, that helped funnel innovative thinking into components that fed the nearby New York Naval Shipyard in Brooklyn.

But for the boot camp, batteries of Sony Vaio laptop computers supplied by Intel and Dell desktop machines previously installed by the high school itself sat in rows on the workbenches underneath the belt drives that powered lathes in another era.

In that perspective, delving intensely into a level of programming that heretofore has been reserved for college students is a natural extension, to principal Randy Asher.

"We're teaching kids to potentially go into a field that does not yet exist,'' he says.

Besides, the point is not to learn parallel programming, any way. "The point is to learn how to solve problems, regardless of what problem you're solving,'' he says.

But for industries such as financial services, which is Bank of America's concern, there is the primary goal and the secondary goal. First, challenge the minds of the next generation of technical talent you'll need to build a business on. Second, push educators to ... get with the programming.

"The ultimate goal is: Plant the seed with the kids to get new creative minds thinking,'' said Birnbaum. "But the secondary goal is for these kids that come out of a program like this to go to college and challenge the professors who haven't updated their knowledge.''

Which comes back to the 64-processor question.

"Somebody will say, oh, yeah, well, we've been doing parallel programming for years. We have, you know, a system that had 64 (processors). Well, a system that has 64 (processors) is very different than a system that has a single piece of silicon with 64 cores,'' said Birnbaum. "They're radically different from a parallelism perspective. You get completely different performance characteristics.''

For instance, there is the data race. This is the propensity for different processors in a parallel structure to reach out in an uncoordinated fashion for the next needed piece of data, the next "variable." Managing that data race was a key concept being taught in the Brooklyn Tech boot camp.

In old-style parallelism, programmers had to figure out how to properly sequence requests for data from 64 processors spaced across a computer room floor. Now, the stakes are higher. All the processors can be on the same small slice of circuitry.

Will high schoolers really be able to solve that problem better than their elders?

That, of course, remains to be seen. But, says James Reinders, an Intel parallel programming expert, the Brooklyn Tech magnet students "don't have years and years of experience they're fighting.''

 

Snapshot

 

THE INITIATIVE: Clubhouse Parallel Universe Boot-Camp

 

THE LOCALE: Brooklyn Technical High School, Ft. Greene Place, Brooklyn, N.Y.

 

THE CLASS: 15 students, 6 teachers

 

THE DRIVERS: Jeffrey M. Birnbaum, Bank of America Merrill Lynch, along with Randy Asher, Principal, Brooklyn Technical High School; Intel; IBM; BLADE Network Technologies

 

THE MACHINES: 16 Sony Vaio portable computers, 4 Dell Optiplex servers, 1 Dell eight-core gaming system, 1 IBM 32-core system

 

THE OBJECT: Plant seeds in minds that can solve problems that don't yetexist

 

NEXT: Similar programs in more urban areas, such as Chicago, Los Angeles, San Francisco, Dallas.