[ / / / / / / / / / / / / / ] [ dir / agatha2 / arda / danch / doomer / gay / grimes / vichan / zoomer ][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): feab21c1a3da8ea⋯.jpg (1.73 MB, 3072x2048, 3:2, Iron-man_2008-1-1200x707.jpg) (h) (u)

[–]

 No.965637>>965659 >>965662 >>965699 >>965721 >>965736 >>965756 >>965861 >>966123 >>967561 >>968758 [Watch Thread][Show All Posts]

What is the best possible first language to learn? I want to start with solid foundations. Ultimate goal is becoming real life tony stark.

I heard scheme/lisp is the way to go and if i can learn that first it would be way easier to get a hold of other languages since i would be able to understand the philosophy.

But i'm not %100 sure because MIT uses python rather than scheme for its computer science program.

http://lambda-the-ultimate.org/node/5335

https://cemerick.com/2009/03/24/why-mit-now-uses-python-instead-of-scheme-for-its-undergraduate-cs-program/

So what do you guys think?

 No.965651>>965662 >>965689 >>965711 >>965764 >>965848

Anybody have any recommendations on books or materials to learn C++? I am complete beginner and possibly retarded. It seems many books weren't updated for the new standard/11 and am unsure of any good source to learn from.


 No.965659>>965764

>>965637 (OP)

For a first programming language, you can't really go wrong with python or scheme.


 No.965662>>965670 >>965704 >>965709 >>966363 >>966398 >>966612

>>965637 (OP)

>>965651

It literally does not matter.

Learn javascript just because it's the easiest language to learn. Then move onto something else when you understand how code works. The important thing is that you eventually learn how low level programming and data works, i.e. so you understand that for instance an integer is 4 bytes on some location in memory and not just some magic number that exists in the ether.

I don't usually post my opinions on this topic because I disagree with literally everyone, but I'll make an exception because I'm in a jaded mood:

Books are overly verbose shit that contain way too much disjointed information, 95% of what you read will be pointless padding that makes it much harder to grasp the actually important points. You're better off reading a short tutorial to get started and then make programs yourself from there, and search for answers when you don't know how to do something. Watch/read video lectures about CPU caches and programming concepts and stuff over time to enhance your knowledge.


 No.965670

>>965662

thank you for the suggestion !


 No.965677>>965764

Scheme. It's simple and consistent.


 No.965689


 No.965699>>965727 >>965764 >>967542

>>965637 (OP)

The reason MIT started using Python sucks. As your article says, MIT is not teaching the same things they used to. ITS, Multics, and Lisp machines originated at MIT. They believed their students could understand these systems back then, but the systems today are too bloated for anyone to understand.

>The world isn’t like that anymore. At some point along the way (he may have referred to the 1990’s specifically), the systems that were being built and the libraries and components that one had available to build systems were so large, that it was impossible for any one programmer to be aware of all of the individual pieces, never mind understand them. For example, the engineer that designs a chip, which now have hundreds of pins generally doesn’t talk to the fellow who’s building a mobile phone user interface.

>The fundamental difference is that programming today is all about doing science on the parts you have to work with. That means looking at reams and reams of man pages and determining that POSIX does this thing, but Windows does this other thing, and patching together the disparate parts to make a usable whole.

This is because of the 60 million line problem. Everything written in C needs so much code that nobody can understand a whole OS anymore, and it sucks.

    Your message to unix-haters of Tue, 24 Sep 1991
14:15:45 PDT was forwarded to all members of the
computer research staff at MPCSL. I thought I would
send you some comments. I have been a UNIX-hater for
15 years, which is how long I have been at MPCSL. I
avoided the UNIX revolution until it was recently
foisted on me. At MPCSL, we formerly had three
completely incompatible programming environments:
InterLISP, Smalltalk, and Cedar. This was viewed by
the new powers as very bad and in need of fixing. So
we moved to commercial UNIX-based platforms. So now we
have about 30 incompatible systems (text editors and
formatters, mail systems, versions of the OS, file
formats, programming languages, window systems, window
managers, toolkits, ... ). instead of three, with more
being added every day. Top this with the incredible
morass that is SunOS and it is no wonder that you are
wondering.

Up until recently, we owned everything from the
hardware to the microcode to the applications. We
could fix anything that broke at any level; we could
evolve wonderful new systems. How do we "fix" the X11
releases or the SMTP protocol or SunRPC??

In my opinion, things got the way they are because
market forces completely overwhelmed technological
forces. Because UNIX was free (or nominally licensed)
it came into wide use, first in CS and EE departments
and later in the world. To some, moving from MS-DOS or
worse, it seemed like a win. To those of us who have
been around for a while and are aware of the
alternatives, it seemed like a nightmare. We thought
it would go away when users came to their senses. We
were naive. Sigh. Meanwhile, thanks to BSD, UNIX grew
like Topsy, or more like barnacles encrusting a sunken
ship. Ultimately, UNIX began to be viewed by decision
makers who were not technically competent as a panacea
for competing technologies.


 No.965704

>>965662

>Learn javascript just because it's the easiest language to learn.

No. It's not.


 No.965709

>>965662

>javascript

>the easiest language to learn

objectively false


 No.965711

>>965651

If C++ is your first language, please don't. Otherwise I've heard good things about c++ primer.

If you're good at math you can go for scheme. Otherwise I'd suggest either python or ruby.

C could also work, and if you don't learn it first I'd suggest you learn it afterwards.

Thread will probably be deleted so either go to the sticky or the /prog/ sticky.


 No.965721>>965731 >>965838 >>965976 >>966169 >>966398 >>995779

>>965637 (OP)

First learn the shell, learn it before you learn any other language. The shell is not for programming, but for glueing programs together. You will be surprised how far that can get you. the shell is like duct tape, you will be using it all the time.

As for real programming languages, it depends.

> C

Small and easy language, close to the metal. Good if you want to do lower-level stuff and twiddle individual bits. Higher-level tasks like string manipulation become a pain though. It will also teach you to be careful because of how easy it is to shoot yourself into the foot.

> Python

Simple syntax and gigantic selection of libraries. It does a lot of things "magically" for you at the cost of performance, but if performance doesn't matter it's a good choice. Use it if you want to get shit done quick&dirty, but still want something that can scale up.

> Javascript

The only language for scripting web pages. It's OK for what it was meant to do, but don't use it for other tasks. The main problem is that Javascript was designed to be used by retards, assuming that if the code is wrong it's better to guess what the programmer had in mind rather than crash hard and tell the programmer to fix his shit. The script will chug along just fine until it does something stupid and you will have no idea why.

> Lisp (Common Lisp, Scheme)

Some of the best languages, being dragged down by the autism of their communities. Use it if you don't need a large community and want a powerful and elegant language. They have some fantastic concepts (the syntax, metaprogramming) which blow other languages out of the water. However, the communities are smaller, there are fewer libraries and chances are you won't find many people to work with. It also happens that the standards leave so much room for interpretation, that every implementation becomes its own minor dialect. Notable implementations are SBCL (Common Lisp), GNU Guile (Scheme) and Racket (formerly a Scheme, but has since become its own thing).


 No.965727>>965734 >>965782 >>965976

>>965699

>At MPCSL, we formerly had three completely incompatible programming environments: InterLISP, Smalltalk, and Cedar. This was viewed by the new powers as very bad and in need of fixing. So we moved to commercial UNIX-based platforms.

So they used three different languages. And then they switched from an unnamed OS to UNIX and everything went wrong. What was the unnamed OS that they used before UNIX? Whatever it was it must have been better than UNIX. I would like to know what OS it was so that I could run it. Does anyone know what it was? Why wasn't it mentioned specifically?


 No.965731>>965800 >>965834 >>965976

>>965721

The fucking shell is the cancer of UNIX.


 No.965734>>965745 >>965751 >>965782

>>965727

SunOS, nigger.


 No.965736>>965838

>>965637 (OP)

I stopped programming 7 years ago when I dropped out of college and gave up on everything, but decided to learn it again because people can't design software to save their lives and I'm unhappy with everything that I currently use (I can't find anything that I couldn't massively improve pretty easily if I made it myself), so I just want to make everything from scratch, since I have the time and the autismbux. I'm just relearning C, and I know a little bit of Common Lisp, but C should give me optimal performance, and that's what I want, because that is simply always important to me. What people say really doesn't have any value to me because they can't prove shit, so it's safe to assume that they don't know what they're talking about. The fact is that C has been so widely used for so long that not knowing it isn't something that I can get away with right now. If I need something else for some reason, I can learn it later pretty quickly. Not a big deal.

