[ / / / / / / / / / / / / / ] [ dir / animu / bestemma / desu / mde / monarchy / ptchan / tulpa / vichan ][Options][ watchlist ]

/tech/ - Technology

You can now write text to your AI-generated image at https://aiproto.com It is currently free to use for Proto members.
Email
Comment *
File
Select/drop/paste files here
Password (Randomized for file and post deletion; you may also set your own.)
* = required field[▶ Show post options & limits]
Confused? See the FAQ.
Expand all images

File (hide): c2063d2f3082d1e⋯.jpeg (105.64 KB, 706x422, 353:211, worship-Creator-of-creati….jpeg) (h) (u)

[–]

 No.1001860>>1001974 >>1001979 >>1001986 >>1002365 >>1002487 >>1002553 >>1007011 [Watch Thread][Show All Posts]

What is the UNIX philosophy? No, not "everything is a file". I mean the actual philosophy. Rigid modulation? A perfect blend of kernel and userland? Absolutely secure? A combination of all these things?

The state of UNIX today is so sad to me. We have Linux and BSD, the main free *nix's. We have macOS, a powerful, beautiful, but locked-down *nix. QNX, Minix, etc are unique but out-of-reach. Redox is political, and HURD seems like more of a hate-fuck than a love-child.

Within Linux, there is so many different philosophies and programs and dependces and forks that you either have to be a masochistic or a blind sheep to enjoy it.

Alternatives, like Windows and Haiku, are proprietary or in early beta.

Clearly, there's SOMETHING about Unix that makes it better than everything else. Linux may be the best of all the evils, but it's still evil. At its core, is UNIX good, or evil. It is a case of "hating the creator because of the creation"? Or is rotten from the core, like grafting branches onto a dead tree?

Is the problem of fragmentation and shitty programming answerable?

Most importantly, what is UNIX?

 No.1001863>>1001865

>What is the UNIX philosophy?

It's nothing more than taking ideas of simplicity and slapping a brand name on them. To add insult to injury, it doesn't even produce simple software.

>Rigid modulation?

What?

>A perfect blend of kernel and userland?

You mean the only blend?

>Absolutely secure?

The only way to really resecure a UNIX machine is to wipe it and reinstall from scratch, so no.

>The state of UNIX today is so sad to me. We have Linux and BSD, the main free *nix's. We have macOS, a powerful, beautiful, but locked-down *nix. QNX, Minix, etc are unique but out-of-reach. Redox is political, and HURD seems like more of a hate-fuck than a love-child.

I agree it's sad.

>Clearly, there's SOMETHING about Unix that makes it better than everything else.

It was free and too many people never learned about better systems and eventually inmates ran the asylum. There's nothing better about it in terms of merit.

>Is the problem of fragmentation and shitty programming answerable?

Yes, but that requires a coherent system, which UNIX will never be. It still uses X for graphics, because it never had its own solution, and so there's no native anything there. It doesn't provide solutions for so many things and never will.

>Most importantly, what is UNIX?

UNIX is a blight on computing.


 No.1001865

>>1001863

Anon, you make a lot statements. You might even be right. However I must reprimanded you for a) not providing specifics (aside from X) and b) not giving specific solutions.


 No.1001937>>1001955 >>1001974 >>1002521 >>1002721

being able to pipe programs to other programs which alows a bunch of small programs and utilities that do one job and that job well to be connected together to do a big job. not to say this is actually how it turned out.


 No.1001955>>1001969

File (hide): 1443576edd1d702⋯.jpeg (1.78 MB, 3627x2418, 3:2, w3-pfizer-a-20140514.jpeg) (h) (u)

>>1001937

Anon, do you think this could be realized? What would that require?


 No.1001969>>1001971

>>1001955

stop worrying about backwards compatibility and rewrite a bunch of it. it's mostly the users and new coders trying to make it windows when it's not and never supposed to be.


 No.1001971>>1002527

>>1001969

>make it windows

What did he mean by this?


 No.1001974>>1001983

>>1001937

It does work well until you slap a bunch of non-conforming software into it as replacements for the original software. GNU

Remember, those utilities were designed by a handful of people who worked intimately with each other for years if not decades, so they knew various nuances to their work.

GNU was a haphazard result that tried to emulate what UNIX did, but remember, GNU's Not UNIX. That's why simple scripting in Linux is so broken.

>>1001860 (OP)

The only UNIX you listed was BSD.


 No.1001978>>1001983 >>1006682

The solution to the unix question is plan 9


 No.1001979>>1001982 >>1002365

>>1001860 (OP)

u must be the most schizo dumbfuck after terry_the_negro.

u have a prob with linux, unix, mac... maybe us should stick to using the postal service!!! :D:D:D:D:D


 No.1001982

>>1001979

why not? Postal service is a great service and they have a pretty nice release model to back it up.

It's simple and clean with only 1 goal in mind, deliver.

Truely the followers of unix prensiples.


 No.1001983>>1001997 >>1006682

>>1001974

>It does work well until you slap a bunch of non-conforming software into it as replacements for the original software. GNU

Care to give specifics? Or you just gonna keep parroting arguments you've heard?

>Remember, those utilities were designed by a handful of people who worked intimately with each other for years if not decades, so they knew various nuances to their work.

