/tech/ - Tech


Mode: Thread

Max message length: 8192


Max file size: 20.00 MB

Max files: 3


(used to delete files and postings)


Remember to follow the rules

(362.24 KB 536x774 Selection_255.png)
filter me 10/29/2019 (Tue) 16:47:19 No. 2260 [Reply] [Last]
Oh, so /tech/ stopped existing.
Wallpaper/desktop thread?
>tfw you're not a cop raping delinquent teenagers
Jahy-sama wa Kujikenai!

clojure Comrade 08/06/2019 (Tue) 04:54:14 No. 2638 [Reply] [Last]
what does bunkerchan think of clojure?

its a lisp that actually works for web dev and other SW dev in the modern day.

41 posts and 3 images omitted.
I actually know a bit of Clojure, and the backstory. I agree with what you mention about the persistent data-structures and concurrency being built-in rather than in libraries is a advantage, all be it a rather minor one to me. I disagree with the idea that Common Lisp having Lists makes it slow, in practice Common Lisp programmers use whatever data-structures are most performant for their applications, including using mutability to increase performance when applicable. Also it's possible that Clojure is simpler than Common Lisp, but it's not simpler than Scheme. You can (and I have) literally read the Scheme specification in a few hours, and understand the guarantees and primitives of the whole language across implementations. Trading the Common Lisp ecosystem for Java's might be advantageous depending on the application though.
>You can (and I have) literally read the Scheme specification in a few hours

including all the SRFI? If your argument is that you can write a basic lisp interpreter as a side project or for a class then yes scheme is simpler but in addition to the SRFI to make scheme usable you have things like for example in Racket Scheme which have to implement lots of additional stuff to make scheme into a practically usable language (for web dev).

Scheme is like the C of lisps
Common Lisp is like the C++ of lisps
Clojure is like the Java of lisps

If you had to choose for example an embedded language for scripting a video game, scheme or lua might be good.

I probably wouldn't use scheme for doing modern web dev, because there are myriad of toy implementations. When you try to sell jim the JS developer on lisp, hes gonna flip his shit when he can't find the GraphQL library

>in practice Common Lisp programmers use whatever data-structures are most performant for their applications

sure but all good programmers choose whatever data structures are the most performant for their task. Its not just about what a language allows but what it steers average coders into in. rockstars can write good code in any language

>using mutability to increase performance when applicable.

theres a lot of strategies that let you rewrite functional code into mutable efficient code under the hood and most functional languages use these

Common lisp is a more complete overall language (other than concurrency) and Scheme is easier to understand, but as far as tooling, practicality, ease of use, and popularity Clojure definitely wins hands down. Other than emacs lisp Clojure probably has the most lines of code written of any of the lisps today.
>The SRFI to make scheme usable you have things like for example in Racket Scheme which have to implement lots of additional stuff to make scheme into a practically usable language (for web dev).
The SRFI's are just libraries, Racket isn't a Scheme anymore, and really the only extensions you need to RnRS to have a language quite capable of web development is POSIX support, threads, and probably a FFI. Many Scheme implementations have these things. Regarding Libraries you should look at Chicken Scheme: http://eggs.call-cc.org/5/#lang-exts https://github.com/lassik/graphql-chicken Not that this isn't all besides the point because your claim was that Scheme was more complex than Clojure which is simply not true.

>Its not just about what a language allows but what it steers average coders into in. rockstars can write good code in any language
I don't think as a programmer you should care about how a language steers average developers. Ease of doing something does matter, and you're going to have a slight cost by going into quicklisp and installing a library for some of the things Clojure has built in but it's not significant. Regardless the average Common Lisp programmer cares a great deal about performance, and they tend to write very fast applications.

>theres a lot of strategies that let you rewrite functional code into mutable efficient code under the hood and most functional languages use these
I don't think this is true, you can do this if you have Linear/Quantitative types but otherwise you're going to be giving up any concurrency guarantees you have, if you do this behind the back of the programmer (which is sort of the main point of writing in a functional style at this point).

