[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]


[Advertise on 4chan]


File: maids.jpg (278 KB, 1500x1000)
278 KB JPG
What are you maids working on?

Last thread >>108653582
>>
Defended my thesis and got a PhD in computer science. Now I have to do a little bit of LaTeX fuckery because the university's template -- which is not actually official but maintained by students to meet the university's standards -- apparently doesn't 100% reflect the exact formatting specifications, so now I need to make my revised thesis incorporate some feedback from the university on said formatting.

And also I need to set up an artifact submission for an upcoming conference publication. So the reviewers can look at a machine learning codebase that has accrued some technical debt over the years. Or ignore it. I don't know how many of them even bother to try running the code to reproduce experiments.
>>
>>108683686
are you happy you got it? computer science is pretty fun. what did you enjoy studying most?
>>
>>108683686
Dude, use AI for the LaTeX
>>
Do people just not write AT&T syntax assembly? I can't seem to find basically any resources about it online. It's confusing because that's the only kind of inline assembly you can write with C, so you would think it would have more documentation around.
>>
>>108683750
I would say I am relieved, because it's been a lot of work, and a lot of stress. It's not a path I would recommend for everyone if you value your mental health. But I am... very happy to have this accomplishment. And one thing I did enjoy was learning new methods for implementing ML models, new methods for feature encoding, new ways to evaluate things, etc... In many ways, I have made a point to use my research as a method of driving my programming skills along the way. So the way I'm planning on structuring my resume/CV is going to be able to target two potential career paths at the same time -- research and software engineering. I'm actually planning on having two main resumes, I think. One will highlight my development accomplishments while working as a "research assistant", and the other will focus my skills as a researcher more.

>>108683762
Eh, I might use it for some sample code, but I would actually like to learn a bit more about LaTeX for writing up more complex documents myself later on.
>>
>>108683857
You're going to want to look up "GNU assembler manual".
>>
>>108683686
I wore latex last night
>>
>>108683890
Thanks. That did it.
>>
>>108684165
I've actually got some undergrads I'm mentoring doing some research on vibe coding, in particular with respect to software vulnerabilities. The results thus far are... interesting.
>>
>>108684165
No.
>>
>>108683492
finally finished my compiler's from-scratch rewrite, and got it running my kernel with no code changes needed except for two fixes:
- 1 count of bad strtok usage previously unnoticed due to previous compiler not optimizing for short-circuit
- needed one-liner to keep the SP at bottom of main()'s process arguments after pushed to stack by exec(), due to call logic changes

now i can finally start testing my replacement of my shitty vmm to a bsd-style vm, which has just been sitting in feature branch for a months now bc the previous compiler was shit and had too many bugs to bother wrestling it into submission to give testing the vm branch a fair go. excited to merge it since it obliterates almost all of the code complexity that's been stressing me out
>>
>>108683492
this site has been so dead lately, is anyone even programming anymore?
>>
>>108684581
I managed to get a seg fault in Python the other day and I was very proud.
>>
>>108684400
Now that would be progressive.
>>
>>108684581
I'm STILL working on assembly PS2 memory card operations, which I may add AI doesn't know dick about.
>>
>>108683492
aww these must be the pretty lesbians on Mastodon that talk about an anarcho communist restructuring of society. Lookout Lunduke, the Revolution in Thigh Highs is coming soon!
>>
File: ps2card.png (470 KB, 1019x587)
470 KB PNG
So it seems that while I can read up to a full block (16 pages) continuously before sending the end read/write command, when writing it has to be done one page at a time (possibly for the ECC. the end read/write command may be causing the memory card to carry out the ECC check on the written page).
>>
>>108685244
That was it!!!
I fucking copied a save from the emulator save file into the PS2 memory card.
>>
>>108684581
That's what hard programming work sounds like.
>>
File: VID_20260425_180910_201.mp4 (2.15 MB, 1916x1046)
2.15 MB MP4
>>108683492
- Adding Event Handler for Event Type Function
- Adding Image Widget
Now i am working on text input widget anon