You mean the original UNIX utilities or GNU?

>GNU was a haphazard result that tried to emulate what UNIX did, but remember, GNU's Not UNIX. That's why simple scripting in Linux is so broken.

The recursive naming scheme is merely a haxxor meme. That GNU is not UNIX does not mean it is not UNIX, but that it is not proprietary, as UNIX is. Think TRON restoring power to the users, and that's what Stallman sought to do with GNU.

>The only UNIX you listed was BSD.

I got coffee on my monitor from laughing to hard. Clearly, there is an implied definition of what I mean by UNIX (in case your reading comprehension is really that low, it's that UNIX is anything derived from or based upon UNIX) now the question is, what is UNIX? Linux was made to be binary compatible with UNIX. macOS received its license legitimately. Same with QNX afaik.

>>1001978

>The solution to the unix question is plan 9

Care to elaborate, anon? What is the "unix question"


 No.1001986>>1002002 >>1002057

>>1001860 (OP)

What makes you think UNIX is better than everything else? It's the most popular operating system, but that doesn't indicate it's the best.

What makes you think Linux is better than any other UNIX? Any of the BSD's are much better UNIX systems than Linux. MINIX3 is just on the horizon for being usable but it is fundamentally better than any BSD or Linux.

People talk about the UNIX philosophy and define it as how the original UNIX system worked. You could pipe programs to other programs, and it was small enough that it all worked in a consistent way. But that doesn't have anything to do with the way we use UNIX today. We use gigantic monolithic Web Browsers like Firefox and Window Managers like X11, that don't work anything like this idea of what UNIX is supposed to be. The "UNIX philosophy" stopped being real and became a meme when it was made irrelevant by how people actually wanted to use UNIX, instead of when it was a couple of designers in Bell Labs designing a system for it's own sake. In other words, when people wanted to use UNIX for real applications.

People talk about how Windows is impure compared to UNIX. In this way they can look externally towards the reason UNIX isn't following this philosophy, instead of inwards on the components of modern UNIX that I mentioned earlier. The real problem is not some kind of "Windows VS UNIX" mindset. (this is how UNIX users deflect introspection- it can become an ideology or a religion, where good is UNIX and evil is Windows - where "Windows" is everything that is not UNIX.) Really it is that there are real needs people had, that the UNIX idea of pipes, etc, did not scale too, like a GUI. So people created operating system's with GUI's, and now we have modern Windows and UNIX, which are not really very different from each other. They only are if you see UNIX as a religion.


 No.1001994>>1001995 >>1002025

>What is the UNIX philosophy?

Multics for niggers


Unix was a program gone bad. Born into poverty, its parents,
the phone company, couldn't afford more than a roll of teletype
paper a year, so Unix never had decent documentation and its
source files had to go without any comments whatsoever.
Year after year, Papa Bell would humiliate itself asking for rate
increases so that it could feed its child. Still, Unix had to go to
school with only two and three letter command names because
the phone company just couldn't afford any better. At school,
the other operating systems with real command names,
and even command completion, would taunt poor little Unix for
not having any job or terminal management facilities or for
having to use its file system for interprocess communication and
locking.

Then, bitter and emasculated by its poverty, the phone company
began to drink. During lost weekends of drunken excess, it would
brutally beat poor little Unix about the face and neck. Eventually,
Unix ran away from home. Soon it was living on the streets of
Berkeley. There, Unix got involved with a bad crowd. Its life
became a degrading journey of drugs and debauchery. To keep
itself alive, it sold cheap source licenses for itself to universities
which used it for medical experiments. Being wantonly hacked by
an endless stream of nameless, faceless undergraduates, both
men and women, often by more than one at the same time, Unix
fell into a hell-hole of depravity.

And so it was that poor little Unix began to go insane. It retreated
steadily into a dreamworld, the only place where it felt safe. It
took heroin and dreamed of being a real operating system.

It took LSD and dreamed of being a raspberry flavored three-toed yak.

It liked that better. As Unix became increasingly attracted to LSD, it
would spend weekends reading Hunter Thompson and taking
cocktails of acid and speed while writing crazed poetry in which it
found deep meaning but which no one else could understand:


$sed <$mf >$mf.new -e '1,/^# AUTOMATICALLY/!d'

make shlist || ($echo "Searching for .SH files..."; \
$echo *.SH | $tr ' ' '\012' | $egrep -v '\*' >.shlist)
if $test -s .deptmp; then
for file in `cat .shlist`; do
$echo `$expr X$file : 'X\(.*\).SH'`: $file config.sh \; \
/bin/sh $file >> .deptmp
done
$echo "Updating $mf..."
$echo "# If this runs make out of memory, delete /usr/include lines." \
>> $mf.new
$sed 's|^\(.*\.o:\) *\(.*/.*\.c\) *$|\1 \2; '"$defrule \2|" .deptmp \
>>$mf.new
else
make hlist || ($echo "Searching for .h files..."; \
$echo *.h | $tr ' ' '\012' | $egrep -v '\*' >.hlist)
$echo "You don't seem to have a proper C preprocessor. Using grep instead."
$egrep '^#include ' `cat .clist` `cat .hlist` >.deptmp
$echo "Updating $mf..."
<.clist $sed -n \
-e '/\//{' \
-e 's|^\(.*\)/\(.*\)\.c|\2.o: \1/\2.c; '"$defrule \1/\2.c|p"
\
-e d
\
-e '}'
\
-e 's|^\(.*\)\.c|\1.o: \1.c|p' >> $mf.new
<.hlist $sed -n 's|\(.*/\)\(.*\)|s= \2= \1\2=|p' >.hsed
<.deptmp $sed -n 's|c:#include "\(.*\)".*$|o: \1|p' | \
$sed 's|^[^;]*/||' | \
$sed -f .hsed >> $mf.new
<.deptmp $sed -n 's|c:#include <\(.*\)>.*$|o: /usr/include/\1|p' \
>> $mf.new
<.deptmp $sed -n 's|h:#include "\(.*\)".*$|h: \1|p' | \
$sed -f .hsed >> $mf.new
<.deptmp $sed -n 's|h:#include <\(.*\)>.*$|h: /usr/include/\1|p' \
>> $mf.new
for file in `$cat .shlist`; do
$echo `$expr X$file : 'X\(.*\).SH'`: $file config.sh \; \
/bin/sh $file >> $mf.new
done
fi


 No.1001995>>1002025

>>1001994


Eventually, Unix began walking down Telegraph Avenue talking
to itself, saying "Panic: freeing free inode," over and over again.

Sometimes it would accost perfect strangers and yell "Bus error
(core dumped)!" or "UNEXPECTED INCONSISTENCY: RUN
FSCK MANUALLY!" at them in a high pitched squeal like a
chihuahua with amphetamine psychosis. Upstanding citizens
pretended it was invisible. Mothers with children crossed to the
other side of the street.

Then one evening Unix watched television, an event which would
change its life. There it discovered professional wrestling and
knew that it had found its true calling. It began to take huge doses
of corticosteroids to build itself up even bigger than the biggest of
the programs which had beaten it up as a child. It ate three dozen
pancakes and four dozen new features for breakfast each day. As
the complications of the steroids grew worse, its internal organs
grew to the point where Unix could no longer contain them. First
the kernel grew, then the C library, then the number of daemons.
Soon one of its window systems was requiring two megabytes of
swap space for each open window. Unix began to bulge in strange,
unflattering places. But Unix continued to take the drugs and its
internal organs continued to grow. They grew out its ears and
nostrils. They placed incredible stresses on Unix's brain until it
finally liquefied under pressure.

Soon Unix had the mass of Andre the Giant, the body of the
Elephant Man, and the mind of a forgotten Jack Nicholson character.

The worst strain was on Unix's mind. Unable to assimilate all the
conflicting patchworks of features it had ingested, its personality
began to fragment into millions of distinct, incompatible operating
systems. People would cautiously say "good morning Unix. And
who are we today?" and it would reply "Beastie" (BSD), or "Domain",
or "I'm System III, but I'll be System V tomorrow." Psychiatrists
labored for years to weld together the two major poles of Unix's
personality, "Beasty Boy", an inner-city youth from Berkeley, and
"Belle", a southern transvestite who wanted a to be a woman. With
each attempt, the two poles would mutate, like psychotic retroviruses,
leaving their union a worthless blob of protoplasm requiring constant
life support to remain compatible with its parent personalities.

Finally, unbalanced by its own cancerous growth, Unix fell into a vat
of toxic radioactive wombat urine, from which it emerged, skin white
and hair green. It smelled like somebody's dead grandmother.

With a horrible grin on its face, it set out to conquer the world.


 No.1001997>>1002014 >>1002055

>>1001983

GNU is hacked together garbage.

The original UNIX utilities were made by a handful of people who knew what they were doing.

>Clearly, there is an implied definition of what I mean by UNIX

Ok. It was fun talking.


 No.1002002>>1002005 >>1002057

>>1001986

>now we have modern Windows and UNIX, which are not really very different from each other.

At the kernel level, from my understanding they're very similar. In practice, I think only Mac OS would be close to Windows. Nothing like this in the FOSS world unfortunately. I doubt that will change either. Seems like the world is stuck with XWindows and multiple desktops/apis/hundred ways to reinvent the wheel.


 No.1002005>>1002006

>>1002002

Programming X11 and POSIX isn't that different from the Win32 API. Either way X11 and all of the other important programs are totally divorced from this idea of the "UNIX philosophy". It basically doesn't exist anymore outside of the command line, which only has the remnants of the original interface.


 No.1002006

>>1002005

Oh, I'm just saying that Aqua and Windows GUI aren't running in usermode. They're integral to the OS (Windows more than Aqua, I guess). Unlike XWindows.


 No.1002014

>>1001997

GNU's Not UNIX


 No.1002025


 No.1002055>>1002068

>>1001997

>GNU sucks

<Care to elaborate? Maybe give specifics?

>GNU is hacked together garbage.

Thanks anon. Quality reply.


 No.1002057>>1002082

>>1001986

>any of the BSD's are much better UNIX systems than Linux...

In what way? What makes them better? At the kernel level or in userland?

>>1002002

>At the kernel level... they're very similar

In what way, anon?


 No.1002068>>1002139 >>1002167

>>1002055

>Thanks anon. Quality reply.

He's not wrong though.


 No.1002082>>1002167

>>1002057

>In what way, anon?

Just the obvious mostly. They're both monolithic and both evolved along the same timeline of OS research (UNIX/VMS). In other ways, they're functionally similar (if not exacting) on process/task/memory management. Both very portable and support the same array of hardware (Windows isn't limitless SMP wise).


 No.1002096>>1002167

UNIX, as conceived by the original team at Bell Labs is dead. The last release was 10th Reserach Unix from 1989 and it was closely related to 4.1BSD that already implemented ideas outside the simple concept of Unix like symbolic links and sockets.

Basically, everything went sour when networks where introduced[1]. Before that, computers were just giant machines with terminals connected with serial lines. The *nix we have today is a Frankstein's Monster Operating system, designed without network and graphics in mind and later implemented as a second thought.

[1]https://idea.popcount.org/2016-11-01-a-brief-history-of-select2/


 No.1002139

>>1002068

It's a shit answer while being technically correct. This means it's meaningless.


 No.1002167>>1002177

>>1002068

I never said he is. However, for mine and other anons education, I'd like for him to give some specifics. A truth statement is only as useful as the understanding behind it.

>>1002082

Not really specific at all, just more buzz words, but oh well.

>>1002096

Interesting. I always thought it was the GUI that did more harm, but I see where you're coming from. Do you think this was the advent of networking itself, or the fact that because of networking you had more people giving opinions and code that turned it to shit? Also, do you think Plan 9 is a better modern OS? Thanks for the source, too.


 No.1002177>>1002241 >>1002291 >>1002470 >>1006590 >>1006676

File (hide): 4919edb532684bd⋯.webm (7.78 MB, 322x240, 161:120, the_blit.webm) (h) (u) [play once] [loop]

>>1002167

Unix was desined to be an OS for time sharing machine with text terminals. Having network is not the problem, same for raster terminals. Unix did have a well implemented solution to raster graphics, The Blit, but X11 was already in wide use.

By the late 80's the world of computing was changing. Instead of huge machines with connected to terminals through serial lines, there were single user working stations connected through Ethernet. The Unix model became inadequate, because each machine was running a time sharing OS designed to be a central piece to terminals. Managing stuff like hosts and route still is a nightmare today for *nix networks, because they can't be centralized. So many places (my workplace included) just provides a ssh to your working environment and the terminal you do as you want, some go with Windows, others Linux and the faggots with Mac OS X.

The late 80's was the time the team behind Unix began developing Plan 9. With network in mind, sharing resources is a breeze, with a single command you can share anything you want, although not recommended in public networks, for that you need Factotum, but is easy to configure, now try sharing anything in *nix. Maybe you go for sshfs, or NFS, maybe FTP, every single one with annoying quirks, it doesn't feel like it is part of Unix. That doesn't happen in Plan 9.

Well, the problem today is that Plan 9 lacks many software now commonplace, like web-browser (the WWW is broken, but everyone use it so you have little choice) and video playback. If you are a programmer, try Plan 9's C. There is also Inferno, but I'll leave this to you, the post is big enough.

Finally, X11. X11 was designed on MIT, the original purpose was to be network transparent and it managed to do that for some time, but just like Unix itself, it was pushed way beyond its purpose. Today X11 is NOT network transparent due to extensions like shared memory, that can't be network transparent.

I can go on and on, read the history of Unix and X11, its interesting.


 No.1002237

UNIX is self-defeating. It has a solid idea of small programs that each do one thing and combine to do more complex things. However, the implementations almost always have a massive several-million line binary running the whole show. It's because of this that I wish things such as Minix or HURD became more successful. HURD in particular seemed as though it would become mainstream had Linux not come along, if Linus Torvalds in 1993 is anything to go by

>I can (well, almost) hear you asking yourselves "why?". Hurd will be out in a year (or two, or next month, who knows), and I've already got minix

>I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu)

I guess with Google working on Fuchsia, this problem will be solved. To bad it'll be botnet as fuck. Oh and there's also Genode.


 No.1002241

>>1002177

Hey anon thanks for taking the time to write this out. I _want_ to run plan9, but I don't have much of a home network and im not a very good programmer, so I have such little practical motivation.


 No.1002291

>>1002177

Did Rob Pike have his ear pierced?


 No.1002294>>1002355

if u want unix use a BSD variant, linux doesnt give a fuck about unix, it's all broken poetteringware stitched together, its very much like windows these days


 No.1002341>>1002355 >>1002361 >>1002362

>small programs that do one thing

What a truly stupid idea. And the only thing Unix niggers could ever win on was fucking toy text parsing programs because that's all their junk ass 'small programs' can even do.

<see my philosophy is to make small modular programs which makes every day tasks a breeze, for example a (add), mul(multiply), di(divide), isp (is a prime). Now give me any simple mathematical problem and I will amaze you with my one liner.

holy shit I'm a 115IQ sysadmin sign me up for fields medal power at my fingertips.


 No.1002348>>1002360

Linux

Is

Not

Unix

Xer idk lmao get coc'd


 No.1002355>>1002365 >>1002410

>>1002294

Care to elaborate on what you mean?

>>1002341

Why doesn't it work well? The only example you gave was that it worked well for some stuff.


 No.1002360

>>1002348

You are thinking of GNU

GNU is not Unix


 No.1002361>>1002366 >>1002478

>>1002341

The concept of small parts working together to archive a bigger result isn't exclusive to Unix. Think about an assembly line, one person alone can't build a car by himself, but he can weld a new part on the bodywork so far. No one knows how to make a pencil[1]

Small parts working together is the basis of languages like FORTH or Lisp that you build larger functions with smaller ones and even the shell pipes behave a lot like a functional language[2].

So stop hating on this concept because you don't like Unix, I bet you're the same guy claiming that people use shell pipes because they feel smart by doing so.

[1]http://doc.cat-v.org/economics/i_pencil

[2]http://xahlee.info/comp/unix_pipes_and_functional_lang.html


 No.1002362

>>1002341

you disagree with modern computing my good friend. Every single program is made out of smaller programs if it does anything useful.


 No.1002365>>1002521

>>1001860 (OP)

The Unix philosophy just means that "a program should do a one thing and do it well" and that the programs should be made to be interoperable. According to the Unix philosophy, you should always make programs output to be easily used as input in another program. You should also test your programs often and automate as much of the programming work as possible.

>>1001979

Admit it, Terry was right (kind of). The "today's" operating systems are all legacy software. Your Linux, MacOS and Windows are all emulating 70s terminals (actually Windows is the most "modern" of the bunch in this respect but it's still awful) https://www.invidio.us/watch?v=gBE6glZNJuU

BONUS: TempleOS code walkthrough: https://www.youtube.com/playlist?list=PLMPNPqYiVStCQ_fAwdRZ_1dNT-TP-JhXO

>>1002355

For example, NetBSD is much closer to original Unix/BSD than Linux.


 No.1002366>>1002368

>>1002361

>The concept of small parts working together to archive a bigger result isn't exclusive to Unix.

This is an example of what I meant when I wrote the UNIX philosophy is nothing more than taking ideas of simplicity and slapping a brand name on them and, to add insult to injury, it doesn't even produce simple software.

Subprogram boundaries are good and obviously work, but the boundaries UNIX uses are only good for extremely trivial compositions.


 No.1002368

>>1002366

Yeah turns out piping around unstructured data is shit. It is webdev shit tier.


 No.1002410

>>1002355

>Linux people do what they do because they hate Microsoft. We do what we do because we love Unix.


 No.1002413>>1002416 >>1002521

File (hide): 97484c86cc77e6b⋯.webm (8.49 MB, 426x240, 71:40, moskau1979.webm) (h) (u) [play once] [loop]

Wasn't one of the main reasons for the Unix philosophy, or way of building tools, was to save system resources because the machines weren't particularly powerful?

They implemented similar logic into the same program, do one thing and do it well, and then used the shell, specifically piping and scripting, to glue a bunch of these small programs into a new meta-program for some specific purpose. This screams trying to stop programmers from writing the same logic in different programs, hence saving resources and being minimal.

The problem is that we no longer have those same kind of resource constraints yet still a lot of software is written in that way. A lot of people write shell scripts thinking that what they just created was minimal, and it may have been for the environment(and/or time period) that the Unix philosophy was created for, but it truly isn't minimal nowadays. Most people aren't cognizant of the dependencies needed for that shell script to run: you need a shell bundled with an interpretter(BASH is at least 50K LoC) and the external programs you're piping to(sed, awk, grep, etc. all with lots of functionality you're not using). Yet people still shout and say, "this program is only 50 lines of shell script!" and behave as if the dependencies aren't there. For many of these programs, it would be less total LoC, less dependencies, less disk space, and more performant to just write them as discrete programs rather than shell scripts.

It's not that I dislike the Unix philosophy, it just feels like its implementation should change for the current computing environment.


 No.1002416

>>1002413

>yet still a lot of software is written in that way

like what


 No.1002465>>1002478 >>1002521 >>1002615 >>1003738

File (hide): 940091a96ae822f⋯.jpg (893.68 KB, 1500x843, 500:281, wabiwabi.jpg) (h) (u)

This, right here, is Unix. It's imperfect and often far from intuitive (much like chopsticks, which I'm sure you weebs use regularly), it's a conglomeration of patched up pieces and it creaks like an old house. However, it was designed with simplicity and modularity in mind (this doesn't necessarily mean it is simple or modular though), and it's beautiful in it's own right. Software is always gonna suck, so it's all about sucking less and I think that's where unix shines.

