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 - "true false programming"
-
Not a rant - just wondering if anyone else witnessed a really awkward closing talk at a conference.
Attended a mandatory JS conference yesterday where all the speakers gave the typical conference talks on new ideas, frameworks, packages with code demonstrations. Most of talks were great and the some of the speakers were extremly humorous making the whole audience laugh which is hard to do. The talk right before the keynote speaker was like this.
Then the keynote started...
The end presenter was an asian-american woman (normally would not metion race/ gender but it’s important to the story) whose talk was basically how the white males of the world are controlling tech an their bias and privilege are marginalizing the rest of us who are not white american ‘cis-males’
She had no data and weak examples, such as sensors on automatic soap despeners not working on darker skins tones (that’s not racist it’s physics). Another example was a plugin where true=male and false=female. That is not gender biased it’s just lazy programming.
At one point she said:
“Have you even been to a party at a rich white guy’s house? There boring! I’m sorry”
This was just a talk about her feelings, if I was not surrounded by my coworkers I would have left.
I feel like this was not appropiate talk for one track conference since it traps everyone into listening. Especially where attendance is obligatory by your employer.
The conference should have warned people it would be an uncomfortable talk and invite people to start happy hour early if they chose.
To add to the weirdness in the closing remarks of one of the organizers patted himself on the back for supplying the women’s bathroom with tampons. He even created a slide for it with a tampon illustration.
Example slide from her deck.61 -
Where I work, in our database, we use 3 to indicate true and 7 to indicate false and 0 is true but null is false
In another table, we use 'P' to indicate true and 'I' to indicate false and 'Y' is also false and null is false
And the most used table, we also use 'Y' to indicate yes and 'N' to indicate no, but null is also Yes.
We also store integers as varchar in a live table, but stays an integer in all the other tables. I hope I'm not there when the number of digits exceeds the varchar limit.
These are all live and used in production all created by my boss, the head of IT.8 -
This was a fun thing that just happened:
I was sent a timed questionnaire by a potential employer for a software engineer job. I'm like okay, I will do it on Monday (today) because that is when I will have a free minute.
Well I sit down to do the thing and I had had a few beers, because the Ballmer Peak is real to me when I have to answer bullshit programming quizzes.
Well F me right in the A, it is a 38 question true or false logic quiz. And I am no longer a college kid trying to get into grad school so I have no patience for that crap, and apparently less with a little beer in me. Long story short, there was no comment section for me to rant in so I decided to go on YouTube and watch cat videos instead.3 -
Our Professor gave us a predefined Datebase with access methods. The whole database is full of
value == 0 ? false : true
How can this guy teach programming languages when he can't apply a simple != operand6 -
3 hours...
3 damn hours for 200 lines of bash code.
Exorcism, Magic I don't care.... But please make a special person never touching bash programming again.
I ripped my hairs out. Really.
Till I realized someone wrote functions with _logical_ return true codes as numbers.
0 - as logical false, for failure
1 - as logical true, for success
Leading my brain into a severe segfault fun.
Why... Oh why.
Second fun part as I corrected that...
Someone wasn't fond of exit codes at all.
Script is now 86 % rewritten....
God damn it, if you don't like a languages fine.
But inverting core logic should give a free trip to the electrical chair.1 -
In a programming exam, we had to write a program in 60 minutes, part of which was sorting some strings by length (strings the same length had to be in the same line)... I had like 3 minutes left, so i wrote this beauty:
boolean b = false;
for(int i = 0; i <= 999999; i++){
for(int j = 0; j <= strings.length; j++){
if(i == strings[j].length()){
System.out.print(s + " ");
b = true;
}
}
if(b){
System.out.println();
b = false;
}
}6 -
Going to make a new programming language, positive# .
Where the default value of a Boolean is true instead of false. -
Problem with code:
Computer: "Error on line 189: ....."
Me: "But the code ended on line 58 "
-----------------------------------------------------------------------------
Programming is funny
!false
(its true)
(i wrote it here because devRant allows us to post one rant in 2 hours)4 -
Hate my fucking ‘Logic’ class. Teaching us if, or, and, etc statements and when something is true or false so far. Fair enough, part of logic. But fucking 6 classes on the same topic, isn’t helpful. Especially since it feels like the same shit I learnt myself when I was 13 and a junior in High School.
People are all surprised at it, even the Computer Science majors. This shouldn’t be a shock to you on how these statements work if you’ve coded for a few minutes in the University. You should’ve learnt it in your first programming class.
Ugh, just how I feel about this class. Have to take it to get my degree, otherwise I would’ve dropped it by now >.> Waste of time and money for me.12 -
If you're subscribed to me only because of my jokes, feel free to ignore this rant. You won't miss anything.
If not, bear with me.
I was wrong about almost everything I can remember. Preaching so-called “conceptual thinking”, I invented a fantasy world of random anecdotes, which turned into a completely false worldview that shaped my reality. I bashed magical thinking, yet succumbed to it. What I believed to be true was just as magical, wrapped into what sounded like science. In the Dunning-Krueger scheme, I was right there on Peak Stupid.
Random hear-say, stupid concepts I invented, random “knowledge” I picked from YouTube videos, all that was rotting inside my head, one anecdote contradicting another. Ultimately, I think this was the reason of my constant anxiety and pointless, never-ending thought process in background.
If you learned anything factual from me and didn't fact-check it, please forget that immediately. The list includes but is not limited to everything on brain structure, everything on philosophy, almost everything on engineering and architecture, almost everything on systems theory and programming meta stuff (declarative, imperative, etc.)
I admit bashing unit tests. The only reason was me disliking writing them in uni. I wrote like three test cases, disliked it, and the rest was history. Everything else was a rationalization on top. If I was right about something, I was just lucky.
I'm not a CSS prodigy. I know stuff that earns me money and impresses my colleagues, but my knowledge is just one step above basics, in one thousand steps ladder.8 -
Not sure if other programming languages class a Boolean as an integer value buuuuuuut...
The amount of times I've seen people do code such as...
if(value == true) {
variable = "blah blah";
} else if(value == false) {
variable = "blah";
}
Instead of doing a simple 1D array and going...
variable = strings[value];
It drives me crazy, such a small thing that has no real benefit but... Ugh... Whyyyyyyy3 -
let rant: (Bool, Bool, String) -> Void = { (isRant, isDev, contents) in
print(contents)
}
rant(false, true, "
So, a year ago more or less, I set out to teach myself some server-side programming on the side.
Many (MANY) tutorials, Digital Ocean droplets created and destroyed, coffee mugs and FMLs later, I can say 'Hello World' from Node.js - built from source and not running as a sudoer - using express and forever on Ubuntu, behind another Ubuntu server running nginx - also built from source so to add headers-more and naxsi - using all sorts of goodies to enhance security and talking to each other via SSH. Oh, and taking to the world over HTTPS with a grade A on SSL Labs (I know this doesn't mean much to you. Yeah you, rolling your eyes over there. So why don't you just bugger off before even commenting? Haha)
Feels good man.
")2 -
One of the worst practices in programming is misusing exceptions to send messages.
This from the node manual for example:
> fsPromises.access(path[, mode])
> fsPromises.access('/etc/passwd', fs.constants.R_OK | fs.constants.W_OK)
> .then(() => console.log('can access'))
> .catch(() => console.error('cannot access'));
I keep seeing people doing this and it's exceptionally bad API design, excusing the pun.
This spec makes assumptions that not being able to access something is an error condition.
This is a mistaken assumption. It should return either true or false unless a genuine IO exception occurred.
It's using an exception to return a result. This is commonly seen with booleans and things that may or may not exist (using an exception instead of null or undefined).
If it returned a boolean then it would be up to me whether or not to throw an exception. They could also add a wrapper such as requireAccess for consistent error exceptions.
If I want to check that a file isn't accessible, for example for security then I need to wrap what would be a simple if statement with try catch all over the place. If I turn on my debugger and try to track any throw exception then they are false positives everywhere.
If I want to check ten files and only fail if none of them are accessible then again this function isn't suited.
I see this everywhere although it coming from a major library is a bit sad.
This may be because the underlying libraries are C which is a bit funky with error handling, there's at least a reason to sometimes squash errors and results together (IE, optimisation). I suspect the exception is being used because under the hood error codes are also used and it's trying to use throwing an exception to give the different codes but doesn't exist and bad permissions might not be an error condition or one requiring an exception.
Yet this is still the bane of my existence. Bad error handling everywhere including the other way around (things that should always be errors being warnings), in legacy code it's horrendous.6 -
In reply to this:
https://devrant.com/rants/260590/...
As a senior dev for over 13 years, I will break you point by point in the most realistic way, so you don't get in troubles for following internet boring paternal advices.
1) False. Being go-ahead, pro active and prone to learn is a good thing in most places.
This doesn't mean being an entitled asshole, but standing for yourself (don't get put down and used to do shit for others, or it will become the routine) and show good learning and exploration skills will definitely put you under a good light.
2)False. 2 things to check:
a) if the guy over you is an entitled asshole who thinkg you're going to steal his job and will try to sabotage you or not answer acting annoyed, or if it's a cool guy.
Choose wisely your questions and put them all togheter. Don't be that guy that fires questions in crumbles, one every 2 minutes.
Put them togheter and try to work out the obvious and what can be done through google or chatgpt by yourself. Then collect the hard ones for the experienced guy and ask them all at once. He's been put over you to help you.
3) Idiotic. NO.
Working code = good code. It's always been like this.
If you follow this idiotic advice you will annoy everyone.
The thing about renaming variables and crap it's called a standard. Most company will have a document with one if there is a need to follow it.
What remains are common programming conventions that everyone mostly follows.
Else you'll end up getting crazy at all the rules and small conventions and will start to do messy hot spaghetti code filled with syntactic sugar that no one likes, included yourself.
4)LMAO.
This mostly never happens (seniors send to juniors) in real life.
But it happens on the other side (junior code gets reviewed).
He must either be a crap programmer or stopped learning years ago(?)
5) This is absolutely true.
Programming is not a forgiving job if you're not honest.
Covering up mess in programming is mostly impossible, expecially when git and all that stuff with your name on it came out.
Be honest, admit your faults, ask if not sure.
Code is code, if it's wrong it won't work magically and sooner or later it will fire back.
6)Somewhat true, but it all depends on the deadline you're given and the complexity of the logic to be implemented.
If very complex you have to divide an conquer (usually)
7)LMAO, this one might be true for multi billionaire companies with thousand of employees.
Normal companies rarely do that because it's a waste of time. They pass knowledge by word or with concise documentation that later gets explained by seniors or TL's to the devs.
Try following this and as a junior:
1) you will have written shit docs and wasted time
2) you will come up to the devs at the deadline with half of the code done and them saying wtf who told you to do that
8) See? What an oxymoron ahahah
Look at point 3 of this guy than re-read this.
This alone should prove you that I'm right for everything else.
9) Half true.
Watch your ass. You need to understand what you're going to put yourself into.
If it's some unknown deep sea shit, with no documentations whatsoever you will end up with a sore ass and pulling your hair finding crumbles of code that make that unknown thing work.
Believe me and not him.
I have been there. To say one, I've been doing some high level project for using powerful RFID reading antennas for doing large warehouse inventory with high speed (instead of counting manually or scanning pieces, the put rfid tags inside the boxes and pass a scanner between shelves, reading all the inventory).
I had to deal with all the RFID protocol, the math behind radio waves (yes, knowing it will let you configure them more efficently and avoid conflicts), know a whole new SDK from them I've never used again (useless knowledge = time wasted and no resume worthy material for your next job) and so on.
It was a grueling, hair pulling, horrible experience that brought me nothing in return execpt the skill of accepting and embracing the pain of such experiences.
And I can go on with other stories. Horror Stories.
If it's something that is doable but it's complex, hard or just interesting, go for it. Expecially if the tech involved is something marketable.
10) Yes, and you can't stop learning, expecially now that AI will start to cover more and more of our work.4