Programming thread

  • 🐕 I am attempting to get the site runnning as fast as possible. If you are experiencing slow page load times, please report it.
Wrong…Puzzling their way through how I do my job wastes everyone's time and money.
Understanding what others will be doing saves time & money & makes everything work more cohesively. Sounds like you’re reasoning with some very specific examples from personal experience or something. It’s good to know what you’re doing, over everything else. Next up, it’s good to know how what you’re working on affects anyone else working on the project in a different role. Having at least a basic idea solves a lot of issues. What you wrote out sounds personal for your current project or situation. Everyone has their job to do, & if they have a basic understanding of what other departments need to do theirs, it improves efficiency. Expertise & years of experience is a whole other matter.
 
  • Agree
Reactions: Marvin
I don't have too much of a problem with it. It's designed to be tiny and extend already developed solutions, solutions designed with safer languages which are easier to maintain. Lua is comfy if you want a popup in gmod or a mod in Palworld. If you are using it to develop a software solution from the ground up, you should consider something else.
Yeah i agree i love using lua for roblox development to be honest but i obviously use Javascript for more important solutions. I plan on learning Rust, C++ and C# in the future aswell
 
Wrong. Front end devs(How the fuck these people ditched "web designers" is beyond me) design pages with .css and html. Using js to send forms back and animate the page. The backend developers take those pages and render them with data. Puzzling their way through how I do my job wastes everyone's time and money.

Frankly I'm amazed these people have a separate discipline for UI/UX considering that's the one thing they should be doing. They should be exceptionally skilled in marketing and creative design. You know. Things that actually add value, and that programmers are usually exceptionally bad at.

We both have jobs. It's shitty we are expected to do each other's jobs. So much so that not having 3 YOE in the latest frontend/backend framework disqualifies 5+ YOE backend/frontend engineers from most job postings.
There are a small subset of front-end devs that are extremely talented. The rest just lean on the talented devs and know fucking nothing about development.

I listened to a Primeagen stream the other day to check him out. I was honestly shocked out how much of his audience is. It was genuinely startling. I think because of my friend group I'm pretty insulated from the average programmer, and every time I encounter them either IRL or on a forum or something it's fucking surprising.

I don't think I'm an especially talented programmer. Memorizing things takes basically no effort for me which makes up for me being slower at solving problems (mostly because my ADHD brain gets hung up on imagining tons of different solutions to a single problem before I actually write code, whereas in a good chunk of cases I should just pick a pretty-good solution and move on).

Why is the industry letting these people in? I guess that's why so many of them are having a hard time finding a job now. There was this myth for a long time that an average intelligence person could go through a bootcamp and have a lifelong career in programming, when it always felt obvioius to me that their knowledge would grow stale within 5 years, and if you aren't the type of person to self-teach (and need an Uni or bootcamp to teach you) then you'd probably be out of a job after a few years.

I was just shocked listening to his livestream at the quality of questions being asked. It's not lack-of-knowledge type questions (it's totally fine if you don't understand something about how Postgres works under the hood and would like to learn!), but just fundamentally stupid questions that you could come to the answer of with a bit of thought.

@Creative Username if you want to learn vim (I highly suggest it) or something obscure like Kakoune (also based), there are browser games out there that will help you get a hand of the basics (idk about Kakoune for this). You can get a good intuition for the movement within a few days. I'd suggest starting with the basics and keeping a guide handy (even print it out to have it on your desk if you think that'd help). Then every few days or every week incorporate a new key or command or idea. It seems like a long period of time but after 6 months or a year you will never look back. I'm sure as people have said, vim isn't just a bunch of commands, it's more like a language (not a programming language, but a real language). You can combine the terms in glorious ways. You can think of a thing you want to do that you might have never done before, go "oh it seems like these keys should work" and then it'll just work! It's crazy

Even further than this is something like spacemacs, which uses mnemonic keybindings and which-key (a menu that opens up when you press space which shows you all of the groupings or commands that are available with the next keypress). You can do some truly crazy shit there without having to memorize basically anything.
 
Last edited:
@Creative Username if you want to learn vim (I highly suggest it) or something obscure like Kakoune (also based), there are browser games out there that will help you get a hand of the basics (idk about Kakoune for this). You can get a good intuition for the movement within a few days. I'd suggest starting with the basics and keeping a guide handy (even print it out to have it on your desk if you think that'd help). Then every few days or every week incorporate a new key or command or idea. It seems like a long period of time but after 6 months or a year you will never look back. I'm sure as people have said, vim isn't just a bunch of commands, it's more like a language (not a programming language, but a real language). You can combine the terms in glorious ways. You can think of a thing you want to do that you might have never done before, go "oh it seems like these keys should work" and then it'll just work! It's crazy
One of the things you should definitely learn in Vim is macros. I remember instances where I've used macros in Vim and it saved me from writing an entire Python script to get the same outcome.
 
punch.jpg
 
What are everyones thoughts on lua?
i have written a retarded amount of lua code
luajit is generally my goto calculator and i use it for occasional text/number processing and scripts too painful to write in bash
i do rewrite my scripts in something like rust once i notice i use them a lot

lua is great but there's no real use case for it besides embedding or whenever you need more flexible configuration
 
Lol so I was reading the wikipedia page on John McCarthy, the original author of Lisp.

This bit made me laugh:
Both parents were active members of the Communist Party during the 1930s, and they encouraged learning and critical thinking. Before he attended high school, McCarthy became interested in science by reading a translation of 100,000 Whys, a Russian popular science book for children.[7] He was fluent in the Russian language and made friends with Russian scientists during multiple trips to the Soviet Union, but distanced himself after making visits to the Soviet Bloc, which led to him becoming a conservative Republican.
 
