[HN Gopher] We have reached OpenBSD of Theseus
___________________________________________________________________
We have reached OpenBSD of Theseus
Author : nabla9
Score : 399 points
Date : 2024-08-23 19:39 UTC (1 days ago)
(HTM) web link (marc.info)
(TXT) w3m dump (marc.info)
| unethical_ban wrote:
| I've never been a mailing list user. I thought there would be a
| link to the files affected.
|
| Congratulations to OpenBSD!
| runjake wrote:
| Practically all these people have a local checkout of the repo
| on their local computers. URLs aren't needed (for them).
|
| https://github.com/openbsd/src/commit/a6105854a9e3aab642e6a0...
| binkHN wrote:
| Ah yes. The great collection of games, still maintained. Always
| enjoy OpenBSD for its security, but got to hand it to the team
| for continuing to be fun-loving and producing artwork and songs
| for every release/every six months, like clockwork.
| rany_ wrote:
| Here's the change itself:
| https://github.com/openbsd/src/commit/a6105854a9e3aab642e6a0...
|
| I know that OpenBSD doesn't actually use GitHub, but it was the
| easiest way I could find the diff. I don't know how to otherwise
| get it from that mailing list entry.
| asveikau wrote:
| They have a cvsweb instance on their website, but the UI is a
| little more old school than github, so the github mirror is
| often good for browsing anyway.
|
| https://cvsweb.openbsd.org/
| OJFord wrote:
| > the UI is a little more old school
|
| No kidding!
|
| GP's point stands though, how are you supposed to get there
| from the submission?
|
| I assume if you subscribed to the mailing list yourself the
| patch would be attached, but afaict TFA doesn't even show
| that.
|
| I don't really understand how people can work like this, not
| anti-email, or everything must be GitHub, or anything - but
| it can still be a lot more modern and featureful than this
| can't it? I don't really understand why it isn't.
| asveikau wrote:
| I think the best way is probably to check out the CVS repo
| on your machine, then run cvs log, and cvs diff.
|
| That's the way everybody used to work?
|
| I can't recall if there were local x11 visualizing tools
| like gitk is today. (Google says tkcvs) I remember there
| were some graphical diff programs, you could set an
| environment variable and make the "cvs diff" command show
| something nicer looking.
|
| Recall that git was also designed to work over mailing
| lists. git format-patch, git apply, etc.
| mlyle wrote:
| > I think the best way is probably to check out the CVS
| repo on your machine, then run cvs log, and cvs diff.
|
| I've used cvs a bit recently.
|
| It's amazing how poor the performance is on large
| repositories, even on modern machines.
|
| I can't figure out how I put up with this 20 years ago.
| toyg wrote:
| Everything was slower back then; we just worked at a
| slower pace and "disconnected". Turn on the PC, and go
| make coffee; start a build, and go over notes and
| comments again; start a download, and clean up the desk
| or go for a drink at the cooler; launch a big report, and
| make a phone call.
|
| Now we're so completely absorbed by the screen for so
| long, we get irritated by any perceived delay.
| Bagged2347 wrote:
| I want to work in the world you described. I'm 28 and
| irritated by the pace of modern work, but I have nothing
| to compare it to and your comment made me ponder. I feel
| as if there's no room to breathe. Do you have any stories
| to share?
| anthk wrote:
| Get an Usenet account at https://www.eternal-
| september.org, roam around the comp.lang.* groups, setup
| slrn to fetch news offline and answer to the groups in
| 'batch' mode, there's slrnpull for that.
|
| Learn the basics of C and Perl for automation, Perl can
| do tons of *unix stuff (awk/sed... but better).
|
| Mark Burguess has books on Perl/C (ANSI C and GNU C) and
| the basics of C++ with systems' programming. I know today
| Golang would be more apt but if you know how the things
| work under the shiny stuff, you will apply most of the
| knowledge from Unix systems' programming to Go in a
| breeze.
|
| Once you begin to automate scripting, testing and
| repetitive stuff, you will spend less time with
| computers.
| Muromec wrote:
| Now it's just running that jenkins pipeline, which takes
| 40 minutes and requires a manual confirmation in the
| middle .
| asveikau wrote:
| I remember following the openbsd stable branch about 20
| years ago and it was indeed very slow to simply check out
| and update. Svn felt much better even though it wasn't a
| revolutionary improvement.
|
| I guess that's why the errata page has source patches.
| It's also great that they have syspatch now for fast
| binary patches
| eru wrote:
| > That's the way everybody used to work?
|
| No. In the bad old days, for many people version control
| software wasn't sufficiently better (and in some respects
| much worse) than just not using any. So many people
| didn't use any.
| medoc wrote:
| This is true but it was certainly not considered good
| practise even at the time. I've been on the seller part
| of a few software companies acquisitions from the early
| nineties, and checking what kind of source control we
| were using and how was part of every audit. A long
| history of sccs -> cvs -> subversion ->mercurial or
| git...
| eru wrote:
| Yes, though eg Linus Torvalds famously said that them
| mailing around tar-balls was better than CVS.
| asveikau wrote:
| You're right, I forgot that it was common to not use
| source control. However I feel like it was pretty
| universally recognized to be the "proper" thing to do.
| OJFord wrote:
| Like I said, not anti-email. I don't see why it's git vs
| cvs:
|
| > Recall that git was also designed to work over mailing
| lists. git format-patch, git apply, etc.
|
| Right, and when you do web things with that same git in
| 2024, it looks and works like it's 2024.
|
| You _could_ use an old git server /file browser UI, or
| the built-in gitweb[0] for example, but you don't, you
| use something more modern & featureful, working better on
| mobile, looking prettier, etc. Even Linux (with its
| history intertwined with git) uses Github[1] as its
| mirror, not gitweb or anything looking like the link
| above for OpenBSD.
|
| [0]: https://repo.or.cz/w/git.git/tree/HEAD:/gitweb/
|
| [1]: https://github.com/torvalds/linux
| asveikau wrote:
| If it's something I work on habitually and keep clones
| of, I prefer to use gitk to browse a local repo over
| something like GitHub web ui. Maybe I've just gotten old
| though.
| SoftTalker wrote:
| > I don't really understand how people can work like this
|
| It's all what you're accustomed to. Git confuses the heck
| out of me every time I use it for anything more complicated
| than clone, pull, commit, or push.
| asveikau wrote:
| I highly recommend learning about rebase. Very handy to
| be able to re-order, re-word, merge multiple commits into
| one, fix issues within a commit ... Basically tidy up the
| history locally before you push it.
| andybp85 wrote:
| wholeheartedly agree, git rebase -i is a game-changer
| once you get comfortable with it
| nine_k wrote:
| Have you tried reading https://tom.preston-
| werner.com/2009/05/19/the-git-parable ?
|
| I bet you're smart enough to understand it. Inside, git
| inside is much more logical and neat that the
| (unfortunate) historical CLI makes it feel. It's a shame
| it holds people back from using this very powerful and
| useful tool. (Once you've reached understanding, switch
| to magit, gitui, tig, etc, for comfort and speed.)
| SoftTalker wrote:
| No, I just don't use it often enough in any other
| scenarios.
|
| I pretty much do solo work these days, I don't need
| rebasing or branches or pull requests or anything like
| that.
|
| I honestly don't really need version control at all but
| it's a pretty baked-in habit. I thought svn was nice, a
| good balance of capability and understandability. It
| worked well in the "central respository" style of the
| day, which is effectively how I work.
|
| On the other hand I'm quite comfortable with long shell
| pipelines using find and xargs and awk and other
| utilities that are at least as arcane as git, so like I
| said, it's all what you are accustomed to. If I were
| doing git feature branches, rebases, and pull requests
| every day at work, I'd probaly feel that they were pretty
| easy.
| asveikau wrote:
| A clean history and the ability to roll back to any point
| is still useful when working solo.
|
| Git bisect is one example of this. If you know roughly
| when a bug was introduced, you can do an O(log n) binary
| search to find what commit introduced it.
| nmz wrote:
| Internals are nice, but are also not and should not be
| necessary to know, I don't know how a FS is writing a
| file, and yet I can store files fine.
| oasisaimlessly wrote:
| "Internals" is a bit of a loaded word; internals are
| meant to stay inside, eh? Every cellular organism would
| agree on this point.
|
| A better term might be git's "data model".
| eru wrote:
| Git ain't the only modern version control system, just
| the most popular.
| fragmede wrote:
| it's way easier to get accustomed to something when you
| can mess it up on your system and the rest of the company
| doesn't see how stupid you were. administering the cvs or
| svn system used to be a full time job (for a far smaller
| number of developers, that is).
| inopinatus wrote:
| Back when I was directly subscribed to various bsd
| src/commit lists, I had a delivery filter that would attach
| the delta if the list didn't do so already.
| mbivert wrote:
| [0] offers a few insights: license, habits, history, why
| change something that works, etc. You might also be
| interested in[1].
|
| [0]: https://cvs.afresh1.com/~andrew/o/why-cvs.html
|
| [1]: https://gameoftrees.org/index.html
| playingalong wrote:
| > It is unlikely that any alternative versioning system
| would improve the developer's productivity or quality.
|
| This is likely true for existing developers. But might
| discourage some fresh blood from joining. So in the long
| run the overall productivity _might_ suffer from this.
| mbivert wrote:
| > But might discourage some fresh blood from joining.
|
| That's probably more of a feature than a bug: it acts as
| a "natural" filter.
| playingalong wrote:
| If you assume willingness to learn CVS is in line with
| being able to provide valuable contributions.
|
| I have worked with CVS myself in the past and would
| probably have no problem getting used to again.
|
| Some fresh out of school _smart_ people might consider it
| a thing of the past. And just decide not to deal with it.
| Like COBOL.
| mbivert wrote:
| > If you assume willingness to learn CVS is in line with
| being able to provide valuable contributions.
|
| This, but also: "can you make an effort to conform
| yourself to others instead of forcing others to conform
| to you;" Inexperienced people often lack the visibility
| of their elders, so it really makes sense to see whether
| they can lower their ego.
|
| > Some fresh out of school smart people might consider it
| a thing of the past. And just decide not to deal with it.
| Like COBOL.
|
| Are you using "smart" positively or not? Being smart is
| often frowned upon in SE. Then, driving smart people away
| still is a good thing.
|
| If you meant positively... considering things of the past
| to be useless by mere virtue of being of the past, is
| definitely not a positive character trait, so we'd have a
| contradiction.
|
| Side note, but the problem with COBOL is not that it's
| old; to quote wikipedia:
|
| > COBOL has been criticized for its verbosity, design
| process, and poor support for structured programming.
| These weaknesses result in monolithic programs that are
| hard to comprehend as a whole, despite their local
| readability.
| OJFord wrote:
| I'm not sure why my comment's being interpreted as 'ugh
| why cvs' (not just by you) - I've never used it, but I
| assume you could have just as modern and featureful
| experience with cvs as with git. The link shared is very
| far from 'Github [or similar], but cvs'. And again, how
| to even get there from the mailing list archive?
| mbivert wrote:
| > I assume you could have just as modern and featureful
| experience with cvs as with git
|
| There are strong mindset differences between various
| software communities; it might takes a little bit of time
| & effort to appreciate a more frugal/conservative
| approach to software engineering.
|
| The previous links highlighted some aspects of those
| mindset differences. [0], while unrelated to OpenBSD, is
| another good illustration.
|
| That's to say, OpenBSD people probably don't care much
| for a more featureful experience: it won't make them more
| productive, even if it may look like it would from the
| outset.
|
| [0]: https://rachelbythebay.com/w/2011/09/24/editor/
| dn3500 wrote:
| It's not hard if you understand how cvs works. The email
| says the files are in the "src" module, so you select that
| from the cvsweb page. Then it's just a matter of drilling
| down to the individual files. Here is the diff for the
| Makefile for example:
|
| https://cvsweb.openbsd.org/cgi-
| bin/cvsweb/src/games/quiz/Mak...
|
| As for how you work like that, the number of people with
| commit access is small and they all know each other. There
| aren't a lot of branches. Most of the collaboration
| features of git aren't needed.
| tambourine_man wrote:
| IMO we got used to GitHub's UI, but it's far from intuitive.
| Just watch someone who never use it before.
| marcellus23 wrote:
| Why remove the Greek queez instead of just adding the ship parts
| quiz? I guess I understand the obscurity argument (although as a
| classicist it makes me sad), but there's still a Latin quiz
| there. Hell there's even an Inca quiz. How does that meet the
| obscurity bar but not Greek?
| altairprime wrote:
| They would certainly welcome a patch from someone motivated,
| though I suspect this first one was driven by a desire to make
| a pun out of the milestone.
| tedunangst wrote:
| How would that complete the ship of Theseus?
| thoaway9 wrote:
| I think that removing Greek is unnecessarily ironic... cool
| historic reference, but a bit of an effort could have been
| made.
| tedunangst wrote:
| I think 28 years is sufficient grace period for concerned
| individuals to make a bit of an effort. What have you been
| waiting for?
| jerf wrote:
| You didn't care about this five minutes before you read it,
| you probably stopped caring about it five minutes after you
| wrote this.
| inopinatus wrote:
| to counterpoint the surrealism of the underlying metaphor
| rbanffy wrote:
| Some of the metaphysical imagery was once in reality
| specifically effective.
| lproven wrote:
| It threw the underlying Vogonity of Theo de Raadt's
| compassionate soul into sharp relief.
| deanmen wrote:
| It used ASCII substitutes for the greek letters, Latin only
| uses Latin letters $luw$:{I} [loose|destroy]
| $eluon$:{I} [loosed|destroyed|was loosing|was destroying]
| $elusa$:{I} [loosed|destroyed] $leluka$:{I} have
| [loosed|destroyed] $lusw$:{I} will [loose|destroy]
| $luswn$:[loosing|destroying] $lusas$:{having}
| [loosed|destroyed]
| nescioquid wrote:
| I would guess most people interested in the quiz would be
| familiar with betacode (which this looks like, sans
| diacritics).
|
| edit: https://en.wikipedia.org/wiki/Beta_Code
| buescher wrote:
| "Beta Code was developed by David W. Packard" (not that
| David Packard, but his son). Neat.
| schoen wrote:
| I tried the quiz after reading the mailing list message and
| got three of them right. (I didn't study Greek long enough to
| get all the way through the verb paradigm and I haven't used
| it very regularly since then.) So yeah, I don't get the claim
| that nobody could play this quiz. I think I have friends who
| would get all of them right offhand. It's no more complicated
| than knowing the difference between "hablo", "hablare",
| "hable", "hablaba", "hablado", and "hablando" in Spanish,
| except that fewer people study ancient Greek than modern
| Spanish (and the older Indo-European languages do more stem-
| mutation between tenses, so it can be a bit more effort to
| memorize).
|
| The worst part of this format is probably that if you did
| "quiz english greek" it wouldn't accept any form of accent or
| breathing marks, even though these are also standardized in
| beta code and some people would probably try to type them,
| like "e)luon" to show that there's no /h/ sound at the
| beginning of that word. And I don't think typing beta code in
| between dollar signs is a very common convention today, but
| the quiz would require it; you can't just type "luw", you
| have to type "$luw$".
| anthk wrote:
| Spanish has rules for verbs ending with -ar,-er- and -ir
| save for few exceptions. Still, RAE should have accepted
| "conduci" as "conduje" long ago (and the rest of
| declinations/verbs such as traducir, reducir...) IDK about
| Greek.
|
| If we are using two valid ending forms of Subjunctive
| (-era/-ese) since forever, IDK why couldn't we set these
| irregular verbs back to regularity.
| schoen wrote:
| Greek has verbs with different "thematic vowels", which
| are sort of like the Spanish conjugations, but not
| exactly the same thing (although I think both varieties
| of verb groupings probably have a distantly shared origin
| in Indo-European).
|
| The Spanish conjugations -ar, -er, and -ir derive from
| Latin conjugations, which are usually analyzed as having
| four different regular conjugation patterns (there are
| long and short e, giving -ere and -ere, in addition to
| -are and -ire), although one can choose to make
| additional distinctions.
|
| Generally older Indo-European languages have more complex
| morphology than newer ones, including more paradigms and
| more irregular forms. Ancient Greek verbs are definitely
| morphologically more complex than modern Spanish verbs.
| underbooter wrote:
| Toso eukolo einai
| stavros wrote:
| What is this quiz? Can someone provide some context?
| Jtsummers wrote:
| Seems to be a trivia quiz game included in OpenBSD.
|
| https://github.com/openbsd/src/tree/a6105854a9e3aab642e6a0fc...
|
| In datfiles/index there's a list of categories and with some
| interpretation you can see what they're asking. Like "chinese"
| is The Chinese zodiac, current sign and next. "pres" quizzes
| you on the president, their term, vice, and successor.
| stavros wrote:
| Thank you!
| brynet wrote:
| It's a BSD game.
|
| https://man.openbsd.org/quiz
| Flop7331 wrote:
| If I take all the commits up to that point and rebuild OpenBSD
| from that original material, that's the _real_ OpenBSD of
| Theseus.
| AlienRobot wrote:
| It's the start of a new era.
| lupire wrote:
| This change marks the change of every file, not every line or
| every character. Every directory was already changed
| TacticalCoder wrote:
| Also known as _" but is this not the nine hundred-year-old
| OpenBSD of my family?"_
| alberth wrote:
| > With this commit, we have completed an amusing mission of
| replacing the final parts of the original OpenBSD.
|
| Am I interpreting this correctly in that, given that OpenBSD was
| created as a fork from NetBSD - there's now not a single line of
| (original) NetBSD code left in OpenBSD?
| zamadatix wrote:
| No, it's that there is not a single file of original code left.
| This was just the last remaining file to not have a line of
| code edited since then (that definition seems to exclude the
| automatically added OpenBSD opening comment line). Likely
| lasting so long because it was an extremely short makefile
| without much meat and potatoes to change even if the code for
| what it was about changed.
| fsckboy wrote:
| symbolically, keeping one original file seems a lot more
| meaningful to me. is a younger generation at the helm? an
| older veneration seems less likely to do this.
| UniverseHacker wrote:
| The files are mostly the same. It goes against OpenBSD
| ethos not to constantly review and improve the entire
| codebase.
| SoftTalker wrote:
| I think it means that there are no longer any unchanged files.
| Much more likely that there are many lines of code that are
| still the same.
| SuperNinKenDo wrote:
| Reaching it by replacing the Greek quiz with a ship quiz is a
| nice touch.
| anthk wrote:
| Now it would be a good day to play sail(6) then.
| rererereferred wrote:
| But can they grab all the removed files and create a new
| somethingBSD with them?
___________________________________________________________________
(page generated 2024-08-24 23:02 UTC)