https://gitgud.io/ZekeRedgrave/ZEKETK/-/blob/master/UnixOS/Main.C?ref_type=heads
>>
>>108685704
Anon you forgot to leave the name field empty
>>
>>108685819
Total namefag victory
>>
>>108685819
What do you mean?
>>
File: Zminok-2026-04-25.png (45 KB, 1194x493)
45 KB PNG
>>108685704
it runs in TempleOS?
>>
File: performance.png (33 KB, 804x655)
33 KB PNG
>What are you maids working on?
I posted my website and people said it was slow so I've been optimizing it.
It's a nextjs project on turbopack and for some reason it was loading the entire lucide-icons library instead of only loading the icons that were actually being used. Also a lot of useless zod schemas were being used and I also optimized the thumbnails.
Now I'm changing the rendering strategy.
https://umigalaxy.com/explore/general/348-this-site-is-slow-as-hell
>>
>>108686093
Go to your containment general
>>>/g/vcg/
>>
File: gbemu.png (181 KB, 603x523)
181 KB PNG
heh
>>
>>108686631
Why bother emulating gameboys on the computer when you can buy gameboy recreations to play official and unofficial gb games one, you can even now get kits to flash roms onto carts now.
>>
I need to make a tool now for making UI elements (basically info windows) for my Gameboy emulator for the save related things.
Probably message on startup when you don't have a memory card inserted (so you won't be able to load or save) and then when you go to save, confirming you want to save, progress and outcome.
>>
>>108686647
>WhY bOtHeR wRiTiNg SoFtWaRe YoU FiNd InTeReStInG aNd EnJoY wHeN yOu CaN jUsT bUy ThInGs InStEaD?
If you don't want to code, go to vcg or something.
>>
>>108683492
I wrote a calorie and body composition tracking webapp because I thought I'd host it somewhere exposed turns out I only use it on my local computer so now that I had two data outages in relation to my firebase db, I'm planning to turn this into a desktop app using Python, sqlite3 and probably Qt for the GUI.
Why Python? Because I already know the language and want to focus on learning GUI development with Qt.
>>
>>108686675
You got something against soldering or manufacturing your own electronics? It takes more than just buying something, its coding, manufacturing, soldering, and understanding software stacks and work flows all in a very easy, portable, and understandable way. It's cool to tell people the bronze handheld I'm playing on was completely made by me and the software it runs on was customized by me.
>>
>>108686631
This looks like something a rouge ps1 developer would make to be able to play gameboy games on ps1
>>
>>108686680
Python isn't performant, but if performance isn't an issue then just go ahead.
I don't know how the data will scale over time. Perhaps you may want to look into a mix of a C backend to crunch data at intervals so that once you have built up months of data it won't slow down the frontend.
Or perhaps just leveraging numpy or other packages will be enough there.
>>
>>108686694
>You got something against soldering or manufacturing your own electronics?
Nothing at all. I also make things.
I have a custom microcontroller driven cartridge here that I haven't written the code for yet. It's on my list of things to do.
I have too many projects. Fuckin LavaRGB modded my twin famicom not long ago.
>>
>>108686709
The performance isn't really that important since it's just a tool for me to use. I don't ever plan on releasing it, hence the absolute lack of auth, which makes things just simpler. Though I guess with a standalone desktop application people could just run their own instances. Anyway.
I'm not sure about the db design yet, need to read more into scalability. Then again I'm feeding it like 5-6 new entries a day, each day until I don't want to anymore. If my typescript can handle that so far, I don't see a big issue coming up with Python.
>>
Why do so many people insist on rewriting code into a didn't language? I was told its a waste of time and you'd have an easier time doing a bridge over than rewriting it, but why are so many people now rewriting code and breaking shit that worked before? Are we going to start rewriting fucking the COBOL systems that keep all the government and financial systems going?
>>
>>108687435
>didn't
different*
Don't know what happened there, perhaps a stroke.
>>
>>108686631
what am I looking at? you got your gameboy emulator running on ps2 and now you can run roms by copying them to the ps2 mem card?
>>
File: ai-maid-puke.mp4 (1.15 MB, 1264x720)
1.15 MB MP4
>>108684165
>ai code
>>
>>108687435
>Why do so many people insist on rewriting code into a language other than Haskell?
I don't know anon
>>
File: debugger.png (352 KB, 1920x1039)
352 KB PNG
>>108684581
Only maids still program, and they're mostly working on non-trivial things so project discussion is actually about projects, rather than the programming 101 questions homework posters used to ask, or the useless 5 line snippets people used to shitpost, usually in reply to the homework posters. For example, I am working on the MAIDS debugger. The underlying Java is so large that no parts of it can be meaningfully shared on a board with a 2000 character per post limit (though I can share some MAIDS snippets).

>>108684845
Please do not politisperg in the maid thread.

>>108687435
>Are we going to start rewriting fucking the COBOL systems that keep all the government and financial systems going?
If this was a real job offer that paid well, I would consider it. There is nothing more fun than looking at old programming languages and computer science textbooks. The 1960s is where CS research peaked.
>>
>>108686647
Half the point of emulation is to not pay for things. Sure, a flash cart can make some things more fun (oh hey, I'm playing a fan made ROM hack on official hardware), but nothing beats "I did not spend a single cent on this. I'm just using the computer I've always had to play video games for free."
>>
>>108684165
>>108687622
Just die already, anti-intellectual Ottoman rapebaby spammer.
>>
>>108687435
>>108687451
COBOL is one of those odd cases where I can see "rewrite it in Rust" as a good idea. The problem with COBOL is that no one fucking likes it enough to learn it, so there are fewer and fewer people able to maintain it. And so the cost of maintaining old software will only become more exhorbitant.
>>
File: reserved for maids.png (308 KB, 580x386)
308 KB PNG
>>108684165
AI code is impressive, but it is more fun to code by hand as a hobby, for the same reason it is more fun to make a wood carving yourself than to buy a mass produced one from a store. If you are trying to make money from your code, AI is a good way to save on labor costs and launch quickly, but not everybody is attempting to run a business or make a product. Your stance is sort of like going to a forum dedicated to hiking and telling the hikers that they should use a car to travel instead. Yes, that would be a faster and easier way to travel, but the people interested in the hobby aren't looking for faster and easier. They're looking for a fun activity. This is something wagies and people with a wagie mindset will likely never understand, because to them, making code is a means to an end, not an end itself.
>>
>>108688327
Why not rewrite it in COBOL 2023?
>>
>>108684581
yes but not posting anything about it in a maidnigger-usurped thread
>>
File: moe moe kyun.jpg (56 KB, 750x536)
56 KB JPG
>>108688793
Nothing was "usurped". Most of the non-maid posters left when AI took over answering questions for homework posters, and programming is becoming increasingly non-viable as a job as AI takes control of that as well. The result is that most of the remaining posters are maids, because maids were the ones making non-trivial projects, or studying computer science for fun.

Maids are the only group that persisted and continued to thrive here. The culture war for this site has ended in a total maid victory. Welcome to the eternal maid cafe.
>>
not reading a single maidnigger post btw
>>
>>108683858
>my resume
>just finished my PhD
oh, anon...
you were supposed to get internships while you were still a student and have a job lined up BEFORE you defended.
shit, you should have had someone from your new job on your committee.
...
good luck out there.
>>
>>108688022
>haskell
Very funny, anon...
>>108688327
They aren't going to rewrite it because its so integral to the global economy and daily functioning, rewriting it, fucking it up, and having safety risks are way not worth the rewrite when you can just continue to slap shit onto it. Also eventually they will move to COBOL-interpreter tools where people will no longer work with naked COBOL but with a middleman interpreter that spits COBOL back out into another programming language to fix.
>>
>>108689241
>COBOL-interpreter tools where people will no longer work with naked COBOL but with a middleman interpreter that spits COBOL back out into another programming language
sir that is a compiler
>>
>>108683762
>use AI for the LaTeX
He's a winner, so he doesn't do that. You're a loser, so you do. Understand the difference.
>>
>>108689294
Are... Are you sure it isn't magic?
>>
>>108689294
>COBOL
>hard to learn
Nah, COBOL is actually a lower-level programming language, what makes it hard is that its archaic as fuck and most of the scripts are also thousands of lines long, but it isn't a high-level computer language like we have now.
>>
>>108689514
i never said compilers weren't magic
>>
>>108683492
Scrubbing the shower floor while I wait for the washing machine to finish
>>
>>108687520
It's how I am going to be handling making saves in the emulator, by saving to the memory card.
>>
File: IMG_1018.jpg (49 KB, 375x533)
49 KB JPG
how do i ensure my command line is moe moe?
>>
>>108690646
why dont we just have an abi that pushes e.g. u64 bitmap of live registers to the callee and have it push/pop them at entry/exit? i assume there's a common term for that?
might not translate well to x86 due the looping unless there were a special instruction to read the int and push/pop for its corresponding regs
nvm this is retarded
>>
I have have a compiler noob question. All these compiler tutorials I'm looking at seem to just output assembly literally program.asm. So once you have the assembly file then you just use the assembly compiler to actually compile it. Is that just how things are done? We just transpile to assembly? No one actually outputs directly as the binary? I mean there's almost no difference I was just curious
>>
>>108690749
yes, although once you have a working compiler it's easy to just hack in that little extra logic to pass the output into an assembly compiler (assembler) automatically
>>
It has been a month? months? since I was last able to muster the motivation to program.
Today was the day I broke these chains.
>>
File: 1750394440424243.png (50 KB, 675x636)
50 KB PNG
modern design gui, made with QML + python backend

you cannot get a cleaner design than this
>>
>>108690963
pretty nice looking. tk looks like fat trash. I wish they would have updated it. tkinter is actually pretty quick and easy to do ui shit.
>>
File: 1759291300691425.png (60 KB, 621x881)
60 KB PNG
You should be able to solve this.
https://leetcode.com/problems/detect-cycles-in-2d-grid/
>>
>>108690940
>Today was the day I broke these chains.
what did you make?
>>108690786
ahh makes sense thanks
>>
Seems like there does need to be a delay after erase operations before doing the next erase or a write or you can end up with corruption.
Some of that corruption can lead to the PS2 flagging blocks as bad (and even the memory card not showing up on the PS2 at all), but if you can run an erase on every block (the mcnuke program I made) then when you next format the card it should recover any blocks that were not actually bad.
>>
>>108690983
Look easy as fuck.
Why is it even a medium?
>>
File: heart hands.jpg (267 KB, 850x850)
267 KB JPG
>>108690342
How much can you customize it on your distro? You could start with a moe color scheme. Maybe replace the $ with a heart?

Post current command-line.
>>
>>108690983

1. Traverse the Grid: Iterate through every cell. If a cell hasn't been visited yet, start a search (DFS or BFS) from there.

2. Track Movement: During the search, keep track of the current cell, the visited cells, and the parent cell (the one you just came from).

3. Detect the Cycle: For the current cell, look at its neighbors (Up, Down, Left, Right) that share the same character:
If a neighbor has already been visited and is not the parent, you have found a cycle. Return true.
If a neighbor hasn't been visited, move there and repeat the process.

4. If you exhaust all possible paths without finding such a neighbor, return false.
>>
>>108690985
>what did you make?
I don't want to say exactly since I will publish it with my real name.
But I solved an elusive bug that was less difficult to deduce and more arduous, but as a result the code is very simple and clean imo.
This has been blocking me from making progress on the more important and exciting parts of the code, progressively killing motivation until now.
>>
https://github.com/bitcores/ps2-mcdump
https://github.com/bitcores/ps2-mcnuke
Here are my shoddy dumping and nuking tools.
>>
File: 1559_2d_grid_cycle.png (525 KB, 633x774)
525 KB PNG
>>108690983
oh that was a cool one. I like grid stuff. my logic was if you reach a point at the same time from another direction eg the same deque step there must be a cycle. looks like I was correct, but apparently the optimal answer is union find.
>>
I'm doing some low-level programming in C. I read the value 0x2F into a 16-bit variable called 'OPCODE' and shift it left by eight bits so that the value is 0x2F00. Then I read another byte from memory, which is 0xFF and apply bitwise-OR to 'OPCODE'. I expect the final value in that variable to be 0x2FFF, but it's actually 0xFFFF. Why is that? In GDB, if I print the expression manually, I actually get a 32-bit value despite one being 16-bit and the other 8-bit.
>>
>>108691161
You're probably getting sign extension.
If you load a signed 8bit value into a 16bit register, it will fill the upper 8 bits if it is a negative value (bit 7 set).
Make sure you do an unsigned 8bit read for the second byte.
>>
>>108691161
...there's no way. you definitely have some sort of bug where you're OR'ing it with a 16 bit 0xFFFF... probably.
>>> hex(0x2f << 8)
'0x2f00'
>>> hex(0x2f << 8 | 0xff)
'0x2fff'
>>
>>108691195
You're right. One of my operands was signed.
>>
>>108691216
wait now, are you talking about VARIABLES or registers? 0x2F doesn't even have bit 7 set idk what that anon is smoking
also google c integer promotion rules, they'll tell you why the result is 32-bit. and show code
>>
File: 1579476793368.png (17 KB, 250x208)
17 KB PNG
I MUST RUST
I HAVEN'T WRITTEN A SINGLE LINE SINCE THIS MORNING
I NEED TO RUUUUUUUUUUUUUST
about to open that one .rs file with an unfinished sideproj of mine and go apeshit
>>
>>108691240
The second byte he is loading is 0xFF, so that one would extend to 0xFFFF if it is being handled as signed.
>>
>>108691246
okay i missed that, but it sounds like he's programming in c and not assembly
>>
>>108691195
>>108691246
I had no idea an unsigned 8bit load will auto fill a 16bit. now this guy fucks.
>>
>>108691240
Variables. 'OPCODE' is an unsigned 16-bit integer. I'd forgotten to declare the array that holds the value '0xFF' as unsigned. I'm using the type '_BitInt' for both variables, and I don't actually know if integer promotion rules apply to them in the same way as regular unsigned/signed integers.
>>
File: holy_tree.jpg (173 KB, 425x570)
173 KB JPG
https://leetcode.com/contest/weekly-contest-499/

weekly leet contest soon. I'm all ready to finish the 2 mediums and give up. it feels amost pointless, but its the only thing that comes close to the fun of advent of code :(
>>
>>108691256
Sign extensions are always hanging around to fuck you up.
>>
File: binsort.png (2.16 MB, 1537x1023)
2.16 MB PNG
how do you determine the time and space complexity of an omurice?
>>
>>108691267
ah yes that explains it
iirc smaller _BitInt just gets promoted to the larger type of the two, and widening of a signed int extends the sign bit like >>108691195 mentioned
also useful to note that right bitshifts on a signed int will extend it down too, called arithmetic/signed right shift (instead of "logical" right shift)
>>
>>108691323
although i'll also mention the fixed-width ints defined in stdint is probably best practice over _BitInt other than in specific cases where you actually need it (>64 or non-power-of-two)
especially since from gdb output you mentioned it sounds like the min promotion rule (widen to min of 32-bit) is carried over from the normal int promotion rules anyway
>>
>>108691323
Apparently type _BitInt doesn't follow integer promotion rules
>There is one crucial exception to the C rules for integer promotion: _BitInt types are excepted from the integer promotions. Operators typically will promote operands smaller than the width of an int to an int. Doing these promotions would inflate the size of required hardware on some platforms, so _BitInt types aren’t subject to the integer promotion rules. For example, in a binary expression involving a _BitInt(12) and an unsigned _BitInt(3), the usual arithmetic conversions would not promote either operand to an int before determining the common type. Because one type is signed and one is unsigned and because the signed type has greater rank than the unsigned type (due to the bit-widths of the types), the unsigned _BitInt(3) will be converted to _BitInt(12) as the common type.
But if that's really true, then why was a 32-bit value computed from OR'ing a 16-bit with an 8-bit value? Maybe this is an exception given that the 8-bit value was signed?
>>
File: 1753465487062654.png (8 KB, 621x111)
8 KB PNG
>solved hundreds of leetcode questions
>never seen this pattern before
if google asked me this I would kill myself
https://leetcode.com/problems/zero-array-transformation-i/
>>
File: ints.jpg (53 KB, 535x468)
53 KB JPG
>>108691458
>>
>>108686680
>>108686728
Please just use python.
I've wasted hours flip flopping between C and Python on the same project because /g/ kept memeing me.

Unless you plan on writing the database engine and graphics library yourself there is no point in using C.
>>
Now i know why im stupid. Spent 5 years in compsci and still can't get a job after a year.
One of the factor is probably because I browse twg instead of dpt or wdg
>>
>>108692094
>Now i know why im stupid. Spent 5 years in compsci and still can't get a job after a year.
>One of the factor is probably because I browse twg instead of dpt or wdg
whats do you feel is stopping you? are you failing at interviews?
>>108686680
I have a few random `import tkinter, sqlite3` desktop apps and like em. mostly I just keep track of hobby shit like movies or games.
>>
>>108684165
>decide to do experiment
>vibe code for a month
>the decisions of the llms are questionable at best
>try to add new feature
>half of the shit breaks
>have to roll back to two versions before
>haven't written a single line of traditional code since beginning of month
When this month ends I'll go back to traditional coding and enjoy it and hopefully undo the atrophy that vibe coding forced upon my brain.
>>
>>108692267
>traditional
It's just coding, vide coding is just advanced copy and posting from stack overflow.
>>
>>108692297
Nah, copy and pasting from StackOverflow you at least have the chance to think "does this make sense", vibe coding takes this agency from you because you don't need to see the code at all!
>>
>>108691678
>https://leetcode.com/problems/zero-array-transformation-i/
lol fuck brutal some shits so unintuitive. try this one. it stumped me in the contest and then after it was like FUUUUC
https://leetcode.com/problems/minimum-operations-to-make-array-non-decreasing/description/
>>
>>108692326
On your end, yes.
>>
>>108692212
It depends on how you use Python.
Event driven GUI applications spend most of their time idling while they wait for input.
>>
I HAVE ASPERGER!!!
>>
Reminds me.
I haven't checked if my SIO2 interrupt wait is timing out when I do erase operations.
The most obvious cause of corrupting the memory card during erases would be sending new commands when it isn't ready for them.
Waiting for a vblank after an erase seems to be reliable but that does slow down things if there are a lot of erase operations to do (when writing to the card there are four erase operations per block you write if you follow proper procedure).
Technically you an ignore that procedure but you still have to erase every block before writing it, so fully cloning a card would require erasing every block on the card (of course you could just do used blocks to speed that up) which is over 1000 for an 8MB card.
I suppose 20 seconds is not that bad for a whole card erase, but more accurate waits after erase could cut it drastically. Would be nice.
>>
>>108690963
Bruh, this is pure distilled Material UI. This is how every corporate javascript frontend helloworld looks like during the last 5 years or so.
>>
>>108690963
>>108693206
Although your fonts are fucked up a bit. You need to fix sizes at least.
>>
Seeing what I can do about getting access to the serial port on the EE might be a good idea as well.
Being able to print debug messages out to that would be easier than to the screen.
>>
>>108693280
I might.
But it's not going to be "I'm going to write a BIOS for my PS2" but rather "I've got all these things I can put together into a BIOS for my PS2".
>>
>>108691156
>apparently the optimal answer is union find.
is that for putting reachable nodes into sets
union find is crazy btw look at the complexity
https://en.wikipedia.org/wiki/Disjoint-set_data_structure
n = number of atoms in the universe -> inverse ackerman -> 4, maybe 5
>>
>>108690963
It looks a bit messy because the elements don't line up. Try to reduce the number of vertical lines.
Also I would put the Username and Amount labels to the left of the input rather than on top, but maybe that's personal taste.
>>
>>108690979
>tk looks like fat trash. I wish they would have updated it.
pick a different style, add padding, and take more care with layouts
it really is as simple as that
>>
>>108693410
>union find is crazy btw look at the complexity
it's one of the secret superpower algorithms
>>
File: sst1_mojo_fb_detect.png (371 KB, 1918x1049)
371 KB PNG
>>108683492
Finally got 3Dfx's mojo utility detecting a valid framebuffer size on a Verilated Voodoo (SST-1) model. There's currently no TREX's bolted on (which is why there's a bogus number of TMUs detected), but that can wait for another day :^)
>>
>>108685704
>>108685893
That's the question.
Or do you run it on Goo+Linus? If yes, then i'd be highly interested which holyC compiler you use. I was thinking about porting holyC to risc-v, but i couldn't get around diggin into it inside templeos yet. I just dont have the patience to learn the templeos navigation. rip
>>
>>108686631
Could you run the gameboy games by burning them onto a disc and using the ps2 disc drive to load them? That'd be cool af
>>
>>108683492
You are a pedophile.
>>
>>108694827
based
>>
File: vibing.jpg (99 KB, 800x945)
99 KB JPG
>>108692267
Anon, the atrophy is an irreversible curse.
>>
>>108695003
this but unironically.
On some days it's really hard to think when something takes more than 10 seconds, even tho you know it's easy and it will be just a stupid bug.
Caught myself often copy pasting shit into the chat and saying "what did i do wrong?" instead of just understanding my own fucking kode lmao.
kinda unbased af. But I am getting better at it. Thinking good. Thinking based.
>>
File: 1747270296820269.png (38 KB, 573x660)
38 KB PNG
>>
>>108695171
it would be more useful to return find(x or y) desu
>>
>>108683492
I look like #2.
>>
File: pepesuit.gif (40 KB, 1080x800)
40 KB GIF
>>108691678
That is a nice problem showing how important is to choose the right data structure, or change it to something better:
bool isZeroArray(int* na, int nz, int** qa, int qz, int* ) { 
int d[100001] = {};
for (int i = 0; i < qz; ++i)
++d[qa[i][0]], --d[qa[i][1] + 1];
for (int i = 0, n = 0; i < nz; ++i)
if ((n += d[i]) < na[i]) return false;
return true;
}
>>
File: union.wow.png (526 KB, 649x700)
526 KB PNG
>>108695171
ooo rust
>>108693410
>>108693847
wow so apparently while you're looping through the y,x positions if the previous or above cell has the same parent its a cycle.
[1. X][2. X]
[3. X][4. O] <-- BAM CYCLE
So I guess the reason this works is because you're unioning with the left and top each time so when you hit a position that's connected both ways it'll find the cycle. That's pretty interesting!