Understanding what others will be doing saves time & money & makes everything work more cohesively.

Do you read the source code of every third-party library you link to? Do developers of those libs have to know your source code to be able to deliver something useful to you?

Monolithic code doesn't scale. For large projects, it's much more effective to treat people downstream of your code as consumers. You need to understand their requirements, and they need to understand your API, but if you find yourself digging into upstream and downstream code all the time, you have a problem with encapsulation and abstraction.
 
Do you read the source code of every third-party library you link to? Do developers of those libs have to know your source code to be able to deliver something useful to you?
Yes, every single person on Earth must read every library, everywhere all the time, and that’s the only way it’s ever useful, autistic person in a programming thread (shocker) who gets worked up about, (not exactly sure what.) Try & invent something else out of nothing, it’ll be autistic too.
 
  • Optimistic
Reactions: Marvin
Do you read the source code of every third-party library you link to? Do developers of those libs have to know your source code to be able to deliver something useful to you?

Monolithic code doesn't scale. For large projects, it's much more effective to treat people downstream of your code as consumers. You need to understand their requirements, and they need to understand your API, but if you find yourself digging into upstream and downstream code all the time, you have a problem with encapsulation and abstraction.
You don't need to fully understand every library you consume, but it's probably good for your knowledge to "bleed" a little over the line. Know generally how it works internally, even if you don't necessarily know every last line.
 
I wanted to look up some things I can do to get better at programming (specifically C#). Some of the suggestions were to make a text editor and a fucking barebones operating system. Who do I look like Terry Davis?? Really reminds me that I’m super fucking retarded.
 
You don't need to fully understand every library you consume, but it's probably good for your knowledge to "bleed" a little over the line. Know generally how it works internally, even if you don't necessarily know every last line.

Knowledge doesn't hurt you, but intertwining dependencies is absolutely bad code design. I recently got off a project where the server and the client were so entangled, in part because they'd both been written by the same person, that any time you added features of any significant complexity to the server, you'd end up having to have experts in the client code come rewrite major parts down to the memory management to get it to work with the "client." It supposedly had an API, but the API was fake & gay. Frontend and backend code should not be intertwined.

Yes, every single person on Earth must read every library, everywhere all the time, and that’s the only way it’s ever useful, autistic person in a programming thread (shocker) who gets worked up about, (not exactly sure what.) Try & invent something else out of nothing, it’ll be autistic too.

"REVIEWERS could be here" he thought, "I've never committed to this code base before. There could be REVIEWERS anywhere." The cool wind felt good against his man boobs. "I HATE REVIEWERS" he thought. Obscure early 2000s deep house reverberated his entire headphone set, making it pulsate even as the $3 Monster circulated through his powerful thick veins and washed away his (merited) fear of data encapsulation. "With a global variable, you can access data anywhere you want" he said to himself, out loud.
 
  • Winner
Reactions: UERISIMILITUDO
barebones operating system
In fucking C#? Whatever you were looking at was extremely retarded. Putting aside the fact that the entire field of OS development is quite unsuited for beginners, getting a JIT language runtime working in the kernel is an incredibly hard (and somewhat esoteric) task. An extremely simple notepad clone is a good idea, though.
 
Knowledge doesn't hurt you, but intertwining dependencies is absolutely bad code design. I recently got off a project where the server and the client were so entangled, in part because they'd both been written by the same person, that any time you added features of any significant complexity to the server, you'd end up having to have experts in the client code come rewrite major parts down to the memory management to get it to work with the "client." It supposedly had an API, but the API was fake & gay. Frontend and backend code should not be intertwined.
Aesthetically I totally agree.

But, eh... business considerations dictate design wholesale. If you cannot sell a superior technical design to your boss as better business value, then that technical design is inferior, not superior.

If your boss doesn't understand "but in six months adding new features will be much easier (ie cheaper)", then the company is incapable of writing good software and you should start polishing your resume and looking to jump ship.

Although that being said, there's definitely times where I've split up a program into a client/server architecture just because the underlying OS features make that a more efficient program. But that's really a case that's less two different teams interacting via an API, and more just me talking to myself like a schizophrenic; it's not really "two programs". In fact most of the time the "two" codebases are in the same repo, just with two different toplevel cli commands to kick off the two halves.
 
How is Lua better for this than Python?
In general the Lua runtime is way faster for doing work in the scripting language itself, although if you basically just use python to pass work between C libraries for most of the heavy lifting then python tends to pull ahead again. There are C libraries that interact with lua as well of course but at most its going to be pretty much the same.
 
  • Agree
Reactions: std::string
How is Lua better for this than Python?
preference
i know lua enough to write an interpreter/off-spec vm for it without checking the reference
the way i have setup my machines is incredibly autistic and a large part of the python ecosystem really hates it
i use lua(jit) because it's lightweight, flexible and fast and will run on anything i give it
generally if i feel i need something like python i will end up using node (usually for basic json processing and api calls) or rust (for threading or "data loss risk" scripts)
python is fine if you're familiar with it although i personally dislike python
 
What are everyones thoughts on lua?
It's better than vimscript. In all seriousness, it's fine, it gets used because it's easy to embed in programs written in other languages. I'm happy to accept those tradeoffs for that situation, but the language itself has plenty of oddities (. vs : for method calls, - being a regular expression metacharacter). Using it by itself isn't particularly appealing to me because of its extremely small standard library; you'll notice that most embedding programs essentially provide their own.

I am curious about Redbean, though:
redbean is an open source webserver in a zip executable that runs on six operating systems. The basic idea is if you want to build a web app that runs anywhere, then you download the redbean.com file, put your .html and .lua files inside it using the zip command, and then you've got a hermetic app you can deploy and share.
 
Back