Subj : Re: programming job market in bay area in US To : comp.programming From : rem642b Date : Fri Jul 29 2005 09:15 am > From: Duane Bozarth > > >> ? Basic project management skills. > > I've never been given any authority to command or manage any project > > that involved anyone other than myself. > That's telling... :( Why the nasty face on that? The largest project I was ever on was about ten people, which included three programmers, one of which was me. We already had a tactical supervisor/manager, plus a faculty advisor and planner, and a head honcho, and one of each was quite appropriate for such a small project. Do you think they should have reduced the programmers from three to two by taking me off that kind of task to be somehow a fourth manager?? That would have been really stupid, even if I would have made a great project manager. In the open-source packet-protocol project, I ended up being not only the most prolific programmer (two client implementations and two server implementations at that time, and one of each later too) but also the primary librarian, who wrote all but the very first documents, and who kept the mailing lists and document archives, and who kept in touch with everyone to update the status documents to indicate how the project was progressing. > > I've never had any access to any such facilities. I looked up CVS a > > few weeks ago in investigation of jargon in another job ad, and > > suspect the other two are similar hence not worth looking up at this > > time. > Well, it's indicative of a skill set you might want to become more > familiar with as most anybody developing serious souftware will expect > serious configuration management... Well if I had access to such a system, and some project where I could make good use of it, I might give it a try. But I don't see you donating your server for me to play with, so what's your point in telling me I should do something which requires facilties I don't have and can't get? ... Wait a minute ... Are you talking about this: /usr/bin/cvs /usr/share/man/man1/cvs.1.gz NAME cvs - Concurrent Versions System SYNOPSIS cvs [ cvs_options ] cvs_command [ command_options ] [ command_args ] DESCRIPTION CVS is a version control system, which allows you to keep old versions of files (usually source code), keep a log of who, when, and why changes occurred, etc., like RCS or SCCS. ... That's such an unlikely thing for my Unix shell account to have installed that I never thought to even look for it here, I just assumed that like J2EE and .NET it wouldn't be here, after all we have only version 1.2 of J2SE and really old version of Python etc. and no option for SMTP-level spam filtering whatsoever, but I randomly tried "whereis cvs" just now before posting, and voila! Is that what you say I should practice? Do you have a project for which it would be useful? Everything I'm doing currently have just me working by myself with only one version (and backups) of any file at any one time, and not a single customer who needs to know version numbers, so I don't see any use for CVS. Can you think of something nontrivial and useful I could do with it all by myself? > > I have no experience whatsoever developing commercial software. > > My 22 years software develoment experience is all in R/D and utlities > > and private applications, except for 2.5 weeks in 1992 .... > I'd say it's the of the code/app produced that's what is > wanted, not the actual fact it was commercial ... Well a lot of my programs have been quite a bit beyond the state of art at the time they were developed, and they were solid. The only place where I had a longstanding bug was in MRPP3 where I implemented a reference-count storage allocation system in assembly language and never quite got it right, had a slow memory leak that I never could plug, sigh. Despite that leak, the program worked just fine if you didn't define and re-define a lot of macros many many times during the course of formatting a single document. (If you did, it might run out of memory on 256k-word i.e. 1-megabyte PDP-10, which is quite tiny by today's standards.) > I assume in 22 years you wrote was actually > used by your employer? That's "shippping" in an internal > environment. Yeah, but it was all on a single machine, the only computer we had there, that PDP-10 for one set of programs, used a lot by several people in that community, and a different PDP-10 in another community, running different operating systems, so something developed at Stanford couldn't run at MIT and vice versa, so nothing ever moved from one machine to another, so nothing "shipped" in any usual sense of the word, which misled me what you meant. Several programs I started all by myself and enough people started using it that I was told by management to make it better in some way so I did. One program I was hired to do something else, a stupid idea, so I did that idea, then I did my own idea (a port of an idea of my own from 5 years before, from CalComp 565 in 1969-70 to Xerox Graphics Printer in 1975) and after I had written that program on my own initiative they realized that was a better idea than what they had told me to do. So the "shipped" programs I can think of at the moment are INFO (1970-71), MRPP3 (1975), a data compression program whose name I forget now (1978), a multi-file-per-archive program SPINDL based on the same algorithm, remote sensing image-processing software (appx. 1979), LINREL (appx. 1980), and my portion of the CAI-Calculus program (1985-91). Non-programs, i.e. organized data: PCNET archive (1977-80) and MaasInfo (1991-1996) and anti-net-abuse (1996-2004). > What does it cost to apply as opposed to applying? Well it takes several hours to tailor my resume and do the other stuff related to submitting it for a job, during which time I have lost opportunity for anything else I might have done instead. If there's zero chance of getting a job, then that effort was wasted for nothing. (mochikomi) .