Sponsored Content
Full Discussion: One liners, quick rant...
The Lounge What is on Your Mind? One liners, quick rant... Post 302977557 by wisecracker on Tuesday 19th of July 2016 05:12:55 PM
Old 07-19-2016
Hi Neo...
Quote:
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()

The solution is here:-
Amplitude Modulation - Tremolo, Was:- An Audio/Sound Snippet For Linux... ;o) << Python recipes << ActiveState Code
This User Gave Thanks to wisecracker For This Post:
 

4 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Where can I rant?

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)
Discussion started by: u6ik
2 Replies

2. Shell Programming and Scripting

awk - one liners

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)
Discussion started by: PikK45
6 Replies

3. What is on Your Mind?

Those simple one liners

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)
Discussion started by: ahamed101
6 Replies

4. What is on Your Mind?

A rant...

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
IPTCEMBED(3)								 1							      IPTCEMBED(3)

iptcembed - Embeds binary IPTC data into a JPEG image

SYNOPSIS
mixed iptcembed (string $iptcdata, string $jpeg_file_name, [int $spool]) DESCRIPTION
Embeds binary IPTC data into a JPEG image. PARAMETERS
o $iptcdata - The data to be written. o $jpeg_file_name - Path to the JPEG image. o $spool - Spool flag. If the spool flag is over 2 then the JPEG will be returned as a string. RETURN VALUES
If success and spool flag is lower than 2 then the JPEG will not be returned as a string, FALSE on errors. EXAMPLES
Example #1 Embedding IPTC data into a JPEG <?php // iptc_make_tag() function by Thies C. Arntzen function iptc_make_tag($rec, $data, $value) { $length = strlen($value); $retval = chr(0x1C) . chr($rec) . chr($data); if($length < 0x8000) { $retval .= chr($length >> 8) . chr($length & 0xFF); } else { $retval .= chr(0x80) . chr(0x04) . chr(($length >> 24) & 0xFF) . chr(($length >> 16) & 0xFF) . chr(($length >> 8) & 0xFF) . chr($length & 0xFF); } return $retval . $value; } // Path to jpeg file $path = './phplogo.jpg'; // We need to check if theres any IPTC data in the jpeg image. If there is then // bail out because we cannot embed any image that already has some IPTC data! $image = getimagesize($path, $info); if(isset($info['APP13'])) { die('Error: IPTC data found in source image, cannot continue'); } // Set the IPTC tags $iptc = array( '2#120' => 'Test image', '2#116' => 'Copyright 2008-2009, The PHP Group' ); // Convert the IPTC tags into binary code $data = ''; foreach($iptc as $tag => $string) { $tag = substr($tag, 2); $data .= iptc_make_tag(2, $tag, $string); } // Embed the IPTC data $content = iptcembed($data, $path); // Write the new image data out to the file. $fp = fopen($path, "wb"); fwrite($fp, $content); fclose($fp); ?> NOTES
Note This function does not require the GD image library. PHP Documentation Group IPTCEMBED(3)
All times are GMT -4. The time now is 06:03 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy