The Artima Developer Community
Sponsored Link

Weblogs Forum
Hiring the Rowing-Forward 30%

54 replies on 4 pages. Most recent reply: Jun 13, 2008 7:56 AM by Patrick Band

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 54 replies on 4 pages [ « | 1 2 3 4 | » ]
James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 11:00 AM
Reply to this message Reply
Advertisement
> >It just seems to me if SQL was the ultimate solution that
> resolved everyone's problems
>
> The relational model and SQL are two different things.
> SQL is based on the relational model, but far from
> m faithful to it.

So the 'ultimate solution' is the relational model and not SQL? I'll keep that in mind on my next project.

Alan Keefer

Posts: 29
Nickname: akeefer
Registered: Feb, 2007

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 11:03 AM
Reply to this message Reply
> In other words, you might avoid picking up a bad employee
> or two but you will also lose access to a number of good
> employees. I read an article about Google not too long
> ago talking about how their intensive candidate selection
> process was making it hard for find experienced
> candidates. A lot of the candidates would just say "I
> don't have time for this" and drop out.

That was kind of my point about the best programmers not having to go through resume-screening-hell; job-audition-hell is something they're even less likely to go through.

The suggestion of looking at someone's track record on open source is interesting, but personality matters so much that just looking at their code isn't enough. So there might be some better way to hire out there, but I don't think it's as revolutionary or as much of a competitive advantage as you think. In addition, people who are prominent open-source hackers are already in high demand and get job offers all the time.

One interesting development is something like github that combines open source hacking with social networking; sourceforge just never really managed to do that. By giving the people contributing more of a face and personality, it's possible that more forward-looking employers will start scouring the projects for people that seem to do good work and seem to have reasonable personalities.

Erik Engbrecht

Posts: 210
Nickname: eengbrec
Registered: Apr, 2006

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 12:47 PM
Reply to this message Reply
> > >It just seems to me if SQL was the ultimate solution
> that
> > resolved everyone's problems
> >
> > The relational model and SQL are two different things.
> > SQL is based on the relational model, but far from
> > m faithful to it.
>
> So the 'ultimate solution' is the relational model and not
> SQL? I'll keep that in mind on my next project.

No, unless your project is implementing the relational model in a robust scalable manner.

My only point was that a lot of people tout the benefits of the relational model, people interpret that as SQL, and then they proceed to talk past one another.

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 2:24 PM
Reply to this message Reply
> No, unless your project is implementing the relational
> model in a robust scalable manner.
>
> My only point was that a lot of people tout the benefits
> of the relational model, people interpret that as SQL, and
> then they proceed to talk past one another.

my response was more snippy that it should rightfully be but I'm honestly not sure of the distinction here. As a consumer of the data model, I'm using SQL and only SQL to retrieve that data. Is there some other approach I should use? What am I missing?

Just to be clear, I'm a huge fan of the relational model. As best I know how, I take full advantage of the facilities available to me through the various RDBMS' that I interact with. If I can simplify my code with a better table structure or some fancy queries, I will. I'm not a fan of ORM and I see some value in an OODBMS but not as a replacement for an RDBMS based on the evidence I have seen.

What I really don't get exactly is who Mr. Young is railing against exactly. I would wager that the number of "IT people" using XML or OODBMS as a replacement of an RDBMS are not significant. The common use of XML is for data transmission, configuration and code (unfortunate but relationally specified code is worse.) Should my business partners, vendors, and customers send me a copy of their RDBMS every 5 minutes? Should we just open up our databases to the world (ignoring that that is illegal in my current environment)? Sometimes the database is a decent place for configuration, other times it's not.

At the end of the day, no matter how rich your datamodel is, it's data. It doesn't do anything. Something else needs to take that data and use it.

Cameron Purdy

Posts: 186
Nickname: cpurdy
Registered: Dec, 2004

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 2:48 PM
Reply to this message Reply
> My only point was that a lot of people tout the benefits
> of the relational model, people interpret that as SQL, and
> then they proceed to talk past one another.

Well, without a "preferred embodiment", it's going to be ridiculously hard for anyone to debate against the relational model, since until it's actually implemented, it obviously shows no signs of weakness whatsoever. Here's an example conversation (and is not intended to directly mimic the thread on which I am posting this, despite the obvious similarities):

Relational Bigot: "Well, I can do that with a relational model 100x as easily and faster and tighter and smaller."

COBOL Bigot: "I tried to do it with SQL and failed, so I used COBOL and flat files, and it worked."

