Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "assembly"
Do I really need to say more? Okay, it's low level so there is no abstraction. All you deal with is cold naked mathematical truth and physical limitations.
It's still ❤️9
Once upon a time, there were a restaurant called "iEat.tech.com".
It was a small single-location place, where the sufficient number of patrons could be served by the cozy number of employees.
In fact, headcount was so lean that the cook was also the one who washed all the dishes.
But then came the suits and their "VC"(daddy) money and scaled shit up.
Soon, there were so many patrons that the dishes started to pile up the sink, never washed.
"We need someone to wash the dishes!" said the cook
"Fuck you, you wash the dishes!" said the s*its
Naturally, the cook left soon after.
The s*its had a problem now. They could not replace the cook fast enough - all other cooks were either young, inexperienced and mediocre (but did clean the dishes), or refused to waste their time on the sink.
So the suits did what $*its always do - they got a fucking consultant. Who told them to get a fucking dishwashing machine and billed them the GDP of Ireland.
The s*is, of course, did not want to buy a dishwashing machine. "Our fucking process is too fucking disruptive for us to use a fucking store-bought mass-produced metal servant!" (s*its don't know what "machines" are. For them, it's all in terms of "servants", employees and machines alike).
So the s*its hired an engineer to "solve the fucking dish problem, once and for all".
The engineer quickly started measuring and drawing and calculating. The engineer was about to prepare a budget when the s*its came screaming "What the fuck are you doing? There is a fucking pile of dishes in the sink!"
The engineer replied that "I'm designing the machine!", to what the s*its responded "don't bring me fucking problems, bring me solutions!" (or some other s*it blabber)
So the engineer quickly designed an efficient dishwashing assembly line to be done in half the time most people would. And then went back to designing the machine.
But the s*its were having none of it. They kept expanding and expanding and doing what they could so that the engineer never had a moment to work on the machine. They dit it so surreptitiously that no one barely even noticed, but one day they were paying a team of engineers to be fucking human dishwashers.
Now replace "dishes" with "Jira tickets" or "quick fixes" or "tiny changes" and fix other terms accordingly.
Most successful project... What is success?
My first computer at 8 years old was a Commodore64. There was no internet yet, so I used the manual to learn about BASIC and assembly, sound and sprite registers, and created a pretty elaborate RPG. Mostly text, some sprite art, soldered some eeprom cartridges, optimized the code. Spent almost a year on it. An enthousiast magazine picked up on it, revised, QA'ed & published the game, sold a little over 10k samples. I got ƒ0.25 per sale, and I was completely overwhelmed how much candy one could buy for ƒ2500 ($2k corrected for inflation).
I was employee #3 at my current company, started when it was worth nothing and the website redirected to a set of Google Forms containing all the logic. I wrote a large part of the first, monolithic backend.
Now there's teams in a dozen countries, and an estimated revenue of a quarter billion.
So obviously my current "project" is more successful.
Still, my current job sucks, the company turned into a desolate passion-free wasteland full of soulless fake hipster zombies and managers who seem to derive sexual pleasure from holding extremely ineffective meetings, endlessly rubbing their calendars together in their bureaucratic orgy of ineptitude.
So, I'm more proud of my C64 game.2
Haha kids, you're all dead wrong. Here's my story.
There is a thing called “emergence”. This is a fundamental property of our universe. It works 100% of the time. It can't be stopped, it can't be mitigated. Everything you see around you is an emergent phenomenon.
Emergence is triggered when a lot of similar things come together and interact. One water molecule cannot be dry or wet, but if you have many, after a certain number the new property emerges — wetness. The system becomes _wet_.
Professionalism is an emergent phenomenon too, and its water molecules are abstract knowledge. Learn tech things you're interested in, complete random tutorials, code, and after a certain amount of knowledge molecules is gained, something clicks inside your head, and you become a professional.
Unfortunately, there are no shortcuts here. Uni education can make you a professional seemingly quicker, but it's not because uni knowledge is special, it's because uni is a perfect environment to absorb a lot of knowledge in a short period of time.
It happened to me too. I started coding in Pascal in fifth grade of high school, and I did it till sixth. Then, seventh to ninth were spent on my uni's after-school program. After ninth grade, I drop out of high school to get to this uni's experimental program. First grade of uni, and we're making a CPU. Second grade, and we're doing hard math, C and assembly.
And finally, in the third grade, it happens. I was sitting there in the classroom, it was late, and I was writing a recursive sudoku solver in Python. And I _felt_ the click. You cannot mistake it for anything else. It clicks, and you're a changed person. Immediately, I realized I can write everything. Needless to say, I was passing everything related to code afterwards with flying colours.
From that point, everything I did was just gaining more and more experience. Nothing changed fundamentally.
Emergence is forever. If you learn constantly, even without a concrete defined path, I can guarantee you that you _will_ become a professional. This is backed by the universe itself. You cannot avoid becoming one if you're actively accumulating emergence points.
Here's the list of projects I made in the past 11 years: https://notion.so/uyouthe/...
Working with assembly is just something different... note to self: keep a cheat-sheet with the labels and corresponding addresses at hand.....8
Well shit, now I (re-)learned C,
And all I want to do is program in C,
But all C jobs are like -
"C guru that merged to Linux kernel"
"Driver writing low level must know Assembly"
"Military-grade realtime hardware design"
Isn't there a C job that's like Python - "here I wrote this script in 5 minutes and spent the rest of the day playing Eve Online" :D :D10
Holy shiiittttt I finally got 64bit NASM working on windows with cmake. Cmake documentation is fkn bad man.
I’ve got a c++ file that calls a procedure in an assembly file that calls win32 APIs to show dialogs and other cool shit. Compiling was working fine, linking turned out to be a bit of a pain in the ass, but figuring out how to enable NASM in cmake was a nightmare. Why is the cmake docs so horrific 🥺1
Here's to your many sevens (7).
Beautiful assembly, perfect with that leading three (3).
I wanna go back to the age where a C program was considered secure and isolated based on its system interface rathe than its speed. I want a future where safety does not imply inefficiency. I hate spectre and I hate that an abstraction as simple and robust as assembly is so leaky that just by exposing it you've pretty much forfeited all your secrets.
And I especially hate that we chose to solve this by locking down everything rather than inventing an abstraction that's a similarly good compile target but better represents CPUs and therefore does not leak.31
Okay so I don't really know what I did but somehow my Rust executable that implements a parser for an assembly language all the sudden needs more than a minute to compile and is over 700 MiB in size 🤠4
this topic always makes me think of "this is good code" http://stilldrinking.org/programmin...
had some really small assembly/shellcode type stuff ppl said was "impossible" that i pulled off, that was up there.
typically anything i can see the improvement, time or line count reduced. why is this taking a minute? boom now it's 15sec, gj
when there are reasonable comments and self commenting code. when there isn't trailing whitespace.
my "good code" - sapphire
So I’m reading this book called Hacking: The art of exploitation and I’ve got to admit. It’s one of my favourite books I’ve read. It really gets into the nitty gritty of how programs are laid out in memory and goes over how assembly works, among some other low level concepts. Highly recommend.1
Do y'all use Blazor? .-. the C#-based web-UI (web assembly one)
Thinking of going in on it hard coz I hate to think of a world where backend is written in JS (🤮) just for better interoperability with JS-based UI and cheaper devs to hire (JS-fullstacks) 🤮🤮🤮5
I don’t get why ARM assembly is so much clunkier than it should be. It could’ve been so much more readable and easy to write in if more dev-friendliness was built into the syntax.15
I'm reading "A class-based reflective minimal kernel"
... do you ever get the feeling like you understand something perfectly and don't really understand it, at the same time? what does it mean?
i can even rougly imagine how this would be implemented on assembly level, but it still feels like... i don't know. it seems too straightforward and simple, i guess, so i suspect i'm not understanding it properly, since it can't be that simple...?8
everything is going as planned! :)
Learned Rust Lang. i loved it (that doesn't mean i am done learning na? No! never stop)
new language i could do game memory hacking in without worrying about C++ memory leaks or issues. it also compiles to assembly! another of my favorite languages!
(i use rust for game development and other stuff)
i am not leaving C / C++ though that would be harsh!,
finished learning the android java api so im basically set anything i want to make i can just go on my pc, listen to music and write it out in a couple of days.
well phazor what are you going to do now?!
i will code till i am old.
i will leave my mark like a shid that made its skid in the bowl :)5
ive gotta say, i have a new found disdain for C. i guess most languages really.
if i wana do something dynamically, flexible, or just use simple syntax improvements without much hacky shit. it's just not possible.
wana use macro/defines? well those are gona shit all over everything and get janky and make the code half unreadable.
wana use pointers as functions? *gasp* that's not safe, you have to use old C, def not cpp.
youd like to easily specify + operator for 2 objects? wait theyre not exactly the same? uh uh.
basically anything considered 'unsafe' you can only do in C. anything new age easy (like 'new') you can only do in cpp or w/ classes.
just want assembly level freedom and efficiency, to mass oop ease .-. is that too much to ask?9
I am very confused nowadays, exist a great number technologies but i don't decide what technology or language of programming i want specialize me.
I love it the hacking but i have very little experience in programming and have a basic knowdledge in networks and database.
I love it the assembly language but only can code a pair of syntax in this language and know very little about components, architecture and the rest.
I love it the data mining, big data, IA, machine learning but i don't control the statistic.
Of every topics i have a basic knowdlege.
Actually i try to discover my practicality. I am learning Perl and regular expressions.5