Also, someone could easily argue that the hard way is the best way, so difficulty isn't all that relevant. Doing things the easy way may end up making you soft and limiting you in the long run. It could make difficult things more difficult later on. You probably shouldn't think about that too much. Just go and learn something. Until you actually know exactly how computers work, you probably shouldn't have an opinion anyway, since you won't be able to test and verify anything yourself, and adopting someone else's opinion is a dumb idea because they are probably wrong and what they say has no real merit.


 No.965745>>965751 >>965765 >>965976

>>965734

Okay.. So are UNIX haters hating on the commercial version of UNIX, or are they hating on the generic OS that we call UNIX?

SunOS is UNIX. And if the author of that text is complaining about moving from SunOS (UNIX) to UNIX then I don't understand his complaint and criticism at all.


 No.965751

>>965745

>>965734

You better respond to me and explain your position and offer valid justification for your inadequate reply.


 No.965756>>965838

>>965637 (OP)

>Ultimate goal is becoming real life tony stark.

Step one is to get adopted by a wealthy industrialist and inherit his company and fortune when he dies, then.

Jokes aside, the "what should be muh first programming language /tech/?" rarely results in a helpful thread for the OP, especially when the prompt is so unfocused. What do you mean "becoming real life tony stark?" Do you want to work on designing futuristic battlefield equipment? Or something else?


 No.965759>>965838

It doesn't matter whether you started with a shit language or not.

As long as it helps you understand programming a little.

>learn windows shell or windows cmd promt (whatever it is called)

>learn basic c++ (no gui)

<learning variables

>then c# and java, c++ (oop I)

>then php (c++) and html/css for web (frameworks and importing extensions APIs etc)

<learn databases + include them on oop/web languages

>js - easiest one (nearly optional since you could deploy oop/web without it)

note: js is a bit useful despite being the cancer that killed the golden internet days

>then ditch everything above go straight into assembly then baremetal shit like c/c++ from scratch

>do a bit of python

>linux/unix shell

>qt gtk or something (oop II)

>optional - play with templeos

>optional - try nosql and new meme hipster shit like go/haskell

>go back to assembly where it's at

>lisp and other decent 'obscure' languages like ada

>maybe involve yourself into writing some game engine or something


 No.965763>>965768 >>965777 >>965780

>ctrl+f

>no programming socks

✓ programming socks


 No.965764>>966569

>>965659

>>965677

>>965699

daily reminder that it took lispfags TWO MONTHS to produce a 30+MB executable of a barebones text editor

>>965651

pic related


 No.965765>>965777

>>965745

>So are UNIX haters hating on...

They were a collection of lolcows and literal paid shills for VMS. None of that shit had any real meaning and I have no idea why it was dug back up.


 No.965766

x86 assembly. not that it's good but because everything uses it. C LARPers will sound like faggots once you do this


 No.965768>>966173

File (hide): 556d2e27777f65d⋯.png (178.8 KB, 965x584, 965:584, anime_slippery_slope.png) (h) (u)

>>965763

They're the gateway to faggotry, self harm, and suicide. Get clean. Need a version of this image tailored to tech.


 No.965777>>965778 >>965976

>>965765

These messages are between these supposed "shills." Why would shills shill to people they knew were shills?

>>965763

>>>/bog/


 No.965778>>965976

>>965777

It was like any "grass roots" shit today like "I need feminism because" signs. Some are lolcows, some are normalfags, some are "as a white man, I..". These weren't walled-off communities, mailinglists and newsgroups (and write/talk) were the main ways we communicated and were more like reddit. Shilling was in high gear at that time and every tech community around the date of implosion of UNIX is full of it.


 No.965779>>965838

File (hide): 4b222c8d0ebd69f⋯.jpg (96.89 KB, 800x787, 800:787, order.jpg) (h) (u)

Either Python or Scheme is a good place to start. Scheme has a more minimal syntax, which will force you to think about things on a fundamental level. People who studied other languages find recursion difficult, but that's not a problem for lispers. Python has more libraries, which will demystify a lot of seemingly complex tasks for you. That's huge motivation to somebody just getting started.

I started with Scheme personally, but I don't think you'd be wrong in choosing Python

Whatever you do, do not start with C, C++, Java, C#, Ruby, Javascript, Common Lisp, or Haskell. You should learn some of them eventually (especially C and Haskell) but they are not nearly as valuable to beginners as Scheme or Python are.


 No.965780

>>965763

POLECAT KEGABS


 No.965782>>965976 >>966229

>>965727

All of those languages are from Xerox. It was probably the Xerox Star or the Xerox Alto.

>>965734

double nigger


 No.965785>>965804 >>965838

Never learn scheme, haskell, or common lisp. You'll have to unlearn a lot of bad ideas that never worked.


 No.965800

>>965731

Go use windows stupid nigger


 No.965804>>965810

>>965785

t. LARPer


 No.965810>>965818

>>965804

I have bugs older than you.


 No.965818

>>965810

Only the ones still lodged in your rectum.


 No.965834>>965842 >>965976

>>965731

Yes, but that's what we are stuck with, so suck it up. It's like duct tape, good for sticking things together quickly, and if you try to do something complex and brittle you are an idiot for using the wrong tool.


 No.965838

File (hide): 4f6a060069d1c56⋯.jpg (144.59 KB, 750x982, 375:491, index.jpg) (h) (u)

>>965721

>>965779

>>965759

>>965779

thanks. i think i will start with scheme by reading SICP. If i am not autist enough i can always switch to python anyway. and yeah i'm planning to learn C and haskell too in the future.

>>965736

I like your philosophy but if one of the best university in the world does something, they gotta know something that i don't know right? and i'm not just relying on one person. I'm merely gathering feedback and advice so i can think about it myself with enough information.

>>965785

>You'll have to unlearn a lot of bad ideas that never worked.

such as? can you please elaborate?

>>965756

Its just an unrealistic ideal to aim for really. I know its not possible to graduate from MIT with two masters at 17, create advanced exoskeleten, figure out cold fusion and make sentient AI.

My goal is to understand most of the STEM fields. From cryptography to robotics. I want to work with cutting edge tech like artificial intelligence, nanotech, superconductors etc. It would be nice to have my own company and not worry about financials when i'm doing the research and engineering too. I know it doesnt sound very plausable but thats what i want.


 No.965842

>>965834

You don't understand, it's cancer. It spreads. You start something in it thinking it'll be small, the project grows and becomes more important, new features that should have been in a language that isn't impossible to make bug-free are getting written in shell, other programs that need to talk to that program have to exec a shell as there's no way to do IPC, those programs start adding shellscript stubs to call the other shellscript to have control of the shell to fix some of its issues, those shellscript stubs start increasing in size as attempts to work around the infinite issues with shell are added, etc..

You can avoid this by not writing anything in shell. Otherwise, you're just gambling on failing to write anything useful enough in shell for it to become malignant. Meanwhile, we are still digging out from the decades old legacy of "what could possibly go wrong?" use of shell like libtool that was a small shell project that went malignant and has probably wasted many billions of dollars of electricity since its creation.


 No.965848>>965862

>>965651

C++ Primer by Lippman is the best book imo, but use The C++ Programming Language for reference.

Do not buy C++ Primer Plus because it teaches C-like C++, but C primer Plus is a good book on C.


 No.965861

File (hide): 30bf333b6706a6b⋯.jpg (3.42 MB, 5000x2813, 5000:2813, mr-robot-season-3-4k-rq.jpg) (h) (u)

>>965637 (OP)

You are me. I'm going to learn Haskell.


 No.965862>>965865

>>965848

>C-like C++

AKA how not to use C++ like a pajeet


 No.965865>>965870

>>965862

if you want to use C, why not just use C ? There is no sense in using C++ if in reality you want to use C (C is often the less-niggerlicious choice) Stephen Prata's C++ Primer Plus uses a language standard from last millennium and C++ has evolved a lot since then, so it's better to use another book. If you want to learn C++, you should learn C++11 or newer. But it's crucial to also learn about pointers and dynamic memory allocation.


 No.965866>>965867 >>966399

File (hide): 39759d91cd5f775⋯.jpg (113.15 KB, 573x892, 573:892, lua chan.jpg) (h) (u)

>ctrl f

>no lua


 No.965867>>965871 >>965873

>>965866

You know what, you just convinced me to try lua. Think I will start with this? https://www.lua.org/pil/contents.html


 No.965870>>965920 >>965926 >>965939

>>965865

>if you want to use C, why not just use C ?

Because you can use C++ as "C with useful tweaks and additions", not as "C-like language with 70 tons of terrible features stacked into an eldrich abomination of bloat".


 No.965871

>>965867

https://www.lua.org/manual/5.1/

https://luajit.org/luajit.html

5.1 is luajit version (lua but almost as fast as c and can use c data types and call c functions)

after 5.1 design flaws like _ENV exist.


 No.965873


 No.965920>>965925 >>965961

>>965870

