Re: On Systems Administrators who are Programmers (was: Re: [SLUG] composite multiple images command in imagemagick)
2008/7/1 Jamie Wilkinson <[EMAIL PROTECTED]>: > 2008/6/17 Rick Welykochy <[EMAIL PROTECTED]>: >> >> Leave programming in the large to analysts. > > I still have to disagree with you. > > (Despite the two weeks I've had to think of more examples, I can only > think of one in the public eye. I do not consider that to weaken my > argument though -- if anything, just one example shows that it is both > possible and likely that more examples of excellent sysadmin-written > software exists.) Cobbler, Func, collectd, Nagios, Ganglia. Any of the package management systems to a certain degree. Otherwise +1. I could not have put this better myself. Lindsay -- http://slug.org.au/ (the Sydney Linux Users Group) http://holmwood.id.au/~lindsay/ (me) -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
On Systems Administrators who are Programmers (was: Re: [SLUG] composite multiple images command in imagemagick)
2008/6/17 Rick Welykochy <[EMAIL PROTECTED]>: > Jamie Wilkinson wrote: > >> 2008/6/12 Jeff Waugh <[EMAIL PROTECTED]>: >> >>> >>> I've always pondered where to draw the line between sys admin and programmer /analyst. >>> >>> Wherever you draw it, draw if very firmly. Sysadmins should not write >>> code, >> >> >> Bollocks. > > I've yet to meet a sysadmin who does not write code. > But I classify it as "scripting". > > Leave programming in the large to analysts. I still have to disagree with you. This industry needs more sysadmins who are competent software engineers. We need sysadmins who are analysts. Systems administrators without those skills are not administrators, they are janitors and night watchmen -- they change tapes and run other people's programs, without understanding what happens under the hood. We need systems administrators who get in under the hood and experiment; who not only can read code, but actively participate to the code of the systems they run, to find and fix bugs, improving stability and keeping their own peace of mind. It is essential to a business that the sysadmin understand software development and get involved with that process so as to make it easier to steer the design to one that allows essential features, such as logging, whitebox and blackbox monitoring, configuration management, versioning and rollback, healthchecking, and so on. (The corollary to that is that it is also essential to business that the software developer understands the production environment that their code will run in, how it behaves, how the sysadmin is going to manage and sustain the deployment.) I have worked in environments where the operations and engineering were separate and did not communicate, where operations and engineering were done by the same people, and where ops and eng were done by two communicating groups with a shared subset skillsets. I have to say I vastly prefer the latter, where employee productivity and morale goes up along with system reliability. But to the point at hand, that a sysadmin should not write code -- who else will? How do you prevent boredom or insanity on your part by automating processes? How do you implement self-service tools so your users can get what they need without involving you? Who's going to write all this stuff for you? None of this stuff is "scripting;" once you are writing something user facing, or a tool to assist your production services, you are going to be doing real software engineering or you are going to relearn the mistakes of software engineers past the hard way as you deal with the consequences of hacking away, without design, without bug tracking, without version control, without regression testing. There are many excellent tools written by systems administrators. These tools are not "one off hacks", but fully fledged programs to be configured, deployed, managed. "Scripting" languages are not just for your quick, hack, either. Many large production systems are written in perl, python, ruby using real software engineering practice, by real systems administrators. There is puppet, an excellent configuration management tool. Not a script, but a complex piece of software developed using software engineering practices, and written by a systems administrator by trade, Luke Kanies. (Despite the two weeks I've had to think of more examples, I can only think of one in the public eye. I do not consider that to weaken my argument though -- if anything, just one example shows that it is both possible and likely that more examples of excellent sysadmin-written software exists.) Consequences of the programmer-sysadmin is not just the ability to write your tools yourself. How deep do you go when your servers have problems? Correlate a log message against the manpage? Google for the answer? When your production apache server segfaults at 3am, what do you do - restart it and hope it doesn't happen again, or load up the core into gdb and step through the code to find the crash, determine that the crash is happening in glibc's nss layer, and isolate a stack smash in nscd, send a patch upstream, and get your name immortalised in CVS? It's a very blurry distinction between a sysadmin and an "analyst." I know of many sysadmins who write code, and I do not classify most of what I see as just "scripting." -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
I've always pondered where to draw the line between sys admin and programmer /analyst. >>> Wherever you draw it, draw if very firmly. Sysadmins should not write >>> code, >> >> Bollocks. > > I've yet to meet a sysadmin who does not write code. But I classify it as > "scripting". Yeah, that's pretty much the distinction I was assuming. I don't think those who are afraid of writing scripts (and *reading* code) can convincingly call themselves real sysadmins. :-) - Jeff -- GUADEC 2008: Istanbul, Turkey http://www.guadec.org/ man i rule boc: how do you rule? with authority -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
Jamie Wilkinson wrote: 2008/6/12 Jeff Waugh <[EMAIL PROTECTED]>: I've always pondered where to draw the line between sys admin and programmer /analyst. Wherever you draw it, draw if very firmly. Sysadmins should not write code, Bollocks. I've yet to meet a sysadmin who does not write code. But I classify it as "scripting". Leave programming in the large to analysts. cheers rickw -- Rick Welykochy || Praxis Services || Internet Driving Instructor ... wanted me to be a Win2K admin with "emphasis" on security. That's like a job as a SCUBA diver with an "emphasis" on keeping things dry. -- Anthony de Boer -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
2008/6/12 Jeff Waugh <[EMAIL PROTECTED]>: > > > > I've always pondered where to draw the line between sys admin and > > programmer /analyst. > > Wherever you draw it, draw if very firmly. Sysadmins should not write code, Bollocks. > > coders should not administer systems. Heinous crimes are committed when the > streams are crossed! > -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
Daniel Pittman wrote: That said, don't discount the risk that a programmer might wander in here as well. :) You're talking (?) to one. I enjoy the SLUG list since I have programmed some largish systems on Linux for the enterprise and when I'm at the coal face I need sys admin skills, as rudimentary as they are. SLUG is a great resource for all, not just sys admins. Witness the requests we get from overseas for help! It would be interesting to see a breakdown of SLUG membership by area of IT expertise. My guess is 70% admins and 30% the rest. There are a lot of Linux users on here, no? cheers rickw -- Rick Welykochy || Praxis Services || Internet Driving Instructor "Those who do not understand Unix are condemned to reinvent it, poorly." -- Henry Spencer -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
[EMAIL PROTECTED] writes: > Quoting Rick Welykochy <[EMAIL PROTECTED]>: > >> I've always pondered where to draw the line between sys admin and >> programmer /analyst. > > Well there's definitely a difference... but there are true sys-admins, > true programmers and some who seem to be able to do both. Like anything in our nice, immature, industry it is going to be hard for a long while yet. >> Which raises the question: does it require a programmer to handle and >> correctly execute complex command-line programs like convert, etc. >> as found in Imagemagick? > > Definitely not. But it is painful for me seeing days of list debate > for something that could be fixed (by a programmer) in an hour at the > cost of a six-pack of german beer. :-) You clearly know less expensive programmers than most, or you drink the most expensive beer /I/ have ever heard of. ;) That said, don't discount the risk that a programmer might wander in here as well. :) Regards, Daniel -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
Hi Rick, Quoting Rick Welykochy <[EMAIL PROTECTED]>: I've always pondered where to draw the line between sys admin and programmer /analyst. Well there's definitely a difference... but there are true sys-admins, true programmers and some who seem to be able to do both. Which raises the question: does it require a programmer to handle and correctly execute complex command-line programs like convert, etc. as found in Imagemagick? Definitely not. But it is painful for me seeing days of list debate for something that could be fixed (by a programmer) in an hour at the cost of a six-pack of german beer. :-) As an aside, my brain begins weeping when I have to do something novel with iptables (another command-line monster) but I don't consider that a programming job. I get the impression many Linux admins can configure iptables in the dark without a keyboard and both hands preoccupied with beer and pizza. I'm sure they can... but only if they are running with four monitors and 3 keyboards David -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
> I've always pondered where to draw the line between sys admin and > programmer /analyst. Wherever you draw it, draw if very firmly. Sysadmins should not write code, coders should not administer systems. Heinous crimes are committed when the streams are crossed! > Many sys admins I work with can whip up shell scripts and are whizzes at > handling utilities and such in the shell. But often they are not adept at > designing software systems and implementing them. No offense, admins, but > it is a different discipline. Absolutely. But the inverse is also true. :-) > Which raises the question: does it require a programmer to handle and > correctly execute complex command-line programs like convert, etc. as > found in Imagemagick? Naw, those are pretty straightforward if you have the mind-set for them. I'd venture that ImageMagick is not exactly the most useable suite of command line tools. :-) > As an aside, my brain begins weeping when I have to do something novel > with iptables (another command-line monster) but I don't consider that a > programming job. I get the impression many Linux admins can configure > iptables in the dark without a keyboard and both hands preoccupied with > beer and pizza. iptables is firewall assembly language. There are other things that provide the equivalent of portable sugary description (equivalent to C in the code ecosystem), concise object-oriented approaches (equivalent to languages such as Python), and even visual approaches (logo for firewall designers!). - Jeff -- GUADEC 2008: Istanbul, Turkey http://www.guadec.org/ "GNOME, launched specifically to counter a threat to our freedom, is the free software project par excellence." - Richard Stallman -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
[EMAIL PROTECTED] wrote: What you are after is actually a programmer... who can write that sort of thing.. Ya think? I've always pondered where to draw the line between sys admin and programmer /analyst. Many sys admins I work with can whip up shell scripts and are whizzes at handling utilities and such in the shell. But often they are not adept at designing software systems and implementing them. No offense, admins, but it is a different discipline. Which raises the question: does it require a programmer to handle and correctly execute complex command-line programs like convert, etc. as found in Imagemagick? As an aside, my brain begins weeping when I have to do something novel with iptables (another command-line monster) but I don't consider that a programming job. I get the impression many Linux admins can configure iptables in the dark without a keyboard and both hands preoccupied with beer and pizza. cheers rickw -- Rick Welykochy || Praxis Services || Internet Driving Instructor "Those who do not understand Unix are condemned to reinvent it, poorly." -- Henry Spencer -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
Elliott, What you are after is actually a programmer... who can write that sort of thing.. Usually there are two ways - pay with beer or cheques or other sort of favours... :-) I can't see any way past it... you are in industrial-land... plenty of people out there who might want to help you... Quoting elliott-brennan <[EMAIL PROTECTED]>: Hi all, First, thanks to everyone who assisted with my previous exploits. It appears the reason I couldn't get the command to work was I had an earlier version of Imagemagick. Again, thanks to all, your assistance is very much appreciated - not least of all by the relatives who 'stare in amazement' at what FOSS can do in the multimedia arena :)) Now, I have another goal I'm seeking assistance with. I have two video streams. In this case (for my trial) they're identical moving picture streams. I've broken them down into stills: one_01.png to one000201.png two_01.png to two000201.png I want to superimpose stream two onto stream one. Stream two is a smaller image with a transparent border. In effect, this will be a video playing with a smaller version of itself in one corner. I thought this command would do it for me: for i in `seq 1 999`; do j=`printf %06d $i`; echo convert one_$j.png two_$j.png -composite convert$j.png; done but though it gives me the following message: convert one_01.png two_01.png -composite convert01.png I end up with no change in the end...and the 'end product' - convert01.png does not exist. Can someone please have look at what I'm doing and provide a hint/assistance with my obviously crap command? Many thanks, Patrick PS. I'm hopefully going to find the time to blog my vid exploits. In the meantime, if anyone is interested in some ideas about vid editing and effects, I'm more than happy to help out. -- Registered GNU/Linux User 368634 -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
Hi Amos, And you are so right!! Thanks for that. My fault. I should have read the earlier posts. Much appreciated. "Amos Shapira" <[EMAIL PROTECTED]> Thu, 12 Jun 2008 13:47:59 +1000 2008/6/12 elliott-brennan <[EMAIL PROTECTED]>: Now, I have another goal I'm seeking assistance with. The "echo" above was suggested in the previous thread as a way to teach you what would be executed without actually executing it (which would fail because there aren't files and probably fill up the output with error messages). The above loop just prints strings. In order to actually execute the command you should remove the "echo". Can someone please have look at what I'm doing and provide a hint/assistance with my obviously crap command? Hope this helps, --Amos -- Registered GNU/Linux User 368634 -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
Re: [SLUG] composite multiple images command in imagemagick
2008/6/12 elliott-brennan <[EMAIL PROTECTED]>: > Hi all, > > First, thanks to everyone who assisted with my previous exploits. It appears > the reason I couldn't get the command to work was I had an earlier version > of Imagemagick. Again, thanks to all, your assistance is very much > appreciated - not least of all by the relatives who 'stare in amazement' at > what FOSS can do in the multimedia arena :)) > > Now, I have another goal I'm seeking assistance with. > > I have two video streams. In this case (for my trial) they're identical > moving picture streams. I've broken them down into stills: > > one_01.png to one000201.png > > two_01.png to two000201.png > > I want to superimpose stream two onto stream one. Stream two is a smaller > image with a transparent border. In effect, this will be a video playing > with a smaller version of itself in one corner. > > I thought this command would do it for me: > > for i in `seq 1 999`; do j=`printf %06d $i`; echo convert one_$j.png > two_$j.png -composite convert$j.png; done > > but though it gives me the following message: > > convert one_01.png two_01.png -composite convert01.png > > I end up with no change in the end...and the 'end product' - > convert01.png does not exist. The "echo" above was suggested in the previous thread as a way to teach you what would be executed without actually executing it (which would fail because there aren't files and probably fill up the output with error messages). The above loop just prints strings. In order to actually execute the command you should remove the "echo". > > Can someone please have look at what I'm doing and provide a hint/assistance > with my obviously crap command? Hope this helps, --Amos -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html