[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology

Name
Options
Comment
Verification
4chan Pass users can bypass this verification. [Learn More] [Login]
File
  • Please read the Rules and FAQ before posting.
  • You may highlight syntax and preserve whitespace by using [code] tags.

08/21/20New boards added: /vrpg/, /vmg/, /vst/ and /vm/
05/04/17New trial board added: /bant/ - International/Random
10/04/16New board for 4chan Pass users: /vip/ - Very Important Posts
[Hide] [Show All]


🎉 Happy Birthday 4chan! 🎉


[Advertise on 4chan]


File: Red hair maid.jpg (1.08 MB, 3536x4160)
1.08 MB
1.08 MB JPG
What are you maids working on?

Last one: >>106744171
>>
>>106767248
not programming
>>
I hope her cock is at least 9 inches
>>
>>106767248
I made a maze generator with Java for fun.
>>
The OP should've been an underage sexy child, then this thread would already have hit bump limit.
>>
>>106768361
how do you know?
>>
>>106768506
pedophile board and website
>>
>>106768513
Even markov chains can't explain why when you start CS, you end up with pedophilia
>>
>>106768550
Because people who make 6 figures don't want a blown out roastie.
>>
I'm implementing some game theory stuff but now I'm tired.
>>
>>106768564
DPT - David's Promised Territory Island when?
>>
>>106767248
that's a very hot maid, thanks.
>>
>>106768641
Have some awareness and don't end up like https://stackoverflow.com/users/2131/drpizza
>sepples / C / C# user
How typical
>>
Whats the corporate correct way of planning and tracking code? I just code whenever I want to but apparently thats bad and you need to create a plan before hand, test each version and then test it but idk where to start. I know what a flow chart is but idk how you're supposed to create a box for every single option if its a large program. Outside of flowcharts what are the other stuff called which I need to know?
>>
>>106767248
BOOBA
>>
>>106769147
>Whats the corporate correct way of planning and tracking code?
git or svn
>>
or if you mean not just code itself but tasks as a whole: Jira
>>
>>106769147
if you just mean like version management that's git
stuff like trello can help you make a roadmap

but if you're talking about like abstract planning shit there is no "correct" way in general much less a corporate one
project manager types came up with things like agile and scrum and stupid concepts like story points and planning poker where things like task assignment is complicated and for every hour you spend writing code you spend like 5 in meetings
one of the original devs of fallout has a youtube channel and was talking about how they used to do things (write what needs to be done on a whiteboard and a dev writes their name on what they're working on, if you need something related to it you just go directly to the person) and how when he tried to do this with newer devs they didn't want to do it because they were afraid of being held accountable for progress not being made

actually successful projects will usually have some sort of benevolent dictator type who sets the rules and what works for each project is completely different
>>
>>106769256
>>106769262
Usecase for jira/trello?
>>
>>106769266
from what i've seen trello is just for making a roadmap.txt look prettier and have nice graphics
iirc jira is like a digital task ticketing system, like ticket for feature request or bug report or it problem comes in, dev/helpdesk logs in and picks up the ticket
like a digital version of the whiteboard idea except a complicated mess
>>
>>106769328
>implying codemonkeys can just choose which feature they work on
seems like something that makes the managers even more worthless yet manager doesn't get fired because the codemonkey cannot just manage himself and document everything about his work in jira
>>
>>106769262
>project manager types came up with things like agile and scrum and stupid concepts like story points and planning poker where things like task assignment is complicated and for every hour you spend writing code you spend like 5 in meetings
the whole point of scrum is to keep management away from the dev team as much as possible
if you don't like project managers nosing on your job, you're a fool to dislike scrum
>>
>>106769351
Cool theory yap lil bro, managers still have jobs, and guess who you do your daily standup to, it's definitely not the wall even though it sure does feel like it, lil yapper.
>>
>>106769147
>I just code whenever I want to but apparently thats bad and you need to create a plan before hand, test each version and then test it but idk where to start.
according to who?

captcha: TNDYWR
>>
>>106769360
>managers still have jobs
good, that means I can delegate management to them while focusing on dev work
>guess who you do your daily standup to
i'm there so i don't have to guess (unlike larpers and llms)
it's literally just the dev team
>>
File: .jpg (110 KB, 500x500)
110 KB
110 KB JPG
>>106769674
>I can delegate management to them while focusing on dev work
That's not how it works, lil never employed bro.
>>
>>106769693
yes it is
>>
Just
/\byap\b/
/\blil\b/
>>
File: do this.jpg (494 KB, 900x900)
494 KB
494 KB JPG
IiI vro thinks he's very smarts but he's all jap
>>
Always amazes me how little programmers know about databases. Even the advanced one don't know the basics and prefer to pull in tons of data inefficiently (N+1 problems everywhere) and focus on optimising their code to save CPU cycles.

Learn SQL. Learn connection pooling. Learn about ORMs.
>>
>>106770598
It amazes me how far I managed to go without learning about databases.
I shipped a dozen or so services professionally and never even set up a single index except for UNIQUE. It's just that databases are really fast and if you are working with not that much data for some b2b product, database is not going to be the bottleneck. It isn't worth it to optimize everything when some random 3rd party service you don't control takes 90% of request time anyway.

It's only when I made somewhat successful FOSS project when autists with hundreds GBs of porn wanted to use it and I had to learn how to understand EXPLAIN plans and logs, read about indexes, optimizations, etc.

>ORMs
Now, this is just useless bloat. At best it can generate ok queries for most basic tasks, but if you want to use any feature of your database that isn't the most basic shit it either doesn't support it or generates horrendous retarded queries.
Just use query builders and some library for migrations. Anything else is just making things harder for yourself for no real gain whatsoever.
>>
Why is a fourteen year old calling people "lil bro"? Is this some gen alpha slang I am too old to understand?
>>
>>106770699
>databases are really fast
>database is not going to be the bottleneck
Exactly. That's why you should rely on them as much as possible. The bottleneck is network calls (which is why microservices are retarded) and people who don't understand databases have no problem making multiple trips to the db server because they focus on their application logic so much.
>>
File: 1735958236250552.png (97 KB, 1610x408)
97 KB
97 KB PNG
>>106770743
>>
>>106770757
I have no idea what this means. Gen Alpha might as well be speaking Mandarin.
>>
>>106770791
your age?
>>
>>106770743
I think this is just the new update of americans acting like blacks for some reason
>>
>>106767248
Reverse polish notation, C:
#include <stdio.h>
#include <ctype.h>
int getn() {
for (int digits = 0, n = 0;;) {
const int c = getchar();
if (c <= 0) return digits ? n : -1;
if (isspace(c)) {
if (digits) return n;
continue;
}
const unsigned d = c - '0';
if (d > 9) return -c;
n *= 10, n += d, ++digits;
}
}
int main() {
#define SIZE 80
int stack[SIZE], i = 0;
for (;;) {
const int n = getn();
if (n >= 0) {
printf("%i ", n);
if (i >= SIZE) {
printf("Out of stack!\n");
continue;
}
stack[i++] = n;
} else if (n < -1) {
printf("%c ", -n);
if (i < 1) continue;
if (i == 1) switch (-n) {
case '-' :
stack[0] = -stack[0];
break;
case '=' :
printf("%i\n", stack[i - 1]);
break;
} else if (i > 1) switch (-n) {
case '+' :
--i, stack[i - 1] += stack[i];
break;
case '*' :
--i, stack[i - 1] *= stack[i];
break;
case '/' :
--i, stack[i - 1] /= stack[i];
break;
case '-' :
--i, stack[i - 1] -= stack[i];
break;
}
} else break;
}
}

https://godbolt.org/z/jqexaMP85
>>
File: terminal_tumor.png (27 KB, 571x618)
27 KB
27 KB PNG
>>106768361
>>
>>106770895
6
>>
>>106767248
Today was cobbling together a workflow to do advanced trickery using various bits and pieces of documentation and things done by others. It should be easy, but it damn well isn't because it's full of "but you can't do exactly this because that bit over there says no".
>>
File: 1759441403827.png (27 KB, 320x272)
27 KB
27 KB PNG
>>106767248
Working on my rpg editor and engine. I got NPC movement system pretty much done today, tomorrow I might do A* pathfinding
>>
File: carbon.png (1.35 MB, 3000x6228)
1.35 MB
1.35 MB PNG
>What are you working on, /g/?
Fixed point exponentiation.

This was definitely the most complex one so far. And it's the last. With this, I finally have all the math part done and now I can focus on the text encoding and modifying lua VM to use my custom numeric and string types.
>>
File: Figure_1.png (236 KB, 1500x1200)
236 KB
236 KB PNG
>>106772340
And here are precision charts.
Based on values pico8 returns I suspect they use lookup tables for trigonometry and possibly exp/ln if they use them internally(there is no public api avaliable for them). Considering how the error grows and drifts for larger exponents(but stays relatively small), I think they might use some other algorithm for exponentiation or maybe I just made a mistake copying some constants. I might try other methods and benchmark them once I have good set up for this. For now, there are more important things to work on.
>>
>>106772340
ニッガ be doing fixed point math in haskell or some other functional programming language
i don't know if i should kneel or worry about your mental wellbeing, i'll do both.
>>
>>106772664
It's Rust. It's actually a really good language for this sort of things.
>>
>>106772699
ayaoooooo wtf, when your language can be confused with hasklel
>high level language is good for optimizing fixed point math
my sides
anyway, i understand why use fixed point but why do you torture yourself with rust? if you're stuck in some sort of dominatrix bdsm dungeon against your will and forced to take hormones and program in rust at least tell us so we can try to help you
>>
>>106772774
I have implemented fixed point math in assembly already for another project.
Having it all written in high level language makes it much more manageable.
>>
https://www.w3.org/TR/2008/REC-xml-20081126/
>XML 1.0, 26 November 2008
https://www.w3.org/TR/2006/REC-xml11-20060816/
>XML 1.1, 16 August 2006
wat
>>
Ported my percentage calculator to pure tcl, felt very /comfy/.
>>
File: a.gif (275 KB, 500x280)
275 KB
275 KB GIF
So in terms of changing code for old games, how do I do that? Do I need to open the DLL files?
>>
>>106773706
Yes. DLL files are actually zip files with a different extension. You can just extract it, select the view the PNG files of the game assets and replace the PNG file by a new one you made et voila. Recompress the DLL directory and relaunch the game.
>>
File: hmmm.png (336 KB, 592x604)
336 KB
336 KB PNG
Anons I can't get over my indecisiveness. I wanna mess with old games, but C seems hard. Python seems cool, but idk what I could really use it for and C# basically the same thing.
>>
>>106774291
>wants to RE
>C is hard
>>
>>106774343
So I should learn C?
>>
>>106774462
how much do you know about programming
>>
File: sand.png (17 KB, 320x180)
17 KB
17 KB PNG
Sandy sandbox:

static void gameTick() {
auto& c = Canvas;

const int maxSand = c.width / 32u;
for (int i = 0; i < maxSand; ++i) {
c.pData[rng(c.width - 2) + 1] = sand |
(rng(16) << 9) | (rng(16) << 17);
}

const int dira[][3] = {
{c.width, c.width - 1, c.width + 1},
{c.width, c.width + 1, c.width - 1}};
for (int i = 0; i < c.size; ++i) {
if (c.pData[i] & sandFlag) {
bool move = false;
auto& dir = dira[rng(2)];
for (auto d : dir)
if ((c.pData[i + d] & flags) == 0) {
if ((c.pData[i + d] & borderFlag) == 0)
c.pData[i + d] = addFlag | (c.pData[i] & colorBits);
c.pData[i] |= removeFlag;
move = true;
break;
}
if (!move) c.pData[i] |= 0xe0a000u;
}
}
for (int i = 0; i < c.size; ++i) {
auto& pix = c.pData[i];
if (pix & addFlag) pix = (pix & colorBits) | sandFlag;
if (pix & removeFlag) pix = empty;
}
}


https://godbolt.org/z/7af57Ynsb
>>
>>106774291
Learn C already...
You want to go to Japan but it's hard, so instead you learn Spanish and go to Mexico?
>>
>>106774291
Old games are compiled to assembly, for 386 (32 bits), 286 (16 bits) and 8086 (old AF 16 bits) processors. Even generating C code from that is not easy.
>>
File: file.png (82 KB, 820x943)
82 KB
82 KB PNG
generating inverted list arrays to match a set of unicode character, it's pretty neat
in Unicode 15,
136_345 codepoints with the property ID_Start turns into an inverted list array of 1318 elements
139_482 codepoints with the property ID_Continue turns into an inverted list array of 1536 elements
>>
*inversion list
>>
>>106767248
she needs smaller tits
>>
I have realized my fear of writing code that is bad or unoptimal has turned me into a nocoder
>>
>>106767248
On the main repo there's a GitHub action that uses lint cli on all incoming commits for code styling. How do I run the same test locally before I push?
>>
>>106776610
same here
I still keep refining a simple project I made two years ago. this not the way to live a fulfilling life
>>
>>106776610
>>106776753
just let go
I was like that once
design patterns are memes



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.