Sponsored Content
The Lounge What is on Your Mind? Software engineers, real and otherwise Post 302145999 by bakunin on Friday 16th of November 2007 03:25:09 AM
Old 11-16-2007
Let me tell you a story to emphasize what i have written:

For 2 years i worked in a data-warehouse project for a large bank. I was the systems administrator for a software development platform for ~120 developers: 1 IBM p595 in several LPARs, a DS8000 as storage subsystem and several small systems. Several DB/2 UDB instances. The "software developers" where of course not programming - they used a Meta-Data-Analysis-Tool to feed some other "Object oriented Meta-SQL generator" (or something such, may i have left out some buzzwords here) to finally generate SQL code. Most of the times the were in meetings discussing how they would click on icons if they were ever to find time between the strategy talks, the review meetings and the customer fulfilment presentations.

One day i was asked to do a performance review for one of the database machines (LPAR, 22GB RAM, 5 physical POWER5+-CPUs). It turned out someone had effectively managed to create a "left outer join" of almost the whole database onto itself, fed that into a shell script line for line, manipulated these lines there with some awk and fed that back into the database.

Clever solution, yes? Why use outdated non-OO, non-CRE, no-nothing SQL-statements like "select for update" when a streamlined process of clicking on a icon created that wonderful masterpiece of generator-output? It turned out the generator "thought" it was a really clever solution and on the test dataset with its 10 records it "worked well" - it just had to be cancelled after 36 hours, because shell script loops manipulating 160 millions of records tend to be somewhat slow....

Another day: "developer" (no, not one of the real ones) walks up to me and asks where the command lines size limit is defined in AIX. I point him to /usr/sys/include/limits.h and tell him that it is 4096 characters.

"Developer": "Can you make that bigger?"
Me: "What for?"
"Developer": "my SQL generator has created this statement, but it is 12k characters long and i always get an input line too long' error. You have to optimize the OS to.."
Me: "no."
"Developer": "why not?"
Me: "Because I am not here to make arbitrarily bad design possible."

The DBA and me then worked together and created an analogous code in old-fashioned, very non-streamlined SQL-code in about 300 characters. True, we did that using incomprehensible low-level techniques (like an "editor") instead of modern and reliable methods ("click on an icon"), but somehow we managed to create some readable statement instead of the blather the generator had come up with and our code even ran in about 5% of the time.

bakunin
 

6 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Open source mathematical software for scientists & engineers

I'm look for some opinion on mathematical software from any engineers out there. What is the open source application that --in your opinion(s) -- best meets the same requirements as Mathematica or Maple? I'm running FreeBSD & Linux, btw. (3 Replies)
Discussion started by: Aaron Van
3 Replies

2. UNIX for Dummies Questions & Answers

How many UNIX engineers are necessary?

I was asked to maintain more than 160 UNIX servers which OS are Solaris, linux,susue,,etc by the president. But there is only one UNIX engineer in my section. I am sure I need at least 3 UNIX engineers to maintain more than 160 UNIX servers. What do you think how many engineers I need? (11 Replies)
Discussion started by: nrjhit
11 Replies

3. High Performance Computing

Installation Guide for Solaris Cluster 3.2 Software and Oracle 10g Release 2 Real App

Here are steps for installing the Solaris 10 11/06 OS, Solaris Cluster (formerly Sun Cluster) 3.2 software, QFS 4.5, and Oracle 10gR2 RAC. Also provided are instructions on how to configure QFS and Solaris Volume Manager for use with Oracle 10gR2 RAC. More... (0 Replies)
Discussion started by: Linux Bot
0 Replies

4. Solaris

Lack of Solaris Engineers?

Are more and more companies moving away from Solaris? I am currently helping a company search for a Sr. Solaris Engineer near Philadelphia and it seems as if more candidates are in other UNIX flavors. Is this correct? Where is the best place to search for Solaris Engineers? Thank you for... (2 Replies)
Discussion started by: nickcrocemisi
2 Replies

5. What is on Your Mind?

Lack of Solaris Engineers?

Are more and more companies moving away from Solaris? I am currently helping a company search for a Sr. Solaris Engineer near Philadelphia and it seems as if more candidates are in other UNIX flavors. Is this correct? Where is the best place to search for Solaris Engineers? Thank you for your... (1 Reply)
Discussion started by: nickcrocemisi
1 Replies

6. Advertise with Us

Wanted- Linux Application Engineers

Optiver US LLC is a worldwide market maker and derivatives trading firm with offices in Chicago, Amsterdam and Sydney. Attracting very ambitious, talented and results-oriented individuals to become members of a highly selective trading application engineering team. This position is a primary... (0 Replies)
Discussion started by: Barb S.
0 Replies
WRITE(1)						    BSD General Commands Manual 						  WRITE(1)

NAME
write -- send a message to another user SYNOPSIS
write user [ttyname] DESCRIPTION
write allows you to communicate with other users, by copying lines from your terminal to theirs. When you run the write command, the user you are writing to gets a message of the form: Message from yourname@yourhost on yourtty at hh:mm ... Any further lines you enter will be copied to the specified user's terminal. If the other user wants to reply, they must run write as well. When you are done, type an end-of-file or interrupt character. The other user will see the message 'EOF' indicating that the conversation is over. You can prevent people (other than the super-user) from writing to you with the mesg(1) command. Some commands, for example nroff(1) and pr(1), disallow writing automatically, so that your output isn't overwritten. If the user you want to write to is logged in on more than one terminal, you can specify which terminal to write to by specifying the termi- nal name as the second operand to the write command. Alternatively, you can let write select one of the terminals - it will pick the one with the shortest idle time. This is so that if the user is logged in at work and also dialed up from home, the message will go to the right place. The traditional protocol for writing to someone is that the string '-o', either at the end of a line or on a line by itself, means that it's the other person's turn to talk. The string 'oo' means that the person believes the conversation to be over. SEE ALSO
mesg(1), talk(1), who(1) HISTORY
A write command appeared in Version 6 AT&T UNIX. BSD
June 6, 1993 BSD
All times are GMT -4. The time now is 09:47 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy