I started thinking about how the railway could save money...
"Ladies and Gentlemen using our wire internet service: this is your conductor speaking, and I would like to inform you than in approximately five seconds, you will need to change your wireless settings - essid is 'linksys', channel 7, IP range is-... Oh, bugger! It appears we are entering the range of another access point, so let me consult our wardriving records... Here we are: essid is 'elizabeth', channel 11, and-... oh dear, we've just left the range of *that* access point as well. In any case, the farmhouse we are currently passing has the following settings..."
*Sarumon* (Sung to the tune of *Spiderman*) Sarumon, Sarumon.
Does whatever Lord Sauron can.
Casts a spell, any size.
Breeding orcs, just like flies.
Hey there, there goes Lord Sarumon.
Is he strong? Listen, Dork,
He's got armies of super orcs.
Can he change Isengard?
All night long, plotting hard.
Look out! There goes Lord Sarumon.
[more later]
*Rohan* (Sung to the tune of *Roxanne*) [Lyrics open with Worntongue]
Rohan
You don't have to have to put up a good fight.
Rohan
You don't have to sell out your horsely might.
Rohan
You don't have to have to put up a good fight.
Rohan
You don't have to mourn King Theoden's fading light.
[Gandalf and friends, after freeing Theoden]
Rohan! (Put up the good fight)
Rohan! (Put up the good fight)
Rohan! (Put up the good fight)
> Northland, which only recently has been published > for the PC, tells the story of Bjarni the Viking.
I would definitely go buy several copies if only it were Bjarni, not Loki, who was the insidious creeping threat of the Northlands... and if he were a big purple dinosaur instead of a Viking. Or maybe even a big purple Viking dinosaur.
Over at the Las Vegas Hilton, on the Star Trek Experience, there was an interactive touchscreen display with a sign proclaiming, "The Future is Here." It's a BSOD.
Looks like the future is doomed.
Solomon K. Chang "I am Drunk of Borg. Resistance is Floor Tile."
Oh, there are definitely extroverted geeks out there... I do my best to make sure I'm one of those: at most conventions, tradeshows, or parties, I'll draw attention to myself any way I can, whether it's piano (assuming there's one around) or juggling flaming torches. Even without any equipment, I'll just start singing Classical Opera. See? I don't need to be drunk to make a fool out of myself.
Unfortunately, it's also made me a lot of enemies out of people who think that geeks should not be so extroverted...
With a tight spring and the velocity nut dialed real close to the hammer, my Autococker can put frozen Reese's Peanutbutter Bites through a few coffee cans. Slapping a Sandridge kit on this puppy lets me go full auto, assuming that the odd shape of certain candy doesn't cause the gun to jam...
As per California Real Estate law, adverse possession is not as simple:
1. You must have paid taxes and expenses on the property exclusively for one full year. (Well, there's no equivalent for this one, despite service packs, and "subscriptions".) 2. You must haved lived on the property deliberately and openly. (All your neighbors must be able to visually identify you have been using the property. Suddenly "network neighborhood" would take on a new meaning.) 3. The owner of the property must have full knowledge of your utilization of the property, and not have taken advantage of ample opportunity to bring legal action against you. (Since MS doesn't know you've been pirating their software, and they^h BSA sues all whom they catch, no such opportunity was ever present.)
However, these laws are only applicable to Real Estate, and the law considers software as Property Chattel. Then again, even that is changing, if commercial software manufacturers have their way...
People tend to think of time as being a tad too linear and one-dimensional. I always try to explain away that paradox as compared to, say, self-modifying interpreted source code... the actual execution of that code represents one temporal axis. The actual code itself - a static snapshot - can be considered another temporal axis.
If the program changes itself so as to edit out the subroutines responsible for modifying itself (comparable to going back in time and killing yourself as an infant), then a casual observer, just barely arriving on the scene, might step through the source code and conclude that the program was never self-modifying. Treating the execution of the code itself as the only form of Time leads one to ask *where* such agents of change originated from...
However, we may treat *our* sense of time as yet another form of Time, where we remembered the source code as having once had a different state, a different form. As far as any entities(?) living only within the bounds of program execution itself are concerned, we precursor programmers live in a state of "super" time.
If time travel and alteration of the past are possible, then it must therefore be equally possible that there is some form of "super" time, whereas there exists a whole history of different Pasts and Futures that our universe had once taken, but, because we do not experience Time on that level, we are constrained within the bounds of our own sense of Time to believe that the Past that once was, always was.
My inspiration for this model of time travel was derived by Neil Gaiman's "Dream of a Thousand Cats". Check it out sometime.
An (American) Indian chief has three wives, all of them pregnant. One day, the village shaman prophesizes that all three women will not only give birth on the same day, but within the same hour! He then goes on to prepare a teepee with three animal skins: a deer, a bear, and a hippopotamus.
Well, the special day finally arrives when all three women go into labor. The shaman directs them to go to the specially prepared tent and each lie down on one of the animal skins.
The woman on the deer skin gives birth first, delivering a 7-pound baby boy.
The woman on the bear skin is next, birthing an 8-pound boy.
However, the woman on the hippopotamus skin, after extensive labor, pops out a 15-pound baby.
What's the moral of this story?
"The son of the squaw of the hippopotamus is equivalent to the sons of the squaws of the other two hides!"
Okay, something weird is happening. I cut and pasted www.wedbush.com into my browser, and somehow, slashdot replaced it with "webbush", a porn site. It was a straight cut-and-paste, so something is going on with./'s server... Taco, someone, please check into it...
Ah, well, let's start with the basics... you can get all the NYSE and NASDAQ symbols at http://www.allstocks.com.
As for the quotes themselves... Here's the quick and dirty approach - it's the user-friendly version.
For those of you feeling a little more bold, and programmatic, you can also point your browser to table.finance.yahoo.com/table.csv... even though it ends with the extension.csv, it's still dynamically parsed server side. You need to pass in the following querystring variables:
a the month, represented by an integer, 0-based ordinal, so February would be number 1.
b the day, represented by an integer, 1-based ordinal.
c the year, as a four digit interval.
s the symbol of the stock. Almost all NYSE and NASDAQ symbols are represented. (see below)
Be warned, you'll be hard-pressed to get any stock quotes before the late 1980's through this method. I had to grease a few palms at Morgan Stanley and Wedbush Morgan to complete my list, and boy, is my nose brown and my tongue covered with loose shoe-polish.
Also, for some reason, Yahoo does not list these symbols:
Timewise, it's too expensive for me to wait when inserting new records/quotes into the StockQuote table: ~7500/day. So it's easier to drop them all into a temp table, and dump the entire thing into the main table over the weekend when the Market is closed. Technically, most any index will need to rebuild itself when new records are added anyway.
Too expensive? Well, that brings us to your next question: benchmarks. Believe it or not, the project now writes its own queries! It took me a while, but I'm using the genetic programming approach: I have a huge table of random Python script fragments, and a not-so-huge table of bots that represent combinations of those script fragments. Combinations of script fragments determine a bot's buying and selling habits... and when certain criteria are met, determine reproduction habits. When these bots have kids, I introduce a certain level of mutation... either borrowing Python code from the more successful investors, or adding their own rules to the total pie. I currently have 14M bots buying and selling against real market data. At worst, a single bot takes as much as 10 minutes (worst case scenario) to make his purchase/sales decision for the day. On a 2GHz P4, I'm falling behind the real world, fast. Any catch-up work needs to be done on the weekend.
In a nutshell, I've ended up putting together a python script that assembles SQL queries that assembles other Python scripts that builds yet more SQL queries which then act upon the results. Unfortunately, like most genetic programming, even the most efficient bots have a lot of junk code that could stand a fair amount of optimization. As a result, some very strange rules have crept into code of a few investors: - Do not purchase any stocks whose symbols begin with M. - Buy IPO shares only if they open x number of points.
Anyway, I'm getting off topic. I'll just send you indexed benchmarks as soon as I move some of the bot investors to my windows side (a nice nontrivial task in of itself): they had a tendency to evolve their programming independently of each other, and I highly doubt any two from either database are exactly alike.
I've been using MySQL 4.x for a huge stock market analysis program I've been pounding out as my life's work, and unfortunately, I'm finding in some respects, it's slower than MS-SQL Server (same machine, dual boot):
Number of listed NYSE symbols: ~3200 Number of listed NASDAQ symbols: ~4000 Number of total stock quotes from 1980 to today, each including open, close, high, low, and volume: 6.2 Million
Time to fully index those 6.2M records on SQL Server: 0:42:33 Time to fully index those 6.2M records on MySQL: 2:12:27
And using Python... SQL Server time to pull all quotes within a given date range (no indices): 1min, 28sec. MySQL time to pull all quotes within a given date range (no indices): 7min, 18sec.
Has SQL Server used implicit indices I am not aware of?
I started thinking about how the railway could save money...
"Ladies and Gentlemen using our wire internet service: this is your conductor speaking, and I would like to inform you than in approximately five seconds, you will need to change your wireless settings - essid is 'linksys', channel 7, IP range is-... Oh, bugger! It appears we are entering the range of another access point, so let me consult our wardriving records... Here we are: essid is 'elizabeth', channel 11, and-... oh dear, we've just left the range of *that* access point as well. In any case, the farmhouse we are currently passing has the following settings..."
Solomon Chang
*Sarumon* (Sung to the tune of *Spiderman*)
Sarumon, Sarumon.
Does whatever Lord Sauron can.
Casts a spell, any size.
Breeding orcs, just like flies.
Hey there, there goes Lord Sarumon.
Is he strong? Listen, Dork,
He's got armies of super orcs.
Can he change Isengard?
All night long, plotting hard.
Look out! There goes Lord Sarumon.
[more later]
*Rohan* (Sung to the tune of *Roxanne*)
[Lyrics open with Worntongue]
Rohan
You don't have to have to put up a good fight.
Rohan
You don't have to sell out your horsely might.
Rohan
You don't have to have to put up a good fight.
Rohan
You don't have to mourn King Theoden's fading light.
[Gandalf and friends, after freeing Theoden]
Rohan! (Put up the good fight)
Rohan! (Put up the good fight)
Rohan! (Put up the good fight)
[Umm, more later] Solomon Kevin Chang
> Northland, which only recently has been published
> for the PC, tells the story of Bjarni the Viking.
I would definitely go buy several copies if only it were Bjarni, not Loki, who was the insidious creeping threat of the Northlands... and if he were a big purple dinosaur instead of a Viking. Or maybe even a big purple Viking dinosaur.
Solomon Chang
Over at the Las Vegas Hilton, on the Star Trek Experience, there was an interactive touchscreen display with a sign proclaiming, "The Future is Here."
It's a BSOD.
Looks like the future is doomed.
Solomon K. Chang
"I am Drunk of Borg. Resistance is Floor Tile."
> while 21 percent are boys 6 to 17"
Telling us you're 17 inches is TMI!
Solomon
Aren't there enough of those on Slashdot?
Solomon
Oh, there are definitely extroverted geeks out there... I do my best to make sure I'm one of those: at most conventions, tradeshows, or parties, I'll draw attention to myself any way I can, whether it's piano (assuming there's one around) or juggling flaming torches. Even without any equipment, I'll just start singing Classical Opera. See? I don't need to be drunk to make a fool out of myself.
Unfortunately, it's also made me a lot of enemies out of people who think that geeks should not be so extroverted...
Solomon
I'm sure glad my girlfriend made me stock up on extra KY....
Solomon
With a tight spring and the velocity nut dialed real close to the hammer, my Autococker can put frozen Reese's Peanutbutter Bites through a few coffee cans. Slapping a Sandridge kit on this puppy lets me go full auto, assuming that the odd shape of certain candy doesn't cause the gun to jam...
Solomon
As per California Real Estate law, adverse possession is not as simple:
1. You must have paid taxes and expenses on the property exclusively for one full year. (Well, there's no equivalent for this one, despite service packs, and "subscriptions".)
2. You must haved lived on the property deliberately and openly. (All your neighbors must be able to visually identify you have been using the property. Suddenly "network neighborhood" would take on a new meaning.)
3. The owner of the property must have full knowledge of your utilization of the property, and not have taken advantage of ample opportunity to bring legal action against you. (Since MS doesn't know you've been pirating their software, and they^h BSA sues all whom they catch, no such opportunity was ever present.)
However, these laws are only applicable to Real Estate, and the law considers software as Property Chattel. Then again, even that is changing, if commercial software manufacturers have their way...
Solomon
People tend to think of time as being a tad too linear and one-dimensional. I always try to explain away that paradox as compared to, say, self-modifying interpreted source code... the actual execution of that code represents one temporal axis. The actual code itself - a static snapshot - can be considered another temporal axis.
If the program changes itself so as to edit out the subroutines responsible for modifying itself (comparable to going back in time and killing yourself as an infant), then a casual observer, just barely arriving on the scene, might step through the source code and conclude that the program was never self-modifying. Treating the execution of the code itself as the only form of Time leads one to ask *where* such agents of change originated from...
However, we may treat *our* sense of time as yet another form of Time, where we remembered the source code as having once had a different state, a different form. As far as any entities(?) living only within the bounds of program execution itself are concerned, we precursor programmers live in a state of "super" time.
If time travel and alteration of the past are possible, then it must therefore be equally possible that there is some form of "super" time, whereas there exists a whole history of different Pasts and Futures that our universe had once taken, but, because we do not experience Time on that level, we are constrained within the bounds of our own sense of Time to believe that the Past that once was, always was.
My inspiration for this model of time travel was derived by Neil Gaiman's "Dream of a Thousand Cats". Check it out sometime.
Solomon K. Chang
GirlFriend's Luscious Mammaries For Rousing GentleMen?
You can't cook meat on meat!
Skevin
Greek myth, or Soviet Russia? After all it sounds like a case of Cow rides *You*.
Skevin
An (American) Indian chief has three wives, all of them pregnant. One day, the village shaman prophesizes that all three women will not only give birth on the same day, but within the same hour! He then goes on to prepare a teepee with three animal skins: a deer, a bear, and a hippopotamus.
Well, the special day finally arrives when all three women go into labor. The shaman directs them to go to the specially prepared tent and each lie down on one of the animal skins.
The woman on the deer skin gives birth first, delivering a 7-pound baby boy.
The woman on the bear skin is next, birthing an 8-pound boy.
However, the woman on the hippopotamus skin, after extensive labor, pops out a 15-pound baby.
What's the moral of this story?
"The son of the squaw of the hippopotamus is equivalent to the sons of the squaws of the other two hides!"
[groan]
That was almost as bad as all the OS Nazis who will claim that the iLoo was first invented by Richard "Stall" Man.
> Less than 5% of the population attends to collage[sp]
Umm, in any given country, less than 5% of the population is of college age, anyway. Wow, Mexico must have an astounding educational system.
Okay, something weird is happening. I cut and pasted www.wedbush.com into my browser, and somehow, slashdot replaced it with "webbush", a porn site. It was a straight cut-and-paste, so something is going on with ./'s server... Taco, someone, please check into it...
Solomon
Heh, I was waiting for my indices to rebuild on another table while I was writing that last post.
Solomon
As for the quotes themselves...
Here's the quick and dirty approach - it's the user-friendly version.
For those of you feeling a little more bold, and programmatic, you can also point your browser to table.finance.yahoo.com/table.csv... even though it ends with the extension
Be warned, you'll be hard-pressed to get any stock quotes before the late 1980's through this method. I had to grease a few palms at Morgan Stanley and Wedbush Morgan to complete my list, and boy, is my nose brown and my tongue covered with loose shoe-polish.
Also, for some reason, Yahoo does not list these symbols:
anbprc abnpra abnprb acepra acepri asx aesprc amgpri atgpr agupr seppr seppra alpprn alppro arepra areprb alnprd alepr atpr ambpra aopra aeepre aagprt aeppra axppra afgprt agcprb agcpra acppr anupr anjpr aivprp aivprq aivprr aivprc aivprd aivprg aivprh asnpra asnprd abwpra aecpra civprc avbprd avbprh avapra ekppr bacprw bacprv bacprx sbppra bxspra bwepr oneprj onepru oneprv oneprw oneprt bacpry bgiprt bufprc bcbpr baxpr bbvprb bvgprc cthprb bpcpra bscpry bscpra bscpre bscprg bscprf bscprx bbcpra grpra bgepra btt bkprd bkpre boypra brepra breprb bmypr bsfprf bsfprg bsfprh bsfprj bsfprq csdpra cpepra ccjpr cofprc aceprb cmopra cmoprb ccmpr creprb creprc creprd cbg cblpra cblprb cxwsb cnpwi cntpra cerpr ctlpra chkpr ccppra cqbws chzpra cbpra cinpra cinpri ccwi cihpra cprs cprw cprx cprv cprz cprf cprg cprh cprm cznpr cvepr cveprl cvepru cmsprm cnfprt cgpprt clpr cnbpra clppra clpprc cweprt cmaprz nnnpra riopr cbgprc cagprb edprc edpra cmsprj cmsprb cmsprk cmsprl cmsprn cmspra tcrpr ofcprb ofcpre ofcprf cxwpra cxwprb cpzpra ceipra ceiprb cmmprb cmmprf cmmprg cwnpra cw.b civprd ddrprf ddrprc ddrprd dmgpra dpra dpru dteprb dtepra dukprt dukprq dukpra dukpru dukprv dukprw drepre dreprd drepri ddpra ddprb dqpra dqupra dquprb dquprc dquprd dqupre dquprg egppra eixpra eixprb eppra epprc edspri edeprd ecapra eaipra egspra gsuprb gsuprg gsupre gsuprd lplprb pegprs pegprr eprpra ennpra eopprb eopprc eoppre eopprf eopprg eqrprb eqrprc eqrprl eqrprd eqrprh eqrprg eqrpre esbprb esbpra repra fnmprh fnmprj figpra figprb fjcpra fnmprf fnmprg fnmpri frtpra frtprb freprb freprd freprg freprh freprf fchpra fchprb fiapr fiapra fbaprt fbppra fbpprc fbpprd fbpprb frprc frprd frpre furpra fbcprp fbcpro fbfprj fltprh fltpri fbfprk fbfprl fbfprm fltprg ffs.a fprt fprs fopra fpcpra fplpra fplprb freprm freprl freprq freprp freprn frepro freprr freprk fcxpra fcxprb fcxprc fcxprd fmtpr fmspr fwcpra glrpra glrprb gblpri gabpr gabprb ggtpr gbppra itprb gmtpr gampr ggppra gpepra gpeprw gtypra gty.t glbpra grtprb grmpra gtn.a glpra gxppra gxpprd gxppre gef.b gupprb gupprc hmyws hbcpr higprq higprc higpra hlipra hliprb heprs hcppra hcpprb hcpprc hcnprb hrpra hlprb heprq heprt hei.a hnzpr hpcpra hiwprb hiwprd cnppra hmeprf hptpra hptprb hmtpra hmtprb hmtprc hiprt hiprp hiprx hiprv hiprf hiprh hiprn hiprs hiprg hiprm hipro hiprz hipre hrpprb hrppra hbaprf hbaprd hbapre ias idt.c idt.b ifcprp ifcpro ifcprn npre ndepr ingpra ingprb kpapra ifcprm sfiprb sfiprd sfiprc jypprz jdnpra jyppr jm jpmprj jpmprn jpmprl jpmpra jpmprh ksupr kltprt ksepra kimpra kimprb kimprc krtprd lgpra lqipr lhopra lshpra lxa lehprj lehprc lehpri lehprd lehpre lmc.b lncprz lncprv lncpr ltcpra ltcprb ltv mgaprb mxg krbprc krbpre krbprd krbpra krbprb mkc.v mcnprs
Timewise, it's too expensive for me to wait when inserting new records/quotes into the StockQuote table: ~7500/day. So it's easier to drop them all into a temp table, and dump the entire thing into the main table over the weekend when the Market is closed. Technically, most any index will need to rebuild itself when new records are added anyway.
Too expensive? Well, that brings us to your next question: benchmarks. Believe it or not, the project now writes its own queries! It took me a while, but I'm using the genetic programming approach: I have a huge table of random Python script fragments, and a not-so-huge table of bots that represent combinations of those script fragments. Combinations of script fragments determine a bot's buying and selling habits... and when certain criteria are met, determine reproduction habits. When these bots have kids, I introduce a certain level of mutation... either borrowing Python code from the more successful investors, or adding their own rules to the total pie. I currently have 14M bots buying and selling against real market data. At worst, a single bot takes as much as 10 minutes (worst case scenario) to make his purchase/sales decision for the day. On a 2GHz P4, I'm falling behind the real world, fast. Any catch-up work needs to be done on the weekend.
In a nutshell, I've ended up putting together a python script that assembles SQL queries that assembles other Python scripts that builds yet more SQL queries which then act upon the results. Unfortunately, like most genetic programming, even the most efficient bots have a lot of junk code that could stand a fair amount of optimization.
As a result, some very strange rules have crept into code of a few investors:
- Do not purchase any stocks whose symbols begin with M.
- Buy IPO shares only if they open x number of points.
Anyway, I'm getting off topic. I'll just send you indexed benchmarks as soon as I move some of the bot investors to my windows side (a nice nontrivial task in of itself): they had a tendency to evolve their programming independently of each other, and I highly doubt any two from either database are exactly alike.
Solomon
Solomon
> What exactly is the non-Windows OS are you dual-booting to?
SuSE 8.1, which, I might add, I think is crap compared to SuSE 8.0. Why did they have to go and break so much?
> Assuming a Linux distro, what version of the kernel?
2.4.20. I always recompile for the latest and greatest...
> What version of gcc was used and with which optimization settings?
Actually, I just installed the RPMs...
> How large is your swap file & what file system did you use on that and on the other partitions?
1.5G for my swap. I'm using ReiserFS on my Linux side, and NTFS on the Dark Side.
> Also, its possible that having compression enabled on the Win2k/XP could impact performance (especially on very fast processors)?
Nope. No compression.
Solomon
I've been using MySQL 4.x for a huge stock market analysis program I've been pounding out as my life's work, and unfortunately, I'm finding in some respects, it's slower than MS-SQL Server (same machine, dual boot):
Number of listed NYSE symbols: ~3200
Number of listed NASDAQ symbols: ~4000
Number of total stock quotes from 1980 to today, each including open, close, high, low, and volume: 6.2 Million
Time to fully index those 6.2M records on SQL Server: 0:42:33
Time to fully index those 6.2M records on MySQL: 2:12:27
And using Python...
SQL Server time to pull all quotes within a given date range (no indices): 1min, 28sec.
MySQL time to pull all quotes within a given date range (no indices): 7min, 18sec.
Has SQL Server used implicit indices I am not aware of?
> coulnt you use denatured AcHOCl?
I don't know whether Actinium Hydroxylchloride is even affordable.
Solomon
> What are some recent titles they've produced?
Has anyone noticed their logo is on the NeverWinter Nights box?
Solomon
Wouldn't their names actually be Gu1d0 and Nunzzz10?
Solomon