Eric S. Raymond expands on what this philosophy is in "The Art of Unix Programming". Read the relevant chapters if you're interested enough.

>https://en.wikipedia.org/wiki/Wabi-sabi

>http://www.catb.org/esr/writings/taoup/html/philosophychapter.html

I also liked particularly enjoyed the section "Is Emacs an Argument Against the Unix Tradition?"


 No.1002470

>>1002177

doesn't git kind of solve this file sharing stuff? or do you mean on a larger scale (like, say, sharing multi-GB multimedia libraries)?

git feels like unix to me


 No.1002478>>1002522

>>1002361

>an assembly line

lol it's opposite land over here

>shell pipes behave a lot like a functional language

ok now you are trolling

>>1002465

>far from intuitive

What an understatement.

>it's all about sucking less

That or killing yourself, right.


 No.1002487

>>1001860 (OP)

>Clearly, there's SOMETHING about Unix that makes it better than everything else.

Why? Chances are any justification for that could be used to justify saying that Windows is (still) good. The fact that any of this shit is still around is a symptom of stagnation (and the innovation that happened in the 80s failed for the most part, because being Jewish and having money trumps quality every time). No one invents shit nowadays except for Terry, they just make more of the same. Occasionally a different OS that is just based on something old like everything else. If people refuse to reinvent the wheel, then it's no surprise that they have been using the same wheel for almost 50 years.


 No.1002521>>1002523 >>1002569