>Common lisp is a more complete overall language (other than concurrency) and Scheme is easier to understand, but as far as tooling, practicality, ease of use, and popularity Clojure definitely wins hands down.
I think this is probably a fair assessment so long as you recognize that Clojure has these advantages only for a single problem domain. It has better tooling, practicality, and ease of use for web development and nothing else. Additionally I don't think the advantages it has in this department are that significant.
(82.73 KB 1280x719 rh.jpg)

RH'S epic talk on clojure vs common lisp (2 parts)

>Common Lisp btfo
Not really, it was mostly just a overview, and as I said I already knew a good bit of Clojure. Pretty much all his arguments are rendered null by (ql:quickload "fset") or are insignificant to the point of not mattering. Porky likes JVM is another part of his reasoning. Some of the abstractions mentioned are cool, but don't really matter, it's basically just sugar. Not particularly interesting to me. I can't be bothered to watch the second video provided. Anyway I'm getting pretty bored talking about this, I feel I've made a quite solid case, so I'll probably stop now.

(94.89 KB 500x645 cockshottvulture3.jpg)
Relational/SQL vs NoSQL Comrade 08/13/2019 (Tue) 03:02:44 No. 2593 [Reply] [Last]
what is the advantages of nosql over traditional dbs?

why did programmers from 2006->2015ish all start writing and useing their own databases. whats the point?

people say oh its faster for the programmer because they dont have to write a schema but literally the only thing to change a schema is an alter table statement anyway which takes 30 seconds
8 posts omitted.
(131.70 KB 1280x720 topology.jpg)
mongoError: Topology was destroyed
there's no need to ACID, transactions, or rollbacks, i said, laughing.


databases like postgres have literal decades of engineering behind them making them rock solid. it even have json store if you want
(537.89 KB 708x708 abadi.png)
Any thoughts on Daniel Abadi and his DB work?
>Daniel Abadi
never heard of him
GAVIN-MENDEL GLEASON is a tech guy and marxist affiliated with Cockshott whos making a graph database

(55.16 KB 1024x930 Guix_logo.svg.png)
GNU Guix Comrade 09/28/2019 (Sat) 10:55:08 No. 2607 [Reply] [Last]
Is Guix the operating system of the future?
21 posts and 3 images omitted.
(65.25 KB 374x212 vibe.png)
There are lots of "OS of the future"
Guix is great, though I could never get it to play nice with Doom Emacs, which was a dealbreaker at the time (I'm not using Doom Emacs anymore, but as far as I can tell the only way to maintain config for your software like this is to build it as a Guix package, which I just don't have the time or energy for). I ran it for a couple of months on my hobby laptop, though I got tired of the build-times for some packages when substitutes weren't available (especially non-free Linux kernels, which I would leave running overnight and sometimes come back to the kernel still being built in the morning).

I do think though that declarative operating systems are the future, because the implications are amazing for deployment of many machines, as well as maintaining your own workstation - you make some configuration change to a particular service in your OS declaration, build and switch to that OS you've declared, and if you fucked up you rollback.

