How important is architecture to C developers?

B

Bill Reid

Hey, I feel the same way, but that's the nature of humans...
Seriously broken metaphor.  To bring it into line so you're comparing
apples to apples we should be talking about sandwich designers, not
waiters.  

I was talking about employees given a job to do, but failing
to follow the clear-cut rules of the job...somebody "designed"
the sandwich for you, but you are refusing to make it...
I wasn't hired to slap out the same crap over and over
again.  
Heh. Ha. Ha ha. BWHAHAHAhaha...

That statement is SOOOooooo clueless on SOOOoooo many levels...

But totally revelatory as to the REAL problem here...the
interesting thing is you wrote it, but you can't comprehend
its significance...
I was hired to write software, which very definitely includes
designing.
No, SOMETIMES it includes "designing", and there are types
of "designing" that SHOULD be clearly be inappropriate.

I mean, WHY are you writing ANYTHING in "C" in the first
place? EVERYBODY knows it sucks, so you should "design"
your own language before you write a lick of application
code...riiiiiight?
Software development is a skilled, technical occupation.  Comparing it
to unskilled "labor" is a bit nutty.
Yes, you are what I like to call a "technical expert"...but
don't kid yourself that's a compliment...
Nope.  Being hired to design sandwiches means I should be doing so
instead of just waiting for someone to tell me exactly what cookie to
cut and in what shape.
So you, in all your employment as a programmer, will always
refuse to use existing libraries, APIs, and functional
specifications?
You seriously have a lot of chips on your shoulder.  

Nah, although I am frustrated by bad software as a user,
especially since I know exactly how the stinky sausage is
made...and more importantly, WHY.

I guess I AM still steamed about the time they replaced
the database at my job, and I was never able to access the
data I needed to do my job again (I had to pull it manually
from paper files). The worst thing was the realization
that the great database software they replaced was made
by a company that went bankrupt, and the absolutely horrible
unusable database software was made by the biggest most
successful database company in the world...and realizing
that in many cases there is NO money to be made in quality
software, so I probably shouldn't expect to see a lot of it
since it would be pointlessly Quioxtic for humans to write it...
You're also
coming off as a bit of a loon.  It's really hard to take you seriously
when you're flailing about like that.

My educational background is psychology, that SHOULD be
all you need to know, even if you completely fail to understand
yourself...
 
N

nroberts

My educational background is psychology, that SHOULD be
all you need to know, even if you completely fail to understand
yourself...

Actually, all I need to know is that you're an obvious troll who seems
to have a lot of problems...deep seated problems to which you might
consider getting professional help for. Since you quite apparently
believe you already know everything, including everything about me (a
person you know next to nothing about), I have serious doubts that you
will get the help you so obviously need. I'm a total layman in
psychology, a very interesting subject, and can already point out
several cognitive biases you're falling headfirst into while remaining
apparently totally ignorant to them. I'm sure blaming some random
nobody on the Internet about all the problems you've had with
developers in the past is also a symptom not indicative of a healthy
mental state.

Get over yourself.
 
K

Kleuskes & Moos

A non-detective would therefore be a perfectly appropriate mechanism
for a fully conforming implementation to introduce extensions to the
language; but it should never appear in code intended to be portable.

<snigger>

Thanks for the excellent explanation and pray forgive me pointing out
a funny error. I'll try #sherlock instead...

-------------------------------------------------------------------------------
_________________________________________
/ Okay ... I'm going home to write the "I \
| HATE RUBIK's CUBE HANDBOOK FOR DEAD CAT |
\ LOVERS" ... /
-----------------------------------------
\
\
___
{~._.~}
( Y )
()~*~()
(_)-(_)
-------------------------------------------------------------------------------
 
J

James Kuyper

<snigger>

Thanks for the excellent explanation and pray forgive me pointing out
a funny error. I'll try #sherlock instead...

I must have selected the wrong item when I authorized the spell-checker
to correct that word. :-}
 
N

nroberts

not if you have many such dynamic objects. The sum of all those static
allocatiosn may exceed the memory used by dynamic allocations. And if
the system is ported to a system with more memory you have to
recalculate all the staic sizes. If the usage pattern changes you have
to...

Actually, there's just the one so I think the static array is now the
better option.

Interestingly, this is very much a difference of the C way vs. C++
way. Since the same number of data items that are always a set
maximum size are fed to this thing there could be no legitimate
temporary condition that would make the buffer grow out of
proportion. However, many of the data items are character arrays,
which of course end up being char* when they get fed in and there is
no determinable maximum length for these except the '\0'. It would of
course be undefined behavior iterating past the end of one's maximum
size, but one very common type of undefined behavior for that is to
just keep going until a 0 is hit by accident or you explode. Assuming
we did not explode, this could extend the buffer size an indeterminate
amount and since this is a long running application...it could be
really quite bad. Since I can't know what will happen I can't use the
growing buffer method.

In C++ though one CAN use the char* construct one normally does not;
in fact they are often disallowed for anything but interaction with C
code and are even then wrapped in things like vector<>. Other
constructs exist that carry the information I would need with them. I
could use array<char,MAXLEN> for example and then stabilizing the
algorithm is quite straight forward. You can do something like this
in C as well, but generally speaking one does not see or use this
pattern and of course WE are not. I'm completely unused to
considering such things beyond the simple policy of using types that
protect me from them.

In fact, if this were in C++ I could author a meta-algorithm that gave
us both what we want, he a static array, and me never having to guess
what the maximum size should be.

Not to generate a C is worse than C++ argument, opinions are abundant
and I have mine, but this is exactly the kind of difference in
approach and thinking I was asking about. There are definite
differences in how one approaches problems in these two very different
languages, which contrary to other opinions here I believe are more
different than the same....sharing only a common history, some syntax
and an obsession on C++'s part with backward compatibility, which
causes as many problems as it solves imho.

Thanks guys. It's been interesting, in some cases whacky, and
informative. I obviously need to settle down a bit and get down with
the C way before trying to second guess things.
 
B

Ben Bacarisse

nroberts said:
Actually, there's just the one so I think the static array is now the
better option.

Interestingly, this is very much a difference of the C way vs. C++
way. Since the same number of data items that are always a set
maximum size are fed to this thing there could be no legitimate
temporary condition that would make the buffer grow out of
proportion. However, many of the data items are character arrays,
which of course end up being char* when they get fed in and there is
no determinable maximum length for these except the '\0'. It would of
course be undefined behavior iterating past the end of one's maximum
size, but one very common type of undefined behavior for that is to
just keep going until a 0 is hit by accident or you explode. Assuming
we did not explode, this could extend the buffer size an indeterminate
amount and since this is a long running application...it could be
really quite bad. Since I can't know what will happen I can't use the
growing buffer method.

I don't follow what you are getting at here. If you can't rely on the
data having nulls in the right places, both a static and a dynamic
allocation scheme are going run into trouble (except for deliberately
contrived examples). If the data is properly terminated, then both
methods will be equally safe.

<snip>
 
N

nroberts

I don't follow what you are getting at here.  If you can't rely on the
data having nulls in the right places, both a static and a dynamic
allocation scheme are going run into trouble (except for deliberately
contrived examples).  If the data is properly terminated, then both
methods will be equally safe.

The difference is that the dynamic scheme would respond to an
extremely long string by allocating space to be able to hold it while
the static version is going to check against maximum bound and reject
it.
 
B

Ben Bacarisse

nroberts said:
The difference is that the dynamic scheme would respond to an
extremely long string by allocating space to be able to hold it while
the static version is going to check against maximum bound and reject
it.

Not, I thought, the dynamic scheme that was proposed. I though that was
explicitly covered and it was imposing such a limit that made you
conclude the two schemes were very similar in the first place. It
seemed like you were making a new argument for why the dynamic scheme
was not workable.
 
B

Bill Reid

and no suggestions for improvement are acceptable? Can we jangle our
chains?
Of course you can make suggestions for "improvement", but depending
on the situation you might be doing so at your own risk...it's always
best to wait to be ASKED for suggestions and even then you should
tread carefully and always be polite, fact-based, respectful, and
SINCERE...

Note carefully the OP at one point just decided to start
working on his "improvements" without authorization, and
has described a discussion on the "improvements" as "an ARGUMENT
for an hour". It is this self-described behavior that caused
me to label him as a classic "bad employee", since ARGUING
with your co-workers (your TEAM MEMBERS, INCLUDING your boss),
and working on parts of TEAM project without COMMUNICATING with
your TEAM MEMBERS that you were doing so, means you are by no
useful definition a "team player" at all...

