being in this field (magnetic storage research) for over two years now, I might actually have something to say...
IBM has done some wonderful research- they were the first to demostrate 10Gb/in^2 (yeah, dumb units) a few years back w/ a new Read Head. at the time it widely accepted that such densities couldn't be realized. today's products are shipping at these densities.
personally, i think IBM made the right choice. historically, areal densities have been increasing by over 100% each year. the past year, it's been reduced to 60% and i would expect it won't get better. we're running into hard limits in convential recording.
i just hope the people at IBM (some of the best in the field) either stay w/ the new venture or at least stay in the field (w/ Maxtor or Seagate).
oh, please, avoid Western Digital. the horror stories those drives made me go through...
http://ptsg.eecs.berkeley.edu/ has a plasma PIC code based on OO principles.
i agree w/ others- you seem confused about what OO actually means, though i won't beat that dead horse.
as a physicist, i'm using f90/95 so that i can keep the fast fortran compilers (and yes, fortran is still faster than c/c++ in heavy floating point calculations w/ functional calls- sin, exp, etc.) and yet still use OO methods to keep things contained and portable.
to take your heat transfer. that's a simple elliptical equation. so is Poisson, Laplace, diffusion, etc equations. so i have an object that does just that, given a list of 'structures', the object constructs a mesh, constructs the finite difference (or element) coefficients and then solves the bloody mess. so from the rest of the code, all i have to do it get.field(structures) or get.temp(structures) and either Poisson or the heat equation is solved. the calling routine doesn't know how this is done and it doesn't matter. the object itself decides what type of mesh (structured/unstructured) depending on the equation and shapes of structures. there are sub-objects for individual numerical precedures (e.g. cg for symmetric matrics, ADI for structured mesh, etc.).
it's elegant in the sense that you can seperate the nuts and bolts of numerics from the physics. the main code is usually very readable (who reads comments anyways?). once you have the objects and sub-object debugged- they are portable and don't have to be touch.
OO is a wonderful way to go for physics problems when you're faced w/ writing a large code which will have to evolve in time in ways you can't possibly predict. which is what i seem to do...
i actually worked on lcds from a research point of view. the reason why lcds will not be cheap is, as stated, the manufacturing limitations. to create an lcd, you have to make individual transitors for each pixel (and don't forget, for each 'pixel', you need three- red/green/blue). so on a 22" display, you're requiring uniformity in the plasma processing chamber (how they create the transitors) that is very hard to mantain from step to step. so, for 1600x1200, you have 3x1600x1200 pixels to define- each pixel probably needs a few transitors. it's not the number of transitors, but the fact they are distributed over such a large area. there is a reason why cpus and such are made on 6" wafers, and not 21" ones...
of course, there is a solution other than lcd or plasma displays (which throw out enough heat to keep your coffee warm) it's called PALC- plasma addressed liquid crystal display. a small spin-off company from techtronix was developing it and showed some wonderful prototypes. sony bought their rights and then killed the project a couple of years later. the beauty of this thing is that it was easily scalable to any resolution and any size. a plasma was used to switch individual rows/columns on and off. thanks sony.
[yeah, i developed the plasma model to describe the thing (running on linux, of course)]
it's hard to define a geek, so i'll just give my reasons for moving from SV to PIT.
being a physicist who programs leading-edge simulations, i don't have a lot of options if i want to stay in physics- national labs, process tools (applied materials, lam, etc.), GE, IBM, Lucent, etc. i started at LLNL and refused to make better bombs, so i left.
SV was great, since there's enough companies that will pay top $ for research projects. having options, i think, is what a geek wants. SV gives that.
why PIT then? well, Seagate started a corporate research center here. the way they pitched it to me was 'the new Bell labs'. how can a geek turn that down? an opportunity to get into the ground floor of, hopefully, a dynamic lab with wide ranging problems. nirvana for this geek.
is PIT perfect? far from it. DSL line was a hassle to get- phone company (N. Pitt) is a joke. there's a few startup companies here, but nothing compared to SV. CMU and UofP are good universities (CMU is excellent in magnetics), but SV has Berkeley and Standford. houses are cheap, but compared to SV, just about any place is cheap. not exactly a hot bed of radical thought, then again working at berkeley, that wasn't very radical anymore, either. less traffic, more family friendly, better secondary schools, less crowded are all good things of PIT. steel-mill attitudes, large under educated population, slow pace and high property taxes would be downsides.
so what makes a ideal geek city? who cares. ideal job and alternative options are what i look for and got. isn't that what geeks want?
fun question, though probably unanswerable. i once gave a talk in college concerning mathematical models of the brain. doesn't make me an expert, but it's a problem i have thought about before and had to justify to a bunch of mathematicians (that was fun...).
first it seems unlikely that memory and a neuron firing has a one to one correspondence. we know that also the intensity and the frequency of firing also vary. but, ignoring that and saying that memory does correspond to neuron firing, it's important to realize that you have to look at all the combinations of neurons- both firing and not firing. since there seems to be about a trillion neurons, the total number of combination would be trillion factorial, that is 10e9 * (10e9 - 1) *... * 3 * 2 = big fricking number. (that is, all neurons NOT firing, just one neuron firing, 2 neurons firing,... all but one firing, all firing)
of course, you also have to factor in the frequency and the intensity. imagine one neuron's phase space. it's a space along one axis which is the intensity of the neutron firing (left is weak, right is strong). along the other axis, it's the frequency (bottom doesn't fire, top is firing continously). so the total phase space volume (err area) is the size of that plane. since there are limits on each direction, that area is finite (though large). the question then becomes what is the 'quantum' of meaningful difference. that is, how much does the frequency (or intensity) have to change to correspond to a 'new' memory or state. if you know that, you can estimate the number of available unique states for one neuron which may correspond to the number of memories.
of course, we don't have one neuron (well, at least some of us don't), but a trillion. so, it's basically a problem of counting the total number of possible states that the collection of all neurons can be in.
being in this field (magnetic storage research) for over two years now, I might actually have something to say...
IBM has done some wonderful research- they were the first to demostrate 10Gb/in^2 (yeah, dumb units) a few years back w/ a new Read Head. at the time it widely accepted that such densities couldn't be realized. today's products are shipping at these densities.
personally, i think IBM made the right choice. historically, areal densities have been increasing by over 100% each year. the past year, it's been reduced to 60% and i would expect it won't get better. we're running into hard limits in convential recording.
i just hope the people at IBM (some of the best in the field) either stay w/ the new venture or at least stay in the field (w/ Maxtor or Seagate).
oh, please, avoid Western Digital. the horror stories those drives made me go through...
http://ptsg.eecs.berkeley.edu/ has a plasma PIC code based on OO principles.
i agree w/ others- you seem confused about what OO actually means, though i won't beat that dead horse.
as a physicist, i'm using f90/95 so that i can keep the fast fortran compilers (and yes, fortran is still faster than c/c++ in heavy floating point calculations w/ functional calls- sin, exp, etc.) and yet still use OO methods to keep things contained and portable.
to take your heat transfer. that's a simple elliptical equation. so is Poisson, Laplace, diffusion, etc equations. so i have an object that does just that, given a list of 'structures', the object constructs a mesh, constructs the finite difference (or element) coefficients and then solves the bloody mess. so from the rest of the code, all i have to do it get.field(structures) or get.temp(structures) and either Poisson or the heat equation is solved. the calling routine doesn't know how this is done and it doesn't matter. the object itself decides what type of mesh (structured/unstructured) depending on the equation and shapes of structures. there are sub-objects for individual numerical precedures (e.g. cg for symmetric matrics, ADI for structured mesh, etc.).
it's elegant in the sense that you can seperate the nuts and bolts of numerics from the physics. the main code is usually very readable (who reads comments anyways?). once you have the objects and sub-object debugged- they are portable and don't have to be touch.
OO is a wonderful way to go for physics problems when you're faced w/ writing a large code which will have to evolve in time in ways you can't possibly predict. which is what i seem to do...
i actually worked on lcds from a research point of view. the reason why lcds will not be cheap is, as stated, the manufacturing limitations. to create an lcd, you have to make individual transitors for each pixel (and don't forget, for each 'pixel', you need three- red/green/blue). so on a 22" display, you're requiring uniformity in the plasma processing chamber (how they create the transitors) that is very hard to mantain from step to step. so, for 1600x1200, you have 3x1600x1200 pixels to define- each pixel probably needs a few transitors. it's not the number of transitors, but the fact they are distributed over such a large area. there is a reason why cpus and such are made on 6" wafers, and not 21" ones... of course, there is a solution other than lcd or plasma displays (which throw out enough heat to keep your coffee warm) it's called PALC- plasma addressed liquid crystal display. a small spin-off company from techtronix was developing it and showed some wonderful prototypes. sony bought their rights and then killed the project a couple of years later. the beauty of this thing is that it was easily scalable to any resolution and any size. a plasma was used to switch individual rows/columns on and off. thanks sony. [yeah, i developed the plasma model to describe the thing (running on linux, of course)]
it's hard to define a geek, so i'll just give my reasons for moving from SV to PIT.
being a physicist who programs leading-edge simulations, i don't have a lot of options if i want to stay in physics- national labs, process tools (applied materials, lam, etc.), GE, IBM, Lucent, etc. i started at LLNL and refused to make better bombs, so i left.
SV was great, since there's enough companies that will pay top $ for research projects. having options, i think, is what a geek wants. SV gives that.
why PIT then? well, Seagate started a corporate research center here. the way they pitched it to me was 'the new Bell labs'. how can a geek turn that down? an opportunity to get into the ground floor of, hopefully, a dynamic lab with wide ranging problems. nirvana for this geek.
is PIT perfect? far from it. DSL line was a hassle to get- phone company (N. Pitt) is a joke. there's a few startup companies here, but nothing compared to SV. CMU and UofP are good universities (CMU is excellent in magnetics), but SV has Berkeley and Standford. houses are cheap, but compared to SV, just about any place is cheap. not exactly a hot bed of radical thought, then again working at berkeley, that wasn't very radical anymore, either. less traffic, more family friendly, better secondary schools, less crowded are all good things of PIT. steel-mill attitudes, large under educated population, slow pace and high property taxes would be downsides.
so what makes a ideal geek city? who cares. ideal job and alternative options are what i look for and got. isn't that what geeks want?
just wish it would warm up...
fun question, though probably unanswerable. i once gave a talk in college concerning mathematical models of the brain. doesn't make me an expert, but it's a problem i have thought about before and had to justify to a bunch of mathematicians (that was fun...).
... * 3 * 2 = big fricking number. (that is, all neurons NOT firing, just one neuron firing, 2 neurons firing, ... all but one firing, all firing)
first it seems unlikely that memory and a neuron firing has a one to one correspondence. we know that also the intensity and the frequency of firing also vary. but, ignoring that and saying that memory does correspond to neuron firing, it's important to realize that you have to look at all the combinations of neurons- both firing and not firing. since there seems to be about a trillion neurons, the total number of combination would be trillion factorial, that is 10e9 * (10e9 - 1) *
of course, you also have to factor in the frequency and the intensity. imagine one neuron's phase space. it's a space along one axis which is the intensity of the neutron firing (left is weak, right is strong). along the other axis, it's the frequency (bottom doesn't fire, top is firing continously). so the total phase space volume (err area) is the size of that plane. since there are limits on each direction, that area is finite (though large). the question then becomes what is the 'quantum' of meaningful difference. that is, how much does the frequency (or intensity) have to change to correspond to a 'new' memory or state. if you know that, you can estimate the number of available unique states for one neuron which may correspond to the number of memories.
of course, we don't have one neuron (well, at least some of us don't), but a trillion. so, it's basically a problem of counting the total number of possible states that the collection of all neurons can be in.
trivial, right?