These videos already make me inordinately happy, because everything about templeos is beautiful, and having it explained is so very nice. However the most beautiful take-away from these videos to me is that Terry has a bird. :)
I want to build in some kind of primitive networking into this OS - just so one machine can talk to another... it's on my side project list. Anyone had much experience with the code?
Also - Love the positive comments in this thread. Proud of this community.
I think the maintainer has said that God forbids networking. This seemed irrational to everyone, and then the NSA scandal happened, so I'm inclined to side with Terry on this one.
Specifically, his belief is that God forbids networking in TempleOS, not other OS's. (Otherwise he wouldn't maintain a website, upload YouTube videos, or comment on HN.) It may not be a good idea to add networking to TempleOS, since he may take that as an affront to his religion.
So if TempleOS has no license, then it may not be strictly legal to add networking support and then re-release the code. Glancing at the "Downloads" section shows no mention of a license. Of course, no one is going to be able to enforce those protections in Terry's case, but if it's likely to simultaneously offend him and be illegal, is it a good idea?
What a strange situation.
EDIT: TempleOS turns out to be in the public domain.
TempleOS is an x86_64, multi-tasking, multi-cored, public domain, open source, ring-0-only, single-address-map (identity-mapped), non networked, PC operating system for recreational programming.
> There shouldn't be any licensing troubles, at least.
Under many (if not most) jurisdictions it's not possible to put things in the public domain, and saying you do so without providing an actual license is the same as not doing anything (aka "All Rights Reserved", the restrictive default).
Even in the US, the idea of putting things in the public domain (rather than it falling into the public domain) is a bit iffy and AFAIK has never been tested in court.
Hum, it feels to me there are subtle differences between German and French law. Notably, the right of withdrawal and the respect of the work's integrity go beyond German law.
In French, a piece of work is not "put" in public domain but is said to "fell". It's not something that needs doing, it's something that happen at the right time.
Anyway, I'm probably wrong since I'm not a lawyer :-)
It makes me sad that even with his illness he delivered more working code than I probably will ever do. Maybe not because I can't, but because I procastinate so much and I really have hard time focusing on doing work.
Work is hard, and staying on task in the face of digital distractions is harder still, but you can do it.
My philosophy is that in order to battle distractions, you need a more structured environment. Sure, some can manage without, but I think those people are probably outliers. Most of us are click-happy, trivia collecting pseudo-information junkies.
In school, that structure was created by classes, tests, assignments, due dates, etc. Those may seem like external factors, and yet they can be traced back to you: at some point you probably chose your course load and schedule, you likely chose your degree, and even the act of attending a college in the first place was, arguably, a choice.
College was a maze of your own creation, and you were the mouse running through it. After academia, though, that structure disappears. If you want it back, you have to go back to playing the roles of two different people: the visionary CEO of your life, who sets the broad agenda, milestones and deadlines, and the engineer who implements that vision.
Concretely, that means you need to break down big tasks into smaller ones, and deciding that those smaller tasks need to be done in a concrete amount of time, such as "today", "this week", or "this month". Make a calendar, put it up on a wall, make it visible. The structure dissolves if you ignore it, so make it hard to ignore it.
You most certainly can. Just sit yourself down and calmly explain to yourself that, while this working arrangement has been mutually beneficial in the past, it's clear that it's not working out any more and that it's time to part ways.
This is sort of a side effect of having a mental illness like this. Increased dopamine levels mean people like him will be more motivated. What this motivation is applied to is just unfortunately broad... as is visible by some of his posts on his "Rants" page. Which features a lot of quotes from a deity and calling people "india niggers".
I don't understand. If you're happy procrastinating, why do you care? Life is about being happy and enjoying what you do, not about just doing more work, coding more... You are a person, not a robot.
I had a conversation with Terry on freenode a couple years ago, back when TempleOS was "losethos".
I was convinced, given the context, that losethos was just computer malware, and he had a hard time articulating why it wouldn't be, and ended up just getting frustrated at the most cursory of questions.
A few days later, somebody who had witnessed the conversation informed me that he was a well known probable schizophrenic, and it really bummed me out that I didn't know or handle the situation better.
While he hasn't convinced me of anything other than that having nice uniform names for types can be helpful(U64, S64, F64, etc.), that conversation gave me some perspective on what it means to be schizophrenic.
Which (ignoring the crazy syntax) is either an initialization (an %hola), an action (a %do, like /me in IRC), an embeded Hoon expression (an %exp, which is a [code output] pair), or a message (a %say). @t is just a string type.
sur/zing/gate/hook defines the type, mar/zing/core/hoon uses sur/zing/gate/hook to validate untyped data received over the network.
The repo has recent activity and instructions for getting stuff up and running, so it's beyond a joke. (But then again, I'm still not certain that Soylent isn't an extended piece of satirical performance art.)
What makes this amazing is that Linus Torvalds probably wouldn't be able to pick a random piece of code in the Linux kernel and do this.
The fact that it's quite featureful for an OS of ~100kLOC - including an assembler and compiler for a language with some OOP - makes this even more interesting. "The shell is a compiler/interpreter" concept somewhat reminds me of Lisp machines too.
I'd wager that there's 138k lines of code for which Linus could drop into the code and figure out what's going on in a couple of minutes, in the same way as this; at least he could in the past. I've watched realtime conversations on IRC and in other realtime environments where he exhibits exactly this kind of comprehension of huge swaths of Linux. Linux just happens to be vastly larger than this now.
Not to dismiss this guy's impressive grasp of his chosen language and the things he's built in it; watching him using so many tools that seem to be of his own devising is impressive as hell. Downright intimidating, in fact. My lifetime software output becomes practically zero in comparison.
Random numbers coming from God is cute. I'm not a theist, but I also feel awe of the elusive concept of true randomness. I read something about this from him before, and it pops up in the 1st video.
The flashing Menu button and marquee filename are interesting. A distraction to most people, but I wonder if they help the author Terry stay focused.
Well, if you believe in god, then random numbers must come from him, right? Even in the sense that randomness is deterministic, it's then part of fate which is ruled by whatever supreme power you would believe in. As Luke says in The Dice Man, if "not a single sparrow can fall to the ground without your Father knowing it", then how can a die tumble without his knowing it? A die is just as pseudo-random of course, but it's nigh impossible to have a "seed" of the exact hand movement and height you use, the surface and the form of the die.
I'm an atheist, but I do find the concept of randomness being the pure will of god fascinating.
> Well, if you believe in god, then random numbers must come from him, right?
Interesting!
Personally I don't know if the second part must follow from the first, at least not for * in theists. But then I'm a theist who doesn't believe in fate, or "God knowing about something == God giving a care" or God giving a care what you had for dinner. Even the beliefs I harbor about what you did have for dinner (i.e. treating your body in a specific way) have more to do with God wanting good things for man in general.
I realize I'm treading into waters of religion discussion here, but if you're a theist who refutes my statement you quoted, then you must dismiss the theory of chaos, does that follow? Since you said you don't believe in fate, I guess it does. Because if you think the theory of chaos true, that is, that everything is indeed deterministic in the sense that the world state now comes directly from the world state before, and we only think it is chaos because we can't control for all the absurd amount of variables, and if god knows everything, he sees the exact order in the chaos, and thus he knows that something as seemingly innocuous as a random number generator can have profound consequences sometimes--especially when it's used in softwares that altogether affect millions or billions of people every day.
That is, pseudonumber generation in software does indeed affect a lot of people, and then if god isn't willing it, he has by the theory of chaos absolutely no control or grasp upon the world whatsoever in the end. The alternative is that you believe that god sometimes wills a random number, and most times doesn't. That would make me uncomfortable actually, but I guess that's why I don't believe in a supreme being having a will of its own, as opposed to us simply being governed by supreme principles or laws--I guess chaos is my god.
One concept I really like is to just identity map the whole address space and run everything with full priviledges. With a sufficiently high level memory safe language with good concurrency and memory regions support, you should be able to statically enforce most of the guarantees that the hardware provides and at the same time get rid of context switches. Untrusted code in a memory unsafe language would simply run in a VM.
I make a point to read TempleOS' comments. Looking past the frequent nastiness they're sometimes interesting and even poetic, in a way that's as sadly familiar as the intonation in these videos.
i've been through a lot of psychosis and feel like i can understand this guy. i had a psychotic break in late 2012 and thought strongly that catholicism was created to teach the world computer science concepts.
when you start reading about roko's basilisk, it's not a stretch at all to imagine that primitive human beings exposed to an artificial intelligence would think of it like 'god'.
HURD is functional, it's just not really used by anything or anybody, so it's missing a lot of features. It's also to some degree rotting, last I checked it still was limited to i386. But HURD distros do exist in variants like Debian HURD, albeit maintained by skeleton crews.
Point I am getting at is that it was made, it just was poorly timed. By the time it was semi-working, Linux was already entrenched. HURD couldn't collect momentum to really find a bigger niche.
I've not actually tried it, but I think the Debian HURD port got new wind a while back -- there are some references on the Debian/kfreebsd mailinglist that seem to indicate that some people are actually working on stuff on the HURD side (the former is a project to bring Debian "userland"/distro to the HURD kernel, the latter is the same for running Debian with a freebsd kernel (as opposed to a linux or solaris (see [ed:Nexenta, not Illumous as that is more of an Ubuntu/Solaris-thing] etc) one).
HURD is pretty actively maintained, I don't think it's rotting. Microkernel research just keeps outpacing their ability to implement so they've switched base kernels like 4 times now.
I actually like the idea of having to pick a random routine in a large codebase and then explaining it on the fly. Terry does a pretty good job at this, he's done similar things in other videos.
I love the idea of a built-in hotkey for jumping to a random line across the entire codebase. Like a fuzzer, but for your understanding of your project.
...and now I really want to write a vimscript to do the same.
import os; import random; os.system("vim %s +%s" % (lambda f: (f, random.randint(1,len(open(f).readlines())+1)))(random.choice([f for f in sum([[os.path.join(p, f) for f in fs] for (p, ds, fs) in os.walk(".")], []) if not ".git" in f])))
It's a great example of the trade-offs made in python (as opposed to, say, perl) design: It's not really a one-liner (yeah, it fits on one line, but it just cries out to be re-formatted) -- it's too verbose -- but the flip side is that it's actually rather readable.
As much as I appreciate what he did (most of us wrote a bare bones OS in school anyway), I'm not a fan of his racist comments. Some are incredibly specific like "I can't believe a nigger is the boss of a white guy, that just isn't right" or something like that. It's like he has these thoughts actually bottled up but cannot control them because of his illness. Nonetheless, my bad to rain on someone with such an illness. All the best to him.
> It's like he has these thoughts actually bottled up but cannot control them
It is not at all like he simply can't control them & would have the thoughts regardless.
That's not really how the disease works. I'm not saying you need to be a fan of his comments - but I do think he deserves a little more slack than you're giving him.
I think that everyone has these thoughts regardless of their efforts to be "pure of heart" or whatever. I know that I've yelled some really, really nasty things while driving that I'm ashamed to recall.
Terry's illness doesn't make him a bad person, and I think that all of us would be humbled and ashamed if our inner monologues' nastiest comments were broadcast to the world.
You don't have to like them -- I don't either -- but the poor man clearly suffers from mental issues. He can't help what he says, and I think people ought to be more understanding.
I hope medical science can one day find a way to help our friends like Terry find their way home. Until then all we can do is let him know that he is loved and respected by his peers, Terry you are one of us.
Off topic: lately, I've noticed a lot of dead HN comments and entire shadowbanned accounts that seem totally reasonable and on-topic. I really wish there was a way to flag dead comments that were auto-flagged as false positives, because in the past HN mods have said people who comment from IPs that were previously banned also get shadowbanned.
Next time, take a look into their comment history. A lot of hellbanned people are totally reasonable on some topics but have pet topics about which they can be incredibly obnoxious.
A little over a year ago I wrote a post about the problems I saw in Coffeescript, Terry commented that switching to TempleOS would prevent my complaints as I could use his C variant. Made my day to have him comment.
I'd just be happy for a usable Holy C. Growing up in the south, I can perhaps sadly deal with the political or racist rants. Putting that aside, I think the man is a genius who has much to offer the world. I'd love for someone like this to mentor me, though such a thing is hard to find outside academia.
After looking at some of videos and intro, he is onto something with this. You can always run this in vm, I can see how permissions and ownership can get in a way. By using subroutines, he gets every ounce of juice out of his machine.
Also document format, based on his description, sounds awesome.
This is clearly a statement of adoration, but even still, it is anti-helpful to perpetuate the use of the word "crazy" in conversations that touch on mental health.
Shine On is incredibly on-point here, since Syd Barrett himself went "crazy" to a degree and dropped out of the band. It's not a adoration of the person, it's an appreciation for Syd's inspiration or work. I'm not in Pink Floyd, but I very much like and appreciate the song.
It's more than that. This is an exact example of someone not understanding context, not using tools available to understand context, and then projecting their thoughts and beliefs onto someone else, all while completely avoidable.
If you have the means to read the comment on the internet, you also have the means to search that phrase or set of words and immediately see it's connected to a Pink Floyd song.
Even if you don't do the search, you're still projecting yourself onto their words.
"Crazy diamond" ... what makes a diamond a 'typical' diamond? Sharp/precise, clear, focused. Now let's look at 'crazy' - typically means extremely far beyond the average/normal point. Literally 'off the charts' but in this context, mentally off the charts. To be in possession of such qualities so strong that we can't even think about how possible that is, but here we have something that demonstrates that. A person that wrote their own hobbyist kernel and OS.
Is that easy to do? Show me your custom kernel & OS. Oh, don't have one? Then how many people do you personally know that have pretty much single handedly done that? Probably not that many. So you don't have a primary or secondary sources that you can speak to the dedication and depth of effort for this this task/accomplishment.
It removes power from the one actually being discussed as to encourage others to speak on the individuals' behalf, thus less emphasis and power on their own self-representation and more importantly, their own voice.
I think it is a perfect description: someone who is so clear and focused in their passion and pursuit of it to the extent that we can not comprehend the effort to achieve what he single handedly did, and the clear focused and beautiful nature of what they've created, straddling between pure effort and pure art. I think it's a very humanizing thing to show that mental illness is not inherently dangerous and not inherently bad and that those either showing signs or suffering are people first and foremost, and we should listen to what they have to say, not voices that claim to represent them.
I noticed you wrote a 28.0 word per sentence comment, with an average of 4.7 characters per word. This parent comment may be difficult for someone under the age of 8 to understand, and we may have a child accidentally browse HN. Please remember to think of the children. Don't use words that have multiple meanings, this could cause confusion in their lives.
My understanding is that he is mentally ill. I wouldn't read too much into that kind of stuff.
His technical chops are impressive. If you can filter out the racism/RNG-God stuff then he frequently has something interesting (although not always on-topic) to say.
That was my take on him too. He used to go on OSNews and rant about how God wants him to remove the "jitter" from modern operating systems, which is why he created TempleOS. He hasn't been on there in quite a while though.
As for his racism, I've seen that kind of thing as a side effect of schizophrenia in other people. Certainly, there are true racists in the world who aren't schizophrenic, but as with other mental disorders, it can bring out that kind of antisocial behavior.
*Edit: If I recall correctly, his username on OSNews was "ParadoxUncreated".
I don't understand the adoration some have for this guy after reading this in his "rants"..
"The nigger does not see the foot of God above his head. He thinks it's a cloud.
Hey, nigger? What's a government random number site for, nigger, you dumb-fuck?
Huh, nigger? A government random number site!!!
Dumb fucken nigger. Son of a bitch! Kill that nigger."
A lot of text (and HN comments) from TempleOS are randomized (i think markov chains) from dictionaries with apparently a bent toward racism and vulgarity.
ii) perhaps he has an illness that affects inhibition
It's a bit rude to just gossip about someone, especially when he reads (and posts to) HN. I always feel vaguely uncomfortable when this topic is discussed on HN.
I get the sense he's just compelled to post all that -- the random "Words from God", the racist stuff... it's not necessarily anything to do with inhibitions (or lack thereof), just rules he has to follow that won't make sense to us.
I was reading a random rant and noticed a "Fuck you, God." in there, in the middle of a few pages that seemed to be almost all compelled material and almost nothing else.
I.e., maybe it pisses him off that he has to post that stuff. But he has to.
Let's all hope Terry doesn't learn AI enough to equip TempleOS with the ability to learn (as well as networking). There's is no guessing as to what a randomized OS with a god-complex might do.
That God is a hypervisor? Or that religion is paravirtualization? I do know that we should be using some Ocaml/Lisp hybrid with hardware transactional memory support.
Yup. Terry Davis and his TempleOS are quite well known. I believe he suffers from schizophrenia although I do not know if this has been confirmed by anyone?
>@ID_AA_Carmack Lots of people think 640x480 16 color is real mode. TempleOS is long mode. God said 640x480 was a covenant like circumcision.
I do wonder though, some of the stuff he says not only has high comedic value, but is incredibly stereotypical of both angry disenfranchised nerds and right wing nuts, and has me wondering if it's just an epic troll job...
You don't seem to have a lot of empathy, or understanding of delusional disorders.
A delusion is a non-real thought that you perceive as true. Things like "I am Napoleon" or "The people on the roof across the street are talking about me" or "The CIA is watching me" are examples of delusions.
Schizophrenia is a profound delusional disorder where your entire mind is completely disorganized. Telling reality from the delusions are impossible because they are coming from the same brain hardware.
I very much doubt that someone intelligent enough to write a complete OS from scratch would be terribly abnormal as a person. Unfortunately Terry is sick, and unless he gets better, whole chunks of his mind are going to be simply wrong.
There's no way to tell; that said, someone with a strong delusional disorder will probably have very few thoughts unaffected by the disorder, and if you're adequately empathetic, you can be charitable and give your fellow humans the benefit of the doubt.
If you read through his "rants" section of his website, you will see he's not a racist, he doesn't call black people "niggers", just people he doesn't like.
He has some kind of autocomplete window here: http://i.imgur.com/DqeJKNN.png. The contents has some partial tokenizations that seem pretty characteristic:
'Sblood and 'Swounds sounds more like Shakespeare. They are archaic curses (corruptions of "God's blood" and "God's wounds" respectively); they certainly wouldn't appear in the Bible.
I have too. If you've never installed and peeked at TempleOS, it's worth it. In my opinion, it's an amazing balance of a whole lot of genius speckled with madness.
Yes he used to post on HN quite a bit, most of his posts get down voted into oblivion however because few knew who he was and his mental illness makes for some abrasive comments.
He still posts now and again, but whenever he makes new accounts they tend to get hellbanned fairly quickly so his audience here is mostly those of us with showdead on.
I think his accounts got hellbanned, because he posted a large number of non-sensical comments.
Objectively speaking, the comments were low-quality as published. To reach a larger audience, they would need some volunteers to separate and clean up the good ideas, and discard the nonsense.
> ...they would need some volunteers to separate and clean up the good ideas, and discard the nonsense.
I wish this was a feature on HN actually. It'd be nice if some accounts had the ability to "un-dead" a comment, in the same way that some accounts can flag or unflag posts and comments now.
I browse with showdead on and occasionally run across a comment from a submitter where the submitter was hellbanned for a specific incident but the comment itself is worthwhile.
I have a suspicion that if enough high-karma users upvote a dead comment, it becomes undead. I've seen dead comments become live again after I've upvoted them; it doesn't happen every time, but I wouldn't be surprised if multiple upvotes is a signal to undead a comment.
I think HN comments will continue to approximate slashdot's old comment system, as features are slowly added... first moderation, then meta-moderation...
No, one of them being a delusional disorder, which is literally the inability to know what is reality. I think racism is a pretty minor thing to throw at the guy when he literally cannot tell whether it makes sense or not.