Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "compiler error"
-
1. Have some issue with my code which spits out cryptic compiler error.
2. Ask on stack overflow, Reddit, etc for a solution.
3. Get scolded at for "not reading the documentation" and "asking questions which could be answered by just Googling". Still no clue what I'm doing wrong, or what the solution would be.
4. Find someone else's vaguely related problem.
5. Post my problematic code as the answer, with arrogant comment about OP being a retard for not figuring that out for themselves.
6. A dozen angry toxic nerds flock in to tell me how retarded and wrong I am, correcting me... solving my original problem.
7. Evil plan succeeded, my code compiles, and as a bonus I made the internet a worse place in the process.
I think if you tell a bunch of autistic neckbeards that "all coronaviruses are fundamentally incurable", you'd have a vaccine within a week.15 -
string excuses[]={
"it's not a bug it's a feature",
"it worked on my machine",
"i tested it and it worked",
"its production ready",
"your browser must be caching the old content",
"that error means it was successful",
"the client fucked it up",
"the systems crashed and the code got lost" ,
"this code wont go into the final version",
"It's a compiler issue",
"it's only a minor issue",
"this will take two weeks max",
"my code is flawless must be someone else's mistake",
"it worked a minute ago",
"that was not in the original specification",
"i will fix this",
"I was told to stop working on that when something important came up",
"You must have the wrong version",
"that's way beyond my pay grade",
"that's just an unlucky coincidence",
"i saw the new guy screw around with the systems",
"our servers must've been hacked",
"i wasn't given enough time",
"its the designers fault",
"it probably won't happen again",
"your expectations were unrealistic",
"everything's great on my end",
"that's not my code",
"it's a hardware problem",
"it's a firewall issue",
"it's a character encoding issue",
"a third party API isn't responding",
"that was only supposed to be a placeholder",
"The third party documentation is wrong",
"that was just a temporary fix.",
"We outsourced that months ago.","
"that value is only wrong half of the time.",
"the person responsible for that does not work here anymore",
"That was literally a one in a million error",
"our servers couldn't handle the traffic the app was receiving",
"your machines processors must be too slow",
"your pc is too outdated",
"that is a known issue with the programming language",
"it would take too much time and resources to rebuild from scratch",
"this is historically grown",
"users will hardly notice that",
"i will fix it" };11 -
I think the weekly rants just exist because @dfox & @trogus got banned from stackoverflow and they still have questions.
When it comes to learning cutting edge tech... Go build already!
I found Rust intimidating.
I read the first few pages of the official book, got bored, gave up.
Few months later, decided to write a "simple" tool for generating pleasing Jetbrains IDE color schemes using Rust. I half-finished it by continuously looking up stuff, then got stuck at some ungoogleable compiler error.
Few months later I needed to build a microservice for work, and against better judgement gave Rust a try in the weekend. Ended up building an unrelated library instead, uploaded my first package to crates.io.
Got some people screaming at me that my Rust code sucked. Screamed back at them. After lots of screaming, I got some helpful PRs.
Eventually ended up building many services for work in Rust after all. With those services performing well under high load and having very few bugs, coworkers got interested. Started hiring Rust engineers, and educating interested PHP/JS devs.
Now I professionally write Rust code almost full-time.
Moral of the story:
Fuck books, use them for reference. Fuck Udemy (etc), unless you just want to 2x through it while pooping.
Learning is something you do by building a project, failing, building something else, falling again, building some more, sharing what you've made, fighting about what you've built with some entitled toxic nerds, abandoning half your projects and starting twelve new ones.
Reading code is better than reading documentation.
Listening to users of your library/product teaches you more than listening to keynote speakers at conferences.
Don't worry about failures, you don't need to deliver a working product for it to be a valuable experience.
Oh, and trying to teach OTHERS is an excellent method to discover gaps in your knowledge.
Just get your fucking hands dirty!12 -
Does anyone else have that one guy or gal you work with that's ALWAYS the one to find the weirdest, inexplicable bugs possible? Yup. That's me. Here's some fun examples.
*Unplugs monitor from laptop, causing kernel panic*
*Mouse moves in reverse when inside canvas*
*Program fails to compile, yet compiler blames a syntax error that doesn't exist*
*malloc on the first line of a program causes a segfault*
And for how the conversation usually goes
Me: "[coworker], mind taking a look at this?"
Coworker: "Sure.This better not be another one of 'your bugs'. ... ... ... Well, if you need me I'll be at my desk."
Me: "So you know what's causing it?"
Coworker: "Nope. I've accepted that you're cursed and you should do the same."8 -
In my college days i was designing a bootloader for avr microcontroller , i had the idea to flash code wirelessly to avr over bluetooth and also cross compile the compiler for android device so that you can code on android, every thing went well just one thing didn't, i saw that code of certain size is executing properly , greater than that size gives me wired outputs so i have to dump hex from the avr (that is flashed the by bootloader) and compaire it with the original hex of code it got messy as you can see, most fun part of this bug is that error can be anywhere cross compiler may be fucked up , the bootloader may be fucked up , or it may be my bluetooth module , after 14 hours of staring at the hex code i figured out the mess in bootloader instruction that was changing the page address for flashing .
when it worked it was 3am in night i literally burst into tears of joy next day bought myself a cake to celebrate6 -
"Running the sample code is easy! Just git clone, make sure python, lua, gcc, docker and cuda are installed, and run ./install.sh. Easy!"
Me: Light 6 candles, sprinkle some thyme water with unicorn tears over my keyboard, start chanting an unholy hymn... shit... some compiler error from a library I've never heard of before.
Why can't these "interesting samples" come with easy pre-compiled binaries...18 -
At an interview, the first round was an online coding round. Two questions, one easy one hard, 90 minutes, easy peasy.
I solved the hard one first.
A bit of good logic, followed MVC pattern, all done. Worked flawlessly.
Submitted code. Online compiler threw up an internal error citing java is an invalid command(jdk not found).
Called the invigilators. What I heard next, I couldn't believe this shit.
"We're not responsible for any errors you may be having. Figure it out yourself"
I was like WTF dude. This is not even a compilation or runtime error!
After a heated discussion, I made him look at the code.
Him - what is all this classes and all? Why haven't you written everything inside the main function?
Me - those are model classes. Those are different helper functions. That is a recursive function to avoid 5 for loops and use divide and conquer. Ever heard of OOP? what kind of person writes a 300 line program inside one function?
Him - no no we write it like that only. Correct this.
Me - I fit everything inside the main function. Still the same error, java not installed. Called the idiot to have a look at it.
Him - yeah your code is wrong.
Me - may I know what's wrong with it? Can you fix it please?
Him - no no we aren't allowed to see the code (he had already read it twice. It was compiling and running perfectly, locally) .
Yeah you solved only 1 problem, you were supposed to solve 2.
Me - yes because the rest of the time I had the pleasure of your company. (It isn't everyday that I see talking buffoons.)11 -
Shower Thought :
I wonder, in the future, since people is easily offended by everything, variable naming would be such a concern it'll be seriously implemented in the compiler, and be like
"Error at 16:1 NamingConventionError : 'fuckThis' is not linear with our guidelines"6 -
"Fatal Error"
Exceptions? No, let's just halt the entire program.
Apparently a CS professor wrote this code.
"Needed to keep the compiler happy"17 -
Online tutorial pet peeves
————————————
My top 10 points of unsolicited ranting/advice to those making video tutorials:
1. Avoid lots of pauses, saying “umm” too much, or other unnecessary redundancy in speech (listen to yourself in a recording)
2. If I can’t understand you at 1.5 - 2x playback speed and you don’t already speak relatively quickly and clearly, I’m probably not going to watch for long (mumbling, inconsistent microphone volume, and background noise/music are frequent culprits)
3. It’s ok to make mistakes in a tutorial, so long as you also fix them in the tutorial (e.g., the code that is missing a semicolon that all of a sudden has one after it compiles correctly — but no mention of fixing it or the compiler error that would have been received the first time). With that said, it’s fine to fix mistakes pertinent to the topic being taught, but don’t make me watch you troubleshoot your non-relevant computer issues or problems created by your specific preferences (e.g., IDE functionality not working as expected when no specific IDE was prescribed for the tutorial)
4. Don’t make me wait on your slow computer to do something in silence—either teach me something while it’s working or edit the video to remove the lull
5. You knew you were recording your screen. Close your email, chat, and other applications that create notifications before recording. Or at least please don’t check them and respond while recording and not edit it out of the video
6. Stay on topic. I’m watching your video to learn about something specific. A little personality is good, but excessive tangents are often a waste of my time
7. [Specific to YouTube] Don’t block my view of important content with annotations (and ads, if within your control)
8. If you aren’t uploading quality HD recordings, enlarge your font! Don’t make me have to guess what character you typed
9. Have a game plan (i.e., objectives) before hitting the record button
10. Remember that it’s easier to rant and complain than to do something constructive. Thank you for spending your time making tutorial videos. It’s better for you to make videos and commit all my pet peeves listed above than to not make videos at all—don’t let one guy’s rant stop you from sharing your knowledge and experience (but if it helps you, you’re welcome—and you just might gain a new viewer!)14 -
I am once again reminded how much of a clusterfuck C++ as a whole is.
They recently (C++17) added this cool new attribute called nodiscard.
You can put it on a function like this
[[nodiscard]] bool writeMessage(...)
and the compiler will check if the returned value was discarded or not, and give a warning accordingly.
Pretty neat if you're returning an error code and you want to enforce that it gets checked, right?
Except it doesn't work in template classes.
It just doesn't do anything there.12 -
I could bitch about XSLT again, as that was certainly painful, but that’s less about learning a skill and more about understanding someone else’s mental diarrhea, so let me pick something else.
My most painful learning experience was probably pointers, but not pointers in the usual sense of `char *ptr` in C and how they’re totally confusing at first. I mean, it was that too, but in addition it was how I had absolutely none of the background needed to understand them, not having any learning material (nor guidance), nor even a typical compiler to tell me what i was doing wrong — and on top of all of that, only being able to run code on a device that would crash/halt/freak out whenever i made a mistake. It was an absolute nightmare.
Here’s the story:
Someone gave me the game RACE for my TI-83 calculator, but it turned out to be an unlocked version, which means I could edit it and see the code. I discovered this later on by accident while trying to play it during class, and when I looked at it, all I saw was incomprehensible garbage. I closed it, and the game no longer worked. Looking back I must have changed something, but then I thought it was just magic. It took me a long time to get curious enough to look at it again.
But in the meantime, I ended up played with these “programs” a little, and made some really simple ones, and later some somewhat complex ones. So the next time I opened RACE again I kind of understood what it was doing.
Moving on, I spent a year learning TI-Basic, and eventually reached the limit of what it could do. Along the way, I learned that all of the really amazing games/utilities that were incredibly fast, had greyscale graphics, lowercase text, no runtime indicator, etc. were written in “Assembly,” so naturally I wanted to use that, too.
I had no idea what it was, but it was the obvious next step for me, so I started teaching myself. It was z80 Assembly, and there was practically no documents, resources, nothing helpful online.
I found the specs, and a few terrible docs and other sources, but with only one year of programming experience, I didn’t really understand what they were telling me. This was before stackoverflow, etc., too, so what little help I found was mostly from forum posts, IRC (mostly got ignored or made fun of), and reading other people’s source when I could find it. And usually that was less than clear.
And here’s where we dive into the specifics. Starting with so little experience, and in TI-Basic of all things, meant I had zero understanding of pointers, memory and addresses, the stack, heap, data structures, interrupts, clocks, etc. I had mastered everything TI-Basic offered, which astoundingly included arrays and matrices (six of each), but it hid everything else except basic logic and flow control. (No, there weren’t even functions; it has labels and goto.) It has 27 numeric variables (A-Z and theta, can store either float or complex numbers), 8 Lists (numeric arrays), 6 matricies (2d numeric arrays), 10 strings, and a few other things like “equations” and literal bitmap pictures.
Soo… I went from knowing only that to learning pointers. And pointer math. And data structures. And pointers to pointers, and the stack, and function calls, and all that goodness. And remember, I was learning and writing all of this in plain Assembly, in notepad (or on paper at school), not in C or C++ with a teacher, a textbook, SO, and an intelligent compiler with its incredibly helpful type checking and warnings. Just raw trial and error. I learned what I could from whatever cryptic sources I could find (and understand) online, and applied it.
But actually using what I learned? If a pointer was wrong, it resulted in unexpected behavior, memory corruption, freezes, etc. I didn’t have a debugger, an emulator, etc. I had notepad, the barebones compiler, and my calculator.
Also, iterating meant changing my code, recompiling, factory resetting my calculator (removing the battery for 30+ sec) because bugs usually froze it or corrupted something, then transferring the new program over, and finally running it. It was soo slowwwww. But I made steady progress.
Painful learning experience? Check.
Pointer hell? Absolutely.4 -
Just finished up my first compiler, with accurate extensible error reporting, and the syntax system is generically typed so I can reuse it. Pretty fucking pleased with myself12
-
EEEEEEEEEEEE Some fAcking languages!! Actually barfs while using this trashdump!
The gist: new job, position required adv C# knowledge (like f yea, one of my fav languages), we are working with RPA (using software robots to automate stuff), and we are using some new robot still in beta phase, but robot has its own prog lang.
The problem:
- this language is kind of like ASM (i think so, I'm venting here, it's ASM OK), with syntax that burns your eyes
- no function return values, but I can live with that, at least they have some sort of functions
- emojies for identifiers (like php's $var, but they only aim for shitty features so you use a heart.. ♥var)
- only jump and jumpif for control flow
- no foopin variable scopes at all (if you run multiple scripts at the same time they even share variables *pukes*)
- weird alt characters everywhere. define strings with regular quotes? nah let's be [some mental illness] and use prime quotes (‴ U+2034), and like ⟦ ⟧ for array indexing, but only sometimes!
- super slow interpreter, ex a regular loop to count to 10 (using jumps because yea no actual loops) takes more than 20 seconds to execute, approx 700ms to run 1 code row.
- it supports c# snippets (defined with these stupid characters: ⊂ ⊃) and I guess that's the only c# I get to write with this job :^}
- on top of that, outdated documentation, because yea it's beta, but so crappin tedious with this trail n error to check how every feature works
The question: why in the living fartfaces yolk would you even make a new language when it's so easy nowadays to embed compilers!?! the robot is apparently made in c#, so it should be no funcking problem at all to add a damn lua compiler or something. having a tcp api would even be easier got dammit!!! And what in the world made our company think this robot was a plausible choice?! Did they do a full fubbing analysis of the different software robots out there and accidentally sorted by ease of use in reverse order?? 'cause that's the only explanation i can imagine
Frillin stupid shitpile of a language!!! AAAAAHHH
see the attached screenshot of production code we've developed at the company for reference.
Disclaimer: I do not stand responsible for any eventual headaches or gauged eyes caused by the named image.
(for those interested, the robot is G1ANT.Robot, https://beta.g1ant.com/)4 -
[long]
When searching for internship via school I found this small startup with this cute project of building a teaching tool for programming. There were back then 2 programmers: the founder and the co-founder.
Then like 1 week before the internship started, the co-founder had a burnout and had to get off the project, while the company was so low on budget the founder, aka my new b0ss, had to work separate jobs to keep the company alive. (quite metal tbh)
It's funny because I'm a junior developer, 100%. I've been coding as a hobby for around 8 years now but I've never worked in a big company before. (No exception to this workplace either)
First project I get: rewrite the compiler. The Python compiler.
"But wait, why not just embed a real compiler from the first case?"
-nanananana it's never simple, as you probably know from your own projects.
The new compiler, as compared to existing embedded compiler solutions out there, needed these prime features:
- Walk through the code (debugger style), but programmatically.
- Show custom exceptions (ex: "A colon is needed at the end of an if-statement" instead of "Syntax error line 3")
- Have a "Did-you-mean this variable?" error for usage of unassigned variables.
- Be able to be embedded in Unity's WebGL build target
All for the use case of being a friendly compiler.
The last dash in the list is actually the biggest bottleneck which excluded all existing open-source projects (i could find). Compliant with WebAssembly I can't use threads among other things, IL2CPP has lots of restrictions, Unity has some as well...
Oh and it should of course be built using test-driven development.
"Good luck!" - said the founder, first day of work as she then traveled to USA for **3 weeks**, leaving me solo with the to-be-made codebase and humongous list of requirements.
---
I just finished the 6th week of internship, boss has been at "HQ" for 3 weeks now, and I just hit the biggest milestone yet for this project.
Yes I've been succeeding! This project has gone so well, and I'm surprising myself how much code I've been pumping out during these weeks.
I'm up now at almost 40'000 lines of source and 30'000 lines of code. ‼
( Biggest project I've ever worked on previously was at 8'000 lines of code )
The milestone (that I finished today) was for loops! As been trying to showcase in the GIF.
---
It's such a giant project and I can honestly say I've done some good work here. Self-five. Over-performing is a thing.
The things that makes me shiver though is that most that use this application will never know the intricates of it's insides, and the brain work put into it.
The project is probably over-engineered. A lot. Having a home-made compiler gives us a lot of flexibility for our product as we're trying to make more of a "pedagogic IDE". But no matter that I reinvented the wheel for the 105Gth time, it's still the most fun I've had with a project to date.
---
Also btw if anyone wants to see source code, please give me good reasons as I'm actively trying to convince my boss to make the compiler open-source.
Cheers!4 -
Is it just me who sees this? JS development in a somewhat more complex setting (like vue-storefront) is just a horrible mess.
I have 10+ experience in java, c# and python, and I've never needed more than a a few hours to get into a new codebase, understanding the overall system, being able to guess where to fix a given problem.
But with JS (and also TS for that matter) I'm at my limits. Most of the files look like they don't do anything. There seems to be no structure, both from a file system point of view, nor from a code point of view.
It start with little things like 300 char long lines including various lambdas, closures and ifs with useless variables names, over overly generic and minified method/function names to inconsistent naming of files, classes and basically everything else.
I used to just set a breakpoint somewhere in my code (or in a compiled dependency) wait this it is being hit and go back and forth to learn how the system state changes.
This seems to be highly limited in JS. I didn't find the one way to just being able to debug, everything that is. There are weird things like transpilers, compiler, minifiers, bablers and what not else. There is an error? Go f... yourself ...
And what do I find as the number one tipp all across the internet? Console.log?? are you kidding me, sure just tell me, your kidding me right?
If I would have to describe the JS world in one word, I would use "inconsistency". It's all just a pain in the ass.
I remember when I switcher from VisualStudio/C# to Eclipse/Java I felt like traveling back in time for about 10 years. Everyting seemd so ... old-schoolish, buggy, weird.
When I now switch from java to JS it makes me feel the same way. It's all so highly unproductive, inconsistent, undeterministic, cobbled together.
For one inconveinience the JS communinity seems to like to build huge shitloads of stuff around it, instead of fixing the obvious. And noone seems to see that.
It's like they are all blinded somehow. Currently I'm also trying to implement a small react app based on react-admin. The simplest things to develop and debug are a nightmare. There is so much boilerplate that to write that most people in the internet just keep copying stuff, without even trying to understand what it actually does.
I've always been a guy that tries to understand what the fuck this code actuall does. And for most of the parts I just thing, that the stuff there is useless or could be done in a way more readable way. But instead, all the devs out there just seem to chose the "copy and fix somehow-ish" way.
I'm all in for component-izing stuff. I like encapsulation, I'm a OOP guy by heart. But what react and similar frameworks do is just insane. It's just not right (for some part).
Especially when you have to remember so much stuff that is just mechanics/boilerplate without having any actual "business logical function".
People always say java is so verbose. I don't think it is, there is so few syntax that it almost reads like a prose story. When I look at JS and TS instead, I'm overwhelmed by all the syntax, almost wondering every second line, what the actual fuck this could mean. The boilerplate/logic ration seems way to off ..
So it really makes me wonder, if all you JS devs out there are just so used to that stuff, that you cannot imagine how it could be done better? I still remember my C# days, but I admin that I just got used to java. So I can somehow understand that all. But JS is just another few levels less deeper.
But maybe I'm just lazy and too old ...4 -
My neural networks journey so far:
Look up tutorials -> see that Python is a popular tool for ML -> install Python -> pip install scipy -> breaks with some weird error involving BLAS library code -> spend half an hour fixing it -> try installing Theano -> breaks because my USERNAME HAS A SPACE IN IT LIKE SERIOUSLY? WTF -> make new account without a space in the name -> repeat till Theano -> run tests, found out that I didn't install CUDA support -> scrap the install and redo with CUDA support -> CUDA libraries take forever to download on shitty internet -> run tests -> breaks with some weird Theano compiler error -> go crying to friend -> friend tells me about Anaconda -> scrap the previous install and download Anaconda over shitty connection -> mess up conda environments because noobishness -> scrap, retry -> YESS I FINALLY GOT IT WORKING TIME TO DO SOME LEARNI-crap it's 4 in the morning already.
I realize that I'm a Python noob (and also, uni computers with GPUs have preconfigured Windows installed only, no Linux), but is installing Python libraries always such a pain? Am I doing something wrong? Installing via Anaconda felt like cheating, tbh.6 -
literally what the fuck is the point of C++
>takes 3 years to make anything half-functional
>language was made in like fucking 1902 so it's damn near fucking impossible to make anything that works without sifting through bumfuck retarded syntax/libraries
>error messages that tell you absolutely nothing of use and are indecipherable garbage 90% of the time
fuck C, fuck it's retarded downie little brother C++, and fuck the stupid fucking boomers who say you're not a real programmer unless you force yourself to become a masochist by using either one of these stupid fucking languages
"oh but it's fast!!11!1!!" yeah but working with it sure as fuck isn't
half the fucking time if I just stop including certain headers in another file then the compiler throws like literally 400 fucking errors at me even though the thing(s) I excluded had no bearing on whatever the compiler decides it wants to loudly bitch and whine about
"oh but games were made on it!!!!111!" yeah not without fucking horrific spaghetti code and 900000 different libraries and dependancies designed just to make a single fucking window39 -
Here it is: get MythTV up and running.
In one corner, building from source, the granddaddy Debian!
In the other, prebuilt and ready to download, the meek but feisty Xubuntu!
Debian gets an early start, knowing that compiling on a single core VM won't break any records, and sends the compiler to work with a deft make command!
Xubuntu, relying on its user friendly nature, gets up and running quickly and starts the download. This is where the high-bandwidth internet really works in her favor!
Debian is still compiling as Xubuntu zooms past, and is ready to run!
MythTV backend setup leads her down a few dark alleys, such as asking where to put directories and then not making them, but she comes out fine!
Oh no! After choosing a country and language the frontend commit suicide with no error message! A huge blow to Xubuntu as this will take hours to diagnose!
Meanwhile, Debian sits in his corner, quietly chugging away on millions of lines of C++...
Xubuntu looks lost... And Debian is finished compiling! He's ready to install!
Who will win? Stay tuned to find out!4 -
What's wrong with this code?
std::pair<float, float> foo() { return { 0, 0 }; }
"Nothing," would you say.
That's because you're normal.
But the most stupid C++ compiler ever (M$ VS)
issues an ERROR that converting 0 to float incurs possible "loss of data". So you have to write "0.f".
BTW, "0." is a double, so you really have to write "0.f". Or "static_cast<float>(0)" if you like ugly, impossible-to-read code.16 -
When you debug for 2 hours. Due to a logic error. You go through every line. It all makes sense. You find a semicolon after an if statement... Shouldn't the compiler have caught that?4
-
I propose that the study of Rust and therefore the application of said programming language and all of the technology that compromises it should be made because the language is actually really fucking good. Reading and studying how it manages to manipulate and otherwise use memory without a garbage collector is something to be admired, illuminating in its own accord.
BUT going for it because it is a "beTter C++" should not constitute a basis for it's study.
Let me expand through anecdotal evidence, which is really not to be taken seriously, but at the same time what I am using for my reasoning behind this, please feel free to correct me if I am wrong, for I am a software engineer yes, I do have academic training through a B.S in Computer Science yes, BUT my professional life has been solely dedicated to web development, which admittedly I do not go on about technical details of it with you all because: I am not allowed to(1) and (2)it is better for me to bitch and shit over other petty development related details.
Anecdotal and otherwise non statistically supported evidence: I have seen many motherfuckers doing shit in both C and C++ that ADMIT not covering their mistakes through the use of a debugger. Mostly because (A) using a debugger and proper IDE is for pendejos and debugging is for putos GDB is too hard and the VS IDE is waaaaaa "I onlLy NeeD Vim" and (B) "If an error would have registered then it would not have compiled no?", thus giving me the idea that the most common occurrences of issues through the use of the C father/son languages come from user error, non formal training in the language and a nice cusp of "fuck it it runs" while leaving all sorts of issues that come from manipulating the realm of the Gods "memory".
EVERY manual, book, coming all the way back to the K&C book talks about memory and the way in which developers of these 2 languages are able to manipulate and work on it. EVERY new standard of the ISO implementation of these languages deals, through community effort or standard documentation about the new items excised through features concerning MODERN (meaning, no, the shit you learned 20 years ago won't fucking cut it) will not cut it.
THUS if your ass is not constantly checking what the scalpel of electrical/circuitry/computational representation of algorithms CONDONES in what you are doing then YOU are the fucking problem.
Rust is thus no different from the original ideas of the developers behind Go when stating that their developers are not efficient enough to deal with X language, Rust protects you, because it knows that you are a fucking moron, so the compiler, advanced, and well made as it is, will give you warnings of your own idiotic tendencies, which would not have been required have you not been.....well....a fucking idiot.
Rust is a good language, but I feel one that came out from the necessity of people writing system level software as a bunch of fucking morons.
This speaks a lot more of our academic endeavors and current documentation than anything else. But to me DEALING with the idea of adapting Rust as a better C++ should come from a different point of view.
Do I agree with Linus's point of view of C++? fuck no, I do not, he is a kernel engineer, a damn good one at that regardless of what Dr. Tanenbaum believes(ed) but not everyone writes kernels, and sometimes that everyone requires OOP and additions to the language that they use. Else I would be a fucking moron for dabbling in the dictionary of languages that I use professionally.
BUT in terms of C++ being unsafe and unsecured and a horrible alternative to Rust I personaly do not believe so. I see it as a powerful white canvas, in which you are able to paint software to the best of your ability WHICH then requires thorough scrutiny from the entire team. NOT a quick replacement for something that protects your from your own stupidity BY impending the use of what are otherwise unknown "safe" features.
To be clear: I am not diminishing Rust as the powerhouse of a language that it is, myself I am quite invested in the language. But instead do not feel the reason/need before articles claiming it as the C++ killer.
I am currently heavily invested in C++ since I am trying a lot of different things for a lot of projects, and have been able to discern multiple pain points and unsafe features. Mainly the reason for this is documentation (your mother knows C++) and tooling, ide support, debugging operations, plethora of resources come from it and I have been able to push out to my secret project a lot of good dealings. WHICH I will eventually replicate with Rust to see the main differences.
Online articles stating that one will delimit or otherwise kill the other is well....wrong to me. And not the proper approach.
Anyways, I like big tits and small waists.14 -
I love how people miss the location of ";" when most of the time the compiler error tells you the exact line...1
-
So... C++... Yeah.
> Manage to get a MinGw compiler working in VSCode, and all is "well and good".
> Have difficulties installing SDL, follow tutorial verbatim.
> Compile error.
> 7 hours later no progress.
> 10 hours later no progress.
> 16 hours later no progress.
*Throws laptop at wall*3 -
Day 2 in ComSci class (following my last rant)
"Okay, so! All of the schoolwork and homework will be done on paper and pen, submit and I will grade it. Only once, no second chance"
Okay. Okay. This went over my head. What are you gonna do? OCR the code into the compiler, compile it and run to see if we fucked up to give us an F? What are you, god? Here's a brilliant idea, teach them Assembly! Guaranteed error to give us Fs! FUCK YOU3 -
Not quite a interview question, but in a competition (I had build a compiler) the jury (they all told me they had all studied informatics) asked me what a compiler is... Not in a "lets try to catch him off manner" but rather in a "i am too stupid for this world manner" he asked me what a compiler was... And it got even worse: my compiler is based on linuxes utils (nasm+ld) the guy didnt know about linux. Assembler was much too much for him and when my compiler threw an error (I wanted to show them the error system) he told me I shouldnt present unfinished projects... Atleastthe other two were really nice and i still got 2nd place (behind a person who prorammed an Nxt thingy)7
-
Best:
Really getting into Rust. It has taught me so many things.
1. Null is evil
2. Sum types are amazing
3. Compiler can actually have good error output
4. Multi threading is actually really scary if you don't have a compiler to back you up
Worst:
I had to deal with SSIS. It has also taught me many things:
1. No matter how 'mature' a product is, it can be awful. Simply dump a random error code, the user can figure out what went wrong, no need for good error messages.
2. The modern concept of the database is crap. It's a gigantic global state that is used by everyone and owned by no one.
3. Don't use tools that aren't made to be used with version control.
4. Even when you tell your team that it's bad, you will be ignored. -
Dear compiler, I know you have plenty of files to compile (like a lot), but could please stop flushing an error when I'm trying to read it ?4
-
I found this on a wiki with Haskell Humor... it's interesting...
How to Shoot Your Self in the Foot With Haskell: Putting the unsafe in unsafePerformIO!
You shoot the gun, but the bullet gets trapped in the IO monad.
Couldn't match expected type 'Deer' against inferred type 'Foot'.
While compiling your program the compiler produces a type error long enough to overflow a kernel buffer, overwrite the trigger control register and shoot you in the foot.
After trying to decipher the type errors from the compiler, your head explodes.
After you've finally found a way to circumvent the type system and shoot yourself in the foot, Oleg appears out of nothing and shoots you in the foot for coming up with it before him.
You shoot the gun but nothing happens (Haskell is pure, after all).
Your foot is fine, until you try to walk on it, at which point it becomes mangled.
You have a shootFoot function which you've proven correct. QuickCheck validates it for arbitrary you-like values. It will be evaluated only when you end up at the hospital. You hope this doesn't come to pass, as it actually returns a bullet-ridden copy of yourself and you don't want to be garbage-collected.
foreign import ccall "shootparts.h shootfoot" shoot_foot :: Gun -> Programmer -> IO ()
shootSelfInFoot = unsafePerformIO . shoot . foot $ self -- Shoot self in foot 0 or more times depending on evaluation order
No instance for (Target Foot)
arising from use of `shoot' at SelfInflictedInjury.hs:1:0
Possible fix: add an instance declaration for (Target Foot)
In the expression: shoot foot
You go to shoot yourself in the foot but the bullet is in the ST monad and the gun is in the IO monad, so you can't.
You ask Haskell to shoot you in the foot but by the rules of lazy evaluation you don't need the result yet so it doesn't happen.
You decide to shoot yourself in the foot but get distracted devising a ballistics algebra and wondering if you can do the calculations in the type system.
You want to shoot yourself in the foot but realize there is no Gun datatype so use Arrows instead.
You shoot in the direction of your foot, but since you are inside the STM monad you can just retry until you figure out what to do.
You shoot yourself in the foot, but you are perfectly fine as long you just don't evaluate the foot.
You shoot yourself in the foot, but nothing happens unless you start walking.
Don't forget about memory consumption! If you don't look, the bullet causes heap overflow. If you look, the bullet causes stack overflow.
You *appear* to have deliberately shot yourself in the foot, and yet your program actually runs perfectly OK due to lazy evaluation. (So long as you remember to not look at your foot...)
You aim the gun at your foot, pull the trigger and remove the clip. When you look at your undamaged foot, the hammer clicks on an empty barrel.1 -
In your opinion what is the best programming rant to ever grace the internet?
My submission === programming sucks:
http://stilldinking.org/programming...
(small) excerpt: "You discover that one day, some idiot decided that since another idiot decided that 1/0 should equal infinity, they could just use that as a shorthand for “Infinity” when simplifying their code. Then a non-idiot rightly decided that this was idiotic, which is what the original idiot should have decided, but since he didn’t, the non-idiot decided to be a dick and make this a failing error in his new compiler. Then he decided he wasn’t going to tell anyone that this was an error, because he’s a dick, and now all your snowflakes are urine and you can’t even find the cat."7 -
The tons of undefined behaviour in C that ought to have been implementation defined instead, and increasingly sadistic compiler writers on the other side.
Like signed integer overflow that should just do what the underlying machine does, i.e. in practice, wrap around two's complement.
But the wierdest UB is when a C source code line has a non-matching ' or ". WTF, this should have been a compile time error!2 -
Learning Rust.
Holy brainfucking brain melt, those references, scoping and borrowing and cloning and whatnot, because there is no garbage collector, but also no direct memory management.
It's cool, but also hard for a noob coming from the JVM/Android. The compiler error messages are helpful, but I immediately found some cryptic ones that don't help me at all.9 -
MSbuild makes me want to blow my brains out.
I know it's no longer used in .NET Core and all the lucky people that don't have to deal with .NET Framework can happily move on.
But here I am, a complete idiot. Expecting MSBuild to build the exact same way from the CLI as it does if I run a build in Visual Studio. Expecting the build server to consistently produce the same result as if I built my solution locally.
Demanding meaningful earnings and error messages that don't leave me completely perplexed as to what's actually going on in the compiler.
Fuck me and fuck .NET Framework. Thank you for coming to my TED talk.8 -
I was stuck at this error for the 4-6 days.. Did lots of research on stackoverflow, Google, YT.. Asked my peers tried like hell. Finally one of friends told me you aren't giving I/p and how can you expect an o/p there is no error neither in the compiler nor in the code..
Me: ;_;10 -
Rust: Unclear error output is seen as a compiler bug.
Me: 👏
SSIS & SQL Server: Unclear or absent error output is seen as an enterprise feature. It's so mature!
Me: 😩 -
People often rant about a missing semicolon,
I added an extra after if condition
if(...);{
}
Compiler can't take this as error.
Debugged the logic for hours,
Wasted a lot of time, lol5 -
Leaving an intentional compiler error on Friday so I know where to continue on Monday.
Now I have a compiler error and not a fucking clue of what I'm supposed to do with it.4 -
Sometimes I think "I should write a meaningful error message for this exception" and then i remember how useless 99% of the error messages of every compiler / interpreter I've ever had to use and decide "msg ='something went wrong'" is good enough.3
-
The best/worst code comments you have ever seen?
Mine:
//Upload didn't work, have to react:
system.println('no result');
//$Message gives out a message in the compiler log.
{$Message Hint 'Feed the cat'}
//Not really needed
//Closed source - Why even comments?
//Looks like bullshit, but it has to be done this way.
//This one's really fucked up.
//If it crashes, click again.
asm JMP START end; //because no goto XP
catch {
//shit happens
}
//OMG!!! And this works???
asm
...
mov [0], 0 //uh, maybe there is a better way of throw an exception
...
mov [0], 0 //still a strange way to notify of an error
// this makes it exiting -- in other words: unstable !!!!!
//Paranoic - can't happen, but I trust no one.
else {
//please no -.-
sleep(0);
}
//wuppdi
for (int i = random(500); i < 1000 + random(500 + random(250)); i++)
{
// Do crap, so its harder to decompile
}
//This job would be great if it wasn't for the f**king customers.
//TODO: place this peace of code somewhere else...
// Beware of bugs in the code above; I have only proved it correct, not tried it.
{$IFDEF VER93}
//Good luck
{$DEFINE VER9x}
{$ENDIF}
//THIS SHIT IS LEAKING! SOMEONE FIX IT! :)
/* no comment */5 -
How on earth are there people in their second year of a computer science course who are unable to understand how to read build errors. It's honestly not that hard, just look at the fucking build log and see where the error is and what type of error it is, but yet they don't bother reading the log and say that their "compiler is broken" when their 5 line code won't work.
If this was still first year I'd understand since many of the class didn't have much programming knowledge, but if you're in your second year and you struggle with this (that too for a Hello World script) it looks like you aren't even bothered and just expect the computer to magically understand what you mean.3 -
Avoid ACPICA if at all possible. It's one garbage tier cluster fuck of bad design, horrible documentation and downright misleading and wrong code
It's meant to consist of an ASL compiler, disassembler, debugger, dumper, various user space utitilies and a kernel resident OSPM implementation *if* you can figure out what belongs to what. Even just compiling this pile of trash is a mystery in itself. Think you need the source files in source/common? EEEEH, wrong. Well, at least partially since most of them seem to be for the user space stuff..? Other ones *are* needed on the other hand. At least the disassembler and/or debugger and/or dumper components seem to reference them. Not that I could figure out how to compile those anyways. The real path to your goal seems to be to ignore a seemingly arbitrary subset of source and header files until your linker stops complaining
There's also a bunch of configuration defines, some of which *you* define, some defined *for* you, based on again others. Of course most of them do stupid shit. Enabling the debugger automatically enables debug logging. Enabling the disassembler force enables debug allocation tracking... What?
The code itself isn't of much help either. Looking in "os_specific/service_layers" you find what looks to be reference implementations of acpica functions in certain os' like windows and unix. Of course I had a look because AcpiOsReadMemory is supposed to read physical memory and I don't know how I would even implement that. But hey, osunixxf.c (xf for interface... of course) should tell me. I'll let you see for yourself in the attached image. Apparently it does fuck all and just returns AE_OK. No error, no logging, no nothing. Just ok. As you can imagine, AcpiOsWriteMemory doesn't do much more either.
...okay so maybe physical memory accesses aren't actually used and these functions are some sort of relic from past times? Nope! They are absolutely necessary for doing low level device interaction. WTF. So finally I went to the linux source and checked how *they* implemented them, and just as I thought, these functions are anything but no-ops...
...So for what fucking reason do these stupid interface implementations even exist but to purposefully mislead you?? They aren't used for fucking anything! As far as I know Windows doesn't even *use* ACPICA and Linux have their own fork with working implementations... They just sit there, just to tell you how to NOT do it
So that's some of my thoughts about ACPICA. Note that I haven't even used it as a library yet, I just got it to compile and link and it already fucked with me this much.
There's also so much more I didn't mention like that you *have* to modify the acpica source in order to get your own platform header working (else #error) eventhough the docs explicitely instruct you not too but you get the point
Don't use ACPICA if you don't have to. Save your sanity for something that's worth it -
C++ template errors.
Probably enough said... But a couple years ago I was interviewing and each interview included, do know about templates. I always answered, "enough to determine what is wrong when there is a compiler error." I always got some form of a chuckle or "wow" and NEVER a follow up question about templates. I received job offers from each interview, they all apparently needed someone who could help get their template code compiling? -
Why do programmers prefer dark mode? 🌑
Because the light attracts bugs! 🐛
"When you try to make coffee but the compiler keeps saying 'Syntax error: Coffee not found.'" ☕😅1 -
To instantly know *exactly* what caused a compiler or runtime error and *exactly* how to fix it in the best possible way, every single time.2
-
GCC is like an Indian mother, it keeps telling so many things irrelavant for me, when I do a mistake.5
-
Why is learning a new language from python such a bitch? Like, w h a t t h e f u c k. Syntax can eat my ass with that semi colon no semi colon bullshit. Also fuck the compiler with it always having an error and shit. I was lowkey just trying to compile the shortest shit but cant get through s h i t. Fuck life I swear I'm gonna shoot my computer if I get another error.25
-
...another (probably about fourth) completely futile attempt at making MASM compiling pipeline work...
...what the fuck... seriously, i've spent together about two weeks of time trying to make a fucking default hello world compile... ml64 problems, then rc.exe problems, apparently i was missing some dumb CommonService.dll which not only doesn't exist anywhere on my computer, but it doesn't even seem to exist at all in this fucking dimension. After several hours I had the bright idea of "fuck MS rc, let's just grab any other random resource compiler that I can find, and see if that one works".
Funnily enough, it does. Except Visual MASM can't run it from it's build process because it fucks up the commandline call, so I need to run it manually, and then when I run the build from V-MASM, the rc call still fails, but then it checks for the resulting .res file and finds it, so it happily continues with success...
...and now fuckin... what even is it? *goes to check*
oh yeah, now linker is shitting itself:
LINK : fatal error LNK1104: cannot open file 'user32.lib'
And I'm just completely defeated, just searching system-wide for the lib intending to copy it into the linker folder because fuck this fucking bullshit, I've had enough of drowning in MS BuildTools versions and installations and uninstallations and fixes and modifys and repairs and all that FUCKING BULLSHIT.
HOW. THE. FUCK. is this in any way usable for anyone. I suspect nobody ever actually tried to build an assembler project in the last 30 years, so nobody noticed it DOESN'T. FUCKING. WORK.
THIS.
THIS is why I hate anything that's not a proper IDE where I install ONE thing, and do everything in that ONE IDE and let IT figure out all this linuxy-soft-coupled bullshit of twentyfuckingthousand fucking useless commandline apps threwn around the whole fucking system where I'm fucking supposed to know where the fuck what is and which version and GO FUCK YOURSELF.
GIMME. FUCKIN. ONE: IDE. WHICH. WILL. INSTALL. ALL. THAT. IT. NEEDS. TO. BE. FUCKING. ABLE. TO. FUCKING. WORK. AND. COMPILE. SHIT!!!
FUUUUUUUUUUUUUUUUUUUUUUUUUUCK.10 -
So I wrote the script for the GAL in WinCupl for our project. I used the operators: ! for NOT, * for AND, + for OR
me: *writes code*
me: *compiles it*
compiler: error, unknown operation.
me: wtf but thats how its done, isnt it?
friend: u used the wrong operators. didnt u read the manual?
me: smh i didnt, i invented the syntax xD
lesson learned: always read manual first before writing it directly without knowing the syntax1 -
i always assume that my code is right so when the compiler gives an error, its hard for me to find out why it gives an error and why it doesnt work. my mind is too convinced that it is correct.
i guess i have to sleep it off 😴 maybe tomorrow it will be easier to fix5 -
So....
I'm loving my personal project in Node.JS but I have to say, whoever would use this for any involved professional purpose is a fucking retard.
A complete fucking retard.
Errrors related to their weakly typed bs would have been caught by a compiler in literally ANY OTHER LANGUAGE. Yeah it would take more time to tag objects etc, but then it would be DONE RIGHT and a look-ahead compiler wouldn't be necessary to tell you 'oh the reference could point to a completely different type ! nothing will warn you of this, but if you sort of hover after a certain line the source of the error it took a fucking hour of runtime to produce will be clear !'......
remember just say @NoToJavascript21 -
today:
Committed my code for Code review
solved 23 Merged Conflicts
Fixed 65 Load project Error.
Fixed another 8 Compiler errors because of mistake made in Merge conflict.
I wanted to do coding today... I really do..2 -
MSVC will sometimes compile our code. Sometimes it throws an error.
No changes. Just a shitty compiler.2 -
Me and a couple of my friends at the IT dep stationed in the school servers will do something a little interesting for tomorrow
we will alias gcc with the error message you see when the compiler does not recieve any input files in the Docker images in their build CIs.
oh dear -
Since Friday devRant posts where errors are introduced by very dumb things like commas have stood out to me.
Today's error fix. Line 1352. A string input defined in the spec file was set for 13 length. The body file had 12 dashes to represent this input.
Really, one dash, four days to solve.
Oh and Unix over Windows because my compiler on Windows didn't catch it but the Unix one sure did which is how I found it. -
My compiler tells me, "Hey, you have an error at line 389, resolve it!"
Me [In wonder]: What the heck are you talking Mr Compiler, my program is of 32 lines only!!!2 -
My weirdest dream about programming?
I was sitting with my buddy and we were programming, and literally, verbally arguing with compiler that he should compile, and he was spewing out different errors each time we compiled, and it somehow matched our arguments, so it literally was "replying" with different kind of errors ;-;
I mean, we didnt change code, but tell to compiler "no, no, no, you dont understand. This error is wrong, becouse here and there is this and that and it just should work" **pressed compile again and gets different errror**
Yes, that was after few nights of c++.
Edit:
yes, in that dream compiler was spewing out bullshit errors that didnt made sense.2 -
Here's the description of java.lang.NoSuchMethodError from https://developer.android.com/refer...
"...Normally, this error is caught by the compiler; this error can only occur at run time if the definition of a class has incompatibly changed."
Now, what are the chances of your app crashing on customer's device because of this, when calling an OS function, VibrationEffect.createPredefined(VibrationEffect.EFFECT_DOUBLE_CLICK)? In my case, it's 50/50. Lesson learned Google. try{}catch{} around every line of code from now on to deal with your stupidity.4 -
So I salvaged some computer that was about to be thrown out by IT because it works perfectly fine and would be a waste to lose.
The (current) problem is, there is no built-in wi-fi adapter so I had to order a usb adapter to plug into the machine.
Fortunately enough it supports Linux but cones with a cd with the _source_ of the driver in it and we are supposed to build it. Now what's the problem with that?
First problem: building needs all sorts of build tools, starting from gcc and make. Since it's a fresh install, though, I _cannot_ install those normally because -- you guessed it -- I don't have a WiFi connection, which is why I needed the bloody adapter in the first place, so I spent hours trying to fetch the binaries from the apt register using another computer and bringing them over via USB.
Once that was (more or less) successful, the next problem came around; Second problem: the instructions clearly state to run make, but there is no fucking makefile anywhere so that obviously fails spectacularly. What _is_ there are some bash scripts so I try running those.
Now, just when I think it's finally done (one of the scripts has been running for a while and seems to work) the compiler dies with an error: the fucking driver won't build for the current kernel version. And not just that, but it is clear nobody is using basic things like include guards because gcc kept screaming at me about the same macros being defined over and over due to header file re-inclusion. Like, seriously? Come on!
Long story short the fucking adapter is going back to the seller, let's see if the next one I order more civilized.8 -
I have always wondered this: The compiler knows that I need to have semicolon at the end of the line. It complains to me about is missing. Why can't it add that semicolon there by itself?? I mean, clearly it's the smarter one of us two. It knows all those language standards and is able to check them. I know jack shit. Still instead of helping me, it has to be a bitch and just nag.
Also, what's this business with "true" or "false"? How the hell should I know? Most of the time I am like "maybe". I want code like this:
if (myVar =~ true)
function1()
else sometimes
function2()
or maybe
function3()
or instead usually
function4()
if (error = true)
fix it9 -
Last night I was up until 3am because the fucking unity and the fucking Android SDK can't put together an structure without mi intervention.
It appears that since SDK 23 Google decided to move some libraries from tools to build-tools, but unity keeps trying to find that library in tools, obviously this error doesn't have any specific documentation and i spend around 5 hours downloading SDKs and trying to figure out what happen, till I found one tiny post in unity forum with only one answer.
I mean, on one side, this has changed since android 23 and the folks in unity can't change his fucking compiler yet, and on the other side, why the fuck Google change libraries from one place to another
Also, as a note to Google, your new system for SDK-only download its super shitty and full of problems, I don't know why you change it.1 -
Everytime I have to work on some old Asp.Net shit. WebForms/WinForms etc.
Everything with that bullshitass designer. You wanna open a file you've just created? Sorry, error. Restart IDE and maybe...
Restarted website? Sorry. Old instance still hangs somewhere in IIS, so the port is taken...
Seeing code light up red when cleaning the project. Compiler being like "What the fuck is 'void'?"
Or - I know you didnt make any changes, but Im gonna build AppCode folder anyway... Its only gonna take a minute or two, no worries.
Or - You have XML template file to this class (codebehind)? You wanna open the XML? Would be shame if it was opened in the designer view and your entire IDE crashed 'cuz of some unsuported third party UI element.
Or - just unexpected debug session crashes.
And dont make me start on Xamarin...1 -
Whether I care to admit it or not....
My most prolific teacher has been compiler error messages (oh, and intellisense). -
>compiling Linux 3DS' zImage overnight
>start compiler at 4PM
>11:54PM -- compiling clang: <file>: conpiler: *internal compiler error*: segmentation fault
okay, well, maybe if we continue make from there it'll fix itself? Might've run out of RAM...
>make
>5 seconds later, segfault again
FUCK1 -
*Building random c++ project to practice for exam*
*Gets stuck on linker error for a while*
*Furiously screams at compiler*
*Realizes that one of the implementation files is missing from the g++ command*
*Internally screams at self*
I'll do great on the exam, huh?10 -
I've been watching hours of Rust programming streams. Looks like no one knows what they're doing. People depend on the compiler to fix their errors but can't write one line without getting an error.7
-
Some compilers give an error message on forgotten type casting. From that it shows good typing style casting. So you also avoid clerical errors that can lead to the program crash in the worst case. With some types it is also necessary to perform type casting comma on others Types, however, do this automatically for the compiler.
In short:Type casting is used to prevent mistakes.
An example of such an error would be:
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int * ptr = malloc (10*sizeof (int))+1;
free(ptr-1);
return 0;
}
By default, one tries to access the second element of the requested memory. However, this is not possible, since pointer calculation (+,-) does not work for a void pointer.
The improved example would be:
int * ptr = ((int *) malloc (10*sizeof (int)))+1;
Here, typecasting is done beforehand and this turns the void pointer into its int pointer and pointer calculation can be applied. Note: If instead of error "no output" is displayed on the sololearn C compiler try another compiler.1 -
I wonder why the css class inside the css file throws an angular compiler error at '{' ... shit, it was configured with sass, not scss 🤦
-
My thought process..
a compiler found a type error, oh thank god i was not using python or even worse js. this could have been hard debug error, type do matter huh!. what if compiler was even strict that could have found more error and i could really write even safe code. Ohh may be i should learn/finish Rust
** suddenly conscious slaps in the face**
first finish one project, STOP language hopping ..
Oh! right!1 -
TypeScript! Why you default compiler option "pretty" to false!? Why would anyone want this as false? This is such an amazing feature disabled out of the box! GNARF!
I USED TO GREP FOR ERROR TO GET ERROR HIGHLIGHTING!
:/ -
Why does it have to be so difficult to get unit tests to run? Spent about an hour yesterday trying to get a single test class to run and it kept complaining about a compiler error in a completely different module. Went to the file and there was no error. WTF?!
In the end, checking the “delegate build actions to gradle” box made it go away. why..... -
Today, I decided to learn build a c++ project using cmake. Since I've never done a big project in C++ I have no experience with these stuff.
Couple of hours for researching and trying to understand how that thing works, how to specify things, this and that. Wrote a small program for testing.
Everything was fine. Makefile was generated and program was worked.
Then.... Somehow, sublime text started to give me error messages like, 'the header file you included is not found.' I hit the makefile again, the built was successfull... I know that, need to add -I to compiler flag so that it can find the files. But in sublime text constantly refuses my 'possible' solutions.
Even ycm in vim does this. They expected me to write includes like '../thispkcg/include/header.h'
Where did i go wrong ..............
Btw it works like a charm in cLion I don't know why..2 -
I spent the whole damn day trying to setup grpc-web, but this protocol is documented so damn poorly!
You manage to set grpc up for one language and it’s all cool, then you stupidly think that you are free to reuse the compiler you used for the nodejs version for your frontend part but nope! Our web module is now deprecated, please use this module instead!
“Ah yes just clone the repo and check out (…) and you can also check this link whic is in no way highlighted in the middle of a wall of text (…)”
*checking the other page*
Ah yes you need to install a package available only on your unix machine (great! Screw the devs in my team who use windows I guess, they’ll be happy to hear this!) and don’t forget to clone this repo to build your own plugin! And by that I ofc mean to compile it on your own!
- compiler error
After digging for an hour you find a requirement in an obscure issue opened and closed cause “ah yes we have a dependency not stated anywhere” *close issue and never add it to the project*
Fine, fine I can survive this bs
- another compiler error, no solution found after 2 hours
Honestly? Why the fuck do I need to compile this stuff? Just give me a damn npm package I can use? Goddamn it’s just transpiling, you don’t need access to my OS! (Aside for fs to save the files, and which btw is accessible via nodejs)
Now, I COULD download the latest realease as a precompiled, but… honestly?
I give up, I’ll do some shitty rest apis cause the customer’s not paying me enough for even THINKING to go trough this shit again when they’ll ask an iOS app. Or having colleagues asking me to help them understand how to do it.
Side note: also add typescript support to the web-code-generation ffs! Why does node have it and web don’t?5 -
Just coded a simple SDL program after a two weeks break without a compiler error(more than 100 lines) from memory . Something must be missing . I don't trust this program 🤔1
-
So today I tried to code in c++ by separating class code into header and cpp file which I had not done before. Compiler was throwing error while compiling, "undefined reference to std::cout". Took me nearly an hour to figure out I was using gcc instead of g++.6
-
Scala lang is hard to learn(not saying that sucks), but first I don't want to learn this language, I just wanted to use some functions for a hobby project and this project I found on internet had all I need so I just wanted to translate it to Python, using an online Scala compiler I pasted the functions I needed anddddd error can't compile it it, because the functions had some extra things that were not part in the file where functions were, these things check for null values(?) so I was looking into the project where these "keywords" comes from and I can't find it, so after some grep in the project files I found the "keyword" I was able to compile it, also I weird thing about this language is that there is no return keyword
So yes I find this lang not that intuitive (for me at least)4 -
At university: Error 404
But as I say: you can learn from everything, from good how to do the things, from bad how to not do the things.
One example: don't copy code directly from a PowerPoint presentation, it will change the " to other symbol and make you look like a fool when the compiler throws errors and you don't figure it out why -
HELP
Why does gcc fails to compile?
main.c:10:1: error: unrecognizable insn:
10 | }
| ^
(insn/f 18 4 19 (set (mem:SI (pre_dec:SI (reg:SI 1 bx)) [0 S4 A32])
(reg:HI 0 ax)) "main.c":8:1 -1
(nil))
during RTL pass: shorten
main.c:10:1: internal compiler error: in insn_default_length, at insn-attrtab.c:221
0x61f93f _fatal_insn(char const*, rtx_def const*, char const*, int, char const*)
../../gcc/rtl-error.c:108
0x61f95b _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
../../gcc/rtl-error.c:116
0x742291 insn_default_length(rtx_insn*)
/home/user/Documents/gcc/build-d16i/gcc/insn-attrtab.c:221
0x9ee716 shorten_branches(rtx_insn*)
../../gcc/final.c:1118
0x9ee78f rest_of_handle_shorten_branches
../../gcc/final.c:4753
0x9ee78f execute
../../gcc/final.c:47828 -
What the ****? I added a call to one method, how the hell it could broke it so badly?
> Compile failed with 1163 errors; see the compiler error output for details.1 -
So I'm writing my compiler and I decide to test error handling, see if I'm catching unexpected tokens and whatnot. I try duplicating a semi-colon at the end of a line, for sure it'll give me an error since that's an unexpected token, isn't it? So I run the compiler and... No errors? I start debugging for a few minutes, snoop around, everything seems ok... "Huh, that's weird" and then it dawns on me, a semi-colon only marks the end of a statement. So, technically, it's not an unexpected token if you have an empty statement (which wouldn't break any rules about statements). I decide to try out my theory. I put ;;;;;;;; at the end of a random line in my rust code, hit compile and... it compiles! So that means it is not a bug anymore! I mean, if the big guys that actually know a tad about language design, compilers and all that cool stuff allow it in their languages, why shouldn't it? So I did it, I turned a bug into a feature and now I can go to sleep in peace and stop dreaming about fucking abstract syntax trees (don't mind my kinks >:) ).
Yeah anyways thanks for reading, till next time! Bye!1 -
well... I really dont know how to explain this error
in the directory where I have my testing.cpp file, I type "clang testing.cpp -o testing"
my result is just supposed to be hello world and I am getting this.
note: clang is my c++ compiler since for some divine reason I can't install GCC on termux.
I checked the github and no one gives this complaint. I honestly can't read that error code, I just want it to go away
I hate coding on android, it's always a sorry case
I could have been a farmer or a teacher or a bus driver or an alien but I chose coding. I am really tired
I took a very long screenshot6 -
Kind of a followup on my earlier rant, it seems like my "teacher" doesn't even really know C++. He replied to me that "the code doesn't work", which is probably because the code needs the compiler flag for c++11 (I barely even know what I'm talking about here), which he would've known *if he looked at the error message*?!
Have I mentioned enough yet that I STARTED LEARNING C++ LITERALLY ABOUT 2.5 WEEKS AGO?!?! OTL5 -
Currently I have to devop a Verilog Module. Somehow there seems to be a bug in my environment and once I start the compile process this fucking compiler hangs for a solid 30 minutes or longer and I don't even get an output. It just stops with an Error that says I shall check the logfile, but it is empty.1
-
Wish the Objective-C compiler had better type checking. There's no reason for it to not error out when I'm migration a property from one type to another.
-
Ok so that's my plan, find a kernel with HUGE amout of drivers and , high version.
I built a small os based on linux
-- kernel version 5.0.2 from Plop Linux,
many libraries added 'by hand' -- packages from apts of Debian&Ubuntu, and unpacked packages into system with ArchiveManager,
has GUI but it's called xfree86 ( looks strange when a very old app running on Kernel5 )
So, without compiling, i can make a os.
But i found that Plop didn't compile rtl8188eu module which makes linux support some specific network cards.
I have no professional compiler but a tiny C/Cpp compiler called TinyCC (aka. tcc), but for my pc ( CPU freq = 800MHz ), it seems not possible to compile the module by myself.
And then i downloaded a 5.2 kernel with modules from kernel.ubuntu.com, but when i tried to mount my disk ( part. vfat ), i got some errors like IO charset not found, and then i replaced it with Xanmod kernel but also reported an error said Invalid Arguments, but i checked /proc/filesystems, it supports.
So what can i do? Are there any pre-compiled kernel & modules with 'full common supports'?
I tried kernel 4.4 ( from Ubuntu 16.04 LTS ) just now but the driver crashed when wpa_supplicant tried to initialize the device.7 -
I can work productively and for very long hours with a lot of stuff which many dev considers productivity hurdles:
- single small monitor? No problem (in fact in one occasion in which my roommate accidentally broke my laptop charghing port and I couldn't get a spare I worked on an iPad connected trough SSH to a Linux machine completing one of the hardest tasks I ever did without significant loss of productivity)
- old machine? That's ok as long as I can run a minimal Linux and not struggle with Windows
- noise and chatter around me? A 10€ pair of earbuds are enough for me, no noise cancelling needed
- "legacy" stack/programming language? I'd rather spend my days coding in Swift or Rust but in the end I believe which is the dev and its skill which gets the job done not fancy language features so Java 8 will be fine
- no JetBrains or other fancy IDE? Altough some refactoring and code generation stuff is amazing Neovim or VS Code, maybe with the help of some UNIX CLI tools here and there are more than enough
despite this I found out there is a single thing which is like kryptonite for my productivity bringing it from above average* to dangerously low and it's the lack of a quick feedback loop.
For programming tasks that's not a problem because it doesn't matter the language there's always a compiler/interpreter I can use to quickly check what I did and this helps to get quickly in a good work flow but since I went to work with a customer which wants everything deployed on a lazily put together "private cloud" which needs configurations in non-standard and badly documented file formats, has a lot of stuff which instead of being automated gets done trough slowly processed tickets, sometimes things breaks and may take MONTHS to see them fixed... my productivity took a big hit since while I'm still quick at the dev stuff (if I'm able to put together a decent local environment and I don't depend on the cloud of nightmares, something which isn't always warranted) my productivity plummets when I have to integrate what I did or what someone else did in this "cloud" since lacking decent documentation everything has do be done trough a lot of manual tasks and most importantly slow iterations of trial and error. When I have to do that kind stuff (sadly quite often) my brain feels like stuck on "1st gear": I get slow, quickly tired and often I procrastinate a lot even if I force myself out of non work related internet stuff.
*I don't want this to sound braggy but being a passionate developer which breathes computers since childhood and dedicating part of my freetime on continuously improving my skill I have an edge over who do this without much passion or even reluctantly and I say this without wanting to be an èlitist gatekeeper, everyone has to work and tot everybody as the privilege of being passionate in a skill which nowadays has so much market2 -
Just discovered https://twitter.com/ExpertBeginner1. It's the story of my life. Giant classes, copying and pasting, and architects who create frameworks. It's great when we combine all three: A "framework" created by an architect which is made of giant classes that you copy and paste. Imagine a giant generic class where the generic argument is only used by dead code. Pause for a moment and try to visualize that.
It inherits from a base class with lots of virtual methods called by base methods that throw NotImplementedException, so if you don't need them you have to override them to return empty collections. If you're going to do something so messed up you could just put those default implementations in the base. But no, you can inherit, it compiles, and then it throws a runtime error unless you override methods the compiler doesn't require you to override.
The one method you're required to override has a TODO comment telling you what to put there. Except don't ever do what the comment says because that's the old standard. The new standard says never, ever do that.
Most of the time when I read about copy-and-paste coding it's about devs who copy and paste because they don't know how to write or reuse code. They don't mention the environments where copying and pasting the same classes over and over again is the requirement and you're not allowed to write your own code.
Creating base classes where you just override a method or two can potentially work, but only in the right scenarios and only if you do it right. If you're copying and pasting a class that inherits from the base class and consists entirely of repeated code, why the heck isn't that the base class? It could be a total mess, but at least it would be out of sight and each successive developer wouldn't become responsible for it by including it in their own code.
It's a temporary engagement, but I feel almost violated. I know it's a first-world problem, and I get to work indoors and take vacations. I'm grateful for those things.
Before leaving I had to document the entire process of copying and pasting an entire repo, making a ton of baseline edits that should just be in the template but aren't, and then copying and pasting from other places into the copied and pasted code. That makes me a collaborator. I apologize more than once in the documentation, all 20 pages of it that you have to read and follow before you even get to the part where you write the code for what you actually need it to do.
This architect has succeeded in making every single thing anyone does more about servicing the needs of his "framework" than about writing actual code to do what needs doing. Now that the framework is in and around everything it creates the illusion that it's a critical part of our operations. It's not. It's useless overhead.
Because management is deceived into thinking they need it they overlook the fact that it blows up, big and small, every single day. The log is full of failures that I know no one ever sees. A big chunk of what they think it does fails silently, and they don't even notice until months later when they realize how much data they're missing. But if they lose, say, 25% they'll never notice.
When they do notice they just act like it's normal, go into fire drill mode, and fix it. Doom. You're all doomed. I'm standing on the deck of the Titanic next to my jet ski.1 -
This is the story of how I spent 4h of my life trying to compile a simple node library written with es6 using babel 7.
My error was to use async/await. Previously babel wasn't that bad. A bit complicated and undocumented. But now is a pain in the ass as soon as you need something more than the prefix.
Don't use more time to make a compiler work than to write a library1 -
Is developing on Windows equivalent to squaring the circle? Yeah, obligatory windows bad circlejerk I know.
I’ve been developing a QT5 application for 2 weeks now on my main Linux system. Now, I wanted to make a Windows port for my friends to try.
I install QtCreator on Windows since it’s what I used on Linux. First time setup, I was forced to create an account; I was kind of pissed off but no biggie, I just put “Fuck you” on every credential possible. That’ll teach em.
Now, I needed a decent compiler. Visual Studio is a no go because why the fuck is it so big; also last I checked this thing barely supports C99. So I went with MinGW64 and MSYS2 and made a kit of it. I also went with that because it was the easiest way to get the latest version of GSL and MathGL without having to compile it. Also, the fact that MSYS2 had pacman was pretty nice.
I couldn’t get the thing to work for the whole day until I realized that my kit was pointing to the wrong compiler, turns out msys64/mingw64/bin/g++ and msys64/usr/bin/g++ are two different things. Ok whatever
Now, I just need to hunt down all the .a files and throw it in the LIBS option to get the libraries to work.
I finally made a successful build. Only to find that the application did absolutely nothing. I went with copy pasting the dlls into where the exe was located and launching it manually only to find the error “Application could not start correctly”
Yeah, I might be a retard but fuck you Windows. All I had to do on linux was just install qtcreator on my package manager and let the library dependencies be handled automatically and I could start doing my work right away.6 -
Not exactly a rant but some annoyances
Whenever I copy paste code from kindle it does not space the code. Stack overflow says that kindle is using characters for space which are not present in UTF-8 which causes the issue and the find and replace option coes not work in vs code which the author is using. And if you copy from kindle whether you use the button or Ctrl + C it will add the book title and the author at the end. Who the fuck though this was a good idea.
Oh a table does not fit on the screen render whatever fits even if it is the top line of the table. This is probably not an issue and they cannot fix it and I shoild just deal with it.
The author introduces me to the language compiler and lists a command to what versions are available. I get an error which says the command is not found on windows. I dont find any solutions on google, so I go the next place and author says that he knows about it and shows a link to fix it and tells to folloe the instructions. But the link does not have any instructions and just has instructions to configure the compiler itself. The only releveant information was the path to the compiler which the author could have included there or said that was the only relevant information. The path was correct but I needed to install some stuff through Visual Studio2