>C with useful tweaks and additions

such as?


 No.965925

>>965920

Templates for compile-time type checking instead of casting to and from void pointers all over the place.


 No.965926

>>965870

oh yeah add 10 billion bloat to get the class keyword or closures or whatever is trendy these days


 No.965939

File (hide): bc0fdc9ddb25da2⋯.webm (159.58 KB, 316x236, 79:59, improving-the-c-language.webm) (h) (u) [play once] [loop]


 No.965961

>>965920

The right way to write C++ is sparingly. If you force yourself to use all the horrible shit in C++ you'll wreck your code.

The programming language benchmark thing on Debian's server used to be a good example of this as they had a rule that the C++ benchmark should be using C++ features where they exist and as a result it was slow and bloated compared to C. I went to get an example to paste but they seem to have replaced them with C-like C++ and also crippled the C versions to not use macro expansion. It's like someone got their dick bent at C++ losing and rigged it. The level of bullshit is pretty high now actually, like even using GNU extensions in the C++ and not providing a hashtable at all in C:

>using HashTable = __gnu_pbds::cc_hash_table<K, unsigned, typename K::Hash>;


 No.965976>>965999 >>966006 >>966018 >>966229 >>972141

>>965721

>First learn the shell, learn it before you learn any other language. The shell is not for programming, but for glueing programs together. You will be surprised how far that can get you. the shell is like duct tape, you will be using it all the time.

The "shell is not for programming" is UNIX weenie bullshit like "C is portable assembly." The shell was meant for programming, but it sucks at it, so they made up bullshit like "it's really not for programming, it's just glue." Anyone who believes that doesn't know about shar, configure scripts, or the many other uses of shell before Perl and Python mostly replaced it.

>Small and easy language, close to the metal. Good if you want to do lower-level stuff and twiddle individual bits. Higher-level tasks like string manipulation become a pain though. It will also teach you to be careful because of how easy it is to shoot yourself into the foot.

C to UNIX was meant to be like PL/I to Multics and Lisp to Lisp machines, but C sucks, so they said it's "portable assembly" and string manipulation is a "hard problem" because "assembly" (on a PDP-11) doesn't do anything about strings. C weenies only think it's good at bit twiddling because it's even worse at everything else, but it even sucks at that. Common Lisp, Ada, and PL/I support bit manipulation on long strings or arrays of bits, which work the same on 1 or 1000 bits. C makes you shift and mask everything and split bit sequences into words and bytes because that's how the PDP-11 works.

>>965727

>>965782 is correct.

https://en.wikipedia.org/wiki/Interlisp

https://en.wikipedia.org/wiki/Mesa_(programming_language)

https://en.wikipedia.org/wiki/Smalltalk

>>965745

SunOS is what replaced their previous systems and it's what he was complaining about. There's a saying that goes something like "the only time Sun would make something that doesn't suck is when they make a vacuum."

>>965777

>Why would shills shill to people they knew were shills?

Because they're not shills. They made it because the systems they used had to be replaced by UNIX because clueless "decision makers" were forcing them to use it. Like he said, "market forces completely overwhelmed technological forces" and "decision makers who were not technically competent" were behind it. It's the same kind of bullshit that leads to using Java for business software and JavaScript for everything not running in a browser (and many things in a browser).

>>965778

The shilling was coming from the UNIX community. UNIX weenies shilled so hard that it sounds like a parody, like this Sun bullshit about "Why UNIX Will Win on the Desktop". It's all bandwagon effect bullshit that has nothing to do with technological aspects of UNIX itself. Lisp machines, VMS, Multics, etc. were marketed to the technically competent user. Everything is about what you can do with the machine, not what other people are doing. UNIX was marketed to the "decision makers who were not technically competent" who are only concerned with what other people are doing (or what they think they are doing) because they lack the technical knowledge to evaluate anything themselves.

>>965834

>Yes, but that's what we are stuck with, so suck it up.

Unless you and >>965731 both work at AT&T, you are not stuck with it. That attitude is why there's so much shit software out there.

Date: Wed, 30 Jan 91 11:53:59 EST
Subject: Propaganda


Just so you know what the enemy is babbling about these days...

		Why UNIX Will Win on the Desktop 

By Dr. Eric E. Schmidt
Sun Microsystems, Inc.

It's trendy to say that the line between PCs and workstations is
blurring. The real truth is that UNIX-based systems are taking over,
and by the end of the 1990s, the market will clearly distinguish
between two types of desktop computers: machines that run DOS and
machines that run UNIX. DOS machines will be purchased primarily as
single-user systems for stand-alone applications. And in the long run,
the only single-user machines the only DOS machines will be in people's
homes.

Why is this? Because the power of distributed, networked computing is
effecting a profound change on corporations. The fact is that humans
are inherently networked: we inherently need to commmunicate with each
other. Anyone that has networked application needs will turn to
UNIX-based solutions, because UNIX is the only multi-tasking,
multi-user, multi-vendor operating system available today. That's what
makes it the only choice for the next generation of distributed
applications. That's why UNIX will win. It's the closest thing the
industry has to a pure open standard. Because AT&T Bell Labs made it
available in source form in the 1970s, nearly all systems companies
either base themselves on UNIX or offer a form of it, including major
players such as IBM, Apple, Intel, HP, Sun, DEC, Olivetti, Fujitsu and
Unisys.


 No.965999>>966018

>>965976

Nobody cares about about butthurt posted almost 30 years ago on some mailing list for nerds you keep reposting in every thread. Be useful for once and go write a proper text editor in Lisp.


 No.966006>>966338

>>965976

>C makes you shift and mask everything and split bit sequences into words and bytes because that's how the PDP-11 works.

That's how all modern ISAs work. Can't bitch about that and also that it's not portable assembly. Choose a side, faggot.

>The shilling was coming from the UNIX community.

This is how I can tell you weren't there. The shilling and FUD at that time from the corporate players was unprecedented and ridiculous and eventually imploded that whole market. Tradeshows were pure venom and ham-fisted attempts to seed watercooler memes about the competition. You cluelessly copypaste some of that in threads.


 No.966018>>966019

>>965999

I am not >>965976 , but are you the one who keeps bitching about the text editor? I bet you don't know about the old Lisp Systems. Also, what is Gnu Emacs? You fucking nigger monkey.


 No.966019>>966314

>>966018

>GNU Emacs

A C editor with a Lisp interface. Made in C because it would be way too slow and unportable otherwise, but still manages to be slow.


 No.966123>>966142 >>966338

>>965637 (OP)

>What is the best possible first language to learn? I want to start with solid foundations. Ultimate goal is becoming real life tony stark.

Short answer:

C/C++ can be used for embedded and PC programming. Avoid using pointers.

If you get familiar with C/C++ first, you will look at a lot of other oddball stuff and wonder why they even bothered.

Longer answer:

Many early languages were intentionally kept extremely simple due to limitations in memory capacity at the time.

They tried different fundamental concepts to get around the limited syntax, and they weren't really made to be easy to write.

They're not good, they're just old.

They are re-taught mainly for academic reasons, and only still used where the output required is easily within their abilities.


 No.966132>>966136 >>966220 >>966400

Bare metal: C

Data analysis and scripting: Python

Web: Javascript

You only need three


 No.966136>>966220

>>966132

>Bare metal: C

>2018

>still using C for bare metal

Get with the times and do bare metal in a browser so you can program it using javascript.


 No.966139

C


 No.966142

>>966123

>Avoid using pointers

>C

Larper detected


 No.966169>>966314

>>965721

LISP is cancer. Screw functional programming.


 No.966172>>966314


 No.966173>>966174 >>966225 >>966259 >>966307 >>966612 >>1002565

>>965768

I hate this image, because as a trap, it's so, so wrong

I never went through a mgtow stage or misogyny stage, traps aren't about hating women and tfw no gf

whoever made that is a fucking retard and a normalfag, and you're a cucked normalfag moron for posting it


 No.966174

>>966173

>As a deviant, I...


 No.966220

>>966136

>>966132

>he doesn't use Web Assembly

goml


 No.966225

>>966173

I suggest you get the vocal chord thing. most traps still have masculine voice


 No.966229>>966288 >>966338

>>965976

I asked what OS the writer was using before he switched to UNIX. You provided no answer and only posted links to wikipedia pages that I had already read. You say that >>965782 is correct, but he did not name the OS either, so he can't possibly be correct. He named the hardware, and of course the hardware is different than the OS.

One of the computers named by >>965782 ran an OS called Pilot. There is barely any information about it online. I have gathered that it was a single-user OS with some bizarre design features. For starters, it was run in triplicate. That is, three instances of the OS were run concurrently. Further:

>Much of the design of Pilot stems from an initial set of assumptions and goals rather different from those underlying most time-sharing systems. Pilot is a single-language, single-user system, with only limited features for protection and resource allocation. Pilot's protection mechanisms are defensive, rather than absolute [9], since in a single-user system, errors are a more serious problem than maliciousness. All protection in Pilot ultimately depends on the type-checking provided by Mesa, which is extremely reliable but by no means impenetrable. We have chosen to ignore such problems as "Trojan Horse" programs [20], not because they are unimportant, but because our environment allows such threats to be coped with adequately from outside the system. Similarly,Pilot's resource allocation features are not oriented toward enforcing fair distribution of scarce resources among contending parties. In traditional multi-user systems, most resources tend to be in short supply, and prevention of inequitable distribution is a serious problem. In a single-user system like Pilot, shortage of some resource must generally be dealt with either through more effective utilization or by adding more of the resource.

>only limited features for protection and resource allocation

>ignore such problems as "Trojan Horse"

I would like more information about Pilot. Why was Pilot better than UNIX? Why have I never heard of it? Why have YOU never heard of it, despite your criticism of UNIX and your opinion that the OS's predating UNIX were better? I want a comparison of Pilot to UNIX. And I want to know of other OS's that are similar to Pilot and how those compare to UNIX.

I agree with many of the criticisms of UNIX. I like that Pilot was implemented in about 24,000 lines of code, but there is no evidence that it was better than UNIX. In the absence of anything better than UNIX I will continue to use it. I have asked anti-UNIX advocates time and again for a viable alternative to UNIX and every time they fail to offer a real suggestion. Instead they try to direct the discussion to other topics to avoid admitting the truth: There is no viable alternative to UNIX and the anti-UNIX advocates lack the tech skills to do anything about. Rather than make any real effort at improving the situation they complain incessantly.

I want an alternative to UNIX. So again I ask you. What should I use instead of UNIX?


 No.966259>>966270

>>966173

That pic was showing the natural progression. Of course you can skip steps and jump straight to faggotry.


 No.966270>>966289 >>966314

>>966259

That pic is fundamentally wrong, because that isn't the natural progression, at all

mgtows and incels hate women because they can't fuck them, so they aggressively jerk off to them


 No.966288>>966338 >>966354 >>966612

>>966229

>I want an alternative to UNIX

Too bad. UNIX is like C in that it's closely mapped to the hardware and you build your additional shit on top of it.

The only departure from it in the future will be when we stop using the hardware for security. I've mentioned it before but small brains don't think I'm serious: all code will run in ring 0 and using the same page table. User code, kernel, code, etc.. No hardware protection between processes at all. Programs will all be compiled down to a form that can be verified as safe by the OS prior to running. IPC and syscalls will just be regular calls. It will be much more efficient.


 No.966289>>966931

>>966270

>mgtows and incels hate women because they can't fuck them, so they aggressively jerk off to them

And the next step is looking for an alternative to women, which leads to fucking or fapping to traps.


 No.966307

>>966173

Nobody cares faggot. Go back to /g/.

This is an actual technology board.


 No.966314>>966372 >>966609

File (hide): dd7b2857f1562e5⋯.jpg (30.03 KB, 375x535, 75:107, boku.jpg) (h) (u)

>>966019

Gnu Emacs isn't slow. Stop using (((spacemacs))) Run Emacs in daemon mode, if the startup time is too slow for you (for me it's just a couple of seconds even with gtk/motif GUI) Btw, did you know that you don't have to close the window at all, in fact you can use Emacs as your login shell, if you really want to. Also, most of Gnu Emacs is written in lisp, all that's written in C is the core. But nice FUD overall, you fucking nigger shill.

>>966169

Lisp isn't necessarily functional; lisp supports all past and future paradigms of programming.

>>966172

Thanks for the links, anon!

>>966270

Pls stop being in denial, fag.


 No.966338>>969922

>>966006

>That's how all modern ISAs work. Can't bitch about that and also that it's not portable assembly. Choose a side, faggot.

Modern ISAs have bit extract and insert, like LDB and DPB on the PDP-10, which the Lisp functions are named after. C weenies expect to shift "long long" on a computer where shifts can only shift 8-bit bytes one bit at a time. They expect to do multiplication on a computer with no multiply instruction. That's because the compiler takes care of handling this, just like compilers for other languages. The only complaint anyone has about segmentation or tagged memory is that C can't run on it well, which means C is not very portable because only C and C++ have problems running on this hardware.

>The shilling and FUD at that time from the corporate players was unprecedented and ridiculous and eventually imploded that whole market.

Those corporate players and shills were all UNIX companies. I'm talking about the world outside of UNIX and C. UNIX-Haters were people who used Xerox and Symbolics workstations, mainframes, VMS, ITS, Multics, etc.

>>966123

>C/C++ can be used for embedded and PC programming. Avoid using pointers.

You can't do anything with strings or arrays in C without pointers.

>If you get familiar with C/C++ first, you will look at a lot of other oddball stuff and wonder why they even bothered.

They "bothered" because of hardware, lines of code, the time it takes to write software, security, readability, compile-time checks, run-time checks, debugging ability, compiler size, data sharing, IPC, concurrency, and many other important reasons.

>>966229

>I asked what OS the writer was using before he switched to UNIX.

The OS Xerox made that was intended to run on the hardware.

>I would like more information about Pilot.

http://www.mcjones.org/paul/pilot/pilot.html

http://pages.cs.wisc.edu/~sschang/OS-Qual/kernel/pilot.htm

>Why have I never heard of it? Why have YOU never heard of it, despite your criticism of UNIX and your opinion that the OS's predating UNIX were better?

For the same reason UNIX weenies say UNIX was the first OS written in a high-level language and the first OS with a hierarchical file system even though Multics did both before UNIX existed and the inspiration for doing it in UNIX came directly from Multics. The revisionism is even worse than it was when the UNIX-Haters wrote about it.

>I want an alternative to UNIX. So again I ask you. What should I use instead of UNIX?

Mezzano, once it's good enough.

>>966288

>Too bad. UNIX is like C in that it's closely mapped to the hardware and you build your additional shit on top of it.

Bullshit. The UNIX file system, processes, users, /proc, /dev, pipes, and all that other bullshit that the hundreds of system calls provide are abstractions created by software. The "tools" have even less to do with hardware, unless the hardware happens to be a PDP-11 tape drive. Lisp machines, VMS, Multics, MacOS, etc. provide totally different abstractions. There might be some similarities because a lot of them have a hierarchical file system, but file systems are not the only way to use disk space.

>The only departure from it in the future will be when we stop using the hardware for security.

Hardware can be used for security (provided there are no secret programs and OSes like C and MINIX in Intel ME), but it's not. A user mode program cannot do anything unless the kernel allows it to. All of these security problems are design flaws in UNIX itself.

>I've mentioned it before but small brains don't think I'm serious: all code will run in ring 0 and using the same page table.

That's how Lisp machines work except there is hardware protection in the form of tagged memory. Lisp machines are designed to give the user control over everything running on the computer.

>> I once went to hear a talk by Thompson at MIT.  Thompson
>> said one of the professors had said to him, "I hate you.
>> UNIX stopped all research in operating systems." Thompson
>> apologized.

Actually, it's more the hardware vendors fault. For
about 15 years now, the solution has been to throw more
hardware (memory, cpu cycles, graphics co-processors, and so
on) at the users. UNIX has the dubious advantage of looking
more like "a real operating system" to the microprocessor
crowd (who are used to CPM/MSDOS/etc).

So they think that by installing unix, it makes their
system into a "real computer". In fact, unix is just a
minicomputer operating system (at best). So what they end
up with is a box with more MIPs than a 70s mainframe, more
memory than a 70s mainframe, more disk than a 70s mainframe,
and a 70s minicomputer operating system. And it runs about
as fast as a 70s minicomputer, asn supports as many users.

The wonder is that anyone is surprised.


 No.966354>>966378 >>966612

>>966288

>when we stop using the hardware for security

<what is spectre

>Programs will all be compiled down to a form that can be verified as safe by the OS

<let's just formally verify all our programs

>It will be much more efficient.

<...

>small brains don't think I'm serious

<...


 No.966363

>>965662

i agree with this nigger. I'd like to add though that the first lang doesn't really matter. I wouldnt recommend a lisp tho. It's an entirely different approach than the procedural syntax in C-like languages.

Also when I got into programming it looked like magic, but once I grasped that all I did was either use a library or create my own tiny library from other libraries, it was a major step in understanding programming. From there on you'll be able to be productive relatively fast in a lot of other languages.


 No.966372>>966545

>>966314

>don't use a sane set of configuration files that make emacs more usable and less autistic

Niqqa pls.


 No.966378>>966612 >>966621

>>966354

>what is spectre

You can easily solve this with either less retarded CPU datastructures or by adding an instruction that flushes sensitive CPU datastructures.

