First, who said that you had to keep all 6 sets of languages in your head
at once?  I've never been told that, and I've been doing software
development since I was 8, taken several training courses in elementary,
high school, college, and while employed by three different companies (At
different times).  I don't know VB6 all that well today, but, if I could
find my CDs and install I'm sure I'd be able to figure out sprintf doesn't
work.  I've got a lot of junk in my head going back to Vic-20 Assembly, to
V2 Basic, to VB3->6, to Borland Pascal 3 to Delphi 2010, to PHP, to bash,
to freak'n nearly anything else dealing with web and internet
technologies.  It ain't all going to fit up in my nogin, but  sure know
where to get the info when I need it.  php.net is my friend when I need to
look up how strpos, substr and str_replace work several times an hour.

Second... Come on... Really?  This "switching...requires a lot of effort"
comment is a pretty weak sauce excuse coming from any developer and is
borderline grasping at straws to try and make a statement, ESPECIALLY when
it comes to COMPLETELY different technologies that have EXACTLY NOTHING to
do with each other as individual components.  Seriously, that is like
saying you're having a hard time switching between using a ball-peen hammer
and a chain saw, and not quite understanding where the screwdriver comes
into play.  They are ENTIRELY different technologies and tools.  .. Ok...
So all three devices can open a paint can, but, only one is going to keep
the mess to a minimum, and it ain't the chainsaw.  (Trust me... .. Tried
it, and had fun, but hated the clean up)

N-Tier programming is a freak'n (Awesomely wonderful, and sometimes
completely evil) beast when it comes to decent development, and that is
EXPECTED even at the most BASIC database driven web site, and I'm just
talking a basic login page, which is at minimum a 3-tier application. (UI
to get the creds from the user, logic to validate the form, access to a
data source, be it flat file, LDAP or SQL database, then logic to check to
see if what was provided by the UI is correct, then tell the UI to display
something.)

When I get into my "deep code runs" in Win32, I can easily escape into a
wonderful world by writing a 6-tier application.  UI, Authentication,
Business Logic, Data Storage, error trapping and handling, and finally
logging to see where the other 5 tiers screw up.  Every tier 100%
independent of the other, has the ability to talk to any tier as needed.
If I want the UI to talk to the DB directly, so be it.  I don't HAVE to
know how all 6 levels work.  I didn't write all of them.  I SUCK at LDAP
authentication.  I'll NEVER retain how the 6 domain trees we have at work
are named and structured, and I don't CARE to know.  I just need to provide
a way for a user/admin to do that config, and beg or bribe someone to give
me a connection string that works so that I can do my coding.  Thank
goodness the coffee the company provides tastes like mud, because I love
driving, and enjoy my Tim Hortons coffee, and I can usually bribe my way
out of issues by buying coffee.

That said, where it gets annoying is NOT the technology that is being used
or to swap brains frequencies, but when one of the technologies isn't doing
what I expect.  I know the tools and how they work.  Its when I pull the
rope 30 times on the chainsaw and it not starting, only to realize I forgot
to set the choke, prime the fuel, or pull the throttle while pulling.  THAT
gets annoying.  Its also annoying when spending hours or days trying to
figure out why a UI component isn't getting the proper information from the
SQL server, only to find out I had typed the URI for the LDAP server wrong
and the logic code was asking the database for information in the wrong
table or database.  Valid connection, just wrong point of interest.

If you're going to work on something that looks fancy for the web, then
yeah, you're going to need to deal with HTML and CSS.  No way around it.
If you're going to make a rock solid database, then of course, you're going
to have to have a firm understanding of how a particular database language
works to get the job done.  Again, unavoidable.

And if you want to just skip the whole understanding the high level
HTML/CSS language and the low-level SQL calls, you can easily get into the
middle of things and get into a framework type of scenario where you can
deal with what the framework does best for you and not worry about
HTML/CSS/SQL at all, except that they exist and function somehow, someway,
and you have interfaces to each level of technology.  Then you only need to
be aware of how the framework works, and not the database language or the
HTML markup.

If N-Tier software development is 'annoying' and you are not happy, either
get help by other members of your team, or, find a different hobby, because
anything less than 3-tier programming dealing with multiple languages,
technologies and functionality just isn't going away.  Quite honestly, and
this is just my opinion, but I think it is absolutely wrong of you to go
into a place of employment angry or annoyed at ANY level because of the
multiple languages and technologies used to bring your product to life.
Get mad at the politics, not the tools being used.

On 5 Jun 2015, at 3:05pm, Don V Nielsen <donvnielsen at gmail.com> wrote:
>
> That's six sets of knowledge to do one thing.  Granted, they do different
> things in different ways but it's still rather a lot to fit into m noggin.
> And it's annoying when you think you're debugging a JavaScript problem but
> it turns out that a SQL command doesn't mean what you thought it did:
> switching my brain between JavaScripting and SQLing seems to require a lot
> of effort.
>
> Simon.
> _______________________________________________
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>

Reply via email to