Relational Bigot: "You moron, I said 'relational' not 'SQL'. If you had used relational, it would have totally 0wn3d your stupid COBOL flat file nonsense!"

COBOL Bigot: "Well what language / database does 'relational' that I can use?"

Relational Bigot: "Umm .. Dr. Codd is really smart. SQL isn't fully relational. Uh. Yeah. That's all I'm going to say."

;-)

Peace,

Cameron Purdy | Oracle
http://www.oracle.com/technology/products/coherence/index.html

Cameron Purdy

Posts: 186
Nickname: cpurdy
Registered: Dec, 2004

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 2:54 PM
Reply to this message Reply
> Well, in Enterprise these days (Fortune X00), the biggest
> impediment (and might be quite different with start ups,
> although not different at the ones I have been at) to
> productivity is the reversion to the 1970s COBOL/file view
> of development: the code has dominion over data.
>
> Dr. Codd (and others) realized that the data was what
> counted, and so devised/discovered a way to build systems
> from the data outward.

Pardon my Fr*nch, but I believe that both approaches reflect navel-gazing bulls**t.

The real problem is that most people ignore the purpose of IS, which is to provide an "Information Service" to the business. There is, after all, a business, and we do get paid because we (supposedly) provide 'service' ..

Please select one or both of the following:

* I am helping my business by increasing revenue and/or value.
* I am helping my business by reducing costs and/or risks.

If you cannot clearly illustrate at least one of the above on a consistent basis, you're definitely rowing in the wrong direction, assuming you are rowing at all. (I'd prefer the "not rowing", because it causes less damage.)

Peace,

Cameron Purdy | Oracle
http://www.oracle.com/technology/products/coherence/index.html

Erik Engbrecht

Posts: 210
Nickname: eengbrec
Registered: Apr, 2006

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 2:58 PM
Reply to this message Reply
Cameron,
To bring this discussion back on topic.... You need to get the Relational Bigot and the COBOL Bigot in a room together so these views can be aired...and one can avoid hiring either of them... The same can be said for any number of techniques, methodologies, and technologies.

-Erik

Jason Yip

Posts: 31
Nickname: jchyip
Registered: Mar, 2003

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 2:59 PM
Reply to this message Reply
...
> weren't going to get very far in the session, I suggested
> that we go around and describe the best job we've ever
> had. This turned out to provide great insight.

You should take a look into Appreciative Inquiry, http://appreciativeinquiry.case.edu/

Michael Gratton

Posts: 4
Nickname: mjg
Registered: Apr, 2003

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 5:04 PM
Reply to this message Reply
> Can You Change Based on Environment and
> Evidence? For a programmer, the most telling fact may
> be the editor they use. If a programmer is hardwired to
> only use emacs or vi (for example) and could never
> consider using anything else, they may also fight any
> efforts to do unit testing or use version control or your
> build system. Or to use any other tool that might improve
> productivity.

Heh heh. As one of those programmers (shackled to emacs), I'd like to see some evidence of choice of editor leading to an unwillingness to change. Yes, being hard wired to a specific editor makes it hard to change to a different one, but that does not imply that such a person is resistant to change, especially changed backed by evidence.

Maybe you've seen one or two people in the past who had strong opinions regarding their editor and who were resistant to other types of change. If so, I should point out that correlation does not imply causation. An old colleague of mine refused to use a VCS but was just as happy in front of Notepad as Eclipse.

Perhaps a better way of determining this is to get a feel for development methodologies, toolkits and languages they have used in the past and why they changed from/to them. A tendency to self-teach new technologies (one of your other points) directly implies a willingness to change.

But basing it on an editor? Please.

/Mike

robert young

Posts: 361
Nickname: funbunny
Registered: Sep, 2003

Re: Hiring the Rowing-Forward 30% Posted: Apr 17, 2008 5:45 PM
Reply to this message Reply
> It seems to me that no matter what the subject, your
> 'point' is always the same: "Relation databases! rah rah
> rah sis boom bah!"
>
only when a topic gets ripe enough. otherwise I keep my piece. were I a Swing addict, I would likely always be worried that the proper use of widgets was done, but that's not my concern.

> Of course each time
> I've asked you to explain how to solve a specific problem
> without any of that nasty 'code' you've chosen not to
> reply.
I don't recall such, but if you've one to hand, I'll be happy to.

I can recommend Celko's latest tome, "Thinking in Sets". Not everyone thinks highly of him; some do.

Vincent O'Sullivan

Posts: 724
Nickname: vincent
Registered: Nov, 2002

