[SWLUG] 'windows lusers' or 'marketing droids'

Gareth James Powell gareth-j.powell at st.com
Tue May 27 15:28:13 UTC 2003


Hiya all,

> To test if you have the C compiler installed, just type 'cc' in a
> command prompt. If it says something like 'cc: no input files' then you
> have a standard C compiler installed. ditto typing 'c++'
 ...or try 'gcc' (someone may have already told you to try this) 
You can get gcc for just about every variety of computer going, look
up: www.gnu.org.

> 
> > 2. Does anybody know of any vacancies for Delphi/C++
> > programmers/PC technicians?
> Theres always low paying jobs for windows 'programmers' in delphi or vb,
> it seems to tbe the predominant job on offer around here, you just arent
> looking very hard i guess.

 Try the top shark: www.reed.co.uk, and remember to suss out your
'recruiting pimps' (as my brother who was in the trade called his
colleagues, it was a big _joke_ among them). You want one that apart
from being a commission driven fiend knows their stuff as well, don't
get fobbed off by some jelly head looking for a quick buck - if the
job is not right for you say no, never mind the cash, being unhappy
with no career progression is worse.

 It is a sad fact that Wales is in general a low pay zone, the worst
offenders seem to be small tin-pot companies too small to outsource to
India (current cost cutting craze). AVOID! AVOID! AVOID! The carrots
they lure you with are vapourware. Sorry if is seem a bit bitter but
been there, done that. Be nice but don't take any B.S. as you will get
taken advantage of.
 Caveat: A small company can be a good place to change career
direction to upgrade your CV, just don't stay there too long, the
devil you don't know, does not know you...

 On a side note one guy who came over from India has a _lower_
standard of living (i.e. now the same at the most of us) here; no maid
or cook and our crazy high prices for stuff. He is good at what he
does, very good and a nice guy. 

 NB: India has lots more CMM level 5 shops (big on process) over there
than here, the average for western Europe is CMM L3 (just about) I
think. Time to be 'value added' people! I don't think we can continue
to compete in the same market, all we have got going for us is the
time zone difference with respect to the USA. Its hard to do open
source when you can't afford net' access, never mind feeding your
kids.

<GRANNY SUCKING EGGS MODE>

 Programming as a career is a whole lot more than just coding, boy do
I know that! Here are some of my off the cuff **very random**
ramblings:

 - Presentation. Wear a good suit to the interview (get something from
Howells at the very least), even if the crew looks like the cast of
Red Dwarf (dress down after you get the post, unless you want to stand
out...) intimidation is better than under-dressing and at least if
they know you _have_ a suit you might get invited to the Xmas
(drinking) party, wear your sick proof Burtons suit to that, unless
they are a very genteel or squishy middle managers on the pose.

 - Teamwork. Not in the fake phone-farm (tele-sales) sense
'teamworking' (Bleugh!), there is too much of that around already.
Show you can work with people, get input, bring focus and get a
consensus. Total people skills this one, so don't give off the aroma
of solo-geek. Avoid 'blame-storming' when things go wrong, just sort
the problem out, share the blame (applies only to sane environments)

 - Buy-in. You could say this is part of teamwork but I think it needs
a bit all on its own. With whatever you do if you get support from
other (reasonable!) people your path will be easier, normal people
like to be informed and willing to contribute as long as their part is
acknowledged, getting support is also a good way of cutting off the
power of the can't-do unconstructive elements who seem to delight in
trashing any idea not their own. These people also never seem to come
up with anything constructive either, so don't whine for your own pet
code layout (really bad move, social wise), process, version control
or makesystem, give solid reasons (not a rfc or url, use your own
words) and build support. Buy-in lessens any idea that you may be a
direct threat. People will like you for considering their opinion.
 An idea is every time you think of complaining over something duff,
try to think "How would I fix this? Who would I have to influence for
this to happen?" (excludes RailTrack, NTL etc.)
 On a final note do this for good reasons, not to be manipulative.

 - Cultivate your favourite manager(s), remember they don't want you
as competition so don't gun for them, you will either get fired or a
bad rep, either way you lose. Just get the experience and if you want
to go that way - save it for you next post. If an organization allows
such manager culling are you sure you want to be there?

 - Identify and 'mushroom mode' any idea sucking vampire peers or
managers. Keep your enemies close and 'traceroute' their chatter
networks with small titbits of deniable half truths. Never let them
know they have been sussed.

 - Pride in what you do. Never mind that you may have to follow code
style guides and certain procedures that make you brain melt; do a
good job, be professional, open and helpful in attitude. Its either
that or a life of sleazing up the greasy pole. Choose.

 - Code abusers. About 1 atto-sec after being written you code is now
in maintenance mode, no argument. Code is a communal resource, it is
meant to be legible so make it so, your typical lone star (job
protection voodoo programming junky) or cowboy (clue==FALSE) will make
your life a bug ridden hell, and you will get the blame! 
 Try some remedial action if some bright new star just pooped all over
the codebase. Google the following: XP, Martin Fowler, test first
design. Try to clean up the mess and make it better than it was. Code
checkin reviews (if enforced, else useless) can be of help in damage
limitation but can be cumbersome.
 Don't go directly against the cowboy unless their star is on the
wane, get buy-in for your constructive, sane and good ideas from all
Roy Rogers victims...
 NB: Version control systems are a help but they can also be subverted
by the crazies. Rigid enforced procedures tend to be the resulting
artefact of such abuse and difficult to ease once the source of chaos
has left to wreck some other company.

 - Process. Some may say "Yuk!". Look at methodologies such as XP (try
DUnit for Delphi), RuP (ok, ok, _Framework_ then!) and documentation.
They may be 'agile' like XP or RuP-dx or heavy RuP, waterfall or NASA
grade all buried in paper. Test with a pilot project, people work in
different ways and some seek the silver bullet, keep your critical
thinking cap on and try before you buy.

 - Revision control systems. The freebie CVS (RCS) or the not so free