>>1001937

>do one job and that job well

>>1002365

>"a program should do a one thing and do it well"

>>1002413

>do one thing and do it well

A debugger that dumps core and overwrites the original core file it was trying to debug is the definition of "well" for UNIX weenies. There's a famous paper called "An Empirical Study of the Reliability of UNIX Utilities" which came out of the UNIX community itself.

>Operating system facilities, such as the kernel and utility programs, are typically assumed to be reliable. In our recent experiments, we have been able to crash 25-33% of the utility programs on any version of UNIX that was tested.

>Wasn't one of the main reasons for the Unix philosophy, or way of building tools, was to save system resources because the machines weren't particularly powerful?

The UNIX "tool" philosophy was a kludge so they could get "tools" originally not designed to work together to work together, like those programs that work by moving your mouse pointer and faking keypresses. The proper solution in both cases is to use a binary interface.

>This screams trying to stop programmers from writing the same logic in different programs, hence saving resources and being minimal.

That's what libraries do. Libraries were around for decades before UNIX and they do a much better job.

>>1002465

>http://www.catb.org/esr/writings/taoup/html/philosophychapter.html

>Many pressures tend to make programs more complicated (and therefore more expensive and buggy). One such pressure is technical machismo. Programmers are bright people who are (often justly) proud of their ability to handle complexity and juggle abstractions. Often they compete with their peers to see who can build the most intricate and beautiful complexities. Just as often, their ability to design outstrips their ability to implement and debug, and the result is expensive failure.