Yes. I'm talking about the generally accepted definition
of a team player, EVEN THOUGH I PERSONALLY DON'T AGREE WITH IT.

It's just reality, get used to it...or maybe you haven't
had to, which is great for you, maybe not so great for the
rest of the planet and particularly those within shrapnel
range of the bad behavior that may result from this type
of "freedom"...
If I think my boss or team mate is wrong I'll tell him so.

I've learned the hard way to wait until asked.
If my
boss says "tough that's the way its going to be" then I get on with
it.  

Look, I had a boss once, he came to me a few times and
just about literally asked me if he was "blowing it" on
certain issues, and I very gently informed him that indeed
yes, he was screwing crap up. He modified his positions
and behaviors and all was hunky-dory and the department
began to run much better...EXCEPT...

He had this one pet "project" (he had a few, actually)
where he was bound and determined to do things "his way".
He never asked me for input per se, and this "project"
didn't really impact me one way or the other so I didn't
particularly care, but one time he mentioned it, and
instead of saying, like Homer Simpson's first rule of
work, "GREAT idea boss!", I said it was not a good idea
and was a waste of time and pointless and presented
him with a few pertinent facts and figures supporting
my position.

Well, since he didn't ask for my opinion he certainly
wasn't going to take it, and he barreled ahead on this
"project", and the upshot was he got FIRED for it.
I saw him a few months later on the street and he
literally would not respond to me or look at me
when I called him, and I'm sure it was because he
blamed me for his involuntary termination because
I wasn't "loyal" and "supportive" to his, well, idiotic
and juvenile "idea". But aside from that one brief
conversation with him about it, I never mentioned it
to another human soul on this planet, and had NOTHING
to do with its failure (like I say, since it didn't
really affect me I didn't care much one way or the
other, and also I just don't tend to fight with
or undermine my bosses that much per se about anything
in the first place).

So again, you may disagree, but I think that great
genius Homer Simpson hit the nail on the head when
he developed his first rule of getting along at work:
"No matter what the boss says, just say 'GREAT idea,
boss!'"
All improvements in quality ultimately come from someone's
dissatisfaction with teh way thinsg are.
Hmmmm, well, not necessarily, but maybe sort of...define
"someone"...
good grief. Where do you work?! North Korea?
Worse, much worse, and you may or may not be suprised, but
you shouldn't be...

I don't know much 'bout birfin' software and stuff, but I do
know people, and I know that the biggest rule breakers turn
out to be the biggest (and craziest!) rule makers when they
get the chance...the overly dictatorial boss is just another
version of bad employee just like the OP in this thread...
 
J

Jorgen Grahn

.
I was recently hired into a new position. I knew there would be some
C development but I was lead to believe that this would be *legacy*
development and that I was being hired as a C++ developer. Turns out
that this was not at all the case and now I'm rather stuck.
Unfortunately I'm having a lot of trouble adapting to the situation
and I'm not sure if this is because I lack understanding of the C
"way", as I have not used it in 10 years, or if I'm just in a
generally troubling situation as it seems to me. ....

The goal I have here is to find out if this is simply the C way that I
need to learn,

It's not. Go read the Linux kernel source code to see some decent (if
underdocumented) C code.

But perhaps C projects, especially ones with a long history, are more
likely to have no architecture. And it's IMHO harder to improve bad C
code than bad C++ code. Especially if you cannot use C99.

/Jorgen
 
B

Bill Reid

That could be the way that many people use the term; but being a "team
player" in that sense is not something I aspire to, nor is it something
I value in my subordinates.
Well, yeah, it sux, but it tends to be human nature, especially
considering the alternative...
I will not accept any orders that call for me to do something which is
(in order of decreasing importance) immoral, illegal, against company
policy, or outside the domain of authority of the person giving the
order.

Interesting that you place "immoral" above "illegal", especially
considering from a legal standpoint the only one of the above orders
you can't be fired for not obeying are orders to commit illegal
or unlawful acts (US law considers that to be "unlawful termination"
actionable in civil court for damages).