ClearCase, avoid SourceSafe if you value your code (personal opinion).
Try FreeVCS if you do lots of Delphi with its IDE integration etc.
Subversion seems to have a lot of well-wishers behind it, me included.

 - Procedures. Paperwork and nit picking to some! Your standards,
procedures etc. should be thought of (and implemented) as a lifeline
keeping you from falling off the edge, safe along the development
path, allowing you to venture out and try new things and be creative
but always in the knowledge that you can go back onto safe ground, and
not as an oppressive, restrictive dead hand of authority.

 Also look at _how_ you do your job, do you follow documented
procedures? if yes bung ISO9000 in yer CV. The 'pimps' run keywording
software on your CV, better to give a keyword loaded CV than a paper
copy unless you are on good *personal* terms with the agy. Put any
contribution you made on your CV such as process, procedures,
documentation and project roles, so you don't look like a hired 'code
monkey'. Appear as a fully fleshed all rounder in the non-coding side.

 - The life of documents. As an example your code standard document
should get fewer and fewer updates as it ages but the risk registers
for projects may follow a curve.
  Any document that does not change is either very mature and used as
a standard reference or never looked at and a total waste of space.
Requirements documents often fall into the second category after the
product has shipped, in some cases even before the code has been
written! 

- Man overboard.  All that you do in your professional life should be
guided and not enforced; you should be in an environment where you are
asked to do things, not told. Bail if the evil dudes outnumber or have
more authority than the norms.

 - The journey. You should encourage creativity, allow adaptation and
allow _others_ to take the ride with you. Educate the cowboys (be
subtle; fragile ego alert!) if possible else sideline them, cruel but
kinder in the long term.

 - Assumptions and anecdotal evidence. Remember that I was not nice
about SourceSafe? Well do you believe me? You should not; go looking
for hard evidence and find out for yourself. Case histories are
anecdotal evidence on steroids, well paper at least; Think about _why_
someone is telling you something, the baloney detector should be set
to max. 

 - Flexibility. Also be aware that you may be following a well worn
path; your upbringing and cultural bias are factors so be aware of
what you choose and why e.g. Linux convert 'Bob' only uses Debian
(good choice anyway) and would rather chew his leg off than use
QTLibs... *baloney alert* (Start Trek red alert sound) I'm setting up
a 'straw man' here! Its so easy isn't it? going down that path...

 - If you want to replace something go looking for who implemented or
bought the thing in the first place, test the water. If they react
badly then either drop it or go elsewhere but beware it [will|could]
cause a whole lotta trouble! Its better if the originator thinks its
their idea to 'upgrade' in the first place. Big can of worms in any
case.

 - Woodcarvers Guild. Despite its scientific underpinnings creating
software is a craft, a trade. As an ex-hardware engineer I can predict
within a given tolerance (at a given temperature) when my circuit will
die if I crank up the voltage, no such luck with software which is
allowed a higher level of creativity and abstraction at the expense of
engineering proof (think of Psychology Vs. neuroscience). The viper
architecture (remember that?) had a good stab at reaching the heady
heights of provability but well, erm, umm...

 - Books. As well as core programming interests scout around for
interesting stuff such as 'the pragmatic programmer' (AH & DT)  'code
complete' (S. McConnell) 'Refactoring' (M. Fowler, no not the bloke
off Eastenders) 'The Deadline' (De Marco) 'Mythical man month' (Mr. F.
Brooks) 

 - Up to speed. There is so much software out there, even getting a
basic awareness of all the common tools takes up some considerable
time if you are not using them at home or work, never mind the
languages, new versions of stuff. Family time can suffer if you geek
out satisfying your curiosity (well mine) of SQL or somesuch. Where
will you be tomorrow? solo again or giving up the code and clambering
into a safe nitch to feed your family, maybe still on the road
chugging out code?


 Ok, so down to brass tacks:

 - promote yourself.
 - get keywords on that CV.
 - show depth and range of experience.
 - show responsibility gained and kept.
 - show teamworking and ability to cope with solo activities.
 - Show you are doing continous learning: tools, software and 2nd
level activities (process, ISO9K, CMM, documentation, anything that is
non-code and adds to your perceived value to an employer)
 - Professional standards. Describe what makes you stand out.
 -  Some people join societies to boost their profile, network or to
say "Hay! I'm a professional now!" it can open doors, but don't rest
on your laurels.

 - Don't let any yahoo going for the same post diss you in the waiting
room - I had one guy 100% he was going to get the post and looked down
on me, rubbished what I had done. He didn't get the post, I did.

 This all sound aggressive and gung-ho? You gotta pitch the right
message to the agency, I know this sounds like marketing speak but,
darn dang doodle (Ned Flanders mode) it is! Some on the list may
complain about this but you are not selling to them, your targets are
people with a different outlook, sometime even I forget that important
piece of info.

 Take a good hard look at your CV, maybe choose a local(?) agency and
get them to review it, if they reject it be nice as pie, act puzzled,
curious, and enquire what is deficient (note my softly-softly
wording). Its better if you can have a good old natter before you
submit your CV, they will be more comfortable in answering your
questions safe in the knowlage that you are not a creep or about to go
postal (nearly said pastal) if they crit your submisssion.

</GRANNY SUCKING EGGS MODE>

Regards,
Gareth.

-- 

 "Be very, very careful what you put into that head, because you will
never, ever get it out." 
  - Thomas Cardinal Wolsey (1471-1530)

 ** DISCLAIMER **
   These are my thoughts but please note their validity may phase in
and out of reality with the obsever.




More information about the Swlug mailing list