Bright people can tell the difference between good software and a pile of shit. UNIX weenies don't mind "accidental" complexity like C and JavaScript brain damage or not being able to use compound literals with C macros because they didn't think about the interaction between commas and the preprocessor, but they complain about anything that's actually useful to the programmer even though the lack of brain damage makes it simpler than UNIX languages that do less.

>http://www.catb.org/esr/writings/taoup/html/ch07s03.html

>Though Unix developers have long been comfortable with computation by multiple cooperating processes, they do not have a native tradition of using threads (processes that share their entire address spaces). These are a recent import from elsewhere, and the fact that Unix programmers generally dislike them is not merely accident or historical contingency.

>From a complexity-control point of view, threads are a bad substitute for lightweight processes with their own address spaces; the idea of threads is native to operating systems with expensive process-spawning and weak IPC facilities.

Let me guess, this was written before Go came out and Eric S. Raymond completely changed his opinion on threads after Go made them "simple and elegant."

>as of mid-2003.

How did I know that?

The  statement  fixing  bugs  would  break  existing  code  is  a  powerful
excuse for Unix programmers who dont want to fix bugs. But there might
be a hidden agenda as well. More than breaking existing code, fixing bugs
would require changing the Unix interface that zealots consider so simple
and easy-to-understand. That this interface doesnt work is irrelevant. But
instead of buckling down and coming up with something better, or just fix-
ing the existing bugs, Unix programmers chant the mantra that the Unix
interface is Simple and Beautiful. Simple and Beautiful. Simple and Beau-
tiful! (Its got a nice ring to it, doesnt it?)

