mediagoblin-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Initial run of ./bin/dbupdate fails.


From: Art
Subject: Re: Initial run of ./bin/dbupdate fails.
Date: Sun, 16 Oct 2022 19:48:32 -0700 (PDT)


Bill,

I appreciate your post very much and this IS a worthy discussion!

Since you seem to think it belongs on-list, so be it; my motive is positive but I may say some things that some might find offensive, such as in one of my quotes you sent to the list. I do NOT intend to offend.

I also note that this is only cursorily related to Media Goblin, but it might be helpful. A bunch of what I share here belongs more in the ears of the Python people, but I don't know any of them!

I appreciate your at sharing with me important facts. I was not aware of the relative "educational depravity" you describe, and super-limited exposure, but it makes sense that what you say is true, at least on the broader scale. ... I have worked mostly "on the back end." My contributions to computing have mostly been in the database world, though I have done quite a few things on the "front end", including having proven a few things about the object oriented "front-end" world that stands majority (dogmatic) opinion on its head and proves those who stick to the dogma haven't a clue of how to code or use the tools properly.

Since I got outed, a bit of a digression on one of my remarks - if you want to skip it, look for END DIGRESSION. To wit:

When I said "kids today", I wasn't blaming the individuals, but the educational system. ...Back in 1995, I left the commercial database world to join Michael Stonebraker as a computer scientist at UC Berkeley - the guy who's teams invented Ingres, then Postgres and then quite a few others. (I worked for him at Ingres - that's how we met - and "I was there" at Berkeley when Paul Aoki led the push to open-source Postgres - it was his gutting of the QUEL language and completing / improving its SQL language abilities that prompted the name PostreSQL. And I've been involved with Postgres ever since. I've been urged to do some new commits to the code and hold the record for being the longest committer! But I just haven't the time.)

But back to "kids today"; one day a PhD student, asking for help on something, said - and I paraphrase some - "Oh, no, I don't know about that because it's ancient history - nothing in computer science over 5 years old is worth bothering with!"

I damned near fell out of my chair. And this is a PhD student?! I opened his eyes and he went on to fantastic success - I'm not claiming credit for his success, only that he came around to the idea that learning history IS valuable.

END DIGRESSION

... "Packaging" is an extremely important part of computing history. But since Python is so important to Media Goblin, well...

First, I'm glad the GMG folks are not heaping on the dependencies as others have. And I'm glad you and Olivier Mehani are working on it. THANK YOU.

Given the importance of Python overall, the lessons the Python people haven't picked up on (yet? Or, at least I don't see it) is illustrated by the capabilities of the likes of C and Java and a host of other programming environments: You can pick up and bring with you what you need and cut the dependencies to an absolute minimum, AND you can include code from elsewhere, "on the fly." But you have the option of packaging it together. For example, I can package a specific JDBC driver with my application and the system manager of the deployed installation doesn't have to, for the most part, know or care.

If the licensing model is the right one (there are a LOT to pick through in the FOSS world), then you can build your package containing all that it needs in one go. ...These are not the resource poor days of the past where a few bytes of storage mattered greatly!

So, if Python - or if it were possible within Python already - had a packaging capability to harness together all the bits of an app so they, and only they, would be selected at run-time - from all the possible other versions also installed on a deployment system, that would do the trick.

/me is on day 5 now - i had it fully packaged (aka: de-pipped
and installed) on day 4 - though it probably does not work yet,
because i have yet to package the javascript dependencies - i too
will give up (again), unless i reach the bottom of the
rabbit-hole soon

I know how you feel and would LOVE to carve out some time to try it!

Thanks again.

AND I appreciate your saying that it's not impossible for Python - your and Oliviers work (and others I'm sure) give me hope for this field. Otherwise it's a flipping disaster for deployment.

Another problem, by the way, is coders nearly never bother with installation issues - they far too often see it as someone else's problem. And this is harming the situation, as you implicitly note.

but that gripe applies to nearly all webby things - you are not
likely to find any which are easy to package - java-based
websites are usually worse; because they tend to download all of
their dependencies as binaries

I haven't noticed which proportions of badly done packages are based on what - most have been a substantial mix, in my experience. But java-script... well... Node.js is a GREAT idea that's finally happened. But it's not a panacea because, in my limited experience, it doesn't play nice with non-Java-based code.

Unfortunately, I have wasted a lot of time looking at such things and I think the fundamental cause is trying to create a stateful experience for users based on a stateless paradigm - the web servers. I complained about this from the very start, but it fell on deaf ears. ...IDK if that resonates with folks on this list, but it was a GIGANTIC mistake from the start of the World Wide Web and some of us saw it coming.

Thanks also for pointing out the issue of licensing.

ignoring the labor of packaging all of the dependencies, the
sheer number of dependencies also makes it a licensing
rabbit-hole - just to illustrate, i also looked at peertube, and
gave up hope on that one, immediately - it's terse dependency
manifest alone, is nearly 10,000 LOC, without a single mention
of any license

https://raw.githubusercontent.com/Chocobozzz/PeerTube/develop/yarn.lock

Question: Do you think it's possible that the Python folks could compel their community - such as the folks who run package sites like pypi.org - to provide their FOSS packages in a license permits then to be put in someone else's package, such as GMG?

THAT is the kind of solution that's needed here - and, apparently, all over the web!

Regards, and best wishes to all,
Art

--
Art Richards
Art@TheTroyPress.com
http://TheTroyPress.com



reply via email to

[Prev in Thread] Current Thread [Next in Thread]