>let's just formally verify all our programs

Did the word "verify" confuse you? Read about Java bytecode verification for an example.


 No.966398

File (hide): 6281f80ad5d3a53⋯.gif (2.08 MB, 305x380, 61:76, cat has had enough.gif) (h) (u)

>>965662

>Javascript

Fuck you. >>965721 is one of the best responses in this thread.


 No.966399

>>965866

>those short shorts

*unzips pants*


 No.966400

File (hide): 69bdccdb58b6e83⋯.gif (269.07 KB, 234x249, 78:83, advisor.gif) (h) (u)

>>966132

honestly, this is about right.


 No.966545>>966561

File (hide): e25c8460be27d36⋯.png (189.29 KB, 480x255, 32:17, kill_yourself_faggot.png) (h) (u)

File (hide): 1876f68ac79993b⋯.webm (1.39 MB, 1280x720, 16:9, Terry_where_it_all_went_w….webm) (h) (u) [play once] [loop]

>>966372

(((spacemacs))) is niggerlicious cancer even if you prefer vi keybindings. I happen to unironically prefer vanilla Gnu Emacs keybindings (remap caps lock to control) Just install the packages you actually need, instead of using the flavour of month meme distribution of Gnu Emacs.


 No.966561>>966567

>>966545

spacemacs let's you avoid the ricer faggotry... oh wait a gentoo flag.


 No.966567>>966592

File (hide): ca34c6c18cdb377⋯.jpg (22.13 KB, 447x400, 447:400, heh.jpg) (h) (u)

>>966561

>spacemacs let's you avoid the ricer faggotry... oh wait a gentoo flag.

By including a lot of crap you probably won't use even once? Pls, that's not even an argument. No one forces you to rice anything. You could just install evil-mode (if you so wish) and m-x customize-themes and be done with it. It's that simple. This is way easier than to customizing vim, for example.


 No.966569

>>965764

Here's the ebook. It doesn't have page numbers just so you know.


 No.966592>>966601 >>966615

>>966567

Let's see /g/entard

>By including a lot of crap you probably won't use even once?

Like what? Like an irc client? you moron.

>No one forces you to rice anything.

The entire point of emacs is ricing.

>m-x customize-themes and be done with it. It's that simple.

lol you think people install dozens of packages because they want colorschemes? Fucking hell.

>muh vim

Typical gentoo user you only think in memes.


 No.966601>>966615


 No.966603>>966614 >>966615

No one actually uses emacs anymore. You can tell as there are no full plugins to other IDEs like there are for vim.


 No.966609

>>966314

I have a botnet current year intel i7 ddr4 nvme nvidia quadro laptop and I think emacs is pretty slow. Its not the loading times, startup takes no time, but its buffer manipulations that don't feel snappy. I'm getting my hands dirty with textadept atm to see if I can replace emacs and keep my bindings. I've been loving elisp and emacs for the past 4 years, but somehow it just creeped in that it doesnt display caret movement or key insertions as it should.


 No.966612

>>965662

>muh caches!!!!!!!!

typical LARPer. caches are introductory material in "CS" and gamedev

>>966288

>Too bad. UNIX is like C in that it's closely mapped to the hardware and you build your additional shit on top of it.

UNIX is based on strings which is ultra inefficient, insecure, and buggy

>>966173

there are lots of people like this, especially around chans, reddit, and /pol/

>>966354

found the small brain

>>966378

java bytecode verification is buggy shit tho. but the problem of code isolation is easy to solve really


 No.966614

>>966603

you retarded vim nigger. Emacs is the only program you need. Emacs doesnt need extensions to IDEs because its fucking emacs and that functionality you're after by

>full plugins to other IDEs

is at least available in melpa


 No.966615>>966622 >>966759

File (hide): 4b1b41559000b51⋯.jpg (9.84 KB, 265x191, 265:191, mc_killyourself.jpg) (h) (u)

>>966592

>>966601

>Like what? Like an irc client? you moron

<not even knowing that the standard distribution of Gnu Emacs includes stuff like a web browser, an email client and a IRC client

Also, are you unable to even install packages yourself, or what's the problem?

>The entire point of emacs is ricing

lol no, except maybe for a NEET such as yourself.

>lol you think people install dozens of packages because they want colorschemes? Fucking hell.

I meant that you don't have to install anything else to be productive while using Gnu Emacs. But with vim, you just have to install a lot of packages to get the work done.

>Typical gentoo user you only think in memes.

Why are you so butthurt? Most people compare Gnu Emacs to vim (since many consider them to be good editors) Also, Gentoo isn't just a meme, in fact Gentoo is the most sane distribution of Gnu+Linux.

>>966603

Most people who use Emacs just don't want to use other editors or IDEs because their editor is very extensible and easily customized to fit their own workflow and to their own liking, unlike the vim weenies' editor that just isn't as nearly as extensible or as easily customizable.


 No.966621

>>966378

I was actually thinking about writing a PoC kernel that has VM in the scheduler executing (LLVM?) bytecode as JIT, maybe expanding it out later. Does anyone wanna do the logo?


 No.966622>>966623

>>966615

lmao he went full retard. How pathetic.


 No.966623>>966631

>>966622

So you don't have any arguments left? pls, go back to Uganda and take your editor with you


 No.966631>>966634

>>966623

>muh vim

Cuckchanners sure are smart. Sorry I mean botnet+cuckchan wouldn't want to upset you captcha niggers now.


 No.966634>>966643 >>966746

>>966631

vim is shit. white person uses neovim or Gnu Emacs with evil-mode.


 No.966643>>966644

>>966634

spacemacs. best of both worlds, don't have to spend the next decade customizing a config


 No.966644>>966646

>>966643

>i cant read


 No.966646>>966648

>>966644

>tripdubs checked

Just installing evil-mode into a bare emacs isn't enough to have a useful editor my dude.


 No.966648

>>966646

but why shill spacemacs so hard?


 No.966746>>966760 >>966807 >>966988

>>966634

>Gnu Emacs with evil-mode

Why would you want to emulate a shitty editor in emacs? Having to switch between modes to even use commands or types is extremely queer.


 No.966759>>966797 >>966814 >>966988

>>966615

>Most people who use Emacs just don't want to use other editors

Yeah good luck working on things in the real world with it. But I'm sure you've fully replicated all the functionality of Visual Studio in emacs, including the integrated debugging support, and including the interop with other tools like Unity's editor. That's why vim plugins are so popular for VS, because you wind up forced to use it for many reasons but don't want to and that's the compromise. The emacs plugins are just half-assed support for keybinds because emacs programmers are usually lispfags and don't actually write code or have a job.


 No.966760

>>966746

It's fast and natural once you've learned it. Much less typing for the same result.


 No.966797>>966808

>>966759

What a retard.

>Yeah good luck working on things in the real world with it.

You are implying IDEs. And only shittiest languages need them, stuff like ShitBrains IDEA and Eclipse literally cause retardation.

And even India niggers for whom you're trying to shill recognize that by introducing LSP.

Most of real world technology doesn't not depend on editing environment.

>including the integrated debugging support

You don't need that. You should modularize your program and keep covering it with tests until you reproduce the bug.

Interactive debugging is for pajeets who write spaghetti code.


 No.966807>>966809

>>966746

>Why would you want to emulate a shitty editor in emacs?

Actually vi clones used to be inside Emacs from very beginning.

The Holy Editor War wasn't about key bindings at all, but rather should an editor stick with UNIX philosophy or go beyond limits of UNIX and be a programmable environment unto itself.

Vim has nothing to do with this debate, since it has a bigger C code base than Emacs and was originally written for Amiga.

>Having to switch between modes to even use commands or types is extremely queer.

vi commands are composable, basically you write a small program each time you edit text.

It's a great way to archive some productivity. Mode switching becomes transparent once you start to use editor correctly.


 No.966808>>966810 >>966816 >>966988

>>966797

>You are implying IDEs. And only shittiest languages need them

Confirmed for having never worked a real job where tool integration tightly ties VS into the workflow.

>Interactive debugging is for pajeets who write spaghetti code.

lol. Have fun doing your freetard "add printf and restart" shit when working on something like Shekel Yidizen where it might take 5 minutes to restart the engine.


 No.966809>>966964

>>966807

>vi commands are composable, basically you write a small program each time you edit text.

I'm not sure I'm getting what you are saying.

>Mode switching becomes transparent once you start to use editor correctly.

Why settle with transparent when you can just get rid of it entirely.


 No.966810>>966818

>>966808

>Confirmed for having never worked a real job where tool integration tightly ties VS into the workflow

Confirmed for open defecation.

>Have fun doing your freetard "add printf and restart" shit

Can you read? It's the opposite of what I've said.


 No.966814>>966820