Also does anyone know any good problems or tutorials to learn graph compression? I aways get eliminated on those types of AOC challenges.
>>
>>108694827
>disgusted by cute 20-somethings wearing cute outfits and doing cute things
You are a homosexual.
>>
File: PXL_20260426_162140616.jpg (2.21 MB, 4032x3024)
2.21 MB JPG
>>108677405
anon didn't want to believe in me, but we're making steady progress.
Two green leds mean SD card init process successfully done with SPI and risc-v assembly.
Now we just gotta get that block r/w done, then implement redsea in assembly and then implement a CP/M clone or something. Soon I will have my own pc!!! I can make it!!
Just gotta believe in myself
>>
File: umigalaxy.jpg (810 KB, 3841x3561)
810 KB JPG
>>108686093
Added markdown and mentions to my imageboard
>>
File: 1753844234393900.png (187 KB, 1259x1141)
187 KB PNG
got mentally raped by leetcode again award
>>
>>108692254
>mostly I just keep track of hobby shit like movies or games
Yeah, in my case it's just to track my own fatness, or lack thereof, and make sure I stay away from fatty land forever. Making this app really motivated me to pull through with dieting, exercising and in general living a healthier lifestyle. Put the tism to good use for once.
>>108691908
>Please just use python.
I most likely will since I know how to make it do what I need to be doing and converting the core logic from TS to Python is going to be annoying enough when I have to consider that something else is going to display the data and I currently have absolutely no idea how the fuck to do any of that.
>>
>>108692336
This one teaches to focus on the expected output to avoid unnecessary calculations or fulfilling post conditions nobody asked for.
long long minOperations(int* na, int nz) {
long long sum = 0;
for (int* nae = na + nz, p = 0; na < nae; ++na) {
const int n = *na, d = p - n;
if (d > 0) sum += d;
p = n;
}
return sum;
}
>>
File: 1767179747504899.jpg (17 KB, 533x509)
17 KB JPG
>>108692336
WTF is this question?
>>
I'm writing an emulator in C. The way that it works so far is that I supply a binary file through a command-line argument, load all of its content into an array, then call a function that decodes and executes each instruction in one large switch statement. The way I've been verifying that each instruction works is by writing separate binary files and using GDB. Is there a framework that'll make this less cumbersome? I've only used GoogleTest before, but it was for testing simple classes. Is it possible to use it here?
>>
Hello, guys. I'm 19 yo zoomer guy interested in STEM, and I like programming. I want to major in SWE at university, but now with the oversaturation of the market and AI revolution, I have some doubts and want to ask a question: Is it worth it in 2026 and is it possible to find a programming job now?
>>
>>108696163
>is it possible to find a programming job
are you a straight white male?
>>
>>108696474
Yes I am