As as a practical matter, in my experience, employees are
given ALL of those types of orders all the time, and if they
don't follow them, they're out, and if they do, they tend
to get promoted...
However, if given an order that violates none of those
restrictions, I will obey that order. If I don't like doing the things
I'm being ordered to do, I'll let my boss know, and if he's not inclined
to change the situation, I'll quit (preferably not until after locating
a new job).

How do you truthfully answer the question that is almost ALWAYS
is asked by your potential new boss: "Why are you leaving your
current position?"

"My boss gave me an order that I considered to be 'immoral', and
insisted I follow it, so I'm quitting."

Love to see the look on your potential new boss's face when
you TRUTHFULLY tell them that...or do you lie in job interviews?
However, I won't refuse to obey legitimate orders until
after I've quit, when they cease to be binding on me.
Since you've already cast a pretty narrow net as to what
constitutes a 'legitimate' order (again, LEGALLY, you can
only refuse to commit unlawful or illegal acts in the US),
I'd say it's difficult as a practical matter to get you to
do things in the first place...
If given an order that violates none of those constraints, but is, in my
best judgment, a bad idea, I will not obey it until after informing my
boss of the reasons why I think it's a bad idea. I'm a technical
employee being paid for my expertise; I'm not earning my pay if I fail
to use that expertise to evaluate the reasonableness of the orders I'm
given.
Well, sure, particularly on purely technical issues...
If my boss insists on going ahead with the bad idea, I try to make sure
I've got the orders in writing, if possible, to document the fact that
the bad idea was not my decision. Of course, asking one's boss to
provide an order in writing can be politically difficult.

Wow, the first thing you've written that would indicate that you've
actually ever worked an actual job for a single day...

Trying to get "dirt" on your boss is generally a fool's errand...it's
not that hard to do, just it rarely will cause any actual change, and
even then, will almost always blow back on you...
However, I've
found that asking questions about an order by e-mail can sometimes
elicit usable documentation of the fact that it was his decision,
without having to explicitly ask for such documentation.

I want my subordinates to act in precisely that same fashion towards me,
and most of them have done so.

You want them to gather incriminating evidence to be used
against you in a backbiting campaign? Cool...
 
B

Bill Reid

Actually, all I need to know is that you're an obvious troll who seems
to have a lot of problems...deep seated problems to which you might
consider getting professional help for.  Since you quite apparently
believe you already know everything, including everything about me (a
person you know next to nothing about), I have serious doubts that you
will get the help you so obviously need.  I'm a total layman in
psychology, a very interesting subject, and can already point out
several cognitive biases you're falling headfirst into while remaining
apparently totally ignorant to them.  I'm sure blaming some random
nobody on the Internet about all the problems you've had with
developers in the past is also a symptom not indicative of a healthy
mental state.

Get over yourself.

Why do I get the feeling you have previously accused your boss
of being mentally ill if they made the mistake of giving you a
verbal/written warning about your poor job performance? I wonder
what you would do if actually s-canned?
 
N

Nick Keighley

On Oct 3, 12:40 am, Nick Keighley <[email protected]>




Of course you can make suggestions for "improvement", but depending
on the situation you might be doing so at your own risk...it's always
best to wait to be ASKED for suggestions and even then you should
tread carefully and always be polite, fact-based, respectful, and
SINCERE...

I volunteer suggestions. I actually think that's what I'm paid for. We
aren't picking cotton we're designing software.

Note carefully the OP at one point just decided to start
working on his "improvements" without authorization, and
has described a discussion on the "improvements" as "an ARGUMENT
for an hour".  It is this self-described behavior that caused
me to label him as a classic "bad employee", since ARGUING
with your co-workers (your TEAM MEMBERS, INCLUDING your boss),
and working on parts of TEAM project without COMMUNICATING with
your TEAM MEMBERS that you were doing so,

["team player" stuff dealt with later]

this may be a matter of degree. Discussing the best way to implemtn
something seems legitimate. Pre-emptive re-design of system components
not such a good idea. I think the idea of a thinish wrapper around an
awkward to use component sounds like a *good* idea. Reafactor
Mercilessly!

Yes.  I'm talking about the generally accepted definition
of a team player, EVEN THOUGH I PERSONALLY DON'T AGREE WITH IT.