>>966759

>muh microsoft editor is better because it has the best support for microsoft programming language library

>emacs doesnt have everything reeeee

>the real world is developing games in c#

dayum pajeet im overwhelmed

>no integrated debugging support

lol this is false and you know it

>forced to use it for many reasons

many reasons indeed. do those "factual" reasons also include

>emacs plugins are just half-assed support for keybinds

>emacs programmers are usually lispfags

every "emacs programmer" in the ambiguous way you mean it is ofcourse someone who programs at least one lisp (elisp)

>and don't actually write code

lol wtf did you mean a couple words earlier if this is not just some superficial assumption

>a free software contributor to extend his text editor doesn't have a job

this is probably a waste of time for you to read since reflection doesnt seem to be your strong suit


 No.966816

>>966808

>lol look at me i am a big boy doing a big boy job so i need VS because that's what the big boys use

>I need a debugger to fix my CRUD


 No.966818>>966988 >>967244

>>966810

>Can you read? It's the opposite of what I've said.

How do you think "covering with tests" works when there's a 5 minute build-run-test cycle while developing those tests? How stupid are you? Have you even ever written tests? Why the fuck would I waste all day spamming tests at a problem I've not even diagnosed yet when I could have just spent the 5 seconds it takes to break to VS and then check the state of everything and continue?


 No.966820>>966988 >>967246

>>966814

>dayum pajeet im overwhelmed

There are almost no Pajeets working these jobs. Look at team pics of complex Unity games. reeee white males!

>lol this is false and you know it

Show me how to break from Unity into emacs as a live debugging environment. Go on. Since I'm clearly a liar and it's so easy and fully supported. I'm not talking about debugging elisp, I mean real integrated live debugging that external tools can work with.


 No.966931>>967129

>>966289

>alternative to women

You don't become gay by hating women, you become a sexually frustrated incel who progrsses to murdering women out of hate

Or do you think Elliot Rodger was a trap


 No.966964>>967126

>>966809

>I'm not sure I'm getting what you are saying.

read a book nigger

>Why settle with transparent when you can just get rid of it entirely.

>I don't know what transparent means


 No.966988

>>966746

>Why would you want to emulate a shitty editor in emacs?

I don't but someone who is used to vi might want to

>>966759

>>966808

why use VS for anything other than .Net? Also the fact that you personally hate lisp isn't a valid argumet.

>>966808

>>966818

>>966820

>I'm not talking about debugging elisp

So you haven't even used GNU Emacs at all? lol what an idiot.


 No.967126

>>966964

>read a book nigger

The problem isn't my reading comprehension. The problem is that you are rambling about writing a program along with the document you are writing. This sounds like a drawback or is even beside the point entirely.

>I don't know what transparent means

Transparent means that something exists, but you just can't see it. In the context you used it in, it was pretty obvious that you meant near transparent. You still will have these awkward switching between modes in order to do stuff.


 No.967129

>>966931

I mean he was half asian and we all know most asian boys secretly like to dress up as girls for fun so....


 No.967134>>967181

Saves me asking elsewhere. Same question, but mainly for use on old Commodore machines. Is it worth throwing yourself into Assembly instead of fucking with BASIC, or go the other way around?


 No.967181

>>967134

C64 BASIC is really basic and is very slow. If you're already familiar with assembly I'd go straight to assembly. Otherwise, consider learning fundamentals on x86 first since it's a much easier environment to learn on.


 No.967244>>967246 >>967268

>>966818

>show me how....

since you're already metaphorically into nr 2

1. stretch for a couple of weeks

2. suck own dick

3. dont reproduce


 No.967246


 No.967268

>>967244

>I don't know how so I can't show you, have some bluster instead

Got it.


 No.967345>>967350 >>967739

File (hide): 36f8b4365c544bb⋯.png (292.67 KB, 1094x731, 1094:731, nep1470.png) (h) (u)

The best possible language to learn is Nim, as it's endorsed by the Goddess Purple Heart.

Proof: https://nim-lang.org/docs/nep1.html


 No.967350>>967443

>>967345

Not going to lie, Nim is awesome.

I'd rather use Zig though.


 No.967443>>967448

>>967350

... really? :|

got anything cool in Zig to show off?


 No.967445>>967448

1st rule of programming is C is better then any other language, all other languages are bloated

2nd rule is you arent smart there are a million other people way smarter then you

3nd rule everyone else is retarded and their way of doing it is wrong YOUR way is superior. Even if they show how theirs uses less memory or is quicker to run. yours is better because it is easier to read.

Learn these rules and you will succeed


 No.967448

>>967443

Not immediately, I've been looking to replace Go and have been assessing Zig and Nim for potentially offering training. Nim is okay to write but okay to run, Zig is like Go with C syntax and way better to run

>>967445

>1st rule of programming is C is better then any other language, all other languages are bloated

absolutely LARPing


 No.967542

>>965699

For what it's worth, minix3 has a microkernel. It apparently clocks in at around 12K lines of code, which is still human-readable.


 No.967561>>967564

>>965637 (OP)

A lot of guys here will tell you to learn C# or JavaScript or Java or some other high level language, I would have agreed with them if only you wanted to be a run of the mill application programmer. But since you want to be a "Tony Stark", your first programming language should be undoubtedly C, followed by C++.

C is a low level programming language, meaning you can program the iron man suits' firmware in it.


 No.967564>>967581

>>967561

>C is a low level programming language

This is not true. Only assembly is low-level programming. Everything else is high-level. There is no middle ground. There is no debate. This is an absolute fact. Don't do that in the future, all right?


 No.967581

>>967564

What is your desktop setup like. I need to know


 No.967739>>967851 >>967854

>>967345

>compiler enforced spaces instead of tabs

It was looking good until that point.


 No.967851

>>967739

speaking of...

# zig build-exe hello.zig
/home/anon/zig/learn/hello.zig:4:1: error: invalid character: '\t'
var stdout = try std.io.getStdOut();
^


 No.967854>>967864

>>967739

tabs are worse than spaces, since spaces are portable whereas tabs are not


 No.967864>>967989

>>967854

That makes no goddamn sense. As long as you aren't being a retard and aligning your code, tabs are fine. If you really want to be an ascii-art-in-code faggot, you can use spaces to make sure that all tabwidths work.


 No.967989

>>967864

Limiting line length is normal in good projects as it makes code easier to review and diff. Once you do that, everyone has to agree on the tab length for those limits to be maintained, especially for word-wrapped block comments. But tools to read and edit code disagree on what that length is, and advocates of tabs often insist they want to change the length. The result is a clusterfuck. So avoid the whole mess and use spaces.


 No.968757

C++ via Stroustrup's Programming -- Principles and Practice Using C++ (Second Edition). This is the only likely way you'll ever be able to follow in Tony Stark's footsteps OP.


 No.968758>>968764

>>965637 (OP)

>MIT uses python rather than scheme for its computer science program

MIT has become a pozfest shithole. They are having to dumb down the introductory classes to accommodate the stronk, indepyndynt womyn before they all transfer over to Brown's world-class Gender Studies program.

If you think you can manage to build the next-generation future battle droid jetsuit using Python you're in for a real awakening heh.


 No.968764>>968768 >>968798 >>970702 >>974629

>>968758

>MIT has become a pozfest shithole. They are having to dumb down the introductory classes to accommodate the stronk, indepyndynt womyn before they all transfer over to Brown's world-class Gender Studies program.

Clearly, you are a brainlet, you don't program, you just LARP on 8chan hovering between /pol/, /tech/, maybe /v/. The reason they swicthed to Python is because Scheme doesn't prepare you for the real world. Back in the 1980's, a single programmer understood the entire system, or at least their entire program. Now, to be productive, it's rapid protoyping and linking in various libraries. It's all libraries. Python still has lisp-iness: lambdas, lexical scoping, Guido's new `:=` syntax, etc... But LISP is irrelevant to getting hired, 90% of the people are on the course for that reason, and would be completely unemployable if they were experts in Scheme Lisp on leaving


 No.968768>>968770

>>968764

>doesn't prepare you for the real world

and that matters why? Computer science isn't about becoming a coder monkey.


 No.968770

>>968768

Computer scientists:

a) For the most part, aren't using LISP

b) Self-educate outside of their immediate school system

c) Ask their lecturers: "Hey, how does xxx actually work?"

d) Also know Python


 No.968798>>968805 >>969027

File (hide): 163954948515886⋯.png (472.09 KB, 1280x720, 16:9, 1486600538102.png) (h) (u)

File (hide): 3db1d94ba06a389⋯.png (1.39 MB, 1327x1363, 1327:1363, 1488082085573.png) (h) (u)

>>968764

