corporations might be just like soylent green, but they're also a real-world artificial life that operates on algorithms that are at times profoundly indifferent to human welfare (at best) and even actively inimical to our welfare. they are not our friends, or our pets, or even our servants, they are a competing (artificial) life form. they use loopholes in our legal and financial "operating systems" to serve their own interests, not ours (and those interests include entrenching those loopholes and creating new ones to strengthen themselves).
the legal fiction of corporate personhood makes them a kind of cellular automata that treats humans as both a) just another resource to be exploited, and b) as competitors for other resources.
btw, before you (possibly deliberately) misinterpret what i'm saying: this is not intended to be some mystical nonsense about supernaturally self-aware corporations. it's just an inevitable emergent behaviour from the complex legal rules that we have constructed around corporations.
The real problem is importers and wholesalers charging excessive prices for goods that are identical to those available overseas.
As an example, the RRP of a particular Canon DSLR camera here in Australia is $3600. I can get exactly the same camera on eBay from Hong Kong for less than $2300 including shipping.
and to spell out the obvious for the slower people around here - that $2300 camera is above the $1000 not-worth-it threshhold for collecting GST on imports would attract a GST fee of $230 when shipped to Australia.
even with GST added, $2300 + $230 = $2530, it is STILL over $1000 cheaper than the same camera in local stores.
this issue is *NOT* about online imports having an unfair GST-exemption advantage. it's about Harvey Norman and other ripoff chain stores (and the various layers of importers and distributors and other middle-men) protecting their enormous price markups and, worse, trying to erect a huge barrier to trade and competition by making online purchases an inconvenient hassle dealing with customs
these scumbags are happy to reap the benefits of globalisation to sack australian workers and are just pissed off that australian consumers can now use the internet to reap the benefits of globalisation themselves and "sack" the ripoff retailers
nice quibble about the fact that i used the phrase "provide source to" as shorthand for the various methods of providing, making available, or offering source specified in clause 3 and sub-clauses 3a, 3b, and 3c.
way to go! you'll get to be a junior-level fatuous caviller in no time with a performance like that!
it's a pointless distraction, though. the details of the manner of providing source were NOT what I was discussing. I was discussing the *obligation*, not the manner.
you claimed that A did not have any GPL obligations to C (who received the GPL-ed code from B rather than directly from A).
that is incorrect. as i said, both A and B have obligations to C.
yes, the person who gave you the code also has that obligation. but that doesn't relieve the original distributor of their obligation.
in your example, both the company AND X have the obligation to provide/make-available the source to Y
btw, it's irrelevant whether the company has the resources to provide the source to everyone - same as it's irrelevant whether you have the resources to pay for the food you order in a restaurant....you have an obligation to pay regardless
A also has an obligation to the author(s) who wrote the code and licensed it to A - and by redistributing the GPL code, A agreed to the terms.
in the situation you describe above, both A and B have GPL-related obligations to C. this is true for both GPLv2 and GPLv3. GPLv2 says they have an obligation to provide source to ANY third party, GPLv3 says they have an obligation to provide source to ANYONE who has a copy of the object code they distributed.
how, exactly, would that put RH out of business?
you mean the tiny fraction of the tiny percentage of IBM or Oracle customers who actually want the source would cost RH so much in bandwidth that they'd go bankrupt?
yes, i'm sure that's very likely.
BTW, the GPL *does* work that way.
The red hat servers melt from too much traffic and red hat restricts downloads to their own customers.
if RH did that, then *they* would not be in compliance with the GPL.
the kernel and many other programs on RH are GPLv2, so they have to make them available to any third party. Many other programs are GPLv3, so they have to make them available to anyone who possesses a copy of the object code (no matter how they obtained it).
so...
ethically, MSFT probably should host source for any GPL code they distribute.
practically and legally, they don't have to. they can pay someone else to do
it or, if their distributed object code is identical (unchanged) from
upstream they can point at someone who does host it. the FSF or RH for
example
what this implies is that the selective targeting and assassination of a dozen or so of the top spammers would significantly reduce spam worldwide.
and a continuing program of taking out the top 10 spammers every few months would keep it down.
...I still think a bounty on spammers is the ONLY solution that has any real chance of working. too bad it's technically illegal as spammers are nominally human.
the real difference between the Pentagon Papers and the Wikileaks cables is that the PP are history - it's done and dusted and all the political embarrassment has already happened.
the Wikileaks cables, OTOH, are current and new and there's still a huge amount of political embarrassment and secrets to be exposed.
an important part of wikileaks' legitimacy is that they don't play favourites. they are about publishing leaks, not about deciding which leaks are "safe" to publish.
doing otherwise would lead to them being accused of political bias (they are already, but the accusations would be true if they started self-censoring in this way).
also, appeasement of dictators or lunatics never works. deciding not to publish something because some nutcase somewhere in the world might take offense and use it as an excuse to do something undesirable or wrong or even atrocious would mean that wikileaks may as well just pack up and go home because that's going to be the case with almost everything they publish that's actually worth publishing.
BTW, wikileaks is just the latest excuse for Mugabe. it's not as if he hasn't used other excuses in the past to prosecute (and persecute) Tsvangirai or that he won't do the same in the future.
> She only looked embarrassed for a moment, then you will observe the training kicked in.
that wasn't training. that was solidarity. cops stick together. always. even when they know the other cop is in the wrong. even when they know the other cop is breaking the law, or taking bribes, or abusing their power, or engaging in serious criminal behaviour.
any cop who breaks ranks for ANY reason will be harassed constantly - even to the point of violent assault and death threats - and will find that their career is destroyed.
some do break ranks, but very few....and very few of those are willing to put themselves on the THEM side of the cops Us-vs-Them mentality and destroy their career over relatively minor incidents.
people like him do not deserve to be entrusted with the powers and authority of the police.
the WTF expression on the female cop's face as he started harassing the girl said it all, before the blank mask of solidarity came over it. she knew he was in the wrong, that he was making an innocuous situation into a bad one.
he ought to be sacked. and charged with assault, threatening behaviour, and abuse of power.
i'd be interested to hear in a few months whether it actually helped. if you do make the effort to learn python, please let me know...and let me know if it's accelerating your development as i predicted.
well, you mentioned the most obvious better way yourself - using a real database.
with large datasets, the biggest problem is management of that data and not calculations. workarounds with multiple tabs are an extremely clumsy way of managing data.
financial calculations are, for the most part, well-known and standardised. they're even built in to many database servers, or can be built up in subroutines and procedures using the built-in language(s) of the database.
so, for large datasets, using a database with a reasonable knowledge of, say, SQL is a far better option than using a spreadsheet - and anyone capable of developing complex spreadsheets with excel or whatever should have no difficulty in learning to use a simple language like sql.
someone else mentioned that they had large data sets that they processed with python program(s) they wrote - again, that's another option that's better than a spreadsheet (although he seemed to think it would have been easier/faster in a spreadsheet - ignoring the fact that it was too big a job for a ss which is why he used python. it's not easier/faster if it doesn't work).
a programming language like python (or perl or C or almost any other language even including VB) can be used with a database back-end or with tabular data in plain text or CSV-type files.
but the big advantage of a programming language - or even SQL - is that it separates the data (and the data management) from the code, from the algorithms, from the "business logic". this makes the results reproducible, and the code re-usable with other similar data sets. it also makes programming and debugging easier because the code isn't buried in all the data, and it allows for the code to be managed with any one of dozens of revision control systems. and, finally, it makes it possible to automate the processing of new data as it becomes available, rather than relying on someone to manually rewrite the spreadsheet with the new data.
spreadsheets are still useful, for some kinds of jobs (including final manipulation and presentation of data processed with other programs) there is nothing better - but using a spreadsheet for every job because it's all you know is just seeing every problem as a nail because all you have is a hammer. worse, for large datasets, you're using a tool that is a) unsuited to such a large task, and b) has a programming language that is too primitive and clumsy for the job you are trying to do.
hell, even MS Access would be a better fit for large jobs than Excel (*iff* they're using a real database as a backend via odbc rather than access's own files. Access is a lousy database, but a fairly decent front end to a real db)
> Accountants, those in finance, etc.. generally do not have any computer skills outside of Excel.
then they should make the effort to acquire them. they've shown they're capable of learning how to program a spreadsheet, learning SQL or a programming language like python (or perl, or C# &.NET to stay in the MS world) is no harder. in fact, easier in many ways because the XY grid (and Z-axis for multiple tabs/sheets) is an extremely restrictive and clumsy way of storing data as well as naming and using variables.
before the Excel users, accountants generally didn't have ANY computer or programming skills at all. paper ledgers and journals and manual calculators were all they had. they had to upskill then, and they still have to now.
Excel and other spreadsheets are just one of the first steps in the computer literacy process for them, not the final destination.
> Financial folks often need to do pretty complex calculations
some are indeed *complex*, but mostly they're just *complicated* because of the clumsy tool (a spreadsheet) they're using to program them. and even the complex calculations are far more complicated than they need to be because of that clumsiness.
and to be even fairer than that - if you actually run into that limitation, if you have a spreadsheet with anywhere near 65K rows then UR DOING IT WRONG.
whatever it is you are doing, there are *far* better ways of doing it than with a spreadsheet.
I have a basic grasp on most of the algorithm, but I am (go ahead, laugh) primarily a VB coder, and I believe this project would be better suited to C, or perhaps python (I have heard something about sci-py?)
I have no idea, nor do i care, whether your idea is any good or not. either way, you're right about VB being the wrong language for this. I don't think C or C++ is the right language either - as you say, you're not a great programmer so you'd be spending all your time frustrated with the manual memory management required by C.
python, however, is probably ideal. python's VERY easy to learn (you can pick up the basic syntax in a day or so - as with anything complex, real mastery can take years), the language enforces reasonably correct style, and the scipy and numpy libraries use compiled C subroutines for speed where it matters - in effect, you get the combined benefits of C for speed and a high-level scripting language for rapid development and prototyping.
you already have some grounding in programming (even if it is VB), so using the scipy and/or numpy libraries you should be able to implement your algorithm ideas in a matter of months if not weeks, even starting from scratch and learning python at the same time. i suspect (actually, i'm *certain*) that the greatest difficulty will be in un-learning bad habits and bad ways of thinking about programming that you learnt from VB - so try to start as a "blank slate", going through the tutorials and example exercises as if you know absolutely nothing about programming.
python can also be used interactively (e.g. with ipython), where you type your program (or parts thereof) into an interactive shell and get to run/experiment/tweak them in real time. you can also get help, function definitions, query reference material, and more from within ipython. this mode is also used in many of the numerous tutorials and examples available to help teach python.
(BTW, your work in ipython can be saved to disk and used as the basis for a standalone script, or just cut-and-pasted into your work-in-progress program)
btw, although i've dabbled in it i am not a python programmer. the kind of programming i do (mostly text processing, data mangling and systems automation) suits perl far better than it does python. and python's white-space issue still annoys the hell out of me. but i can recognise that what you want to do is a near-perfect match for python's strengths.
Basically, dealing with the public sucks. The tip system gives servers an incentive to put the schmuck who came in earlier behind them and give me good service.
it doesn't suck anywhere near so much if the 'schmuck who came in earlier' doesn't get to decide whether they're making $2/hour tonight or a livable wage.
tipping is fine - as a bonus (for great service, or for being in the right place at the right time to benefit from someone in a generous mood, etc). but as a substitute for a real wage, the best you can say for it is that it ranks above outright slavery.
i live in a country where tipping is not uncommon, but is never a substitute for a proper wage. by law. we get reasonably good service in AU - sometimes great, sometimes lousy, usually just "good". same as most places, with or without a tipping culture.
i don't mid tipping but i actually feel ashamed and morally dirty when i eat out in a country where wait staff aren't paid a real wage, where they're expected to live on tips....because i'm being made to be an active participant in their exploitation.
(and in some countries, like india, i'll try to tip discretely when the boss isn't watching because it's not uncommon for the boss to just take the lion's share - or all - of the tip)
Stiffing a waiter who has given you acceptable service certainly *is* immoral.
no, not paying them a real wage for their time and labour is immoral. they *deserve* to get paid properly for the hours they have worked whether the customers were generous or not - and even if there were no customers at all (they're not on a profit-share arrangement so why should they share in the loss?)
> The whole open source and everything-must-be-free mentality goes against businesses.
there's two major things wrong with that idiotic statement:
1. there is no "everything-must-be-free" mentality. the closest thing to that is that a significant proportion of free software users simply refuse to buy, possess, or use non-free software (and that non-free software will inevitably die off due to irrelevance and inability to compete with free and open alternatives). while others are willing to buy and run proprietary software for unimportant things like games. either choice is perfectly valid and legitimate. my choice is a pragmatic combination of both - eventually proprietary software WILL die off, but i'm willing to buy proprietary games in the meantime...because i happen to enjoy shooting zombies with a shotgun.
2. even if such a mentality DID exist, it wouldn't "go against business" - it's free choice in action, consumers freely choosing which products they will and will not buy. it's no more going against business than choosing to shop in one store over another....or choosing not to shop at all because you don't want what's on offer. this is not the world of Vonnegut's Player Piano where consumption is mandatory.
FWIW, i use ONLY linux on my computers. I have never installed ANY version of windows on any of my computers - even in the years before linux, i decided that a) windows was a very poor imitation of the Mac, and b) a graphical desktop on 640x480 VGA resolution or 720x350 B&W Hercules res. just wasn't worth the bother. instead, i used MS-DOS and desqview for multitasking. later i briefly used OS/2 for its superior multitasking (but was still unhappy with a GUI on such crappy low resolutions). then in late '93 i switched to linux and have never seen any reason to change that decision (again, i didn't even bother with X until years later, not until display resolutions were much higher, AND high-resolution displays were affordable...around '98 or '99 IIRC)
anyway, late last year i opened a steam account. i've spent somewhere around $700 on games since then. mostly i buy games during their sales, especially their bulk packs of games when they're 50% or 75% off. somewhere between half and two thirds of the games actually run at all on wine on linux. less than half run well. which is WHY i only bother with cheap, discounted games - i *know* that any game i buy is just a gamble that it might work now or in future (some of the games i bought didn't work with wine when i bought them but work now with newer versions of wine). i'm willing to gamble $5, $10, or even $20 per game on the possibility that it will work well enough to play, but there's no way i'll gamble $50 or $80 on a new game.
so, what's in it for Steam (and the game devs they sell for) to have a linux version? well, if newer games actually worked on linux, i'd be willing to spend the money on them.
hell, even if they made an effort (with testing and patches) to make sure that games worked well in wine (perhaps by having a linux steam client AND a wrapper around wine with optimised settings for each game - similar to PlayOnLinux) I'd be more willing to spend money on new games.
(and, of course, steam already sells several indie games that HAVE linux native versions. also, earlier versions of the Unreal engine run on linux, most of Id's games have linux versions, and the Source games like HL2, L4D1&2, Portal, Counterstrike etc could be ported fairly easily to linux - Running With Scissors has stated that Postal 3, which will use the Source engine, will have a native linux version, same as Postal 2 which used the Unreal engine)
until then, though, i'm only going to to buy older games that i'm willing to gamble a small amount on them working, and games that are KNOWN to work *perfectly* with wine.
whatever happens, I'm NOT going to run Windows. that's a price far higher then mere money, and one that i'm not willing to pay just to run some games.
i really don't care if flash has better optimised code right now, and can play videos faster. even ignoring the fact that my CPU and GPU are more than capable of playing any kind of video without breaking a sweat, it's far more important to me that my computer NOT run arbitrary, untrusted code from any web site i visit that either spies on me or tries to install malware like keystroke-loggers or spambots (fortunately, i'm fairly safe from the latter as i run only linux - it's more offensive than dangerous).
i know that i'm taking a stupid risk every time i allow noscript and flashblock to play a flash video, so i try to avoid it...and will keep doing so until HTML5 videos are the standard. data is (mostly) safe[1]. arbitrary executable code is not.
(i really don't think i'm missing much - youtube and the like are, after all, subject to Sturgeon's Law like everything else)
i still think the most appropriate analogy to describe web users running arbitary code from web sites they visit is to say it's like jabbing yourself with every needle on the ground as you walk by a junkie squat - you might enjoy some kind of a high, but you'll certainly get infected. it's why i use NoScript and only allow sites i trust to execute javascript....and give up immediately on sites that don't work at all without js....web sites should degrade gracefully and still work in basic form without scripting, even if it is a more primitive "experience" than what you get if you allow scripts to run.
[1] maliciously created data files could cause a buffer overflow or something in the player - but the code for that is under MY control, not the web sites'. it can be fixed ONCE and protect my computer from all future attempts to exploit the same bug.
corporations might be just like soylent green, but they're also a real-world artificial life that operates on algorithms that are at times profoundly indifferent to human welfare (at best) and even actively inimical to our welfare. they are not our friends, or our pets, or even our servants, they are a competing (artificial) life form. they use loopholes in our legal and financial "operating systems" to serve their own interests, not ours (and those interests include entrenching those loopholes and creating new ones to strengthen themselves).
the legal fiction of corporate personhood makes them a kind of cellular automata that treats humans as both a) just another resource to be exploited, and b) as competitors for other resources.
btw, before you (possibly deliberately) misinterpret what i'm saying: this is not intended to be some mystical nonsense about supernaturally self-aware corporations. it's just an inevitable emergent behaviour from the complex legal rules that we have constructed around corporations.
and to spell out the obvious for the slower people around here - that $2300 camera is above the $1000 not-worth-it threshhold for collecting GST on imports would attract a GST fee of $230 when shipped to Australia.
even with GST added, $2300 + $230 = $2530, it is STILL over $1000 cheaper than the same camera in local stores.
this issue is *NOT* about online imports having an unfair GST-exemption advantage. it's about Harvey Norman and other ripoff chain stores (and the various layers of importers and distributors and other middle-men) protecting their enormous price markups and, worse, trying to erect a huge barrier to trade and competition by making online purchases an inconvenient hassle dealing with customs
these scumbags are happy to reap the benefits of globalisation to sack australian workers and are just pissed off that australian consumers can now use the internet to reap the benefits of globalisation themselves and "sack" the ripoff retailers
nice quibble about the fact that i used the phrase "provide source to" as shorthand for the various methods of providing, making available, or offering source specified in clause 3 and sub-clauses 3a, 3b, and 3c.
way to go! you'll get to be a junior-level fatuous caviller in no time with a performance like that!
it's a pointless distraction, though. the details of the manner of providing source were NOT what I was discussing. I was discussing the *obligation*, not the manner.
you claimed that A did not have any GPL obligations to C (who received the GPL-ed code from B rather than directly from A).
that is incorrect. as i said, both A and B have obligations to C.
yes, the person who gave you the code also has that obligation. but that doesn't relieve the original distributor of their obligation.
in your example, both the company AND X have the obligation to provide/make-available the source to Y
btw, it's irrelevant whether the company has the resources to provide the source to everyone - same as it's irrelevant whether you have the resources to pay for the food you order in a restaurant....you have an obligation to pay regardless
A also has an obligation to the author(s) who wrote the code and licensed it to A - and by redistributing the GPL code, A agreed to the terms.
in the situation you describe above, both A and B have GPL-related obligations to C. this is true for both GPLv2 and GPLv3. GPLv2 says they have an obligation to provide source to ANY third party, GPLv3 says they have an obligation to provide source to ANYONE who has a copy of the object code they distributed.
is that really so difficult to understand?
how, exactly, would that put RH out of business? you mean the tiny fraction of the tiny percentage of IBM or Oracle customers who actually want the source would cost RH so much in bandwidth that they'd go bankrupt? yes, i'm sure that's very likely. BTW, the GPL *does* work that way.
if RH did that, then *they* would not be in compliance with the GPL.
the kernel and many other programs on RH are GPLv2, so they have to make them available to any third party. Many other programs are GPLv3, so they have to make them available to anyone who possesses a copy of the object code (no matter how they obtained it).
so...
ethically, MSFT probably should host source for any GPL code they distribute. practically and legally, they don't have to. they can pay someone else to do it or, if their distributed object code is identical (unchanged) from upstream they can point at someone who does host it. the FSF or RH for example
i think that would be covered by "...to give anyone who possesses the object code..."
if you distribute the object code, you're obligated to give it to ANYONE who posessess the object code, no matter how they obtained it.
that's what v3 of the GPL says.
the GPLv2 is even less limited in who you're obligated to give the source code to - that says "...to give any third party..."
what this implies is that the selective targeting and assassination of a dozen or so of the top spammers would significantly reduce spam worldwide.
and a continuing program of taking out the top 10 spammers every few months would keep it down.
...I still think a bounty on spammers is the ONLY solution that has any real chance of working. too bad it's technically illegal as spammers are nominally human.
the real difference between the Pentagon Papers and the Wikileaks cables is that the PP are history - it's done and dusted and all the political embarrassment has already happened.
the Wikileaks cables, OTOH, are current and new and there's still a huge amount of political embarrassment and secrets to be exposed.
an important part of wikileaks' legitimacy is that they don't play favourites. they are about publishing leaks, not about deciding which leaks are "safe" to publish.
doing otherwise would lead to them being accused of political bias (they are already, but the accusations would be true if they started self-censoring in this way).
also, appeasement of dictators or lunatics never works. deciding not to publish something because some nutcase somewhere in the world might take offense and use it as an excuse to do something undesirable or wrong or even atrocious would mean that wikileaks may as well just pack up and go home because that's going to be the case with almost everything they publish that's actually worth publishing.
BTW, wikileaks is just the latest excuse for Mugabe. it's not as if he hasn't used other excuses in the past to prosecute (and persecute) Tsvangirai or that he won't do the same in the future.
why buy their games?
hasn't blizzard done enough evil shit over the years to deserve a permanent boycott?
when someone shits in your face you don't beg for more (not unless you have the same fetish Hitler had, that is).
so why buy their stuff? doesn't matter how good (or bad) their games are, by buying their stuff you are contributing to the evil crap they do.
boycott them.
> She only looked embarrassed for a moment, then you will observe the training kicked in.
that wasn't training. that was solidarity. cops stick together. always. even when they know the other cop is in the wrong. even when they know the other cop is breaking the law, or taking bribes, or abusing their power, or engaging in serious criminal behaviour.
any cop who breaks ranks for ANY reason will be harassed constantly - even to the point of violent assault and death threats - and will find that their career is destroyed.
some do break ranks, but very few....and very few of those are willing to put themselves on the THEM side of the cops Us-vs-Them mentality and destroy their career over relatively minor incidents.
I'd never heard of Officer Bubbles before.
Now I have.
people like him do not deserve to be entrusted with the powers and authority of the police.
the WTF expression on the female cop's face as he started harassing the girl said it all, before the blank mask of solidarity came over it. she knew he was in the wrong, that he was making an innocuous situation into a bad one.
he ought to be sacked.
and charged with assault, threatening behaviour, and abuse of power.
wow, that's harsh.
it would be far less cruel to just leave them to the tender mercies of the secret police and torture squads.
> Thank you for an informative post.
i'd be interested to hear in a few months whether it actually helped. if you do make the effort to learn python, please let me know...and let me know if it's accelerating your development as i predicted.
well, you mentioned the most obvious better way yourself - using a real database.
with large datasets, the biggest problem is management of that data and not calculations. workarounds with multiple tabs are an extremely clumsy way of managing data.
financial calculations are, for the most part, well-known and standardised. they're even built in to many database servers, or can be built up in subroutines and procedures using the built-in language(s) of the database.
so, for large datasets, using a database with a reasonable knowledge of, say, SQL is a far better option than using a spreadsheet - and anyone capable of developing complex spreadsheets with excel or whatever should have no difficulty in learning to use a simple language like sql.
someone else mentioned that they had large data sets that they processed with python program(s) they wrote - again, that's another option that's better than a spreadsheet (although he seemed to think it would have been easier/faster in a spreadsheet - ignoring the fact that it was too big a job for a ss which is why he used python. it's not easier/faster if it doesn't work).
a programming language like python (or perl or C or almost any other language even including VB) can be used with a database back-end or with tabular data in plain text or CSV-type files.
but the big advantage of a programming language - or even SQL - is that it separates the data (and the data management) from the code, from the algorithms, from the "business logic". this makes the results reproducible, and the code re-usable with other similar data sets. it also makes programming and debugging easier because the code isn't buried in all the data, and it allows for the code to be managed with any one of dozens of revision control systems. and, finally, it makes it possible to automate the processing of new data as it becomes available, rather than relying on someone to manually rewrite the spreadsheet with the new data.
spreadsheets are still useful, for some kinds of jobs (including final manipulation and presentation of data processed with other programs) there is nothing better - but using a spreadsheet for every job because it's all you know is just seeing every problem as a nail because all you have is a hammer. worse, for large datasets, you're using a tool that is a) unsuited to such a large task, and b) has a programming language that is too primitive and clumsy for the job you are trying to do.
hell, even MS Access would be a better fit for large jobs than Excel (*iff* they're using a real database as a backend via odbc rather than access's own files. Access is a lousy database, but a fairly decent front end to a real db)
> Accountants, those in finance, etc.. generally do not have any computer skills outside of Excel.
then they should make the effort to acquire them. they've shown they're capable of learning how to program a spreadsheet, learning SQL or a programming language like python (or perl, or C# & .NET to stay in the MS world) is no harder. in fact, easier in many ways because the XY grid (and Z-axis for multiple tabs/sheets) is an extremely restrictive and clumsy way of storing data as well as naming and using variables.
before the Excel users, accountants generally didn't have ANY computer or programming skills at all. paper ledgers and journals and manual calculators were all they had. they had to upskill then, and they still have to now.
Excel and other spreadsheets are just one of the first steps in the computer literacy process for them, not the final destination.
> Financial folks often need to do pretty complex calculations
some are indeed *complex*, but mostly they're just *complicated* because of the clumsy tool (a spreadsheet) they're using to program them. and even the complex calculations are far more complicated than they need to be because of that clumsiness.
and to be even fairer than that - if you actually run into that limitation, if you have a spreadsheet with anywhere near 65K rows then UR DOING IT WRONG.
whatever it is you are doing, there are *far* better ways of doing it than with a spreadsheet.
> Who would have thought that sysads might read /.
No! say it can't be true....not during work hours!
ps: UOM, SoC, about 300m away at a guess.
I have no idea, nor do i care, whether your idea is any good or not. either way, you're right about VB being the wrong language for this. I don't think C or C++ is the right language either - as you say, you're not a great programmer so you'd be spending all your time frustrated with the manual memory management required by C.
python, however, is probably ideal. python's VERY easy to learn (you can pick up the basic syntax in a day or so - as with anything complex, real mastery can take years), the language enforces reasonably correct style, and the scipy and numpy libraries use compiled C subroutines for speed where it matters - in effect, you get the combined benefits of C for speed and a high-level scripting language for rapid development and prototyping.
you already have some grounding in programming (even if it is VB), so using the scipy and/or numpy libraries you should be able to implement your algorithm ideas in a matter of months if not weeks, even starting from scratch and learning python at the same time. i suspect (actually, i'm *certain*) that the greatest difficulty will be in un-learning bad habits and bad ways of thinking about programming that you learnt from VB - so try to start as a "blank slate", going through the tutorials and example exercises as if you know absolutely nothing about programming.
python can also be used interactively (e.g. with ipython), where you type your program (or parts thereof) into an interactive shell and get to run/experiment/tweak them in real time. you can also get help, function definitions, query reference material, and more from within ipython. this mode is also used in many of the numerous tutorials and examples available to help teach python.
(BTW, your work in ipython can be saved to disk and used as the basis for a standalone script, or just cut-and-pasted into your work-in-progress program)
here's a good place to start: http://scipy.org/Getting_Started
btw, although i've dabbled in it i am not a python programmer. the kind of programming i do (mostly text processing, data mangling and systems automation) suits perl far better than it does python. and python's white-space issue still annoys the hell out of me. but i can recognise that what you want to do is a near-perfect match for python's strengths.
it doesn't suck anywhere near so much if the 'schmuck who came in earlier' doesn't get to decide whether they're making $2/hour tonight or a livable wage.
tipping is fine - as a bonus (for great service, or for being in the right place at the right time to benefit from someone in a generous mood, etc). but as a substitute for a real wage, the best you can say for it is that it ranks above outright slavery.
i live in a country where tipping is not uncommon, but is never a substitute for a proper wage. by law. we get reasonably good service in AU - sometimes great, sometimes lousy, usually just "good". same as most places, with or without a tipping culture.
i don't mid tipping but i actually feel ashamed and morally dirty when i eat out in a country where wait staff aren't paid a real wage, where they're expected to live on tips....because i'm being made to be an active participant in their exploitation.
(and in some countries, like india, i'll try to tip discretely when the boss isn't watching because it's not uncommon for the boss to just take the lion's share - or all - of the tip)
no, not paying them a real wage for their time and labour is immoral. they *deserve* to get paid properly for the hours they have worked whether the customers were generous or not - and even if there were no customers at all (they're not on a profit-share arrangement so why should they share in the loss?)
> The whole open source and everything-must-be-free mentality goes against businesses.
there's two major things wrong with that idiotic statement:
1. there is no "everything-must-be-free" mentality. the closest thing to that is that a significant proportion of free software users simply refuse to buy, possess, or use non-free software (and that non-free software will inevitably die off due to irrelevance and inability to compete with free and open alternatives). while others are willing to buy and run proprietary software for unimportant things like games. either choice is perfectly valid and legitimate. my choice is a pragmatic combination of both - eventually proprietary software WILL die off, but i'm willing to buy proprietary games in the meantime...because i happen to enjoy shooting zombies with a shotgun.
2. even if such a mentality DID exist, it wouldn't "go against business" - it's free choice in action, consumers freely choosing which products they will and will not buy. it's no more going against business than choosing to shop in one store over another....or choosing not to shop at all because you don't want what's on offer. this is not the world of Vonnegut's Player Piano where consumption is mandatory.
FWIW, i use ONLY linux on my computers. I have never installed ANY version of windows on any of my computers - even in the years before linux, i decided that a) windows was a very poor imitation of the Mac, and b) a graphical desktop on 640x480 VGA resolution or 720x350 B&W Hercules res. just wasn't worth the bother. instead, i used MS-DOS and desqview for multitasking. later i briefly used OS/2 for its superior multitasking (but was still unhappy with a GUI on such crappy low resolutions). then in late '93 i switched to linux and have never seen any reason to change that decision (again, i didn't even bother with X until years later, not until display resolutions were much higher, AND high-resolution displays were affordable...around '98 or '99 IIRC)
anyway, late last year i opened a steam account. i've spent somewhere around $700 on games since then. mostly i buy games during their sales, especially their bulk packs of games when they're 50% or 75% off. somewhere between half and two thirds of the games actually run at all on wine on linux. less than half run well. which is WHY i only bother with cheap, discounted games - i *know* that any game i buy is just a gamble that it might work now or in future (some of the games i bought didn't work with wine when i bought them but work now with newer versions of wine). i'm willing to gamble $5, $10, or even $20 per game on the possibility that it will work well enough to play, but there's no way i'll gamble $50 or $80 on a new game.
so, what's in it for Steam (and the game devs they sell for) to have a linux version? well, if newer games actually worked on linux, i'd be willing to spend the money on them.
hell, even if they made an effort (with testing and patches) to make sure that games worked well in wine (perhaps by having a linux steam client AND a wrapper around wine with optimised settings for each game - similar to PlayOnLinux) I'd be more willing to spend money on new games.
(and, of course, steam already sells several indie games that HAVE linux native versions. also, earlier versions of the Unreal engine run on linux, most of Id's games have linux versions, and the Source games like HL2, L4D1&2, Portal, Counterstrike etc could be ported fairly easily to linux - Running With Scissors has stated that Postal 3, which will use the Source engine, will have a native linux version, same as Postal 2 which used the Unreal engine)
until then, though, i'm only going to to buy older games that i'm willing to gamble a small amount on them working, and games that are KNOWN to work *perfectly* with wine.
whatever happens, I'm NOT going to run Windows. that's a price far higher then mere money, and one that i'm not willing to pay just to run some games.
> if you want an
two reason why flash *should* die:
1. spyware
2. malware
i really don't care if flash has better optimised code right now, and can play videos faster. even ignoring the fact that my CPU and GPU are more than capable of playing any kind of video without breaking a sweat, it's far more important to me that my computer NOT run arbitrary, untrusted code from any web site i visit that either spies on me or tries to install malware like keystroke-loggers or spambots (fortunately, i'm fairly safe from the latter as i run only linux - it's more offensive than dangerous).
i know that i'm taking a stupid risk every time i allow noscript and flashblock to play a flash video, so i try to avoid it...and will keep doing so until HTML5 videos are the standard. data is (mostly) safe[1]. arbitrary executable code is not.
(i really don't think i'm missing much - youtube and the like are, after all, subject to Sturgeon's Law like everything else)
i still think the most appropriate analogy to describe web users running arbitary code from web sites they visit is to say it's like jabbing yourself with every needle on the ground as you walk by a junkie squat - you might enjoy some kind of a high, but you'll certainly get infected. it's why i use NoScript and only allow sites i trust to execute javascript....and give up immediately on sites that don't work at all without js....web sites should degrade gracefully and still work in basic form without scripting, even if it is a more primitive "experience" than what you get if you allow scripts to run.
[1] maliciously created data files could cause a buffer overflow or something in the player - but the code for that is under MY control, not the web sites'. it can be fixed ONCE and protect my computer from all future attempts to exploit the same bug.
> Any questions?
I have one - is your childishly simplistic world-view natural or did you have a lobotomy?
why use the made up word "pseudo-words" when the real phrase "made up words" works just fine?
and why use the word "fine" when there are dozens of synonyms or near-synonyms that work just as well?