Unfortunately, programming around bugs is particularly heinous since it
makes the buggy behavior part of the operating system specification. The
longer you wait to fix a bug, the harder it becomes, because countless pro-
grams that have the workaround now depend on the buggy behavior and
will break if it is fixed. As a result, changing the operating system interface
has an even higher cost since an unknown number of utility programs will
need to be modified to handle the new, albeit correct, interface behavior.
(This, in part, explains why programs like ls have so many different
options to accomplish more-or-less the same thing, each with its own slight
variation.)


 No.1002522

>>1002478

>killing yourself

I don't think he was able to enjoy the wasabi my friend, he got way to caught up in this ideal of a beautiful holistic system, and that's why i think it's important to point out that it will never be good so we should just appreciate what we have.


 No.1002523>>1003529

>>1002521

>they complain about anything that's actually useful to the programmer even though the lack of brain damage makes it simpler than UNIX languages that do less

like what, for example?

I didn't know unix programmers have a reputation for disliking threads. And what's wrong with Eric changing his mind?

And what are all these bugs I keep hearing about? Not even trolling, the coded post flat out says their embedded in the OS interface. Is it really a bug that ls has so many options? I wouldn't really consider that a bug, but I haven't looked at the code. It just sounds like a typical (and beneficial) consequence of keeping programs simple. But again I have no idea.


 No.1002527

>>1001971

gnome 3, dbus, freedesktop cancer, systemd botnet, etc.


 No.1002553>>1002554 >>1006961

File (hide): 1b54bfd813c775c⋯.png (12.81 KB, 800x600, 4:3, about-mac-os-9.png) (h) (u)

File (hide): eb4c03797d8391d⋯.png (229.49 KB, 1024x768, 4:3, qnx621-1-1.png) (h) (u)

File (hide): 4a599f8f526f81c⋯.png (92.4 KB, 1600x1024, 25:16, 1491778767840.png) (h) (u)

>>1001860 (OP)

If you want to know what a good modern Unix system looks like, take a look at Solaris and derivatives like OpenIndiana and Tribblix. The kernel source is crazy clean and everything works so smoothly. There's all sorts of great features like DTrace and ZFS.

But like any other OS these days, it's missing the main feature that makes a desktop OS worth using, which is the GUI. Now obviously you could use Gnome or MATE or any of the various desktops or window managers that work on other *nix systems but they all suck fat logs of shit. The only graphical interfaces that were done well enough that I enjoyed using them were Classic MacOS, QNX, and IRIX. Every other GUI I've seen has been disgusting garbage that's non-functional and inconsistent, or just ugly in ways I can't even begin to explain to plebs with shit taste.


 No.1002554>>1002639

>>1002553

Dear sir, may i intrest you in gnustep?


 No.1002569


 No.1002615>>1002737

>>1002465

cringe


 No.1002639>>1002724

>>1002554

GNUstep is real excellent. However, it's a shadow of what NeXTstep was. The main problem I see is that there's no good unified design language like in macOS. Even tho I'm not the biggest aqua fan in the world, the fact that all programs have a unified interface makes me wet.


 No.1002721>>1002738 >>1006676 >>1006682

>>1001937

This is it in a nutshell.

Plan 9 is supposed to be the next Unix, they basically redid everything from scratch after learning their lessons. In fact it's still a kind of Unix in a way, as Plan 9 literally evolved from Research Unix 10. You can see the foundations of it if you poke around the Unix source code archives at minnie.tuhs.org plus there's a lot of neat shit there too including the full source for an early Matlab which is still usable on a modern Linux or BSD machine.

Install 9front and get comfy with it, it's kind of nice. That's what Unix was supposed to be as the project was wrapping up at Bell Labs.


 No.1002724>>1002726

>>1002639

>it's a shadow of what NeXTstep was

GNUstep is 100% Nextstep and Openstep compatible, library wise. It's a complete implementation of the Openstep spec with many additions from OS X. You even have Display Postscript with the proper setup. If you still have the source code for any Nextstep or Openstep programs, assuming they are written in device-agnostic Objective C (ie no assembly calls or dedicated weird old DSP functions) it will compile and run just fine on GNUstep.

Windowmaker implements the look and feel of Nextstep or Openstep perfectly, you can even do neat things like register services. It's a totally usable, 100% faithful clone. Sadly there aren't many programs which are developed for GNUstep but it is complete and usable and with some care it's still possible to develop a program on GNUstep which will compile and run just fine on OS X today.


 No.1002726>>1002755

>>1002724

Thanks anon I will look more into it. I ran it in the past but I'll be honest I didn't read very much into it.

Is there any projects to implement GNUstep in the Darwin Kernel?


 No.1002737

>>1002615

cringe


 No.1002738>>1002809

>>1002721

>install 9front

I've been thinking about installing a recreational OS, and I've been torn between TempleOS, Linux From Scratch and Plan9 (..inferno?). I'm leaning towards Plan9 just because the suckless crowd seems so obsessed with it.


 No.1002755

>>1002726

There was a Darwin / GNUstep OS distro a long time ago, maybe 10 years or more. The underlying OS doesn't really matter though, GNUstep / Openstep is designed across OS's and I don't think there are any real life Darwin users so it died.


 No.1002809>>1002814 >>1002815 >>1003798

>>1002738

>templeos

It's a C64 but with C and for a generic modern PC. It's neat but it's a toy. If you bother with it, make sure to get one of the older versions from before the glowniggers mucked with it and removed AfterEgypt, the crowning jewel of Terry's TempleOS.

>Linux From Scratch

It's useful to know how to bring up Linux on some hardware. If you're going to bother, I'd try to target something real new which doesn't have Linux yet, or something old which hasn't been bothered with in 20 years. It's not really recreational, it doesn't help you to relax nor is it "fun" for most people even with autism accounted for.

>Plan9 (...inferno?)

9front is the way to go and it's at least theoretically supported even on old ass 68K series hardware, PowerPC, and like 15 architectures. Many probably haven't been brought up in ages but I'm sure you'd find plenty of community support if you tried.


 No.1002814

>>1002809

>I've been thinking about installing a recreational OS

>templeos

>It's a C64 but with C and for a generic modern PC. It's neat but it's a toy.

ok


 No.1002815>>1002994

>>1002809

>>1002809

>with C

No.

HolyC is not C.

C++ is not C.

There are properties shared in C with those languages, but they are all unique.


 No.1002994>>1006682

>>1002815

Plan 9 C is also unique tbh.


 No.1003529>>1003583 >>1006682

>>1002523

>I didn't know unix programmers have a reputation for disliking threads

Blame pthreads.

>And what's wrong with Eric changing his mind?

That's the thing with the Multicuck: the only thing he hates more than a Unixfag is a Unixfag who changes his mind or adopts features from other OSes despite him also pushing Unix to adopt his favourite features from his favourite operating systems, even if they don't fit. Notice how he froths at the mouth whenever Plan 9 is mentioned but never actually posts any criticisms of it.

>And what are all these bugs I keep hearing about?

The paper he cited is from the late 80s and his usenet quote is probably from that era too.


 No.1003583>>1003715

>>1003529

>adopts features from other OSes

The common argument is that they were done badly, for a number or reasons. X is a prime example of something most people would agree is a shitheap.

>The paper he cited is from the late 80s and his usenet quote is probably from that era too.

You would be hard pressed to find many useful OS and compiler related papers post 95, believe me I've been looking.


 No.1003715>>1003762 >>1003766

>>1003583

The problems that X solved aren't really problems any more. The idea was to run your programs on some powerful Unix machine and use a cheap X terminal to view and interact with them. Still it's useful for the right application, and it will never go away completely.

I don't trust Wayland though.


 No.1003738>>1003797

>>1002465

How are chopsticks "far from intuitive"?


 No.1003762>>1003923

>>1003715

>I don't trust Wayland though.

Any legitimate reasons?


 No.1003766

>>1003715

>I don't trust Wayland though.

Any legitimate reasons?


 No.1003797>>1003802

>>1003738

they come with instructions on every package for a reason, forks do not


 No.1003798

>>1002809

sounds like you'd recommend 9front out of those then? I was kinda leaning that way anyway, I'd like to see what all the hipster hype is about


 No.1003802

>>1003797

I can tell you haven't seen people who have never been trained with a fork.


 No.1003923>>1004069 >>1004076 >>1006642

>>1003762

The only reason people don't trust Wayland is because it's being "pushed" the same way SystemD was.


 No.1004069

>>1003923

This is enough tbqhf.


 No.1004076>>1004078

>>1003923

Wayland was started by the people who maintain X.org and is still developed by those same people. The reason why it started because the X.org experts could see how all the Unix world were using the X11 system and how the X11 system was totally unsuitable for how it was used in practice. Wayland was born to promote a way to display graphics without the legacy architectural baggage that was not needed for modern display systems.


 No.1004078>>1004196

>>1004076

Sadly it's botnet though...


 No.1004196

>>1004078

Sauce?


 No.1006590>>1006642 >>1006676 >>1006708

>>1002177

Forgive me, I'm a huge newfag to all this. The long and short of it is that, despite the actual "philosophy", the UNIX system was only ever meant for command-line and networking use, nothing else?


 No.1006642>>1006676 >>1006682

>>1006590

That's wrong, see Plan 9.

>>1003923

The reason I don't like Wayland is that there's no xlib/xcb to do applications without depending on bloated toolkits.


 No.1006676>>1006682

>>1006642

>That's wrong, see Plan 9.

>>1002177

>The late 80's was the time the team behind Unix began developing Plan 9. With network in mind, sharing resources is a breeze, with a single command you can share anything you want, although not recommended in public networks, for that you need Factotum, but is easy to configure, now try sharing anything in *nix. Maybe you go for sshfs, or NFS, maybe FTP, every single one with annoying quirks, it doesn't feel like it is part of Unix. That doesn't happen in Plan 9.

>Well, the problem today is that Plan 9 lacks many software now commonplace, like web-browser (the WWW is broken, but everyone use it so you have little choice) and video playback.

>>1002721

>Plan 9 is supposed to be the next Unix, they basically redid everything from scratch after learning their lessons. In fact it's still a kind of Unix in a way, as Plan 9 literally evolved from Research Unix 10. You can see the foundations of it if you poke around the Unix source code archives at minnie.tuhs.org plus there's a lot of neat shit there too including the full source for an early Matlab which is still usable on a modern Linux or BSD machine.

So it was going to be the next UNIX iteration that fixed many of the problems that existed at the time, but no one ever actually used it. And, instead, continued to develop for the older, flawed, UNIX system and proceeded to build upon that, which brings us back to: >>1006590

>the UNIX system was only ever meant for command-line and networking use, nothing else


 No.1006682>>1006749 >>1006956

>>1001978

>>1001983

>>1002721

>>1002994

>>1003529

>>1006642

>>1006676

<Plan 9 is a distributed operating system, designed to make a network of heterogeneous and geographically separated computers function as a single system.

Is Plan 9 a botnet being pushed by the CIA?


 No.1006708

>>1006590

It was meant for teletypers which you can think of as networked typewriters.


 No.1006749

>>1006682

>Plan 9 being pushed

really? where?


 No.1006956

>>1006682

>Is Plan 9 a botnet being pushed by the CIA?

Imagine being this ignorant. Install 9front faggot.


 No.1006961

>>1002553

Window managers like i3 are tolerable. I can't deal with modern ui's for work anymore. I only have kde installed on my entertainment and fap box.


 No.1007011

>>1001860 (OP)

It can be summarized as: "All software is bad. Everything is a lie."




[Return][Go to top][Catalog][Screencap][Nerve Center][Cancer][Update] ( Scroll to new posts) ( Auto) 5
90 replies | 7 images | Page ???
[Post a Reply]
[ / / / / / / / / / / / / / ] [ dir / animu / bestemma / desu / mde / monarchy / ptchan / tulpa / vichan ][ watchlist ]