If it's an INTRODUCTORY COURSE, it doesn't matter whether it's used in the real word or not. Scheme is the best programming language for teaching since it's so simple (it doesn't hide anything behind layers of unimportant details)


 No.968805

>>968798

* (let ((f (lambda (x) (= x 3)))) (lambda (y) (not (funcall f y))))

#<FUNCTION (LAMBDA (Y)) {11680B3D}>

very simple


 No.969027>>969035 >>969196 >>969453 >>970702

>>968798

LISP is detrimental to CS education as it hides details of the machine and teaches ways of writing code that don't work in the real world. And the real world is what matters, which is a point I'm sure will be lost a weeb.


 No.969035>>969071 >>969453

>>969027

CS isn't about the details of machines.


 No.969071>>969196

>>969035

It absolutely is. Sorry to hear you're paying Jew school to train you in marxist software theory.


 No.969196>>969450

File (hide): 518a0cdec01b861⋯.webm (7.59 MB, 640x360, 16:9, ErrorSAN.webm) (h) (u) [play once] [loop]

>>969027

That's literally the purpose of programming languages. If you wanted to learn the details of the computer, you would use assembler. Also, if you hate anime so much, you need to go back to >>>/reddit/ or >>>/oven/ where you belong.

>>969071

Nope. What you are referring to as "CS" is, in fact, EE or CE. Computer Science isn't about computers, it's about computation and manipulation of data.


 No.969199>>970702

My path was BASIC as a kid into C into x86 asm into not being a programmer for my day job. I would still recommend C since it will teach you enough to learn other languages easily, excepting functional languages. Though it won't hurt for those either. If you really want to get into the nuts and bolts of languages then do Lisp or some variant. I hadn't programmed for about a decade and when I wanted to write an image decoder/dumper for an old game my rusty knowledge of C was enough to browse the Python docs and get it done in a day or two even though I had never touched the language.


 No.969450>>969452 >>969547 >>969600 >>970004

>>969196

I have a masters in CS from a good school prior to the subject being taken over by marxism and I can assure you that a proper CS education deeply involves the details of machines. Especially today where cache behavior is so critical to both performance and security that algorithm design integrates it at the lowest level rather than blindly adhere to "big O".

Also, anime is poison. None of programming's luminaries are weebs. Get clean while you can.


 No.969452>>969465

>>969450

>prior to the subject being taken over by marxism

Ah you mean like the communists from 30 years ago like stallman? You must be a real oldfag then.


 No.969453

>>969027

the software industry and education would still be complete shit regardless of LISP

also see >>969035 but perhaps you meant to say SE instead of CS


 No.969465>>969488

>>969452

I'm old enough to know the history you have to ask google for. In the '80s it wasn't anything like it is today. It was a mix of regular and anti-social kids, the literally barefoot hippies on every drug, and some sort of cavedwelling offshoot of humanity that would again quite literally camp inside the maintenance tunnels near wyse labs (if you go to a UC school, they're the fabled riot tunnels). There was talk about freedom (although in hindsight this was the marxist push of its day), no talk at all about marxism, no Che shirts or USSR flags in tech, no communist computer clubs. Sorry to disappoint, but that's all current year.

Also, Stallman is a bad measure as even at MIT Stallman was considered to be very strange. Remember that most of our hyper-capitalists in tech came from that same era. I didn't go to MIT but I'd hear stories about things he'd do that would shock other programmers, like refuse to password his accounts which apparently led to the loss of code at one point when someone deleted it. I don't know how true that is but it was told to me before he was a big deal.


 No.969488

>>969465

You must have a really shitty memory then anon.

> Remember that most of our hyper-capitalists in tech came from that same era.

Ah you mean all the tech companies run by beta male communists.

> In the '80s it wasn't anything like it is today.

You're right in the 70s and 80s there were communist domestic terrorists blowing shit up (weather underground etc). Nothing like that today.

> the literally barefoot hippies on every drug,

Maybe you should have asked them what they thought about the USSR. You would have learned something.


 No.969547

>>969450

>Also, anime is poison. None of programming's luminaries are weebs

1) There are no "luminaries" anymore.

2) How do you know that someone watches anime?

3) That's wrong, faggot. See https://github.com/mpv-player/mpv/graphs/contributors or the emulation scene like the Higan author, for example.

You're kinda right, but you're misguided about the causes and effects. Most people who are programmers in their free time but also watch anime do it because it's one of the only escape from the omnipresent degeneracy in their country (or even continent). Of course someone aware of what's really happening in the world can't be able to muster enough motivation to program all day while ignoring what really matters; same reason art is mainly leftist these days, because you need to be blissful enough to not know how bad things are.


 No.969600>>969879 >>970112

File (hide): 113ef1294af9d58⋯.jpg (34.9 KB, 503x595, 503:595, caught.jpg) (h) (u)

>>969450

> I can assure you that a proper CS education _deeply_ involves the details of machines

nope. At least nowadays, that would be an ENGINEERING degree, like CE or EE. A proper CS degree of course includes algorithm design and optimization, but the details of machines are not taught in a low-level (i.e. close to hardware) in a CS degree program.

>None of programming's luminaries

Are you talking about those who glow in the dark?? Fucking CIA NIGGER!


 No.969879>>970050

>>969600

They were in my both my license and master universities (which is supposed to be a really good one). It makes sense too, since this is "Computer Science", not "Algorithm running on abstract machines Science".


 No.969922

File (hide): 448bd0c4697f80f⋯.jpg (598.93 KB, 2304x1728, 4:3, laughing_space_cowboys.jpg) (h) (u)

>>966338

>Multicuck finally answered someone asking for a modern non-Unix OS

It only took the nigger a year or so.


 No.970004

>>969450

The mechanical details of a computer can be considered applied computer science. However it is not necessary at all to study the mechanics of a computer because computer science is not about the computer but the mathematical truths of the idea of a computation. Those who understand the mathematical ideas of computation can actually use that knowledge to logically design a computing machine that's likely to be a boolean based electrical computer.


 No.970050

>>969879

Computer science is actually a bad name for the discipline. This is because computer science is not about the computer and it is not a science. The discipline of computer science exists without ever touching a computer. The reason for this is because the purpose of the discipline is to deal with the mathematical truths about the abstract idea of a computation.


 No.970112>>970121

>>969600

>that would be an ENGINEERING degree, like CE or EE

Most universities only teach a bare minimum of how systems work as part of their CE degrees, only EEs actually learn how the hardware works and register level programming. CE is just CS with an engineering focus these days.

One of my most painful moments as an EE was having to explain to a group of people with CS and CE degrees how RAM CAS latency vs clock rate works.


 No.970121

>>970112

No one knows that shit in CS because the CPU cache is so dominant and all the crazy cache layouts and strategies keep everyone busy.


 No.970702>>974429 >>974480 >>1003975 >>1005394

>>968764

The problem isn't so much Python as it is the way they teach programming with libraries instead of building programs yourself. Needing more than 60 million lines of code just to run a browser sucks.

>>969027

>it hides details of the machine

It depends on the Lisp. In Mezzano, everything is Lisp, including the GC and compiler. Something like that would give you a better understanding of the machine.

https://github.com/froggey/Mezzano/blob/master/compiler/codegen-x86-64.lisp

https://github.com/froggey/Mezzano/blob/master/system/gc.lisp

>teaches ways of writing code that don't work in the real world

Of course it works. I won't say it's the only thing that works, but it had a big impact in the last 30 years.

>>969199

>I would still recommend C since it will teach you enough to learn other languages easily, excepting functional languages.

If that was true, they would be able to teach the F-35 programmers Ada, but they had to write everything in C and C++ because they couldn't learn it. C gets in your way of learning other languages. C-isms in other languages are considered bad practices in those languages, even in C++.

>If you really want to get into the nuts and bolts of languages then do Lisp or some variant.

This is good advice.

    Yes, and they've succeeded.  Hordes of grumpy C hackers
are complaining about C++ because it's too close to the
right thing. Sometimes the world can be a frightening
place.

I've been wondering about this. I fantasize sometimes
about building better programming environments. It seems
pretty clear that to be commercially viable at this point
you'd have to start with C or C++. A painful idea, but.
What really worries me is the impression that C hackers
might actively avoid anything that would raise their
productivity.

I don't quite understand this. My best guess is that
it's sort of another manifestation of the ``simple
implementation over all other considerations'' philosophy.
Namely, u-weenies have a fixed idea about how much they
should have to know in order to program: the amount they
know about C and unix. Any additional power would come at
the cost of having to learn something new. And they aren't
willing to make that investment in order to get greater
productivity later.

This certainly seems to be a lot of the resistance to
lisp machines. ``But it's got *all* *those* *manuals*!''
Yeah, but once you know that stuff you can program ten times
as fast. (Literally, I should think. I wish people would
do studies to quantify these things.) If you think of a
programming system as a long-term investment, it's worth
spending 30% of your time for a couple years learning new
stuff if it's going to give you an n-fold speed up later.


 No.972141

