- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
Wow, never realised the cult of the leader was so prevalent in here. If the leader says you are wrong it's because you are wrong!
I've worked under bosses who respected you putting in the work to change things that needed changing, and I've worked under bosses who would actively revert my bugfixes because they were in his code which I should never be touching. Leaving me having to explain to the customer (on more than one occasion) why the bug I said was fixed and demonstrated being fixed is now broken again.
Before you ask, if the changes to "his code" caused any bugs, he certainly didn't tell me about them. He refused to say any more than "you shouldn't be touching that code".
Admin
"Wow, never realised the cult of the leader was so prevalent in here. If the leader says you are wrong it's because you are wrong!"
What cult? This is how every social order in history has functioned.
If you truly believe you're superior in some way to the alpha of the pack, you challenge him. Sometimes this takes the form of preparing a convincing argument that your idea is worthwhile, other times it means trying to tear his throat out with razor-sharp incisors.
If you succeed, your prestige increases. If you fail, you either accept your subservient role or go find another pack to be a part of.
Admin
However, this dude forgot that our app server doesn't have Spring... or Hibernate ... or anything like that, as it still runs J2EE 1.4. The implications of setting up the QA environment were enormous. The dev was laid off (the first credit crunch victim) and nobody was able to even compile his stuff.
I think this is the only time I've seen a manager discard an entire app and ask us to rebuild it from scratch.
Admin
When did I say the world was unfair? In fact, as I mentioned earlier, the whole fiasco netted me a promotion (in another department) and a raise.
I also never mentioned anything about requesting things politely - in fact I said I did the clean-up-the-code-without-asking thing, and that's precisely what pissed off my manager. In other words, I took responsibility for the quality of the code I was working on, which is what you implied I needed to do, and that's what caused the problem.
Shut up now, mmk?
Do you work where I work? That sounds exactly like the manager I've been talking about. The code I cleaned up last was code he originally wrote, and those words are almost exactly what he said to me (never mind that I was supposed to be working with that code).
Unfortunately since the latter option is a crime, and the former option rarely works on the type of leader we've been talking about, we're left being unable to actually improve the codebase we're assigned to.
Admin
When AI goes bad, you don't get the terminator, you get this crap
Admin
Is an XML doc a simple string? Under all but the most primitive circumstances, no.
Is a SQL query a simple string? That way of thinking leads to injection attack.
Is a date a simple string? Is an email address a simple string? Etc etc.
I realise you're not proposing that these and other examples should be universally regarded as "simple strings." I just feel that your argument depends very much on (other people's) assumption that they can or should be. At some stage a language designer has to choose a bridge between primitive or built-in types and a better abstraction of real-world types. I'm not convinced that "string" is it.
And, note, "built-in" does not necessarily mean "first-class." Except in BASIC (see commenter above), where everything is primitive, nothing can be abstracted, and therefore everything is "built-in." Which would be kind of like buying a first-class ticket for a ride in a dung cart, I suppose.
No, I think you were penning a particularly inept flame. This is hardly a rebuttal to that contention. Victor was presumably using a reasonably sophisticated language (I'm guessing VB here, and I'm not joking) to reverse-engineer a brain-dead restricted sub-set of the same thing, without the libraries. Stroustrup used an unsophisticated language (and, sigh, I like C) to implement a considerably more powerful superset -- C++. The two situations are entirely orthogonal. Contemplation of either might remind me of the Schleswig-Holstein question, but that doesn't mean that ipso facto anything I follow up with is going to be any more relevant or sensible.Once again, your example had nothing to do with "first-class" strings. Your example concerns the "built-in" string type. My counter example is Ruby: class String is an object of class Class, which ... er ... makes it "first class," in a rather more meaningful way than "able to prat around with naked literals." Scala might be an even clearer counter example.
Java, on the other hand, has "special support for the string concatenation operator." Golly.
Ready availability of a linguistic truss does not a "first class" object make.
Now, what C++ did provide, in contrast to Victor, was the templating mechanism, which you imply (and I know you're doing so merely for rhetorical purposes) is solely used at the individual user level. No it's not. Actually, it's used to implement "strings" at a library level, as you well know. You are presumably also aware that the STL -- strings, warts<T> and all -- is part of the language. As in, it's part of the standard.
Tragically, we are still unable to express the astonishingly useful construct
in C++. On the other hand, there are startlingly few languages in which one can meaningfully express the equally elegant Operators are a bitch, aren't they?I suggest that your basic premise here tends towards the low-wattage.
Admin
(It was chicken-farming. Chicken Farming, I tell you!)
I'm allergic to Rhode Island Reds.
Admin
Admin
While I agree with you wholeheartedly, I just have to nitpick something. The lacking construct you provide as an example can be trivially obtained like so:
Technically this is more verbose, but it is not any less meaningful than your example, nor would anyone consider it more difficult to use in any meaningful way.
Admin
I'm thinking of creating a similar "expert system," but instead of being a "general purpose expert system" (i.e. a general purpose programming language), it's going to be made for a SPECIFIC purpose, with KNOWN requirements. It's a side-effect: I want to create a platform to execute D&D 3.5 campaigns on, but the actual specification of a D&D 3.5 campaign is too flexible.
Sounds like Victor isn't going "we need to do X, so we'll write something to interpret things in this range of tasks;" but rather saying, "I find X boring and don't want to know about it, so let's just write a new programming language, maybe call it perl, and tell them to write their own program."
Admin
[quote user="Heron"][quote user="sumoman"]Of course you would team up with Rob; so you both could carry on whining about the world being so unfair. Instead of requesting things politely, you better demand responsibility for your domain. That would keep you accountable for events, but you would also not be treated that bad any longer.[/quote]
Personally I think we are being trolled by a 17 year old girl in a gas mask.
Admin
Better yet Give them Access and then pay me to come in and clean up the mess!
Admin
[quote user="db"][quote user="Heron"][quote user="sumoman"]Of course you would team up with Rob; so you both could carry on whining about the world being so unfair. Instead of requesting things politely, you better demand responsibility for your domain. That would keep you accountable for events, but you would also not be treated that bad any longer.[/quote]
Personally I think we are being trolled by a 17 year old girl in a gas mask.
[/quote] Essentially correct. But you also have to picture the strap-on.
Admin
The cult where you believe the leaders bullshit. There were a number of comments to the effect that if a programmer does something and their manager tells them they're wrong, clearly that manager is correct. This is cult behavior.
As for tearing out your managers throat with razor sharp incisors, I think you'll find that most companies don't operate a dead mans shoes policy.
Used to work, passed tense. Glad it's passed, still tense.
It may have been the same place, it's a company that has appeared on The Daily WTF, and who's CEO responded to the post.
Admin
(Eek!)
Admin
I can't believe how many people are out there capable of creating an immensly complex/retarded system to do a simple task.
I also can't believe how many people out there lack common sense when developing software. The "there has to be an easier way"-bell is simply broken in a lot of people.
Admin
Ah, then it wasn't the same place. Probably a good thing.
I am led to believe that one of the reasons my future full-time employer (amazon.com, I start in May after graduation) decided to hire me over some other candidates is that in the design exercises in the interviews, I opted for staying as simple as possible, only increasing the complexity of the design as the interviewer added requirements. I'm glad I'll be working for an employer which values such things.
Incidentally, I hate the "ClassFactory" mentality of design with a passion.
Admin
Regarding the C++ flame war:
Was it pointed out that if your intention is to concatenate string literals (perhaps because it is too long to fit into a single line), you can't use + operator, but even in C you can just let the compiler do the concatenation:
const char *p= "On first line\n" "On second line";
Admin
I'm thinking about Final Fantasy XII, where you could configure party members with 'gambits'
You have a list of conditions, and actions. The first true condition with a valid action causes the action to be executed.
copy-pasta from an example at http://www.ffxii.com/gambit-system
1 Party Member [KO'd] Cast Life 2 Party Member [HP less than 30%] Cast Cura 3 Party Member [Darkness] Use Eye Drops 4 Party Member [Slow] Cast Esuna 5 Party Member [Poison] Use Antidote 6 Yourself Cast Protect 7 Yourself Cast Haste 8 Yourself [MP less than 10%] Use Ether 9 Undead Enemy Use Phoenix Down 10 Flying Enemy Cast Gravity 11 Enemy [Weak vs. Fire] Cast Fira 12 Leader's Enemy Attack
I personally loved it, and wish it was more complex... but I'm sure many, many players went "WTF?!"
Admin
Bruce sounds like an Accenture type. Odds are, his system cost a fortune, was incredibly cumbersome to use, and was only a win from management's point of view. The user's probably hated it. And he was gone well before they had much chance to really look into it, at which point a new consulting team that cost even more was sent to suggest more work they could do to improve the system.
As a code monkey consultant who works for a living building systems he has to stick around and support, I despise these people.
Admin
Victor was trying to create his own custom "off-the-shelf" expert system.