Well, I think I know where this is going... No chance for me, then...?
>>
>>108695957
>is there a framework
How are we supposed to guess what you're emulating webjeet
>>
>>108695957
>writing an emulator
for what
>less cumbersome
not really. you have to emulate every opcode in the instruction set. gameboy and nes have "test cpu roms" and such that let you run a rom and see what instruction have failed or have been implemented wrong. but realistically you shouldn't have to check each one manually unless you're getting a bug. what you really want to be doing is actually running a rom. basically just dump all your registers and junk each instruction set and manually check it. if you want to start with something simple try chip 8.
>>
>>108696489
>No chance for me, then...?
get comfy in striped kneesocks, call yourself trans and you'll get a job eventually
>>
>>108696675
kys maidposter
>>
>>108696738
>kys maidposter
:( listen mam this is a maid thread. please see op. if you don't have anything of tech maid culture to contribute please show yourself the door. the door is reddit.
>>108683492
>>
>>108696738
You could turn that into a project if you want.
>>
>>108696873
>the door to the maid thread is the door to reddit
>>
>>108691678
This one was tough to conceptualize for me. If you actually loop through the L to R of each query it'll time you out for n*2 time complexity. So its actually like a presum where each index of diff represents the maximum you can subtract from the input array to try and get each element to zero.
class Solution:
def isZeroArray(self, nums: List[int], queries: List[List[int]]) -> bool:
diff = [0] * (len(nums)+1)
for l,r in queries:
diff[l] += 1
diff[r+1] -= 1
max_diff = 0
for i, n in enumerate(nums):
max_diff += diff[i]
if n - max_diff > 0:
return False
return True
>>
File: sakuya shrug.jpg (228 KB, 850x1247)
228 KB JPG
>>108696738
>complaining about maidposters in a maid thread on the dra/g/on maid board
>mfw
Nobody forced you to come here, newmaid.

>>108696163
SWE jobs likely won't exist in any meaningful form by the time you graduate, especially for new graduates. AI will do most of the wagie labor. Only pursue CS if you really like it and getting a degree won't financially cripple you, or if you are looking to go all the way to PhD. If that's you, you should also probably have a maid outfit. If your goal is to get a job, get a different goal. A degree program is not a VoTech and AI is coming for everyone. Knowledge workers will get replaced with LLMs, and physical workers will get replaced by robots running LGMs. Neoliberalism/Capitalism is going to disappear due to technological advancements, the same way feudalism did, and there will need to be a new social contract. No system lasts forever.
>>
Why is analysis of algorithms still stuck in the Knuth era? We have SIMD, cache, pipelines, and GPUs now.
>>
File: scaramouche.jpg (199 KB, 850x685)
199 KB JPG
>>108696896
There are no maids on Reddit. Just people LARPing as 30 year industry veterans to justify whatever half-baked opinions they have, people coping and seething about what AI and H1Bs are doing to the industry, and people coping and seething about mass layoffs. The age of the wagie is coming to a rapid close.

You may not like it, you may disagree, but the attached image is what a peak programmer looks like now, and likely what they will look like for many years to come.
>>
>>108697002
Because we unlike most academic fields with limited profit potential, digital ad companies strive on lack of competition so they hire up all the PhDs, shackle them to some R&D lab in an expensive city and make them sign NDAs. Sure they trickle out a paper every once in awhile, or give a seminar. But only enough to keep people talking about the company, it's not really about revealing the state of the art to the main stream. Interesting that AI is taking then completely opposite stance, but then again no single AI has profited yet.
>>
>bfs / djikstra question
>always takes 40+ minutes
>>
>>108694812
I haven't looked at reading from the drive at all.
I don't know how to make a disc bootable, but if you run the emulator elf from freemcboot and then just read the disc filesystem to look for roms to load that'd be possible.
>>
>>108696669
>you have to emulate every opcode in the instruction set
the cpu tends to be the easy bit to emulate, unless you need exact timings
the rest of the hardware is where it gets more challenging
>>
File: maid with huge boobs.jpg (177 KB, 850x1204)
177 KB JPG
>>108695266
>good problems or tutorials to learn graph compression?
https://www.sciencedirect.com/science/article/abs/pii/S0306437917301680
https://www.sciencedirect.com/science/article/abs/pii/S0020025521006411
>>
>>108696669
Forgot to mention that I'm actually writing a CHIP-8 interpreter. I've found test ROMs online that I can use, but those are dependent on working graphics and I'm hardly familiar with SDL. Since there are only ~30 instructions to implement, I want to verify those myself so that when I get around to writing the SDL code, I'll know that if anything is going wrong I can rest assured that the interpreter is at least working correctly.
>>
>>108697759
Reasonable.
I had to start implementing video in my gameboy emulator so I could run test roms to fix all my instructions. It was surprising how many were broken but still seemed to run code fine.
>>
>>108695494
In C:
int removeStones(int** sa, int sz, int*) {
int g[20002] = {};
int v[1001]; int vz = 0;
for (int si = 0; si < sz; ++si) {
const int x = sa[si][0], y = sa[si][1] + 10001;
const int gx = g[x], gy = g[y];
if (gx == gy) {
if (!gx) v[vz] = vz, g[x] = g[y] = ++vz;
} else if (!gx) {
g[x] = gy;
} else if (!gy) {
g[y] = gx;
} else {
const int a = v[gx - 1], b = v[gy - 1];
if (a == b) continue;
int min = a, max = b;
if (a > b) min = b, max = a;
for (int i = 0; i < vz; ++i)
if (v[i] == max) v[i] = min;
}
}
for (int i = 0; i < sz; ++i) g[i] = 0;
for (int i = 0; i < vz; ++i) sz -= ++g[v[i]] == 1;
return sz;
}
>>
>names their variables sa sz vz si x y
I hate you
>>
>>108698249
It's called math
>>
File: bowsette.jpg (83 KB, 750x471)
83 KB JPG
>>108698325
Please be nicer to the wagie. Wagies don't understand that the computer is a microscope for mathematics. If you teach her this, she will become a maid.
>>
how verbose do you guys name functions and what kind of ordering do you use for verbs/nouns? this is a bad example because most people just use strlen(), but which of these do you prefer?
get_string_length()
string_get_length()
string_length()
>>
>>108698421
stringLength()
>>
>>108698421
i would need to know WHY i need a string length function when strlen exists... for instance "strlen_except_a" for a string length that excludes 'a' or something else. If it's literally just strlen for no reason then yeah "strlen2" I guess.
>>
>>108698421
????????????????????

s.len
>>
>>108698421
at least in Java, it's convention to use full words rather than shorthands, eg. "stringLength" instead of "strlen"
also it's redundant to add the subject into the function name since you call functions from an object that already has a name, ie.
string.getLength() // no point in naming it .getStringLength()
>>
>decided to bite the bullet and start to properly learn c++, 3 days ago
>it's fine i'm familiar with programming already shouldn't be too hard
>compile and linker gotchas to be aware of
>memory gotchas with simple literals
>overflow gotchas with basic operations
>"careful this copies" gotchas
>this works differently because it uses an underline C definition gotchas
Holy fucking shit... And I still haven't reached the ptr lesson yet. I knew C++ would be difficult but not from that angle.
>>
>>108698732
There's a reason Linus Torvalds has strong opinions on it...
>>
>>108698732
Should have learned Holy C :D
>>
>>108692254
>whats do you feel is stopping you? are you failing at interviews?
spent a year looking for QA tester job since april 2025. realized my cv is just utterly shit and never bothered to actually study or make projects. sure i did sent out 400 applications, got like 21 take home tests and 4 interviews, but i never bothered to tackle the root cause. for now i guess i'll just go back to studying/making projects and try to break into webdev, at least frontend. if i cant get a job even after committing to webdev at least i can still do gigs for my mom/her colleagues instead of saying "no, sorry, i cant do webdev" all the time. i want to at least be able to do crud, make blogsite, and stuff.
>>
do you guys also have this obsession where you track changes on your laptop's storage, like "where did my 5gb free space disappear to? i had 203 gb yesterday, now i have 199" , and how much is the battery wear level, and storage health almost daily and even hourly?

How do i stop being like this? being paranoid thinking about shit taht doesnt matter?

i have 198 free space out of 275gb on my C storage (windows). i havent installed any frameworks on it yet, only vscode. and i have 191 free space out of 200gb on my D storage. both are the same part of a 475gb nvme ssd.
>>
>>108698993
In a way because I keep wasting my HDD space. I've found out that compiling rust projects can cause the target/ directory to swell between 1 to 5 GB depending on project size.

It does matter, just not at the moment (since you have free disk space), but eventually it will fill up, then every byte matters. It's a good mindset to have.
>>
>>108691678
Am I doing this right?
typedef struct {
unsigned int l;
unsigned int r;
} query_t;

bool isZeroArray(const unsigned int* const nums, const unsigned int numsSize, const query_t* const queries, const unsigned int queriesSize) {
for (unsigned int i = 0; i < numSize; ++i) {
unsigned int count = 0;
if (nums[i] == 0) continue;
for (unsigned int j = 0; j < queriesSize; ++j) {
if (query[j].l <= nums[i] && nums[i] <= query[j].r) ++count;
if (count >= nums[i]) break;
}
if (count == 0) return false;
}
return true;
}
>>
>>108699337
whoops made a typo, query[j] should be queries[j]
>>
>>108699337
That has O(n*q) time complexity. The test cases are designed to time out if the solution doesn't have O(q+n) time complexity.
>>
>>108699159
I ended up not doing anything important for the rest of the day. Finding dumb shit to worry about instead of just focusing on projects. I know if i have money i can just get another storage.

You know that saying about dumb people are way ahead of you because they doesnt waste much time on planning because they have high agency?
>>
>>108699467
I am keenly aware of the problem, it's also why there's so many "stupid" rich people. Then again, the xz vulnerability was only found because of microseconds of delay...
>>
Spread sheets are bloated and I wanted to automate pulling some ASX data so I made this.
>>
>>108699618
what font is that?
>>
So there are two main features I need to work on now.
Searching for existing save for overwriting, and then overwriting just the save file (I don't have to worry about resizing at all, so that's nice).
Most of the same but for loading the save.
Once those are done I can basically implement it into the Gameboy emulator. But there are some finer details on the memory card access and communications, including better card detection, that I need to work on.
I still need to do audio for the gameboy emulator as well.
>>
>>108695366
This is a pretty big job and you'll invariably get blocked and stop, but good on you for going balls deep. This is how I learned and broke into the industry
> t. Embedded sw dev at big silicon manufacturer
>>
>>108701229
>you'll invariably get blocked and stop,
yes.
That's why I try to keep it KISS.
AI told me that CP/M for example didn't even have multi-tasking. So I might not aim for that either at first. One tiny step at a time and see how far I get
>>
>>108683492
How to get a job?
Say that you will work very hard.
Never mention money.

Congratulations you are now the perfect candidate... Exploitable...

Now explain the things of value you bring to the table that will make your employer money.

Remember this isn't about you.

Be nice and happy and smile.

You are now the top candidate for the job...
But the moral question is... Should you really work for someone like this?

If you have no choice but to work for someone like this... What can you do to make things better?

Yes... All job providers are like this... What can be done?
>>
>>108701698
>Yes... All job providers are like this... What can be done?
Not all of them are like this (at least my exp here in germany)
What can be done? Don't act like they want you to act and play the stupid HR game. If everyone plays their game, then they wont change it
>>
>>108697703
haha wow this is interesting. I've never read comp sci papers before. sank you!
>>
>>108697703
dude just show me the code in python
>>
>>108702074
if you have never implemented an algorithm written down in a paper, given by a mathematical equation or presented by any kind of digram, then you should do that.
Imo it's a much more valuable skill than stupid data structure learning. Also it's actually super fun



[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.