Re: Hiring the Rowing-Forward 30% Posted: Apr 18, 2008 1:07 AM
Reply to this message Reply
> The suggestion of looking at someone's track record on
> open source is interesting...

It does have two unwelcome side effects that have already been noted elsewhere. One is that open source projects become milked for their value as CV fodder; people join them not because they have any inherent interest in the project but because they want to add it to their list of 'acomplishments'.

The second, which follows on from above, is that there are a signigicant minority of programmers who submit changes (invariably minor bug fixes rather than significant feature changes) to open source projects until the moment they are promoted to the desired 'committer' status and then vanish. The status goes on the CV; the project goes on the back shelf.

Eivind Eklund

Posts: 49
Nickname: eeklund2
Registered: Jan, 2006

Re: Hiring the Rowing-Forward 30% Posted: Apr 18, 2008 4:10 AM
Reply to this message Reply
> > Dr. Codd (and others) realized that the data was what
> > counted, and so devised/discovered a way to build
> systems
> > from the data outward.
> There are also cases where making the data "King" is
> equally flawed. Mandating that all data be represented in
> tables is flawed too. No doubt there are domains where it
> works and works well, but there are others where it does
> not do so well.

Do you know cases where it has been tried?

I don't know of any cases for 30 years where the full relational model has been used, so I find it hard to say it's failed - I have hopes for it and have a halfway implementation helping with the systems I build (abstracting away most use of SQL) - but - it's incomplete and we still don't use it everywhere, so I can't even say "Here's a domain where it works".

So, if you know of cases where it's been tried, I'm interested. Not just using an SQL database - using relational throughout, including full relational support (ability to create and modify relations throughout the code) and using this for everything.

I would guess the source for such experience would be some kind of 4GL language, maybe one the myriad variants that was running around in the 80s, or possibly something done in Smalltalk?

And, if you've seen it fail, I'd also like to know what form of representation of hierarchies was used in the relational model, what made things fail, and whether the hierarchy representation was related to the failure.

I've been playing with this area, trying to find good representations and using them throughout the systems we build, and going fully relational is the most promising direction I've found, which is why I'm so keen on knowing about whatever failures have come up.

Eivind.

Mark Thornton

Posts: 275
Nickname: mthornton
Registered: Oct, 2005

Re: Hiring the Rowing-Forward 30% Posted: Apr 18, 2008 4:31 AM
Reply to this message Reply
>
> Do you know cases where it has been tried?
>
> I don't know of any cases for 30 years where the full
> relational model has been used, so I find it hard to say
> it's failed - I have hopes for it and have a halfway
> implementation helping with the systems I build

I was actually thinking of real products not mythical ideal systems. Nor do I care whether the flaw is in the relational model or the SQL implementation. Just that some of the data I use is a very ugly fit in the available 'relational' systems (Oracle, SQL Server, etc). In some cases the model is fine but adequate performance can't be obtained, while in others the structure is awkward. Sometimes I can fit the data into the model, and all is fine in theory, except that the resulting queries to answer user questions are too complex to be written, comprehended, or even executed (especially by report tools).

What about 'data' that I would loosely describe as rules. This is really a mixture of data and code.

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Hiring the Rowing-Forward 30% Posted: Apr 18, 2008 6:20 AM
Reply to this message Reply
> > Of course each time
> > I've asked you to explain how to solve a specific
> problem
> > without any of that nasty 'code' you've chosen not to
> > reply.
> I don't recall such, but if you've one to hand, I'll be
> happy to.

How do I send a daily message at 12:00 AM to N*M external entities in N different formats using no 'code' or hierarchical data structures?

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Hiring the Rowing-Forward 30% Posted: Apr 18, 2008 6:29 AM
Reply to this message Reply
> I don't know of any cases for 30 years where the full
> relational model has been used, so I find it hard to say
> it's failed - I have hopes for it and have a halfway
> implementation helping with the systems I build
> (abstracting away most use of SQL) - but - it's incomplete
> and we still don't use it everywhere, so I can't even say
> "Here's a domain where it works".

There's Rel which is written in Java. http://dbappbuilder.sourceforge.net/Rel.html It's not a 'real' implementation. It's just for teaching people how to use things that they won't have access to in a 'job'.

But aside from this, what exactly do you expect to change when the fully relational model is adopted? What has changed with the parts you have implemented? Have your issues finding qualified people decreased by half?

Flat View: This topic has 54 replies on 4 pages [ « | 1  2  3  4 | » ]
Topic: Hiring the Rowing-Forward 30% Previous Topic   Next Topic Topic: Testing without setup and tearDown

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use