well it was news to me. Perhaps you're right and the term "team
player" wooshed right over my head. But then I've rarely heard it used
except sarcastically. And by PHMs and HR types.

I've learned the hard way to wait until asked.


Look, I had a boss once, he came to me a few times and
just about literally asked me if he was "blowing it" on
certain issues, and I very gently informed him that indeed
yes, he was screwing crap up.  He modified his positions
and behaviors and all was hunky-dory and the department
began to run much better...EXCEPT...

He had this one pet "project" (he had a few, actually)
where he was bound and determined to do things "his way".
He never asked me for input per se, and this "project"
didn't really impact me one way or the other so I didn't
particularly care, but one time he mentioned it, and
instead of saying, like Homer Simpson's first rule of
work, "GREAT idea boss!", I said it was not a good idea
and was a waste of time and pointless and presented
him with a few pertinent facts and figures supporting
my position.

Well, since he didn't ask for my opinion he certainly
wasn't going to take it, and he barreled ahead on this
"project", and the upshot was he got FIRED for it.

teach him to listen to technical advice

All improvements in quality ultimately come from someone's
dissatisfaction with [the] way thinsg are.

Hmmmm, well, not necessarily, but maybe sort of...define
"someone"...

anyone.

Look at what the Japanese do. Everyone is rsponsible for quality.
Though they'd typically agree with your definition of "Team player"
Worse, much worse, and you may or may not be suprised, but
you shouldn't be...

I'm guessing the US. The UK ain't quite as bad I believe.

<snip>
 
J

jameskuyper

Bill said:
Interesting that you place "immoral" above "illegal",

Why not? I consider myself obligated to follow the law, only because
(and therefore, only insofar as) my moral sense tells me that it's the
right thing to do. It's not possible, in the context of an internally
consistent moral system, to incur a morally binding obligation to
commit an immoral act.

As a practical matter, disobeying a legal requirement that I commit an
immoral act could be dangerous, and it is permissible to take that
into consideration, but there are limits to how far I can use that
excuse to justify obedience to such a law.
... especially
considering from a legal standpoint the only one of the above orders
you can't be fired for not obeying are orders to commit illegal
or unlawful acts (US law considers that to be "unlawful termination"
actionable in civil court for damages).

The legal standpoint doesn't matter to me; it can't override my moral
obligations.

Company policy is a different matter - I signed papers when I was
hired agreeing to obey company policy as a condition of my continued
employment. Both my own moral system and the legal system are in
agreement that by signing that document and accepting employment, I've
incurred an moral/legal (respectively) obligation to actually act in
accordance with that promise (except insofar as it conflicts with
other moral/legal (respectively) obligations).

Similarly, though I don't remember it being formally written down
anywhere, when I was hired I accepted a implied obligation to obey my
duly appointed superiors within the company, but only within their
domain of authority. That's implicit in the definition of "domain of
authority". I'd be in big trouble with the people who did have
authority over me if I wasted my time performing tasks that someone
else asked me to do, who didn't have the authority to ask me to do
those things.

I've even, on a couple of occasions, received explicit instructions:
"Do not start work on anything this specific person tells you to do,
unless and until I've confirmed that you should actually do it". I've
issued such orders, too. "This specific person" was usually a
representative of our client, who had a tendency to ask us to do work
that went beyond what our contract with the client called for. We're
willing to do the extra work - for extra pay - but such negotiations
occur at a higher level than mine.
As as a practical matter, in my experience, employees are
given ALL of those types of orders all the time, and if they
don't follow them, they're out, and if they do, they tend
to get promoted...

Wow - I pity you for having had to work in such an environment. I
haven't, and if I found myself in such an environment, I'd quit long
before they got around to firing me.

I've seldom received orders of any of those types. On the few
occasions when I did, I refused to obey them, and was not fired.
Whether I missed any promotions as a result, I have no idea. However,
if the idea was to discourage me from repeating the "offense", you'd
think that they would have made a point of making sure that I knew why
I'd missed out.

....
How do you truthfully answer the question that is almost ALWAYS
is asked by your potential new boss: "Why are you leaving your
current position?"

"My boss gave me an order that I considered to be 'immoral', and
insisted I follow it, so I'm quitting."

Love to see the look on your potential new boss's face when
you TRUTHFULLY tell them that...or do you lie in job interviews?

I would tell the truth. This would serve a useful screening purpose.
Any employer who'd hold such a thing against me is an employer I would
not want to be employed by.
Since you've already cast a pretty narrow net as to what
constitutes a 'legitimate' order (again, LEGALLY, you can
only refuse to commit unlawful or illegal acts in the US),
I'd say it's difficult as a practical matter to get you to
do things in the first place...

Believe it or not, there's lots and lots of moral, legal activities
consistent with company policy that people who have the authority to
do so can actually order me to do. In fact, there's far more such
activities than I have time to do, which has become a bit of a
problem.
Wow, the first thing you've written that would indicate that you've
actually ever worked an actual job for a single day...

Trying to get "dirt" on your boss is generally a fool's errand...it's
not that hard to do, just it rarely will cause any actual change, and
even then, will almost always blow back on you...

It's not dirt - it's not intended for use as blackmail. It's
protection against the possibility that I might be held to blame for
the bad consequences of the decision. I've only needed such protection
twice, and the second time I made sure that I had it. One of my bosses
made a claim in a open meeting that I'd made a particular mistake. I
told him that he had instructed me to make that mistake, over my
objections. He asked me if I was sure, and I said yes, I had saved e-
mail containing those instructions. He apologized immediately, and
never gave any indication that he held it against me, and I know him
well enough that I would not expect him to do so. Of course, he might
have retaliated secretly; but there's a limit to the usefulness of
trying to intimidate someone by retaliating so secretly that he's
unaware of who's doing it, or why.
You want them to gather incriminating evidence to be used
against you in a backbiting campaign? Cool...

"act in precisely that same fashion" referred to the entire
explanation, not just the last item. However, yes, I do want them to
keep copies of my orders, so they can review them and make sure that
they're following them correctly. And, should I forget that I gave
them an order, it can be helpful to me if they're able to point that
out to me. That's why I almost always issue my instructions by e-mail,
not verbally, and that's why I make sure to keep a copy of those
instructions.
 
S

Stephen Sprunk

Well, yeah, it sux, but it tends to be human nature, especially
considering the alternative...

It might be human nature, but it might just be something that _you_ see
either because you're jaded or because you choose to work in
environments where it's unusually common.

Out of all the managers I've had in my career, only one wanted me to be
a yes man, and I resigned as soon as the conflict became obvious. That
division of the company was shut down a couple years later, largely due
to mismanagement and the inability to attract/keep skilled workers.
Interesting that you place "immoral" above "illegal", especially
considering from a legal standpoint the only one of the above orders
you can't be fired for not obeying are orders to commit illegal
or unlawful acts (US law considers that to be "unlawful termination"
actionable in civil court for damages).

You can sue for any sort of termination, and no company wants to see a
case alleging unethical/immoral orders go to trial and have their dirty
laundry aired in public.
As as a practical matter, in my experience, employees are
given ALL of those types of orders all the time,

I cannot recall _any_ instance in my career where I was ordered to do
something illegal, and few where I was ordered to do something unethical
or against company policy. In all of the latter cases, when I pointed
out the problem and suggested an alternative, the person agreed to
modify their order.
and if they don't follow them, they're out, and if they do, they tend
to get promoted...

Considering the number of managers I've seen fired for ethics violations
and my employers' cooperation with police and regulator investigations,
I would dispute that. Heck, we have mandatory training every year on
_how_ to report ethics or regulatory violations anonymously, how to
preserve records for investigation, etc. plus hours of training to
ensure we know what the various policies are so we can recognize
violations if they happen (and avoid them ourselves).
Trying to get "dirt" on your boss is generally a fool's errand...it's
not that hard to do, just it rarely will cause any actual change, and
even then, will almost always blow back on you...

Documenting what you're told to do is not "getting dirt" on someone.
It's covering your ass. Also, for those of us with less than perfect
memories, getting it in writing is a good way to make sure you're doing
your job as expected and there are no surprises during performance reviews.