>>965976

Absolutely based.


 No.974395>>974409

Where can i learn to understand and code in x32 asm?


 No.974409


 No.974429

>>970702

>C++

>too close to the right thing

Disregarded.


 No.974480

>>970702

Don't you know APL is the best language?


 No.974629

>>968764

>Scheme doesn't prepare you for the real world

>LISP is irrelevant to getting hired

Fundamental CS concepts are "irrelevant to getting hired" and "doesn't prepare you for the real world"? A CS degree is not a technical certificate.

>to be productive, it's rapid protoyping and linking in various libraries

You don't need a CS degree to be able to do this in the first place.

>would be completely unemployable if they were experts in Scheme Lisp on leaving

If you aren't capable of learning other computer languages beyond the language taught in CS 101 then you don't have the mental capacity to complete a proper CS degree let alone work as a software developer of any kind.

Fucking blublets, when will they learn.


 No.981806

Smalltalk/squeak should be your first language, anything else is far beyond beginner comprehension and will only leave 95% of people attempting to learn frustrated and annoyed.


 No.985630>>985647 >>985680 >>985688 >>985693 >>985716

File (hide): 6d7ed3660ec88a9⋯.png (379.61 KB, 781x692, 781:692, 6d7ed3660ec88a97d4e5d79324….png) (h) (u)

Newfag here

I am completely lost in this thread

So I'll ask a dumb question :

"If you have the time and want to "understand computers" what would you learn first?"

I would like to learn the basics before even considering trying a programming language (this include some math)


 No.985647>>985669 >>985693

>>985630

Learn from the bottom: microarchitectures and assembly, then OS stuff like interrupts, scheduling and context switching. I suppose compilers come after that.


 No.985669>>985710

>>985647

Thank you anon

Do you have any book recommendations?


 No.985680>>985693

>>985630

Learn Z80 assembly (it's simple) >>>/tech/982795

Also, read SICP at some point.


 No.985688>>985693

>>985630

verilog


 No.985693>>985710 >>985718

>>985630

That is the worst possible approach. Learn Ruby, then once you understand the notion of syntax write C, then go on your jounrey of discovering CPU architectures. From the view of anyone writing code above driver level, the computer is an abstract calculating machine.

>>985647

>>985680

>>985688

These are nocoders. You can tell because they think "verilog" is how a computer works (LOL), and you just "learn microarchitures" without knowing what they're supposed to do and how. Also the absurd notion you should learn OS-level concepts before understanding how a compiler works


 No.985710

>>985669

I really recommend "[John L. Hennessy, David A. Patterson] [2012] Computer Architecture: A Quantitative Approach (5th Edition)" then, if you're really motivated AND intelligent, "The Art of Computer Programming", otherwise, just K&R C (ANSI). One book I really liked is "[David Solomon, Giovanni Motta] [2010] Handbook of Data Compression (5th Edition)" too.

>>985693

>Ruby

Faggot.

>you just "learn microarchitures" without knowing what they're supposed to do and how

What do you think I meant by "learn", retard? Just take a simple arch like the first MIPS and learn how registers and a simple IF,ID,EX,MEM,WB pipeline work (then you level up to superscalar µarchs). I had a cool course like this where you got some simple C or Algol that you had to translate to assembly, then try to minimize/count the number of necessary cycles or fill some pipeline graphics accurately. It was tedious as fuck, but quite helpful to understand everything.

I don't know if reimplementing boolean logic from the simple not gate to a 4 or 8 bit adder by drawing transistors (pretty easy, honestly) is very useful, but it's fun to do.


 No.985716

>>985630

check out this book:

https://www.amazon.com/gp/product/B006FG1HNM/ref=dbs_a_def_rwt_hsch_vapi_taft_p1_i6

(you should be able to find a torrent, i was just linking amazon because i am lazy)

basically this will tell you how a cpu works. really easy to understand, a lot of illustrations.

the author tends to ramble a bit, but i did not mind.

other than that you could look into assembly. that is a way to program while "thinking like a computer", but it is really hard if you write complex stuff.

math is actually not so important for understanding how computers work. math is only important for something like algorithms.


 No.985718

>>985693

>These are nocoders

no u

>>985693

>you should learn OS-level concepts before understanding how a compiler works

Wrong. Compilers have almost nothing to do with operating systems.


 No.986056>>986348

Python teaches bad habits.


 No.986348

>>986056

Like what? And what is the better option that doesnt teach any bad habits?


 No.986391

>What is the best possible first language to learn? I want to start with solid foundations. Ultimate goal is becoming real life tony stark.

QuakeC


 No.986399>>986400

>Python

Useful lang, but I'm shocked to hear that this is the main language now used in the MIT curriculum. I think everyone should specialize in at least one statically typed or strongly type inferred language, because you can always learn something dynamic later, but not the other way around.


 No.986400

>>986399

They switched from Scheme to Python. I'm sure they still learn C++ or Java or something too.


 No.987397>>987461 >>1002584

File (hide): 2b697032c3a1fda⋯.jpg (220.45 KB, 1200x675, 16:9, elon-musk-npc.jpg) (h) (u)

I think i got it. First i will learn lisp then python, C and haskell.


 No.987461>>987474

>>987397

Wrong. If you REALLY want to learn how a computer works, learn the basics in this order:

ASM > Lisp > C > Python

Then get good at them in reverse:

Python > C > Lisp > ASM

That's the quickest way to get gud I know of. After getting competent in this method, you should be able to pick up any language with relative ease.


 No.987474>>995732 >>995947

>>987461

Those other languages are abstractions that don't teach you how the computer works. You need machine language (by itself or via asm) and you need to delve into the electronics layer. Then you'll actually understand how it works.

The higher level languages don't help as they only bring in abstractions that obscure what's actually going on in the computer. Fine if you want to write software, but not for this learning purpose.


 No.995732

>>987474

well not just for understanding computers, but to become more complete engineer at the end of all the learning. and ideal first programming language would help me learn other languages more easier.


 No.995777

>he's not using ArnoldC


 No.995779

>>965721

Ignore this post, it's silly.


 No.995947

The people that hate C and hate Unix make me curious. It's kinda amusing and not all that disagreeable. What do you people actually use? I dislike Unix as well, but it's barely optional at this point. I don't mind C too much, though it is probably better to go a little higher level most of the time, or just use asm like people did in the past (C is not a low level language, that is complete bullshit, it's just awkwardly low level compared to other high level languages because of the features that it lacks). It seems popular, but I personally don't like the Lisp syntax. I don't like prefix notation (postfix isn't intuitive either, but I would prefer that, just because I used it in economics... but I think only Forth uses that, and Forth is crazy) and I don't like all the parenthesis all over the place. It's kind of a mess.

>>987474

>Those other languages are abstractions that don't teach you how the computer works.

Correct, that is the whole point. Higher level languages are meant to allow you to program without having to think about how the computer works all the time. They are good to learn how to program, not about how the machine itself actually works.


 No.1001967

C++


 No.1002380

I got my start with BlitzBasic, but since it's done and dead as a doornail, I would recommend starting with FreeBASIC, Python, and Pascal. From there, go as you will, though I would definitely recommend learning C/C++ and Assembly.


 No.1002565

>>966173

>relationshit

>tfw no gf

>misogyny

>traps

>homosexuality

>HRT FtM

That image is pretty much /r9k/ -> /r9cute/ -> HRT blackmail doxing discord group in a nutshell. I have personally seen /r9k/ turn from a board that played with an automoderation script and focused on originality to the 24/7 depressive bitching and moaning it is known for being today.


 No.1002571>>1003933

>goal is becoming real life tony stark

Never going to happen kid, give up.


 No.1002584>>1002600

>>987397

Elon Musk is an NPC?


 No.1002598

Do this first.

sudo apt-get remove rust* libstd-rust* cargo*

sudo apt-get remove snapd* libsnapd*


 No.1002600

File (hide): 3f790dd33703606⋯.png (341.63 KB, 1920x1080, 16:9, ClipboardImage.png) (h) (u)

>>1002584

No, we just stuck in Paradim City.


 No.1003933


 No.1003975

>>970702

>the F-35's 6 gorillion dollar botnet avionics software is written in (((C))) instead of Ada

Source?


 No.1005394

>>970702

Ada is best lang




[Return][Go to top][Catalog][Screencap][Nerve Center][Cancer][Update] ( Scroll to new posts) ( Auto) 5
202 replies | 24 images | Page ?
[Post a Reply]
[ / / / / / / / / / / / / / ] [ dir / agatha2 / arda / danch / doomer / gay / grimes / vichan / zoomer ][ watchlist ]