Even the best written code can be hard to understand after we have not touched it for a month or two, let alone a year or more.
Yup, I often do a search for something and come across an upload I have written and totally forgotten about. I read it and think did I actaully write that?
Quote:
So, I learned the hard way many years ago not to write "fancy one liners" and write well documented code and scripts.
Going slightly off topic here with the second quote I was on a Python ML, (they were so obnoxious that I have long since left), and the big guns on there said there was no need to add comments as it was easy to work out what a python script does. I gave them this challenge:-
(Before reading the answer I wonder if the Python experts on here can work out what it does?)
Code:
# SomeSound.py
audio=file('/dev/dsp', 'wb')
def main():
for a in range(0,25,1):
for b in range(15,112,1):
for c in range(0,1,1):
audio.write(chr(127+b)+chr(127+b)+chr(127+b)+chr(127+b)+chr(127-b)+chr(127-b)+chr(127-b)+chr(127-b))
for b in range(112,15,-1):
for c in range(0,1,1):
audio.write(chr(127+b)+chr(127+b)+chr(127+b)+chr(127+b)+chr(127-b)+chr(127-b)+chr(127-b)+chr(127-b))
main()
audio.close()
First of all, apologies to the admins for not reading the rules totally and missing the bit about ranting off about other OSs.
But that raises a question. Where do you go to have a good rant, to vent your disgust at various corporations and thier hideous behaviour?
:confused: (2 Replies)
Guys,
I have a requirement like this.
A file has >5K records always. Separated by "|", it has 30 fields for each line. In some lines, I am getting an odd field. say, the 15th field is supposed to be 2 characters but comes in as >2. In this case, for resolving this I need to copy the value of... (6 Replies)
I wanted to say LOL and punch my face when I saw post#11 (where Don_Cragun even reduced the string manipulation with a simple regex) in the thread https://www.unix.com/shell-programming-scripting/220553-add-0-start-filename-2.html
I mean, when things can be done with just a one liner, sometimes I... (6 Replies)
Hi guys...
(Apologies for any typos etc...)
This is basically a rant.
I have been doing kids level projects and writing code to suit since around 1982, for the uProfessor, for the Sinclair Spectrum and later for the QL, IBM-XT in MS-DOS and after that for a 386DX40 up to Windows 95, until I... (3 Replies)
Discussion started by: wisecracker
3 Replies
LEARN ABOUT DEBIAN
finance::quotehist::msn
Finance::QuoteHist::MSN(3pm) User Contributed Perl Documentation Finance::QuoteHist::MSN(3pm)NAME
Finance::QuoteHist::MSN - Site-specific class for retrieving historical stock quotes.
SYNOPSIS
use Finance::QuoteHist::MSN;
$q = Finance::QuoteHist::MSN->new
(
symbols => [qw(IBM UPS AMZN)],
start_date => '01/01/1999',
end_date => 'today',
);
foreach $row ($q->quotes()) {
($symbol, $date, $open, $high, $low, $close, $volume) = @$row;
...
}
DESCRIPTION
Finance::QuoteHist::MSN is a subclass of Finance::QuoteHist::Generic, specifically tailored to read historical quotes from the MSN
financial web site (http://moneycentral.msn.com/). Note that Quotemedia is currently the site that provides historical quote data for such
other sites as Silicon Investor, which was the target of a module in an earlier release of this distribution.
MSN does not currently provide information on dividends or splits.
Please see Finance::QuoteHist::Generic(3) for more details on usage and available methods. If you just want to get historical quotes and
are not interested in the details of how it is done, check out Finance::QuoteHist(3).
METHODS
The basic user interface consists of a single method, as shown in the example above. That method is:
quotes()
Returns a list of rows (or a reference to an array containing those rows, if in scalar context). Each row contains the Symbol, Date,
Open, High, Low, Close, and Volume for that date. Quote values are pre-adjusted for this site.
REQUIRES
Finance::QuoteHist::Generic
DISCLAIMER
The data returned from these modules is in no way guaranteed, nor are the developers responsible in any way for how this data (or lack
thereof) is used. The interface is based on URLs and page layouts that might change at any time. Even though these modules are designed to
be adaptive under these circumstances, they will at some point probably be unable to retrieve data unless fixed or provided with new
parameters. Furthermore, the data from these web sites is usually not even guaranteed by the web sites themselves, and oftentimes is
acquired elsewhere.
Details for MSN's terms of use can be found here: http://privacy2.msn.com/tou/en-us/default.aspx
If you still have concerns, then use another site-specific historical quote instance, or none at all.
Above all, play nice.
AUTHOR
Matthew P. Sisk, <sisk@mojotoad.com>
COPYRIGHT
Copyright (c) 2006 Matthew P. Sisk. All rights reserved. All wrongs revenged. This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
SEE ALSO Finance::QuoteHist::Generic(3), Finance::QuoteHist(3), perl(1).
perl v5.12.4 2010-06-06 Finance::QuoteHist::MSN(3pm)