My current boss almost always gives direction verbally, so afterward I
write up what I heard and email it to him for confirmation. There's a
CYA element there, but mostly I do it so _I_ have a record of what I'm
supposed to be doing at any given time. Otherwise, I sometimes forget
or misremember those conversations--and having a printed task list for
the week on my wall helps keep me from getting sidetracked.
You want them to gather incriminating evidence to be used
against you in a backbiting campaign? Cool...

If they fail to object, they're just as guilty, so what good does that
do them?

And why do you tolerate working in places where you have to worry about
"backbiting campaigns" to the point it interferes with your ability to
do your job?

S
 
S

Stephen Sprunk

Of course you can make suggestions for "improvement", but depending
on the situation you might be doing so at your own risk...it's always
best to wait to be ASKED for suggestions

Why? Everyone I work with is always open to hearing suggestions; if the
suggestions are rejected, it is usually because I didn't understand the
full context of what they were doing.
and even then you should tread carefully and always be polite, fact-
based, respectful, and SINCERE...

I strive to always be polite, fact-based, respectful and sincere. That
you think this means one has to "tread carefully" gives us insight into
your true personality and character.
Note carefully the OP at one point just decided to start
working on his "improvements" without authorization,

That depends on what his assigned tasks were.
I've learned the hard way to wait until asked.

I've learned the hard way that, if I feel the need to wait until asked,
I should start looking for another job.
So again, you may disagree, but I think that great
genius Homer Simpson hit the nail on the head when
he developed his first rule of getting along at work:
"No matter what the boss says, just say 'GREAT idea,
boss!'"

You take career advice from a cartoon?

Considering Homer's boss and Homer's gross incompetence at just about
everything he attempts, that would probably be the best course of action
_for him_. Hopefully, though, your situation is quite different and
therefore a different course of action would be best.
... the biggest rule breakers turn out to be the biggest (and
craziest!) rule makers when they get the chance...

Someone who believes they always know better than everyone else will, if
a subordinate, feel no need to follow an "inferior" manager's rules and,
if a manger, feel no need to listen to their "inferior" subordinates.

I have no desire to work for such a person nor have such a person
working for me.

S
 
I

Ian Collins

Of course you can make suggestions for "improvement", but depending
on the situation you might be doing so at your own risk...it's always
best to wait to be ASKED for suggestions and even then you should
tread carefully and always be polite, fact-based, respectful, and
SINCERE...

I sincerely hope none of my staff ever felt that way. They certainly
never appeared to!
... since ARGUING
with your co-workers (your TEAM MEMBERS, INCLUDING your boss),
...

Why one Earth don't people just say colleagues? Can't they spell it?
 
B

Bill Reid

There are quite a few things that bosses ask you to do that are
prohibited for the boss to ask but not illegal for the employee to
do.  "Sleep with me" is one of them.  

Yes, but that's not prohibited because it is vaguely "immoral"
but constitutes unlawful sexual harrassment in the US. If you
are fired after such an incident, you can sue for unlawful
termination (and companies have paid many $millions for these
types of suits, I would know since I worked for company where
a woman in the department I worked in sued and it cost the
company about $4million total and became a landmark case that
guided employment practices throughout the US for decades
afterwards).
So is "go f*** yourself",
although it may be anatomically impossible.  

Actually, the boss CAN say that legally, though it may
not be wise, and the same is true for the employee.

Funny thing, when I was going through management
training at this company, one of the classes was
how to warn and fire people, and they put on this little
psychodrama for the class where the instructors
acted out the parts of the firing manager and the
fired employee, and towards the end the employee
would scream something basically like the above
and stomp off hysterically.
I also suspect that
refusing job assignments like "crash dummy" or "experimental drug
test subject", or "gardner who mows the mine field" (unless that's
the job you signed up for) would get you compensation for the boss
"creating a hostile workplace" or "sexual harassment" if you refused,
were fired and sued the company.
Actually, those would all be violations of OSHA (Occupational
Safety and Health) regulations and could result in criminal
prosecution of the company...
This assumes, of course, that the boss is stupid enough to admit
why you were fired, rather than giving a vague reason like "lack
of work" or no reason at all.
If the harrassment or hostile work environment can be proven
to a sufficient standard, it generally doesn't matter what the
employer says in their termination paperwork...also good to see
someone admit that it would be "stupid" not to lie, since lies
like that ARE commonplace...
I also suspect that if you are asked by the boss to do things like
falsify company records, even if in a way that isn't illegal, but
violates company policy, you'd be better off refusing if you can
get people above your boss to believe you.

