Users browsing this thread: 1 Guest(s)
sametsisartenep
Members
Hi there,

I registered yesterday, but forgot to introduce myself.
I'm basically an independent student who loves infrastructure and low-level stuff (OSs, protocols, coding theory, etc). I started using Linux ~5 years ago and I've been exploring all sorts of systems ever since. I try to follow the Unix philosophy as depicted by Ken, Ritchie et al with Research UNIX at Bell Labs, and even further with Plan 9 (which is more Unixy than UNIX itself. :P)

I've been doing all sorts of things, from web development (I spent a lot of time and now I hate it) to assembly language and very simple hardware stuff. My "holy trinity" (kind of) is shell scripting (dash and mksh mostly), C and Go.

I also consider security a very important matter, and the Unix way helps with a lot of related issues, as the lack of simplicity and readability are at the root of most breaches.

These days I'm focused on maths, trying to understand better how this discrete machines work and communicate, and how they could help us improve our capabilities instead of owning us (cyberpunk is happening! /o\).

If you want to talk, you can always ping me on IRC or send me an email. :)


Have a nice day,
~sam
---
sam
jkl
Long time nixers
Welcome to nixers. Finally a new user who knows the difference between Unix and wannabe Unix. Sorely missed.
venam
Administrators
Welcome to the forums sam.
I saw you on irc earlier and you seemed like a nice fella'.
robotchaos
Long time nixers
welcome sam. dmr is my personal hero. i have some serious interest in plan9, you run it?
pranomostro
Long time nixers
Hi sam (and robotchaos),

I have good experience with running 9front (which is an updated version of plan9)
on the raspberry pi.

The holy trinity of sh, c and go is interesting. They are quite similar, aren't they?
Especially with go being a sort of updated c.

Also, do you have any projects to share with us? Given your background, I would be interested what
you thought worthy coding (see here: https://nixers.net/showthread.php?tid=16...7#pid17547).

Anyway, feel welcome!
jkl
Long time nixers
(24-02-2017, 08:19 PM)pranomostro Wrote: go being a sort of updated c

I beg to differ.

Go was developed by Google employees who wanted to make life easier for their colleagues who were not smart enough to understand C++ - at least that's what Rob Pike, one of Go's designers and a Research Unix veteran, publicly suggested.
apk
Long time nixers
actually ill agree with pranomostro. go still uses pointers extensively and isnt object orinted. it has some newly found concepts such as importing from github directly from code and using a semi-isolated environment to store binaries and source code ($GOPATH) which suggest it to be an "updated c".

Quote:The holy trinity of sh, c and go is interesting. They are quite similar, aren't they?
however this makes no sense
sametsisartenep
Members
Thank you all for the replies.

robotchaos, I don't use Plan 9 on a daily basis, but I've been learning about the inner workings and also read the p9p code very often. I can't afford wiping my systems to embrace Plan 9 at the moment, plus I don't have the technical ability to port drivers from other projects, so I think I'll be using Linux and BSD for a long time. I also think Ritchie was amazing, and he clearly represented the Unix philosophy, even on his writing.


pranomostro, I don't think shell scripting shares that much with C or Go, to be honest. There are shells like rc or csh which have a very similar syntax, but they're not even close. On the other hand, I use dash or mksh most of the time, which are POSIX shells, so it's a world on its own. :)

Also C and Go, though similar in essence, are not _that_ similar; Go was developed by Ken and Pike, who, after working on Plan 9 and Inferno for more than a decade, decided to bring a simple, robust language to build distributed systems and infrastructure in the new age. Go is garbage collected, type/memory safe, non OO and has some very cool features like concurrency primitives, CSP-oriented channels for IPC and slices. It also has a powerful stdlib, which I find very pleasing to read. You'll see the syntax resembles that of Limbo, Inferno's main language, which could be considered it's direct predecesor, along with Alef I think (never actually read any code though.)

These days I'm mostly working on theoretical stuff, because there's still a lot I want to learn and I don't plan to go to college any time soon, but you can check some of my projects in my personal repo and GitHub. Feel free to contribute or rant about it (you'll find really horrible code, especially from my webdev days.) :D


jkl, I think that statement is a bit hardcore hahaha. I did C++ in the past and I don't like it, honestly, I find it overcomplicated and the moment you start using templates and OOP constructs, it becomes messy. It's being a while though, but maybe I'm one of those "not smart enough to understand C++". I know it's useful for things like graphics, gaming or high performance computing used in finacial infrastructure (a good alternative to COBOL or Fortran, which people here in Spain seem to like a lot), but it's not for me.


---
sam
jkl
Long time nixers
COBOL is OK, even although it's not a general purpose language like C. - I know that statement is strong but if one of Go's designers basically calls Go a tricycle for n00bs, I have no reason not to believe him.
pranomostro
Long time nixers
(24-02-2017, 09:48 PM)apk Wrote:
Quote:The holy trinity of sh, c and go is interesting. They are quite similar, aren't they?
however this makes no sense

I beg to differ. All three are procedural, all three have an extensive unix background.

Yes, sh is different. But it's not as different from the other two as for example forth or something.

Disclaimer: I have never written more than 10 lines of go, but read quite a lot about it,
and it seems like "C without some of the major pain points".

Edit: also thanks for the repo links.
sametsisartenep
Members

Correct me if I'm wrong, but I think you're referring to this quote by Pike:

"The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt." (from this presentation).

Under the context he's in, I don't think he ever meant anything along the lines of it being for "n00bs". It's all about simplicity. They brought what they learned from their work at Bell Labs, Lucent and Google and applied new ideas with a familiar paradigm.


Edit: P.S: How do you quote other people's replies? I tried to quote jkl's but it didn't seem to work with the button. Thanks in advance.
jkl
Long time nixers
Quote:They’re not capable of understanding a brilliant language


Roughly equals "they are too dumb for C++".
Adrift
Members
To quote a person's reply you highlight the text, then hit the quote button. And it will pop into the post reply box.
sametsisartenep
Members
(25-02-2017, 09:13 PM)Adrift Wrote: To quote a person's reply you highlight the text, then hit the quote button. And it will pop into the post reply box.

Thank you, Adrift.
xero
Long time nixers
Quote:welcome to nixers