What really excites me is that Guix is just the package manager - even though we call the distribution based on on this package manager `Guix System', in reality every system configuration for Guix is its own distribution of GNU/Linux. Some future non-Guix project could `downstream' Guix by way of providing some standard distributions (read: `operating-system' configuration files with useful collections of packages, services, configuration, etc.) users could make use of, adding new channels with non-free software that users could opt-in to if they have e.g. a wifi card with non-free drivers, and providing some helpful configuration tools, e.g. for setting up and maintaining profiles, which don't require you to be pretty well versed in Scheme to have a working, maintainable distribution. Maybe this project could maintain build servers for the more popular software which isn't available in the standard Guix build repositories. We could have all sorts of Linux distributions which are built on the Guix package manager, and switching between these distributions would just be a matter of running `guix system reconfigure'.

I think the possibilities here are incredible, and I'm pretty excited for it - for now though I've got Slackware on my laptop, so I can keep my distance from systemd while having a distribution that gives me most of what I could possibly need from a system out of the box.
Sounds pretty cool, now I need to find an excuse to try it!
(441.68 KB 400x425 1417750820580-1.gif)
Just finished writing my first package and it compiles!!

(27.41 KB 796x398 XXIQIeg-796x398.jpg)
gaming on linux Comrade 09/30/2019 (Mon) 03:07:32 No. 2132 [Reply] [Last]
do you guys think gaming on linux is picking up steam in 2019?

- Steam games on linux/SteamOS: more native titles than ever and protondb making wine setup and config a one click thing.
- Windows 7 support ending, windows 10 sucks donkey balls (Cortana, offline account option now removed as well)
- Intel, AMD graphics drivers at near parity, Nvidia catching up
- Google making a game streaming service (Stadia) means they obviously plan to port games to linux, it can't work without it
- Vulkan API is going to replace both legacy OpenGL and Direct3D (easier to port, even more cross platform engines as well)
- Lutris > playonlinux, making installing top titles extremely easy.

What do you think guys, is 2020 the YEAR OF THE LINUX GAMING DESKTOP?
15 posts and 1 image omitted.
Nerd. Now I sage.

No. As long there is windows, linux will never be a viable option
In my experience about 50% of games work without issue via Wine or Proton. I still dual boot Windows but using it less and less.
they usually have 0.1+ms extra lag that makes it uncompetitive for serious players, especially in time sensitive genres like FPS
Fight imperialism, reminder to install non-proprietary software.

(94.89 KB 500x645 cockshottvulture3.jpg)
Federated Discord Anonymous Comrade 10/27/2019 (Sun) 13:39:20 No. 2634 [Reply] [Last]
Have you heard of Riot.im?


its a federated discord alternative.
hm, interesting, do you know if it has active servers?
It predates Discord. I use it every day.
I'd use it if all my friends and family would switch from discord.

(176.19 KB 400x267 1557932957929.gif)
What are you working on? Comrade 10/16/2019 (Wed) 03:13:47 No. 2580 [Reply] [Last]
This is the type of thread that you can write in every time you visit the site! You can do anything from use this as a personal log for your project, to sharing what you're hacking on at the moment, to critique something some else did in the thread, or request help with a bug you're struggling with. I'm looking forward to hearing what you guys are up to!
7 posts omitted.
>So what I'll try next is to use xf86drm.h and xf86drmMode.h
Looks like I'm going to have a very busy weekend, so I likely won't be able to try this until the start of next week.
I made a bit of progress on this project. I've got a working OpenGL ES2 context using libdrm, and I've rendered a blue screen to it. The program is mostly copied from various tutorials all be it with some stylistic changes and offensive programming. I've found a few blogs and some official documentation which should let me improve on it more. I plan on doing some literate programming to improve my own comprehension. Do any of you have any suggested tools for this? I've found noweb and CWEB, but I've also seen a number of modern takes on the idea in my brief search.

Also I wrote a little partially broken responsive menu for a imageboard over at >>953, it's been awhile since I've written any CSS.
I forgot to post a update yesterday, I made a little progress with my literate programing venture using noweb, and wrote a "Red Yotsuba" theme for the imageboard menu I made the other day just cause.
(201.48 KB 498x272 tenor.gif)
reading capital. writing a script for a friends short film. learning GURPS. but mostly just working. feeling lonely and aimless but ive been worse. just trying to not get caught in the feeling that everything's going to inevitably spiral cause that ends up being a self fulfilling prophecy more often than not.
oh, this must have been merged from /tech/, i thought it was a general hobby project thread

(80.86 KB 738x551 downloadingGommunsim.jpg)
Linux Sheeit Comrade 10/23/2019 (Wed) 07:59:05 No. 2574 [Reply] [Last]
Many questions for you nerds:
1. What would be your recommendation for a person who is relativly new to linux but has some coding experience? I was thinking mint because its just easy to use and i used it back on my old laptop and didn't require as much work to maintain in general but im also worried about le spying.
2. What would be the best video editor I can pirate for linux? I want to keep making videos to spread class consciousness and am currently using Sony Vegas. I heard that davinci resolve was good but was wondering your suggestions.
3. Also, is gaming on linux actually okay now?
(1.90 MB 1440x810 sicp3243.png)
1. It's called GNU/Linux: https://www.gnu.org/gnu/linux-and-gnu.en.html Here's the list of recommended distributions: https://www.gnu.org/distros/free-distros.en.html
2. Blender is cool, you can also check out NATRON.
3. Gaming is never okay.
(171.42 KB 2500x1563 ONEPUUUUUNCH.png)
>Blender is cool, you can also check out NATRON.
thanks for the recommend
>Gaming is never okay.
fugg u, I also make games
Well said comrade.

>I also make games
That's some times okay *see >>>/e/400. Anyway you were already told about Blender, which also does 3d modeling. GIMP would be good for making textures/sprites, Krita is supposedly much better, but I have my doubts that it would be nice for making pixel art if that's the route you're interested in. I don't really know anything about sound design other than practical effects are some times used, maybe you could do that. On the engine front here are some quality maintained GPL ones (specific to make my life easier):

?3. Also, is gaming on linux actually okay now?
Really depends on what you want to play. There has been a definite recent uptick in Linux game ports over the last several years, particularly in the indie scene. While an unfortunate number of them are technically Windows games running on .NET and using the Mono framework to interpret it in a Linux environment, this is still some significant progress. Wine has also made strides in running modern Windows games if you're into AAA/DRM-infected trash. If, on the other hand, you have a fondness for older Windows games, the Wine project has been breaking stuff for WORKING old games and then refusing to ever go back and fix them for some time now. Finally, if you have a fondness for old console games, then the Linux emulator scene is very healthy and in fact is the go-to system for trying to reduce input lag for certain emulated hardware.

Apparently some tard deleted the /tech/ thread and moved it here while I was in the middle of replying to it. Consider this copypaste charity and possibly the only post I'll every waste here on /hobby/. See you guise on lainchan.
Cmon man, what's wrong with just using this board?

(159.59 KB 497x496 feralhogs.png)
Linux, BSD setups Comrade 08/09/2019 (Fri) 21:33:50 No. 2179 [Reply] [Last]
Discuss what's your setup and collection of applications on your personal computers, smartphones, embedded devices, Industrial equipment, etc. for opsec that other anons could use.
Gnu radio for police chatter?
raspberry pi gps with security features?
Special ECM equipment you're willing to show?
Post them here.
29 posts and 4 images omitted.
>Was wondering what Android/lineage build you guys would recommend, something thats reasonably secure (At this point just worried about companies stealing my metadata) and want to get rid of the adds that keep coming up in my shitty international version of android they've given me.
There is no such thing as a secure cell phone. Replicant is the closest you can get with android, but your device is not supported: https://replicant.us Looking around on XDA for you it seems like all your options are roughly equivalent in terms of security. Just get a official rom I guess.

>Cell phones are tracking and surveillance devices. They all enable the phone system to record where the user goes, and many (perhaps all) can be remotely converted into listening devices.
There is no such thing as a secure smart phone, install lineage OS on it to have a non shit version of linux, and turn it off when it doesn't need to be on, leave it at home when you can
*non shit version of android
Don't commodify your personal information. Everything is on a permanent record. Woke leftists are crypto-anarchists. Cyberpunk is now! Stop blocking Tor users!

OS: When your not into QubesOS, you should consider using a hardened Debian with VirtualBox running Whonix and for more OpSec running Tails from an USB-Stick.
Mail: Thunderbird with Enigmail and TorBirdy; provider: RiseUp, Autistici, posteo, protonmail, tutanota, disroot etc
Password manager: KeePassXC
Encryption: zuluCrypt
PGP: gpa or Kleopatra
Browser addons: uBlock, uMatrix, https everywhere, decentraleyes, Privaqcy Badger, User Agent Switcher, CanvasBlocker, Cookie Auto Delete
Cloud: NextCloud
PDF: Okular
Office: LibreOffice

OS: When you don't have a Google Pixel running GrapheneOS you should get LineageOS or any non-Google privacy enhancing AOSP. See https://www.xda-developers.com/
VPN Mode: channel everything through Tor via Orbot
Browser: Tor Browser, Firefox Klar (when you don't have
App Store: F-Droid (, Aurora, Yalp -> run Google Play Store apps only isolated through Working Profiles via Shelter)
Mail: K9
PGP: OpenKeychain
Adblock: Blokada
Spoofing: NetGuard, Private Location, Wi-Fi Privacy Police, MacChanger, SnoopSnitch
Messengers: Briar, Signal, Wire, Riot.im, TRIfA
Camera: ObscuraCam
Maps: OsmAnd~
Text: Markor, LibreOffice Viewer, muPDF
They literally read your fucking e-mails to maintain their censorious terms of service.

Comrade 09/17/2019 (Tue) 02:45:23 No. 2569 [Reply] [Last]
Is Raspberry pi 4 safe to use?
Comparing to Intel/Amd that may be backdoored
>Is Raspberry pi 4 safe to use dompared to Intel/Amd that may be backdoored?
Cortex-A72 in the Raspberry Pi 4 are vulnerable to speculative instruction attacks without software patching which reduces performance similarly to AMD and Intel CPUs but the Raspberry Pi 4 lacks the ME, AMT, PSP, Microcode, etc issues. There are still a tremendous amount of issues regarding software freedom though, and with a lack of software freedom necessarily comes a lack of security, to quote the FSF on this matter:
>Boards based on the Broadcom VideoCore 4 family, such as the Raspberry Pi, require nonfree software to startup, although signature checks are not enforced. A free proof-of-concept replacement firmware has been developed, but it is not in a usable state, and development has halted. Until the nonfree startup program is fully freed, these boards are useless in the free world.

>By default, the GPU requires a blob running in this same startup firmware. However, Broadcom also supplies an "experimental" free software stack, which could run without blobs, if the startup firmware were free.

>The startup program also implements accelerated video decoding, primarily using highly optimized proprietary code as well as some dedicated video decoding hardware blocks. There are intentional restrictions, apparently due to software patents, blocking the use of this code without a license key (a form of DRM). Nevertheless, video decoding can be done with free software on the CPU, with a performance and power cost.

>There is an additional concern for the Raspberry Pi Camera Module, produced specifically for use with the Raspberry Pi. In order to access the Camera Module, it requires the use of a binary-only driver on the Raspberry Pi. This driver refuses to work unless authentication of an ATSHA204A chip present on the camera board succeeds. This is a crypto chip capable of solving challenge-response requests using a captive secret key within it, essentially it is used to prevent hardware cloning and confirm that the camera board was not manufactured by a third party. In other words, it is a form of hardware DRM. If necessary, you can use a USB webcam supported by free software instead.

Two secure products with roughly the same price range as the Raspberry Pi 4 are:

These products are of themselves as completely free of security faults as you can currently get, but keep in mind the software you run on your system is at this point far more important than the system its self. Performance of these devices is quite a bit less than that of Raspberry Pi 4 though. If you gave me your price range and requirements (what you want to run) I and others could better give you suggestions, and you could more directly achieve your objectives.
What about old hardware? Like a Pentium 133 or an AMD k-6 ?
>What about old hardware? Like a Pentium 133 or an AMD k-6?
Sure, you shouldn't really need to go that far back though, also those CPUs are probably slower than the systems I listed. It seems to me that at the very minimum some K-7 and Netburst CPUs would be a possibility. It's difficult for me to give suggestions though because they've just been consistently moving in this direction for such a long time, and because in many cases the early developments of these technologies are either innocuous or simple to work around.

2006-2008 is the grey area for Intel CPUs because this is when things started going south with AMT, ME, TPM, Microcode, Speculative Execution, etc. You really do have to do some research into the individual CPU to know for sure in this time span. I honestly don't know as much about AMD CPUs, I know some of them have speculative instruction issues since 2003. They started getting Microcode in 2007, they got SEM at some point post-2003 and they got their PSP system in 2013. It probably took a generation or two for each of these things to become strong enough to be harmful though as in Intel CPUs. If you really want to go back to the vary root of most of this it's with trusted computing which started to slowly be implemented starting around 2003:

Another concern for x86_64 systems is that they have non-free bios which need to be re-flashed with coreboot or libreboot in order to be able to boot using only free software. This problem is near universal with only a few examples of machines with modern Intel CPUs being the exception. Additionally the vast majority of systems lack support for libreboot/coreboot. Due to this there is no x86 system I can point to and say out of the box this is capable of running a desktop environment securely.
It recently came to my attention that there is actually a great deal of controversy on this board. It seems that it's not entirely standardized that it's not entirely open-source hardware, and there are a number of legal disputes with it. Given that I'd likely suggest the other board as a raspberry pi replacement.


no cookies?