Nah, I've been asked to illegally falsify company records,
completely illegally, several times, and those orders came
from right on top (or at least so I believe, I know they came
from the "director" level for a fact, and I'm sure the VPs
were well aware of it). Generally, this was unlawful or
illegal time card fraud.

One time, a large project I was working on for a government
client ran out of money far short of completing the deliverable, but
they still had plenty of money for management planning activities
for a future project for the same client. So they just told
everybody
on the project to start charging to this management account, and
specifically instructed everybody that if a government auditor
asked what they were working on and who they were, to say nothing
but refer them to the project management, where presumably
the project director would lie her ugly ass off about it.

Funny thing was, I actually supervised about 20 people on
the project at the time, but I was in no way a manager by
title or pay or even a senior-level person, just somebody
they knew could get my portion of the project on track
after they had completely blown it by absurd mismanagement
previously (as soon as they were caught up to even by fraud,
they "demoted" me back to an individual contributor, and
I quit soon thereafter because I was devestated by the 0%
pay cut and people no longer screaming the "f-word" at me
when I gave them verbal/written warnings to increase their
productivity).

But that was nothing compared to this other company
where their only apparent business plan was to rip off
their customers and employees and government by any
means possible. They did a lot of work for clients
that was on a cost-plus basis, and I was ALWAYS ordered
to falsify my time card (long after I had completed
work for the client and had moved on to another project
I would continue to charge to the project while the
project "manager" would lie to the client for months
that they were still working out "quality issues" in
the project, until the client finally snapped and
stopped paying).

But they also ripped off their employees and
the government...they had this system set up in
personnel where when somebody they hired to work
on a project for client had completed the project,
and there was no immediate future project, they
would tell the employee they were firing them
for cause of incompetency, BUT, if they quit
voluntarily, they would place them in their
records as "re-hireable" (I'm not even sure how
this relates to falsifying company records since
it was such a flagrant bunch of double-dealing BS,
but the employee manual clearly stated that the
number one specific thing you could be fired for
was, you guess it, FALSIFYING COMPANY RECORDS).

Of course, most people took the "deal", but a
few didn't, they were "fired" for "cause", went
down to the unemployment office, and guess what?
THE COMPANY CLAIMED THEY DIDN'T FIRE THE EMPLOYEE
AT ALL, THE EMPLOYEE HAD VOLUNTARILY QUIT, as
a clear (and FELONIOUS!!!) falsification of
government records to avoid paying a higher
unemployment tax!!! To the best of my knowledge,
they were NEVER prosecuted for this, which is
why they did this year after year after year to
literally THOUSANDS of employees...

Now, lest you think this was some fly-by-night
organization, this company is something like the
number three company by market capitalization
currently in the NASDAQ, right behind other
tech heavyweights like Apple and Microsoft
(or at least they're in the top ten, I haven't
checked recently).

Sooooo...dunno why we have such differing
work experiences, but there it is...
 
I

Ian Collins

Actually, those would all be violations of OSHA (Occupational
Safety and Health) regulations and could result in criminal
prosecution of the company...

Unlike C (remember that?), what passes as employment legislation is far
form universal.

When an NZ company I worked for was taken over by a (US) corporate, our
personnel lady had to go to corporate HQ for company HR policy training.
She spent a number of the sessions saying to the tutor "that's illegal
in NZ" !
 
B

BGB

I sincerely hope none of my staff ever felt that way. They certainly
never appeared to!

a lot of this sounds like people dealing with some sort of xNTJ types...

IRL, there are lots of different people with lots of different types of
personalities, and something that makes sense with one person may
totally backfire with another (but, sadly, unless one knows the person
some, it is hard to accurately predict their responses).

Why one Earth don't people just say colleagues? Can't they spell it?

col... coll... cologne.
nope, apparently not...

actually, partly it may be that the term "colleagues" is more commonly
associated with things like academic positions (college professors, ...)
and research-scientists.

the term "co-workers" (or team-members, teammates, ...) then is more
typically used for reference to ordinary professions.


now time to: "promote synergy (like a boss)"...
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,764
Messages
2,569,565
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top