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 - "break-point"
-
Hey everyone! As many of you have already seen, @trogus and I are happy to announce the release of devRant++, also know as the devRant supporter program!
devRant++ is a monthly subscription ($1.99 USD) that gives you some cool extra features while also contributing to covering some of our ever-increasing server costs.
Subscribers get:
- a badge that shows up on all of their rants and comments
- ability to edit rants and comments for up to 30 minutes (instead of the usual 5)
- ability to post unlimited collabs for free (so keep an eye out for new collabs, hopefully!)
- a reserved spot on the devRant++ supporter list (you can only move up higher or stay in the same position through the life of your subscription)
- more benefits coming soon!
Why did devRant++ come to be? Basically, we have the most awesome community members and we kept getting extremely generous requests from members asking how they could help devRant stay afloat. Instead of taking donations and not giving anything directly in return, we wanted to give supporters a little extra something to hopefully make the program kind of special.
We greatly appreciate everyone who has joined the supporter program so far. We also realize not everyone has the money to spend or wants to spend, and that's perfectly fine. We also greatly appreciate everyone here who posts great rants and comments, helps spread the word about devRant, votes on stuff, or is just a valuable member of the community in general. @trogus and I value all contributions and we want to make that clear!
Another reason we decided to go ahead with the program is, as I mentioned towards the beginning, our server/technology costs are increasing and we're kind of at a point where we can't afford all of the upgrades we'd like to make. At the same time while we need more hardware, we're trying to get the app to a place where we're not losing money every month, hopefully to the point where we can break even soon.
Anyway, thank you to everyone again for the amazing support and early interest in devRant++. We would love to hear feedback and stuff you would like to see added to supporter benefits, so just let us know!60 -
If Doctors Were Like Coders
(cross-posted from https://medium.com/@c09b6133a238/...)
Problem: The patient has a broken leg.
Solution:
1. Ask the patient to reproduce the exact scenario that resulted in the broken leg. Watch closely to see if the leg breaks again. Check for consistency by repeating the scenario a few more times.
2. Explain that this isn’t an intended use case for the leg, and besides, it only affects one person. Ask the patient if, all things considered, he really wants to prioritize his broken leg over your other work.
3. Point out that the patient’s other leg performs just fine under the same circumstances. Ask if he can use his other leg instead, at least as a workaround.
4. Attach several accelerometers to the broken leg and break it again. Stare at the data received from the accelerometers, then shrug and declare it useless.
5. Decide that the patient’s problem must be in his spleen. After all, that’s the only part of his body you don’t really understand.
6. Track down the people who created the patient. Ask them if he’s ever had spleen problems before. When they seem confused, explain that he has a broken leg. Ignore them when they tell you that the spleen they created could not possibly cause a broken leg.
7. Ask Google where a person’s spleen is. Spend half an hour reading the Wikipedia article on Splenomegaly.
8. Open the patient and grumble about how tightly-coupled his spleen and circulatory system are. Examine the spleen’s outer surface to see if there are any obvious problems. Inform him that several of his organs are very old and he should consider replacing them with something more modern.
9. Compare the spleen to some pictures of spleens online. If anything looks different, try to make it look the same.
10. Remove the spleen completely. See if the patient’s leg is still broken. If so, put the spleen back in.
11. Tell the patient that you’ve noticed his body is made almost entirely out of cellular tissue, whereas most bodies these days are made out of cardboard. Explain that cardboard is a lot easier for beginners to understand, it’s more forgiving of newbie mistakes, and it’s the tissue franca of the Internet. Ask if he’d like you to rebuild his body with cardboard. It will take you longer, but then his body would be future-proof and dead simple. He could probably even fix it himself the next time it breaks.
12. Spend some time exploring the lymph nodes in the patient’s abdominal cavity. Accidentally discover that if the patient’s leg is held immobile for six weeks, it gets better.
13. Charge the patient for six weeks of work.14 -
I was hired as a senior software engineer. During handover I found out I'm actually replacing the CTO.
I queried why he was leaving and got a simple "just want a break from working" which I found odd.
Fast forward and now I also just want a break from work, permanently. This place has followed every bad practise and big no-no out there. Every bit of software is a built in house knockoff janky piece of crap that doesn't work and makes people's jobs 5000 times harder.
The UI looks worse than Windows 3.1, absolutely horrendous code formatting, worst database structure I've ever seen.
The mere mention of using a team communication tool results in being yelled at from the CEO whom communicates purely via email, who then gets annoyed when you don't reply because they sent the email to a client instead of you.
We get handed printed out "tickets" to work instead of the so called "amazing in house ticket system" built using PHP 5 and is literally crammed into an 800x600 IFrame. Yes a F$*#ing IFRAME!
It's not like we have an outdated TFS server that has work items we can use...
Why not push for changes you say. I have, many times, tried to suggest better tools. The only approval I've gotten is using PhpStorm. Everything else is shutdown immediately and you get the silent treatment.
The CEO hired me to do a job, then micromanages like crazy. I can't make UI changes, I can't make database changes, why? They insists they know best, but has admitted multiple times to not knowing SQL and literally uses a drag and drop database table builder.
Every page in the webapps we make are crammed into 800x600 iframes with more iframes inside iframes. And every time it's pointed out we need to do something, be it from internal staff or client suggestions, the CEO goes off about how the UI is industry leading and follows standards.. what in the actual f....
Literally holding on by a thread here. Why hire a CTO under the guise of being a senior developer but then reduce the work that can be done down to the level of a junior?
Sure the paycheck is really nice but no job is worth the stress, harassment and incompetent leadership from the CEO.
They've verbally abused people to the point they resign, best part is that was simply because the CEO made serious legal mistakes, was told about it by the employee then blamed it on others.21 -
Worst meeting I’ve been in?
Transitioning from an old system, the CEO said “We will transition on June 30th of next year or … heads … will … roll.”
Everyone knew what ‘heads will roll’ meant.
I wasn’t particularly worried because 90% of my work would be completed by December, the rest would be completed by the users (data transfers, etc.). Realistically, no reason we couldn’t transition by April or May.
June 15th comes around – CEO calls a meeting (managers, VPs, kind of a big deal) because we’re nowhere close to turning on the new system. Needless to say, I was a bit nervous, but my part had been done since November. I worked late nights, weekends, early mornings…I killed myself making sure the system was 100% ready.
CEO starts asking the different managers about what is taking so long…
Mgr-1: ”Well, we aren’t easily able to map our old customer records into the new system. The new system is too hard to use and taking a long time.”
Mgr-2: “We can’t reconcile until the customer records are in the database.”
Mgr-3: “We can’t proof the purchase orders until the customer accounts are reconciled.”
The ‘waiting on him/her’ excuse went around the room.
At this point, couple of the VPs look over at me …I felt like I just turned white …oh crap…I’m going to get fired because all these –bleep-holes just threw me under the bus.
CEO listens…nods…looks at my boss..
CEO: “OK, move the due date out 6 more months. Have your team help out in any way they can. I want this new system working correctly no matter how long it takes. If we need to move the date again, we just do.”
Part of me was relieved, other part was looking for a flame thrower. I worked myself to the bone, risked my marriage (in hindsight, I was not a nice person to her during that time), probably had an ulcer, and these sorry excuse for human beings dragged their asses for months and there was zero accountability.
That meeting was over 15 years ago and it bothered me so much I still remember the CEO was wearing a green button up shirt, khaki pants, and drinking coffee from a Break Time coffee cup.
Upside? Over the next couple of years, every one of those managers either quit or got fired.4 -
Imagine if a structural engineer whose bridge has collapsed and killed several people calls it a feature.
Imagine if that structural engineer made a mistake in the tensile strength of this or that type of bolt and shoved it under the rug as "won't fix".
Imagine that it's you who's relying on that bridge to commute every day. Would you use it, knowing that its QA might not have been very rigorous and could fail at any point in time?
Seriously, you developers have all kinds of fancy stuff like Continuous Integration, Agile development, pipelines, unit testing and some more buzzwords. So why is it that the bridges don't collapse, yet new critical security vulnerabilities caused by bad design, unfixed bugs etc appear every day?
Your actions have consequences. Maybe not for yourself but likely it will have on someone else who's relying on your software. And good QA instead of that whole stupid "move fast and break things" is imperative.
Software developers call themselves the same engineers as the structural engineer and the electrical engineer whose mistakes can kill people. I can't help but be utterly disappointed with the status quo in software development. Don't you carry the title of the engineer with pride? The pride that comes from the responsibility that your application creates?
I wish I'd taken the blue pill. I didn't want to know that software "engineering" was this bad, this insanity-inducing.
But more than anything, it surprises me that the world that relies so much on software hasn't collapsed in some incredible way yet, despite the quality of what's driving it.44 -
Buy it, use it, break it, fix it
Trash it, change it, mail - upgrade it
Charge it, point it, zoom it, press it
Snap it, work it, quick - erase it
Write it, cut it, paste it, save it
Load it, check it, quick - rewrite it
Plug it, play it, burn it, rip it
Drag and drop it, zip - unzip it
Lock it, fill it, call it, find it
View it, code it, jam - unlock it
Surf it, scroll it, pause it, click it
Cross it, crack it, switch - update it
Name it, rate it, tune it, print it
Scan it, send it, fax - rename it
Touch it, bring it, pay it, watch it
Turn it, leave it, start - format it10 -
5 Types Of Programmers
1.The duct tape programmer
The code may not be pretty, but damnit, it works!
This guy is the foundation of your company. When something goes wrong he will fix it fast and in a way that won’t break again. Of course he doesn’t care about how it looks, ease of use, or any of those other trivial concerns, but he will make it happen, without a bunch of talk or time-wasting nonsense. The best way to use this person is to point at a problem and walk away.
2.The OCD perfectionist programmer
You want to do what to my code?
This guy doesn’t care about your deadlines or budgets, those are insignificant when compared to the art form that is programming. When you do finally receive the finished product you will have no option but submit to the stunning glory and radiant beauty of perfectly formatted, no, perfectly beautiful code, that is so efficient that anything you would want to do to it would do nothing but defame a masterpiece. He is the only one qualified to work on his code.
3.The anti-programming programmer
I’m a programmer, damnit. I don’t write code.
His world has one simple truth; writing code is bad. If you have to write something then you’re doing it wrong. Someone else has already done the work so just use their code. He will tell you how much faster this development practice is, even though he takes as long or longer than the other programmers. But when you get the project it will only be 20 lines of actual code and will be very easy to read. It may not be very fast, efficient, or forward-compatible, but it will be done with the least effort required.
4.The half-assed programmer
What do you want? It works doesn’t it?
The guy who couldn’t care less about quality, that’s someone elses job. He accomplishes the tasks that he’s asked to do, quickly. You may not like his work, the other programmers hate it, but management and the clients love it. As much pain as he will cause you in the future, he is single-handedly keeping your deadlines so you can’t scoff at it (no matter how much you want to).
5.The theoretical programmer
Well, that’s a possibility, but in practice this might be a better alternative.
This guy is more interested the options than what should be done. He will spend 80% of his time staring blankly at his computer thinking up ways to accomplish a task, 15% of his time complaining about unreasonable deadlines, 4% of his time refining the options, and 1% of his time writing code. When you receive the final work it will always be accompanied by the phrase “if I had more time I could have done this the right way”.
What type of programmer are you?
Source: www.stevebenner.com16 -
Buy it, use it, break it, fix it,
Trash it, change it, mail, upgrade it,
Charge it, point it, zoom it, press it,
Snap it, work it, quick, erase it,
Write it, cut it, paste it, save it,
Load it, check it, quick, rewrite it
Plug it, play it, burn it, rip it,
Drag and drop it, zip, unzip it,
Lock it, fill it, curl it, find it,
View it, code it, jam, unlock it
Surf it, scroll it, pose it, click it
Cross it, crack it, twitch, update it,
Name it, read it, tune it, print it,
Scan it, send it, fax, rename it,
Touch it, bring it, pay it, watch it,
Turn it, leave it, stop, format it.9 -
In my opinion, business as usual.
1. Work from home if possible. Cars fuck up the environment and no one likes traffic jams, use transportation sparingly. Pandemic or not.
2. I never want to shake the filthy sweaty hands of untrusted peasants, I don't care if you're a CEO representing our biggest client. An acknowledging nod is sufficient.
3. Why the FUCK do I feel sneeze droplets raining down the escalator? I don't care WHAT you're infected with, just sneeze in your elbow. No, don't sneeze in your hand either you dimwitted mongrel, because too many people insist on ignoring rule 2.
4. The news just taught you how to wash your hands? You mean, you didn't learn that in elementary school?
5. Pandemic or not, if you're sick, fucking stay at home. Why do people suddenly need a "policy" for this? Wasn't this always the common sense rule? Employers who don't send sick workers home actively sabotage their own business, even when it's "just a mild flu".
6. Keep some distance from me in public whenever possible. Again, pandemic or not... It's called personal space.
7. I understand that wearing mouth masks is not culturally integrated in the west like it is in Japan, but maybe it should be. Not for egocentric self preservation when you're healthy, but out of politeness to the public when you're sick. They actually work much better for that purpose, and it decreases the chance I will break your neck when you violate point 3.
I'm not a total germaphobe. I'll gladly engage in a filthy orgy with a dozen friends... As long as they've showered, aren't coughing, and don't have snot running down their chins.
The general hygiene level of the population is so fucking awful.
Pandemic, or not, it doesn't matter.27 -
Had a job interview recently that went well besides one little disagreement... and it has made me question my sanity. Tell me if I'm wrong.
They asked the difference between a GET and POST request.
Wow, that's an easy one, they're giving me a break, I thought to myself.
I said "GET is used to retrieve data from a server, whereas POST is used to add data to a server, via it's body, which a GET lacks" or something like that.
They were like "ya mostly, but GET can be used to enter data into the server too. We were just looking for the body thing."
And I'm like.... yeah, you could do that, but that's not what it's meant for.
They mention stuff about query parameters and I hold steady that GET and POST are different because GET has a specific purpose. Otherwise, we wouldn't need the "method" part of an HTTP request at all. We could just either include a body or not include a body.
I ended it with "Well, POST implies that you are adding data to a server, and GET implies you are querying data from the server. When I'm reading documentation, that's how I quickly determine what an endpoint does."
My confidence was a little shaken at this point. Crazy what two people with (I assume at least) 10+ years of experience telling you you're wrong will do to your confidence.21 -
Here's the time an Amazon recruiter scheduled a call with me just to tell me I wouldn't be getting the job.
A few years ago, I left Uber after the seemingly non-stop public snafus they were getting themselves into (I have a lot of rants about Uber if anyone is interested, some of them mind-melting). I decided to take a two month break given that my financials looked decent for once and I was tired of 100 hour weeks.
During that time, I of course started perusing the typical job-seeking sites I had remembered from before. Somehow, from one of the profiles I set up, I caught the eye of an Amazon recruiter. They emailed me and I agreed to set up a date and time for an introductory chat.
They already had my CV. They already had my StackOverflow/Github information. This wasn't a technical interview, and the recruiter wasn't part of any of the tech teams. This is important information moving forward.
A few days later, I got the call from the recruiter. He introduced himself as the person from the emails, thanking my for my time, etc.. Things started out pleasant with the smalltalk and whatnot, but then the recruiter said "so I have some concerns about your resume".
Under one of the sections I had a list of things I was skilled with - one of which, regrettably, is PHP. Completely ignoring Java, Javascript, C# and C++ knowledge and all of the other achievements I have with those technologies, the recruiter really wanted to drill me about the PHP.
"Do you work a lot with PHP?"
"No, not anymore - from time to time I have to do something with it but it's not my main language anymore. I know it quite well, though."
"Oh okay well we aren't looking for any PHP roles right now, unfortunately."
"Okay, no problem."
Perhaps I could have said more, but from my end of things, I meant "I don't see a problem here, I don't write a lot of PHP and you don't need a lot of PHP".
After a pause that felt like an hour, the recruiter broke the silence and said "Okay well thanks for your time today, I'm sorry things didn't work out."
Bewildered, I asked which technology stack they were using on the team.
"Not PHP, unfortunately. Thank you for your time." and then an abrupt click.
The recruiter found me himself, looked at my resume (assumably), sought out to contact me, arranged a time for a call, and then called me, just to tell me I wouldn't get the position due to knowing PHP at some point in my career.
Years later, the whole interaction still shocks me. Somewhere in my drafts I have a long letter to the recruiter basically going over my entire career history explaining why his call was incredibly... well, fucking weird. Towards the end of writing it I realized it was more therapeutic for me to deal with whatever it was that just took place and that it probably wouldn't change my odds of working at Amazon.
So yeah. That's the story of the time Amazon set up a recruiting call just to tell me I wouldn't be working for them.9 -
That feeling when the company looses a 120k account and it is blamed on your expert opinion and poor handling off the situation when It's really the fuckwits in sales who in their greed for provisions make shitty pitches.
I got a call to attend a meeting with a customer. Present was also the "developer" from the customers side who was to oversee the projects. The pitch was made earlier, but no information was provided beforehand so I was going in blind, covering for a suddenly absent lead. The point was to roughly present how the project was to be executed and I was told to voice my opinion on development time estimate that the clients expert had given. They were outsourcing and had already fired their whole team.
I gave a number based on the provided information and all hell breaks loose. Suddenly it's a total circle jerk. Shit goes down. The "dev" tells that he can do it himself in half the time and starts showing some shitExcelsOfTotalAbsurdness that prove it. I calculate his claim and end up with a result that he has 60+ hours in his day, so I ask why doesn't he do it then? Why the outsourcing if they could just give him a raise and save a ton of cash.. sudden silence and you just can hear the rusty gears turn while they try to make a new excuse.
Well it went south. Today I found out that the client was our sales guys buddy. so TL;DR of it was that our sales guy was trying to make a quick buck and give a break to his buddy and hang the shitbucket on our team. I pointed out that this was a shitty business deal that would go into the red, but the sales guy turned it around and now "I cost company 120k/month account on a long project" and because I acted unprofessionally customer is unhappy.
I FUCKING HATE THIS SHIT
secretly hoping to get fired over this10 -
POSTMORTEM
"4096 bit ~ 96 hours is what he said.
IDK why, but when he took the challenge, he posted that it'd take 36 hours"
As @cbsa wrote, and nitwhiz wrote "but the statement was that op's i3 did it in 11 hours. So there must be a result already, which can be verified?"
I added time because I was in the middle of a port involving ArbFloat so I could get arbitrary precision. I had a crude desmos graph doing projections on what I'd already factored in order to get an idea of how long it'd take to do larger
bit lengths
@p100sch speculated on the walked back time, and overstating the rig capabilities. Instead I spent a lot of time trying to get it 'just-so'.
Worse, because I had to resort to "Decimal" in python (and am currently experimenting with the same in Julia), both of which are immutable types, the GC was taking > 25% of the cpu time.
Performancewise, the numbers I cited in the actual thread, as of this time:
largest product factored was 32bit, 1855526741 * 2163967087, took 1116.111s in python.
Julia build used a slightly different method, & managed to factor a 27 bit number, 103147223 * 88789957 in 20.9s,
but this wasn't typical.
What surprised me was the variability. One bit length could take 100s or a couple thousand seconds even, and a product that was 1-2 bits longer could return a result in under a minute, sometimes in seconds.
This started cropping up, ironically, right after I posted the thread, whats a man to do?
So I started trying a bunch of things, some of which worked. Shameless as I am, I accepted the challenge. Things weren't perfect but it was going well enough. At that point I hadn't slept in 30~ hours so when I thought I had it I let it run and went to bed. 5 AM comes, I check the program. Still calculating, and way overshot. Fuuuuuuccc...
So here we are now and it's say to safe the worlds not gonna burn if I explain it seeing as it doesn't work, or at least only some of the time.
Others people, much smarter than me, mentioned it may be a means of finding more secure pairs, and maybe so, I'm not familiar enough to know.
For everyone that followed, commented, those who contributed, even the doubters who kept a sanity check on this without whom this would have been an even bigger embarassement, and the people with their pins and tactical dots, thanks.
So here it is.
A few assumptions first.
Assuming p = the product,
a = some prime,
b = another prime,
and r = a/b (where a is smaller than b)
w = 1/sqrt(p)
(also experimented with w = 1/sqrt(p)*2 but I kept overshooting my a very small margin)
x = a/p
y = b/p
1. for every two numbers, there is a ratio (r) that you can search for among the decimals, starting at 1.0, counting down. You can use this to find the original factors e.x. p*r=n, p/n=m (assuming the product has only two factors), instead of having to do a sieve.
2. You don't need the first number you find to be the precise value of a factor (we're doing floating point math), a large subset of decimal values for the value of a or b will naturally 'fall' into the value of a (or b) + some fractional number, which is lost. Some of you will object, "But if thats wrong, your result will be wrong!" but hear me out.
3. You round for the first factor 'found', and from there, you take the result and do p/a to get b. If 'a' is actually a factor of p, then mod(b, 1) == 0, and then naturally, a*b SHOULD equal p.
If not, you throw out both numbers, rinse and repeat.
Now I knew this this could be faster. Realized the finer the representation, the less important the fractional digits further right in the number were, it was just a matter of how much precision I could AFFORD to lose and still get an accurate result for r*p=a.
Fast forward, lot of experimentation, was hitting a lot of worst case time complexities, where the most significant digits had a bunch of zeroes in front of them so starting at 1.0 was a no go in many situations. Started looking and realized
I didn't NEED the ratio of a/b, I just needed the ratio of a to p.
Intuitively it made sense, but starting at 1.0 was blowing up the calculation time, and this made it so much worse.
I realized if I could start at r=1/sqrt(p) instead, and that because of certain properties, the fractional result of this, r, would ALWAYS be 1. close to one of the factors fractional value of n/p, and 2. it looked like it was guaranteed that r=1/sqrt(p) would ALWAYS be less than at least one of the primes, putting a bound on worst case.
The final result in executable pseudo code (python lol) looks something like the above variables plus
while w >= 0.0:
if (p / round(w*p)) % 1 == 0:
x = round(w*p)
y = p / round(w*p)
if x*y == p:
print("factors found!")
print(x)
print(y)
break
w = w + i
Still working but if anyone sees obvious problems I'd LOVE to hear about it.38 -
(Written March 13th at 2am.)
This morning (yesterday), my computer decided not to boot again: it halts on "cannot find firmware rtl-whatever" every time. (it has booted just fine several times since removing the firmware.) I've had quite the ordeal today trying to fix it, and every freaking step along the way has thrown errors and/or required workarounds and a lot of research.
Let's make a list of everything that went wrong!
1) Live CD: 2yo had been playing with it, and lost it. Not easy to find, and super smudgy.
2) Unencrypt volume: Dolphin reports errors when decrypting the volume. Research reveals the Live CD doesn't incude the cryptsetup packages. First attempts at installing them mysteriously fail.
3) Break for Lunch: automatic powersaving features turned off the displays, and also killed my session.
4) Live CD redux: 25min phonecall from work! yay, more things added to my six-month backlog.
5) Mount encrypted volume: Dolphin doesn't know how, and neither do I. Research ensues. Missing LVM2 package; lvmetad connection failure ad nauseam; had to look up commands to unlock, clone, open, and mount encrypted Luks volume, and how to perform these actions on Debian instead of Ubuntu/Kali. This group of steps took four hours.
6) Chroot into mounted volume group: No DNS! Research reveals how to share the host's resolv with the chroot.
7) `# apt install firmware-realtek`: /boot/initrd.img does not exist. Cannot update.
8) Find and mount /boot, then reinstall firmware: Apt cannot write to its log (minor), listed three install warnings, and initially refused to write to /boot/initrd.img-[...]
9) Reboot!: Volume group not found. Cannot process volume group. Dropping to a shell! oh no..
(Not listed: much research, many repeated attempts with various changes.)
At this point it's been 9 hours. I'm exhausted and frustrated and running out of ideas, so I ask @perfectasshole for help.
He walks me through some debugging steps (most of which i've already done), and we both get frustrated because everything looks correct but isn't working.
10) Thirteenth coming of the Live CD: `update-initramfs -u` within chroot throws warnings about /etc/crypttab and fsck, but everything looks fine with both. Still won't boot. Editing grub config manually to use the new volume group name likewise produces no boots. Nothing is making sense.
11) Rename volume group: doubles -'s for whatever reason; Rebooting gives the same dreaded "dropping to a shell" result.
A huge thank-you to @perfectasshole for spending three hours fighting with this issue with me! I finally fixed it about half an hour after he went to bed.
After renaming the volume group to what it was originally, one of the three recovery modes managed to actually boot and load the volume. From there I was able to run `update-initramfs -u` from the system proper (which completed without issue) and was able to boot normally thereafter.
I've run updates and rebooted twice now.
After twelve+ hours... yay, I have my Debian back!
oof.rant nightmare luks i'm friends with grub and chroot now realtek realshit at least my computer works again :< initrd boot failure8 -
i was asked to start a new project, and another dev was brought onto the team shortly after. as soon as he joined, straight away he started an entirely new project and worked on it through the whole weekend, then came back on monday and just sort of pasted his files into/over the code i had already started and was working on, with no regard for folder structure or naming conventions or anything. his work was even split between 2 almost identically named namespaces (both of which were completely different to the existing project namespace) and his shit broke everything i did in the first place. the cherry on top is that none of his work was even functional, it was purely dummy/mockup web pages that weren't linked to any sort of backend.
when i asked him wtf he thought he was doing, he kept saying "i didnt touch your code" and refused to acknowledge that pasting a project over a different project can break stuff, then said it "wasn't his fault that i'm slow and not keeping up". and just kept saying vague bullshit about how i have to do it his way because he "has more experience"
he had no idea what my previous experience was, he had never asked and i had never told him, he just decided that he had more experience than me.
i dug through the shit and found out that he didn't just break my work, he had actually purposely deleted it when he realised it was getting in the way of his spaghetti. i showed him the commit and confronted him with it and all the cunt said was "well the good news is, you know the fix" and kept trying to dismiss me in the most disrespectful ways he could think of. i eventually snapped at him (long overdue at this point) and told him that any experienced developer would not commit code that didn't even fucking compile, especially when they're the one who broke it, and that he needs to grow up. of course he then complained that i was being unprofessional.
our manager decided we should go with fuckfaces """code""" without even looking at the work either of us had done, purely because fuckface is older than me and that's how the world works.
in the end i just told my manager that i refuse to work with the guy and he could either take him or me off the project (guess who he picked) or i quit.
after a few months of the guy failing to deliver any of even the basic functionality that was asked for, the entire project got scrapped, and the dude just quit once everyone realised he was literally just larping as an experienced dev but couldn't accomplish simple tasks.
i never received an apology from anybody involved.5 -
"Thank you for choosing Microsoft!"
No Microsoft, I really didn't choose you. This crappy hardware made you the inevitable, not a choice.
And like hell do I want to run your crappy shit OS. I tried to reset my PC, got all my programs removed (because that's obviously where the errors are, not the OS, right? Certified motherfuckers). Yet the shit still didn't get resolved even after a reset. Installing Windows freshly again, because "I chose this".
Give me a break, Microshaft. If it wasn't for your crappy OS, I would've gone to sleep hours ago. Yet me disabling your shitty telemetry brought this shit upon me, by disabling me to get Insider updates just because I added a registry key and disabled a service. Just how much are you going to force data collection out of your "nothing to hide, nothing to fear" users, Microsoft?
Honestly, at this point I think that Microsoft under Ballmer might've been better. Because while Linux was apparently cancer back then, at least this shitty data collection for "a free OS" wasn't yet a thing back then.
My mother still runs Vista, an OS that has since a few months ago reached EOL. Last time she visited me I recommended her to switch to Windows 7, because it looks the same but is better in terms of performance and is still supported. She refused, because it might damage her configurations. Granted, that's probably full of malware but at this point I'm glad she did.
Even Windows 7 has telemetry forcibly enabled at this point. Vista may be unsupported, but at least it didn't fall victim to the current status quo - data mining on every Microshaft OS that's still supported.
Microsoft may have been shady ever since they pursued manufacturers into defaulting to their OS, and GPU manufacturers will probably also have been lobbied into supporting Windows exclusively. But this data mining shit? Not even the Ballmer era was as horrible as this. My mother may not realize it, but she unknowingly avoided it.6 -
There’s a junior on my team, who has an ego problem.
Within 6-8 months, they have not progressed much, up to the point they still struggle with language and framework syntax.
Yet, they want to get the credit for doing big and important tasks, the ones they have no clue at all how to execute.
Our team tried to break more the tasks and tickets almost to the point of a tutorial. Junior got upset and complained that they did not want the tasks to be broken for them.
If we give space, tasks take forever to get completed. If we try to pair, Junior does everything in their power to cut the meeting short and again take forever to complete anything.
If we prioritize our own tasks, Junior complains that nobody pairs/assist them.
Took one for the team and started to work on finding ways to get this wonderful person to learn. Junior does not learn. In fact, almost feels like things enter from one ear and leave from the other instantly. Despite being repeated multiple times. Chewed. Presented in all sorts of way. You name it, I’ve tried.
Yesterday was the last drop. They fucking rolled their eyes while was explaining something.
This person is dead for me and I will make my personal crusade to not go out of my tasks to help them.
Thanks for coming to my TED rant.6 -
When a Coursera course is way better than the one offered by your university…
A university student's rant...
I study Electrical and Computer Engineering and during the first semester of the second year I selected an optional course: Web Programming. It was believed among students that the course would be really easy, and it was. All the student had to do was build a very simple website using HTML, CSS and a few line of JS. A website containing three or four pages all of which had to be validated using a markup validation service.
Yeah, sure, I passed the course just like everyone else who bothered enough to spend an hour or two working on the project. Oh, I almost forgot! We had an one-hour workshop on Dreamweaver!
So, by that point, everybody was a front-end developer, right?!
That happened over three years ago, and because of that course web-development didn’t impress me…
Thankfully, the last few months I’ve became interested in Web Development, and I’ve been reading some articles, spending time on smashing magazine, making some progress on FreeCodeCamp and taking relevant courses on Coursera!
In fact, a few days ago I completed the Coursera course “HTML, CSS and Javascript for Web Developers”.
Oh boy, the things I didn’t know that I didn’t know…
<sarcasm>Did you know there was a term called “responsive design” and that there are frameworks like bootstrap?</sarcasm>
Well, I d i d n ’ t k n o w ! ! ! (even though I had taken the university’s course).
I understand that bootstrap was introduced in 2011 and I took the university course in late 2012, but by that time, bootstrap was quite popular and also there were other frameworks available before bootstrap that could have been included in the course! (even today, there is no reference in responsive design in the university’s course).
In just five weeks the coursera course managed to teach me more, in a more organized and meaningful way than my university’s course in a whole semester!
When I started the coursera course I shared it with a friend of mine. His response: “yeah, sure, but web development is pretty easy… I didn’t spend much time to complete that project three years ago!”
That course three years ago gave birth to misconceptions in students' minds that web development is easy! Yeah, sure, it can be easy to built a simple, non responsive, non interactive website! But that's not how the world works nowadays , right?!
A few months ago, in the early days of August, I attended Flock, the Fedora community conference. During a break I spent some time speaking with a Red Hat employee about student internships. He told me, and I paraphrase: “We know that students don’t have a solid background and that they haven’t learned in the university what we need them to!”
Currently I’m planning to apply for a front-end developer internship position here in Greece.
Yesterday I wrote my CV, added university courses relevant to that position and listed coursera courses under independent coursework… While writing those I made these thoughts…
What if that course 3 years ago was as good as the coursera course… all the things I’d know by now…6 -
My non dev friends don't understand how I need a daily calendar reminder to each lunch with or I will forget to eat until about 3 or 4pm. At which point the hunger pains have gradually become painful enough to break me out of my coding stupor.6
-
Once on my old job I had several ssh sessions and I was running some tests where I frequently restarted the application... Until I entered the restart command in the terminal of the production system and shutdown the whole application. - Still gives me the creeps today, was just lucky the customer was in a break and we could remotely restart it, so probably nobody even noticed.
Now today I run a "rm -rf *" on a folder that is supposed to be local, but after some time I get suspicious because it is taking too long.. Only to discover that the mount point of the remote resource points to my "local copy". Shit.
What is next? The "delete from ...;" without where clause? Fuck, aren't you supposed to get more experienced and cautious?4 -
Long rant ahead.. so feel free to refill your cup of coffee and have a seat 🙂
It's completely useless. At least in the school I went to, the teachers were worse than useless. It's a bit of an old story that I've told quite a few times already, but I had a dispute with said teachers at some point after which I wasn't able nor willing to fully do the classes anymore.
So, just to set the stage.. le me, die-hard Linux user, and reasonably initiated in networking and security already, to the point that I really only needed half an ear to follow along with the classes, while most of the time I was just working on my own servers to pass the time instead. I noticed that the Moodle website that the school was using to do a big chunk of the course material with, wasn't TLS-secured. So whenever the class begins and everyone logs in to the Moodle website..? Yeah.. it wouldn't be hard for anyone in that class to steal everyone else's credentials, including the teacher's (as they were using the same network).
So I brought it up a few times in the first year, teacher was like "yeah yeah we'll do it at some point". Shortly before summer break I took the security teacher aside after class and mentioned it another time - please please take the opportunity to do it during summer break.
Coming back in September.. nothing happened. Maybe I needed to bring in more evidence that this is a serious issue, so I asked the security teacher: can I make a proper PoC using my machines in my home network to steal the credentials of my own Moodle account and mail a screencast to you as a private disclosure? She said "yeah sure, that's fine".
Pro tip: make the people involved sign a written contract for this!!! It'll cover your ass when they decide to be dicks.. which spoiler alert, these teachers decided they wanted to be.
So I made the PoC, mailed it to them, yada yada yada... Soon after, next class, and I noticed that my VPN server was blocked. Now I used my personal VPN server at the time mostly to access a file server at home to securely fetch documents I needed in class, without having to carry an external hard drive with me all the time. However it was also used for gateway redirection (i.e. the main purpose of commercial VPN's, le new IP for "le onenumity"). I mean for example, if some douche in that class would've decided to ARP poison the network and steal credentials, my VPN connection would've prevented that.. it was a decent workaround. But now it's for some reason causing Moodle to throw some type of 403.
Asked the teacher for routers and switches I had a class from at the time.. why is my VPN server blocked? He replied with the statement that "yeah we blocked it because you can bypass the firewall with that and watch porn in class".
Alright, fair enough. I can indeed bypass the firewall with that. But watch porn.. in class? I mean I'm a bit of an exhibitionist too, but in a fucking class!? And why right after that PoC, while I've been using that VPN connection for over a year?
Not too long after that, I prematurely left that class out of sheer frustration (I remember browsing devRant with the intent to write about it while the teacher was watching 😂), and left while looking that teacher dead in the eyes.. and never have I been that cold to someone while calling them a fucking idiot.
Shortly after I've also received an email from them in which they stated that they wanted compensation for "the disruption of good service". They actually thought that I had hacked into their servers. Security teachers, ostensibly technical people, if I may add. Never seen anyone more incompetent than those 3 motherfuckers that plotted against me to save their own asses for making such a shitty infrastructure. Regarding that mail, I not so friendly replied to them that they could settle it in court if they wanted to.. but that I already knew who would win that case. Haven't heard of them since.
So yeah. That's why I regard those expensive shitty pieces of paper as such. The only thing they prove is that someone somewhere with some unknown degree of competence confirms that you know something. I think there's far too many unknowns in there.
Nowadays I'm putting my bets on a certification from the Linux Professional Institute - a renowned and well-regarded certification body in sysadmin. Last February at FOSDEM I did half of the LPIC-1 certification exam, next year I'll do the other half. With the amount of reputation the LPI has behind it, I believe that's a far better route to go with than some random school somewhere.25 -
#include <rant>
So, in my class I have this one dude who also code, "Awesome" I thought when I first saw that he codes, he codes in c# and claims to know JavaScript.
So I hung out with him a bit on recess/break time, and I eventually found out that he is a d*ckhead
First of all, he claims that he can code ANYTHING, I mean triple A games, the machine that can find pi in 10 seconds. And I know that this isn't true, because he "can't bother" with showing me it.. whatever I think.
I also mentioned that he is a d*ck, why am i saying that? Because if you make an error he would just go, "there is supposed to be *insert random bullshit here* instead of *a typo that I made*, retard. You are honestly fucking stupid" Listen, I love when people point errors out, it really helps. But when you say it like that, it honestly makes me sad. One day, I was messing around with classes in python and he went "hey idiot! That's wrong! There is supposed to be a *random word* instead of *working code*". The funny thing is, HE DOESNT KNOW WHAT PYTHON IS. So I comment out the working code and puts in his c# bs there instead. And he just says, "it isn't working because there's a private class instead of a public class. Ehmm, excuse me? This is python, ok.
Oh and he told me I was a retard because I can't develop triple a games using pure JavaScript.
Any tips on dealing with the guy?23 -
#First
I joined a start up and worked after college hours as an intern over there. I would usually bunk my college and go to my internship. I had limited knowledge at that moment. I worked very hard over there because I wanted (still want) to gain practical knowledge.
Almost a month into it and I had to take a break from it because I had college work. Rejoined the same start up during my vacations. Worked quite a lot and learnt quite some stuff. I continued the internship after my one month vacation for another month once my college started. All this while I was not being paid, not even a little bit of allowance. But that didn't matter because I wanted to learn
Fast forward six months to November 2016. I have been placed in an MNC through my college placements. One day I get a call from this start up owner(we had become good acquaintances by then) if I was willing to work as a paid intern while I was working on the projects that the company landed (so I guess as a free-lancer) and as an unpaid intern while I was working on the company projects. I agreed. Jump to December. I have joined and started working on an Android project of this very big company.
At time point, I should inform you'll that I'm not very good at Android and that the company size is very small. Company owner plus the tech lead in one city (where I'm from) and another two full time employees in another city. Out of which one quit to start his own company apparently. The start up would primarily employ interns and provide exposure to them while getting their work done.
Back to the story. The tech lead vaguely assigns everyone their work. Everyone over here includes new interns and previous interns like me who will get paid some amount. 3-4 days into the project, the tech lead quits. The tech lead and the company owner call three of us and says that one of you will have to be a project manager for this project. And then both of them and 2 of my colleagues look at me. And I don't know what to say. I hesitate initially because it's too much responsibility but agree to it finally.
The next day I come to office and read about the project thoroughly and catch up with my colleagues about the progress. The entire day I'm panicking about what I'm going to do. In the evening, my boss tells me that we have to go for a meeting with the client for whom we are doing this project. At this moment, the shit out of me has been scared. Mostly because I don't know what the fuck am I going to do over there apart from being stupid and asking dumb questions. So we reach the client's office and wait for him. The entire time I'm thinking to myself that I'm going to drown this company by opening my mouth. Surprisingly, all the questions that I asked seemed legitimate and I asked a lot of questions. And so I didn't drown the company after all...phew!
It's been more than a week. And holy fuck! What a pain it is to manage people. Half of my time is spent on updating excel sheet about their progress, where are they stuck and what is needed. And the other half about thinking what the fuck am I doing or how am I gonna do it.
So to sum up, intern-turned-freelancer-turned-project manager who has no idea what the fuck is going on. Seems pretty crazy, don't you think.6 -
Story time...of how HR actually did its job of taking care of employees.
So, I started at this new gig on December, the boss was all sunshine and promise (big red flag now to think back). Then as time passed, he started seeming...off. To a point I considered quitting my boss just after 2 months of working for him.
Then one morning we had a project meeting. He started verbally abusing me, calling me incompetent, bashing my work (of which he knew ~nothing, his experience 30 years back). Earlier in the week he demanded me to make a presentation which he in this meeting told is complete bullshit without actually reading any of it. He told me 'I am your boss, you do exactly as I say' when I told him something is technologically impossible in the situation we're in. He *actually* told me to break the law with data protection...
This was like wtf dude. That's not how you manage people. So, I made an HR ticket about his behaviour. They were *shocked* and escalated the matter.
Long story short: he was a bully, he's getting fired, my team has a new manager. My workplace actually appreciates my expertise.
Bad thing in this is, now I actually need to continue doing my job. ;_;8 -
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 -
Worst hack/attack I had to deal with?
Worst, or funniest. A partnership with a Canadian company got turned upside down and our company decided to 'part ways' by simply not returning his phone calls/emails, etc. A big 'jerk move' IMO, but all I was responsible for was a web portal into our system (submitting orders, inventory, etc).
After the separation, I removed the login permissions, but the ex-partner system was set up to 'ping' our site for various updates and we were logging the failed login attempts, maybe 5 a day or so. Our network admin got tired of seeing that error in his logs and reached out to the VP (responsible for the 'break up') and requested he tell the partner their system is still trying to login and stop it. Couple of days later, we were getting random 300, 500, 1000 failed login attempts (causing automated emails to notify that there was a problem). The partner knew that we were likely getting alerted, and kept up the barage. When alerts get high enough, they are sent to the IT-VP, which gets a whole bunch of people involved.
VP-Marketing: "Why are you allowing them into our system?! Cut them off, NOW!"
Me: "I'm not letting them in, I'm stopping them, hence the login error."
VP-Marketing: "That jackass said he will keep trying to get into our system unless we pay him $10,000. Just turn those machines off!"
VP-IT : "We can't. They serve our other international partners."
<slams hand on table>
VP-Marketing: "I don't fucking believe this! How the fuck did you let this happen!?"
VP-IT: "Yes, you shouldn't have allowed the partner into our system to begin with. What are you going to do to fix this situation?"
Me: "Um, we've been testing for months already went live some time ago. I didn't know you defaulted on the contract until last week. 'Jake' is likely running a script. He'll get bored of doing that and in a couple of weeks, he'll stop. I say lets ignore him. This really a network problem, not a coding problem."
IT-MGR: "Now..now...lets not make excuses and point fingers. It's time to fix your code."
IT-VP: "I agree. We're not going to let anyone blackmail us. Make it happen."
So I figure out the partner's IP address, and hard-code the value in my service so it doesn't log the login failure (if IP = '10.50.etc and so on' major hack job). That worked for a couple of days, then (I suspect) the ISP re-assigned a new IP and the errors started up again.
After a few angry emails from the 'powers-that-be', our network admin stops by my desk.
D: "Dude, I'm sorry, I've been so busy. I just heard and I wished they had told me what was going on. I'm going to block his entire domain and send a request to the ISP to shut him down. This was my problem to fix, you should have never been involved."
After 'D' worked his mojo, the errors stopped.
Month later, 'D' gave me an update. He was still logging the traffic from the partner's system (the ISP wanted extensive logs to prove the customer was abusing their service) and like magic one day, it all stopped. ~2 weeks after the 'break up'.8 -
The amount of much political correctness in the dev community just pisses me off sometimes.
I've watched "Use the right tool / language for the job" has become *THE* excuse for shitty tools and languages.
Case in point -- JavaScript. If you want to make a website that interacts with the end user, the right tool is JavaScript. But that's because IT'S THE ONLY TOOL. Does that make it a *good* tool?
HELL NO.
/midranttimeout
Brendan Eich, I forgive you. You had 10 days and a corporation on your case.
That's not saying JavaScript doesn't have some good things in it. It does. But "Javascript the good parts" is a fucking thin book.
Sure, some amazing things have been written in JavaScript. Great communities have coalesced around this cancer.
BUT THATS IN SPITE OF JAVASCRIPT, NOT BECAUSE OF IT. AS A LANGAUGE IT'S STILL A STEAMING PILE OF DOGSHIT.
A master can draw great art with a shitty piece of charcoal. That doesn't make charcoal THE BEST DRAWING TOOL EVARRR. It's just a testament to the master's craft.
If you started your programming journey with JavaScript, do expand your horizons.
Break free from Stockholm's syndrome.
Discard your cognitive dissonance.
See JavaScript for what it is -- a shitty language everyone was forced to use.
PS: Don't even get me started on Java ...24 -
Inspired by the comment I posted on another rant.
My uni decided to be one of those progressive tech schools that start people with Python. Mind you, I had prepared myself with studying as much as I could with math and programming by automating things and similar stuff in our computer when I was at my previous job, so I had a better idea as to what i could expect.
Introduction to computer science and programming with Python or some shit like that was the name of the class, and the instructor was a fat short ugly woman with a horrible attitude AND a phd in math, not comp sci and barely any industrial knowledge of the field.
She gave us the "a lot of you will fail" speech, which to me is code for "I suck and have no clue what I am doing"
One assignment involved, as per the requirements the use of switch cases. Now, unless someo knew came about, Python does not have swio cases. Me and a couple of less newbie like students tried to point out that switch cases were non existent and that her switch case example was in Javascript, not python, curly braces and everything. She told us to make it work.
We thought that she meant using a function with a dictionary and we pass the key and shit, a simple way of emulating the switch case.
NOPE she took points and insisted that she meant the example. We continuously pointed out that her example was in JS and that at the time Python did not have switch cases. The nasty woman laughed out and said that she didn't expect anyone to finish the assignment with full points.
Out of 100 points everyone got a 70. No problem. Wrote a detailed letter to the dean. Dean replied and talked to her (copied her in the email because fuck you bitch) and my grade was pulled up to full mark.
Every other class I had with her she did not question me. Which was only another class on some other shit I can't remember.
Teachers are what make or break a degree program. What make or break the experience, going to college is putting too much faith on people. If you ask me, trade certification, rigorous training is the future of computer science, or any field really. Rather than spending 4+ years studying a whoooole lotta shit for someone to focus on one field and never leave it.17 -
Coworker: "Yeah, I know the code module is 25K lines of code, but don't try to break it up. At some point I realized that they just have to be that big."
Me: 😦3 -
I am DONE with this woman.
Background: we're a team of 3 developers and I'm the junior in this team and I've been in this shit for a year now. 2 months ago the team leader left for another project and I had to stand in for him in every responsibility against the PM and other teams.
Now I not only had to endure this insecure woman but I was also supposed to work with her! Fast-forward to today, the team leader is back and I thought I could put my headphones on and work peacefully at last.
But no!
I've found out she's sent a faulty code to production - no big deal - and said that over chat (although she's sitting right behind me):
Me: We need to fix this.
Her: What?
Me: *giving some details about the issue*
Her: Your attitude is important when you ask me to do something. Whenever you're writing to me you're typing on your keyboard like you're going to break it on my head.
*me not knowing what to say at this point because we had something stupid like this before*
Me: So you're offended by the sound my keyboard makes? (I have mx brown switches by the way and they're not even loud)
Her: No you're typing too fast when you're writing to me. The sound echoes in the office.
...
Can you fucking believe this shit? I hate people that think they can educate me but have no idea how to rationally respond to situations and take responsibility! I didn't even say anything!
And she's been saying to me she hadn't had a problem with any other people for gazillion years who knows how long and why would she cause a problem now! And thinks I am the problem, fuck YOU!
Since you don't like receiving orders why hadn't you taken the place when the fucking guy went for another project but I had to take all the responsibility? I know why you fucking entitled bitch.
Because you HAD NO IDEA AND YOU STILL DON'T.
So shut the fuck up and do as I say.
Kind regards9 -
Hey Root, remember that super high-priority ticket that we ignored for five months before demanding you rewrite it a specific way in one day?
Yeah, the new approach we made you use broke the expected usecases, and now the page is completely useless to the support team and they're freaking out. Drop everything you're doing and go fix it! Code-complete for this release is tonight! -- This right after "impacting our business flow" while being collapsed on the fucking floor.
Jesus FUCKING christ, what the fuck is wrong with these people?
If I dropped the ball on a high-priority ticket for two weeks, I'd get fired, let alone for five fucking months.
If I was a manager and demanded a one-day rewrite I can only imagine the amount of chewing out I'd receive, especially on something high-priority.
And let's not forget product ownership: imagine if I screwed up feature planning for someone so badly I made them break a support tool in production. I'd never hear the end of it.
Fucking double standards.
And while I'm at it. Some of the code I've seen in this codebase is awful. Uncommented spaghetti, or an unreadable mess with single-letter variables, super-tightly coupled modules so updates are nearly impossible, typos in freaking constants added across sixty+ files, obviously-incorrect comments, ... . I'll have to start posting snippets to show them off. But could I get away with any of it? ha. Hell no. My code must be absolutely perfect. I hear about any and every flaw, doesn't matter how minor, and nothing can go out until everything is just so.
Hell, I even hear about flaws in other peoples' code during my code reviews. Why? Because I should have fixed it, that's why. But if I do, I get yelled at for "muddying the waters."
Just. JESUS FUCKING CHRIST.
It's like playing a shell game where no matter which shell I pick (or point to their goddamn sleeve where they're clearly hiding it), I get insulted for being so consistently useless, and god damn, how can I never find the fucking pea or follow the damned rules? I'm so terrible and this is why "nobody trusts me." Fuck you.
I'll tell you why I can't find your damned pea: IT'S RATTLING INSIDE YOUR FUCKING HEADS, you ASSHOLE FUCKING IMBECILES.
That's right: one pea among the lot of them.
goddamn I am fucking pissed off.rant drop everything and rewrite your rewrite oopsie someone else made a mistakey double standards shell game root can do no right root swears oh my8 -
Found an issue where my double click event was not functioning correctly, so I added a break point and then it diddnt work at all... its taken me an hour to realise that if I breakpoint the click event, of course I'm never going to fire the double click event...2
-
Ticket: This API param doesn’t work.
Ticket Size: 1 story point / extra small baby fries
Found the issue almost immediately: some fucked up date math. Or at least backwards as hell. I don’t know. I don’t care.
There’s no spec for it, and writing it is a bitch. None of the API test helpers are designed for end-to-end tests. Why? I don’t care. They’re stupid. They all just break. And the API does weird shit like fucking redirects to an HTML page. Which is… i don’t know. They mix up API and embedded sessions a bunch, so who knows if this is right or broken as fuck.
I can’t deal with this shit anymore.
It’s just mountains of fucking garbage. Every time I dig into anything, anywhere in this codebase, or, let’s be honest: the entire goddamn company, it’s just more fucking garbage. The code is garbage. The specs are garbage. The people are garbage. The woke crap they love so much is garbage. The industry is garbage. The macs we’re required to use are garbage. The strongly-encouraged editor is garbage. The new hires are garbage. The legendary devs are garbage. The VPN is garbage — still haven’t gotten it to fucking work outside of fucking Safari, which is also garbage. The meetings are garbage. The “culture” is garbage. The “raises” are garbage. The thirty-step dance ceremony for each ticket is garbage. The literal fucking garbage at the office is the best part of the entire goddamn landfill.
And yeah, over half of the code that’s been giving me problems on this ticket was written by the same dev: The legendary golden garbage boy himself.
Just.
Fucking hell.
I’m going back to looking for work again. I can’t do this anymore.10 -
So we ordered a piece of software from external software house becouse I was low on time and we needed it asap.
So. Long story short, their software was bugged as hell, they deny all the bugs and they have their BDD that they done and anything we say about it like "feature XYZ is broken on firefox" they will deny it "becouse it wasn't on BDD" or "let's get on call" (in which +- 6-7 people participate from their side and we of course have to pay them for this...)
So they fixed like 20% of bugs (mostly trivials/minors) Application is fairly small scope. You have integration with like 3 endpoints on arbitary API, user registration/login, few things to do in database (mainly math running from cron).
They done it in ASP so I don't know the language and enviroment so can't just fix it myself.
2 days ago (monday) they annoyed me to point where I just started to break things. For starters I found that every numeric input is vunrable to integer overflow (which is blocker). I figured most of fields are purefect opportunity to XSS (but I didn't bother to do JS... anything but not JS...). I figured I can embed into my name/surname/phone (none validated) anything in HTML...
So for now we have around 25 bugs, around 15 of them are blockers.
They figured it's somehow our fault that it's bugged and decided to do demo with us to show off how perfectly it works. I'm happy to break their demos. I figured I will register bunch users that have name - image with fixed/absolute position top:0;left:0 width/height 100% - this will effectively brick admin panel
Also I figured I can do some addotional sounds in background becouse why not. And I just dont know what to put in. It links to my server for now so I can freely change content of bricked admin panel.
I have curl's ready to execute in case they reset database.
I can put in GIFs or heck, even videos, dosen't really matter. Framework escapes some things for them so at least that. But audio/image/video works.
Now I have 2 questions:
- what image + audio combo will work the best (of course we need to keep it civil). Im thinking finding some meme with bugs or maybe nuclear logo image with some siren sound
- am I evil person?
Edit:
I havent stated this clearly:
"There is no BDD that describes that if user inserts malicious input server should deny it" - that's almost literally what we get from them....11 -
!rant
Breaking point in System Architecture. The point where you define it is ok for the system to break if you user doesn't meets the expected threshold of intellect.
In plain words, you say "F**K it, if someone is that stupid, let the system go down"
They don't teach this in college.9 -
So today I realized that Im not happy.
When I was a kid I wanted to do many things because I had time and energy but I had no money. Now that Im an adult and I have the money, I have no energy and no will power to try and have personal life in these few hours left of my day. I spend 9 hours at work everyday and totally 1hr 30min is wasted on commuting.
I spent 4 years in uni between lectures and working on my side projects, and I really believed that after uni I will get a job and my life work balance will improve.
After uni I spent 2 years working abroad in 3 jobs at 3 countries. I work as android dev and now Im making a really decent salary.
However Im not happy at all. I realized that life is not about the money. Im changing countries like socks and dont even feel the need to socialize or enjoy my life anymore. Im european and these other eu countries are not that different at all. It came to a point where relationships are meaningless to me. I became an office drone who cares only about work and outside of work I care only about my projects and more work.
At this point im only 25 years old with around 2 years of experience and money is really good, but fuck it Im so tired of being an emigrant and having no stability in life. Im so drained. I spent past 6 years (4 in uni combined with side projects and 2 years working in 3 jobs in different countriee) working my ass off and lying to myself that after the next big thing Im gonna take a break and enjoy life. But its never enough. I dont want to hit 30s or 40s and realize that I wasted my life on pursuing money and didnt get to enjoy life..
Im really considering taking a 6-12 months vacation. I need to find myself. Probably going back to my own country. Just learn how to enjoy life, attend workshops, get to know new city area, meet new people, do some interesting hobbies. Maybe do a little freelance (max 10hrs a week).
Im tired of feeling like I need to make as much money as I can and learn as much about my work as I can. Its not rewarding because its never enough.
Whats the point in that money if I cant enjoy it?4 -
Alright, this my fucking rant right here. Distraction? This whole company is a distraction! Boss decided to throw us all in an open work environment doing jobs that require careful concentration. Straight outta college I'm getting handed vague ideas, (make a desktop app that helps our customers put data on the internet, make an iPhone app) with out so much as an inkling of what technologies to use, just make it work.
Ok I will but when you hit a roadblock with very little resources to draw in it's hard to stay focused.
On top of that since I worked in support for a year I'm our senior support person! But sometimes support just doesn't use their brains and I'm using my time to solve very basic problems.
That brings me to my next point, the goddamn piece of shit that is our telephone. Fuck that thing when it rings it's never good. Moreover, since I don't want to get roasted for not being responsive I have the motherfucker forward to my personal cell. So I answer every fucking call and I get so many spam calls!
Not to mention I'm mainly running the hardware show around here. Shits broke I'm the one fixing it. Need new shit I'm putting the order together.
Tried to get a new guy to be the sys admin, ordered a 6th gen board with a 7th gen proc, had to pull 3 machines apart to get that sorted. Then he left bc family issues, and has been gone for weeks.
The other devs are also slam up busy, and the main product is about 15 people's piss on a plate of garb age spaghetti. (I got a lot of shit going on but at least I'm the only one pissing in my spaghetti) it's a constant run around if who does what with a code first plan later mentality causing confusion and delay.
Nobody wants to help anybody because they are also annoyed with this setup and are getting bitched at by customers or management.
Sales is mostly composed of a bunch of crackhead yes men and women who just want a commission and only half know the shit we sell and have sold 15 new features that had not been discussed. But management always says make it happen. In what priority? It's all a priority they say! Wtf.
So yea, then it brings me to me, dealing with this much chaos at work makes it seem like a high amount of chaos in my life is normal. I'm just now learning to control this.
I've had to do a lot of growing up as a person and as a developer. I've went from being the most junior to about the 3rd most seniors and I've no doubt my efforts have contributed to the growth of the company.
I'm a big believer in coding flow, and that it takes at least 15 mins to get in that flow and about 5 seconds to break it. There is no do not disturb on the company chat, everything always on fire it seems.
So fuck a lot of this, but I've done the research and where I'm at is the best opportunity in a 100 mile radius. So I am thankful for this job. Plus I usually win the horror story contest.
So TL;DR the biggest distraction is every fucking thing in this god forsaken place.5 -
First day back. I am a junior Dev a year and a half of work.
I get in after Christmas break and find people standing around my desk turns out all senior staff (except CEO and PM who are both non-technical ) are away and an email. Basically saying it's up to me for the next week to manage people.
FU&£&# what the heck I don't have a clue what I am doing and I can't mange if I could I would be a manager pays better. So I designate to people took me an hour to figure out what people can actually get on with. Then PM wants a break down of the plan. Then meeting with CEO over the importance of these projects and told 'politely' shortest deadline to date most work, get it done the company depends on these projects if you don't well it would be the end of you.
Get back to my desk people need work I should be getting on with to do theirs but I have been busy in silly meetings and litrually every 5 mins get nagged 'have I done it yet'. But as I am about done they discover what they should have been working on is doable without my work. I don't shake but at one point today I was shaking so much with nerves I couldn't type. Had a very short lunch and stayed on late sorting people problems out. (Thankfully the even more junior people are nice and 1 did help me at one point today I'm so great full for the help)
I'm a junior no training in the technologies I work with not even before starting the job. £3 million+ worth of projects and possible future client resting on my shoulders... (Thankfully the real project lead and senior members are back next week although won't be long left till deadline) Wtf ...
Anyone got a job going I want out!5 -
The company I am currently working for is partnering with another startup. Nothing special about that. We should integrate their API into our system. I wasn't involved in the process when it came to checking there API and if it would work with our Systems. The Person who did that already left the company so I was left behind with some internal documentation. In that Documentation is already written that API is basically trash....
After I started integrating the API I found more and more flaws in the design. They are not sending any responses that would help, when a param is missing or the authentication isn't correct, only 500's . I got some documentation from the partner company so i thought it will be fine as long as the Documentation would be accurate. Turns out the documentation isn't even close to be up to date. Wrong content types wrong endpoints, wrong naming. Basically we could not work with that. We shortly contacted the partner Company. After a few WEEKS we got a response that they updated the Documentation what was right but still not everything was correct. At this point I lost my mind. I researched a little bit about them, the company is founded from 2 young people who basically came strait out of the University and doest have any experience or idea how to build an API. I investigated a little bit there websites.
They have an Admin panel on the base domain from their API but it is only accessible via HTTP. Like WTF , They use HTTP for an Admin Panel this must be a joke right?
They use Cloudflare without a HTTP to HTTPS redirection ???
I really had not that much time to research in there website but if I find these things in 5 minutes I don't want to know what I can find in like an hour.
At the end we will still use them as partners because surprise surprise our company already sold the product that uses their API.
I know that I will be the person who has to help fixing this shit when it breaks and it will break 1000% JUST FUCK THIS SHIT. FUCK THE PARTNER COMPANY. FUCK THERE API.2 -
I’m a team lead in the tech team, myself and another team lead manage the on call processes for the department, so when stuff breaks we need to fix it. I assume there is sufficient documentation available for me to fix a process that is not mine.
one of the other managers processes breaks. He’s on annual leave and is away for another week. I attempt to fix the process. No documentation. What do i do?
I go to my manager the next day and tell her the process is broken and I can’t fix it because there’s no documentation and I don’t know what the full impacts are. She agreed we should leave it until he comes back from AL.
He comes back a week later. I tell him the process is broken and it’s been failing since he went on AL.
Him: we had a handover before I went on holiday
Me: no, you showed me where the ‘documentation’ was. Said documentation is not defined enough and is out of date. I didn’t want to break it further by trying to repair it when it’s not completely critical
Him: but it is critical, it has to run every day
Me: so why doesn’t it say that in the documentation?
Him: ............
Me: can you fix it please
Him: no, I’ve got too much to do having just come back from holiday
Me: more critical that a process that has to run EVERY DAY and has been failing for the past 10 DAYS??
Him: I’ll see if I have time
2 hours later...
Him: Lets put in some time for handover so you can understand the process. Is an hour long enough?
Me: I don’t know, you tell me, it’s your process, you know what’s involved and how long it should take to explain
Him: well is an hour long enough?
Me: I don’t know, it takes however long it takes you to explain it
Him: I’m asking you
...........
At this point I’m getting more and more angry, how can you not know how long your process is gonna take to explain when you’re the one that wrote it?! I fully well know that it’s gonna take longer than an hour because it’s an SSIS package that looks like a plate of spaghetti, you spend 15 minutes working out what box flows to where before even looking at any SQL, and he’s still asking me how long it’s gonna take and distracting me from my ACTUAL critical work
Man is a waste of space, so quick to give you work that isn’t his but never takes responsibility for his own... honestly have no clue whatsoever how he became a manager....
This rant doesn’t seem like much reading it back but I swear it’s the last in a looooonnngggg like of his fuck ups that other people have had to deal with 🙄🙄3 -
Alright, i'm fucking done.
Fedora: Packages are self-referencial, using the system is like sprinting through a fucking minefield.
Linux Mint: "lol just don't update packages on the repo because shit can't break if it never updates! Don't add custom repos either or we'll just fucking break your PC."
Debian Raw: "We have all of 5 packages on our repos and GPG is fucking broken so you can't add more repos."
Arch: "Have fun modifying the boot disk for 30 hours so it'll boot, and let's tack on another 30 to make it install properly."
Gentoo: "LOL what is swap. Let's just pipe garbage into this partition as fast as the disk will let us for literally no reason. I'm sure you can still use the system for all of 30 minutes, at which point your SSD will give out. No big deal..."
when did Linux go to shit?
Windows isn't any better without billions of tweaks and then a build upgrade (in that order specific) to make it run properly.
Nor is OSX, as it runs on the model of "lol gotta hack your own PC to run custom unapproved binaries!"
Fuck it.
I'm installing DOS.52 -
What.. the actual... fuuuuuck?!
Browsing through changes on TFS (yeah, yeah boo me for using TFS instead of git if you like, I don't care, most people use/prefer TFS here, so I conform 'to the standards'..)
Anyhow, going through changes, looking for the one where some comment appeared..
'a wild comment appeared'.. tadaaah!
Checked the rest of changes.. Hm.. Someone did a validity check.. that returns the 'false' if not passed.
// OK, great! They are finally testing their shit and fixing stuff..
But apparently then they decided it is OK to do all the shit anyways.. so WTF?!
Why even bother validating it?! Oh yeah, forgot... cuz in case it returned false YOU WERE NOT SUPPOSED TO LET SOME STUFF HAPPEN!! But they weren't assigned with that exact task I guess..
TO DO:
- do the validation algo // fml, not going into how fucked up that was written..but it was horrible!
- do validity check where appropriate/needed
- test validity check and that it doesn't break functionality
+ check if the validation actually logically works?! nope, not on my to do list, not my job..
All done, better not actually do something that requires you to think.. :\
How the fuck that happened?! How can one person be assigned to check if something is stupid/wrong?! and when checking (&confirming) still lets the customer do that shit anyways?! What's the point?! O.O13 -
Chrome, Firefox, and yes even you Opera, Falkon, Midori and Luakit. We need to talk, and all readers should grab a seat and prepare for some reality checks when their favorite web browsers are in this list.
I've tried literally all of them, in search for a lightweight (read: not ridiculously bloated) web browser. None of them fit the bill.
Yes Midori, you get a couple of bonus points for being the most lightweight. Luakit however.. as much as I like vim in my terminal, I do not want it in a graphical application. Not to mention that just like all the others you just use webkit2gtk, and therefore are just as bloated as all the others. Lightweight my ass! But programmable with Lua, woo! Not like Selenium, Chrome headless, ... does that for any browser. And that's it for the unique features as far as I'm concerned. One is slow, single-threaded and lightweight-ish (Midori) and another has vim keybindings in an application that shouldn't (Luakit).
Pretty much all of them use webkit2gtk as their engine, and pretty much all of them launch a separate process for each tab. People say this is more secure, but I have serious doubts about that. You're still running all these processes as the same user, and they all have full access to the X server they run under (this is also a criticism against user separation on a single X session in general). The only thing it protects against is a website crashing the browser, where only that tab and its process would go down. Which.. you know.. should a webpage even be able to do that?
But what annoys me the most is the sheer amount of memory that all of these take. With all due respect all of you browsers, I am not quite prepared to give 8 fucking gigabytes - half the memory in this whole box! - just for a dozen or so tabs. I shouldn't have to move my web browser to another lesser used 16GB box, just to prevent this one from going into fucking swap from a dozen tabs. And before someone has a go at the add-ons, there's 4 installed and that's it. None of them are even close to this complete and utter memory clusterfuck. It's the process separation. Each process consumes half a GB of memory, and there's around a dozen of them in a usual browsing session. THAT is the real problem. And I want to get rid of it.
Browsers are at their pinnacle of fucked up in my opinion, literally to the point where I'm seriously considering elinks. Being a sysadmin, I already live my daily life in terminals anyway. As such I also do have resources. But because of that I also associate every process with its cost to run it, in terms of resources required. Web browsers are easily at the top of the list.
I want to put 8GB into perspective. You can store nearly 2 entire DVD movies in that memory. However media players used to play them (such as SMPlayer) obviously don't do that. They use 60-80MB on average to play the whole movie. They also require far less processing power than YouTube in a web browser does, even when you download that exact same video with youtube-dl (either streamed within the media player or externally). That is what an application should be.
Let's talk a bit about these "complicated" websites as well. I hate to break it to you framework web devs, but you're a dime a dozen. The competition is high between web devs for that exact reason. And websites are not complicated. The document itself is plain old HTML, yes even if your framework converts to it in the background. That's the skeleton of your document, where I would draw a parallel with documents in office suites that are more or less written in XML. CSS.. oh yes, markup. Embolden that shit, yes please! And JavaScript.. oh yes, that pile of shit that's been designed in half a day, and has a framework called fucking isEven (which does exactly what it says on the tin, modulo 2 be damned). Fancy some macros in your text editor? Yes, same shit, different pile.
Imagine your text editor being as bloated as a web browser. Imagine it being prone to crashing tabs like a web browser. Imagine it being so ridiculously slow to get anything done in your productivity suite. But it's just the usual with web browsers, isn't it? Maybe Gopher wasn't such a bad idea after all... Oh and give me another update where I have to restart the browser when I commit the heinous act of opening another tab, just because you had to update your fucking CA certs again. Yes please!19 -
Making electronics more difficult to repair with security fasteners and ultrasonically welded plastic nightmares and what have you.. what's the point? The argument from manufacturers is that "users don't want to get in there anyway". But, it's not like even if they could, they'd want to, right? Which type of person that doesn't know electronics very well and has an interest in repairing it would go and look at a board, and say "this is how it works, this and that is broken and this is how it should be repaired"? Not many users can repair their own devices regardless. So why? To preserve IP? Not like the Chinese bootleggers care about that. To preserve sales? Users can't repair their stuff anyway. To keep those who want to peek inside out, just for the hell of it? Anyone determined enough will be willing to break it in the process anyway.6
-
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 -
!rant
TLDR; Lost passion after a few years, wasted a year, went on vacation without really any technology, found my passion and am excited as hell for 2019.
After programming for nearly 5 years, I’ve hit the point of not wanting to program anymore. I’ve burnt myself out, and haven’t had a vacation in 8+ years so we’ve finally decided to take one. I’m not going to say it’s a full blown vacation, but a semi-vacation since it’s with my parents also so I do have to do a few things I’d prefer not to such as meeting relatives.
I didn’t have the motivation to work on any new projects, finish any projects I actually enjoyed, I just did a few side projects for friends that took me anywhere from 5 minutes to 30 minutes every few weeks. In general this year has been garbage in development terms, I’ve lost passion. It felt like a chore, I didn’t find the entertainment I once did.
I’ve been away from technology for about 2 weeks now, and have less than a week left before I fly back and I’m excited as hell. During this break away from technology (with the exception of browsing devRant once in a while), has me excited to work on many projects and actually start learning and improving my skills. I’ve actually gained the motivation to work on 2 projects that have been planned for nearly 2 years now, I’ve noted down ideas for them, made diagrams, etc, just never had the passion to develop them. 2019 is going to be one hell of a year, since I get back almost at the end of November, and December I have a few business meetings and University exams that I have to prepare for. Excited to see these projects through, one is going to be for the hell of it, just been a passion project I’ve wanted to do for years now. The other project is actually a project for one of my sub-companies that hasn’t officially released since I didn’t have the passion to work on it. (Not going to go into full detail yet about the companies/projects, going to save that for the future)
Alongside that, I’m excited since my main company that is totally unrelated to technology, is set to do some massive moves during 2019 also. Looking forward to that, and being able to launch my dream company (the sub-company I mentioned before).
Time for sleep now, goodnight! (Wrote this after a few drinks and in the middle of the night, hopefully it’s not full blown garbage)2 -
I hate time.
Yes, that dimension which unidirectionally rushes by and makes us miss deadlines.
Also yes, that object in most programming languages which chokes to death on formatting conversions, timezones, DST transitions and leap seconds.
But above all, I hate doing chronological things from the point of view of code, because it always involves scheduling and polling of some kind, through cron jobs and queues with workers.
When the web of actions dependent on predicted future and passed past events becomes complicated, the queries become heavy... and with slow queries, queues might lock or get delayed just a little bit...
So you start caching things in faster places, figure out ways to predict worker/thread priorities and improve scheduling algorithms.
But then you start worrying about cache warming and cascading, about hashing results and flushing data, about keeping all those truths in sync...
I had a nightmare last night.
I was a watchmaker, and I had to fix a giant ticking watch, forced to run like a mouse while poking at gears.
I fucking need a break. But time ticks on...2 -
that moment when a (non dev) colleague, understands how a single character (in the entry point) can break the whole website
next time i'll explain him why websites like devrant exist.. -
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 -
!rant
I've lost all fucking motivation to do anything at the moment.
Fuck not even gaming is much fun anymore.
Also amazing that I have so little time on Mondays that I can't even eat properly.
Literally living on caffeine, a spoonful of, like, porridge and water on Mondays.
And of course the nice bistro is closed on Mondays.
Then there is that motherfucker of person at school that just randomly starts sharing weird ass details with you and promptly started to break out in tears when she failed maths today.
Like fucking hell, then for some reason the same person fucks up everything in her volleyball group by literally doing nothing and complains when she gets hit by a fucking volleyball, like, she doesn't even attempt to dodge it catch it.
So much for that fuckery.
Then there's these little brats that just completely play asshole and are being jackasses to everyone including upperclassmen and teachers.
Grab em by the throat and fucking put them in a toilet.
Literally the reason why our school is generally known as the 'Drecksloch', literally dirt hole.
The fucking volume is driving me batshit insane in school to the point where I just start yelling at people.
Fucking kids, it literally doesn't cost you shit to just shut the fuck up.
Okay, vent over.
Sorry for that.12 -
Who am I?
Some of you, because of the hyperbolic, outrageous, trollish, and often self-satirical nature of my posts, might doubt me. Thats completely relatable.
Heres the truth:
I was diagnosed in childhood with ADHD, fucking everyone, every male, these days is diagnosed with that. I was diagnosed bipolar. Hell anyone reading my posts could see that from a mile away. I was diagnosed on the borderline personality spectrum. Yeah, I could see that.
I was tested. They said I was in the 98th percentile for clerical ability, not extraordinary but pretty good, mathematical ability a little higher than that. My SAT was 1491. Not yale material, but I coulda been someone.
Over the years I studied a LOT of politics and read a metric fuckton of books. (40+ books over the course of three years).
I predicted every single presidential election since bush juniors second election. Three supreme court picks. Senatorial elections. Congresional elections. More than that.
I have a better analysis track record than some of the multidecade analysts sitting in the fucking NSA.
No I am not shitting you. No I am not exaggerating.
It's about the only claim to fame I get to legitimately make.
People ask me, "then why aren't you famous?"
How do you know I'm not.
Look I'm gonna tell you my actual name.
My real name is Lawrence B. Lindsey
Okay, I'm bullshitting for fun. But words I have written on alt twitter accounts have legitimately come out of presidential hopeful's mouths. No, this I am *not* bullshitting you about.
Imagine that. A guy who lived in his parents attic for five years, writing words that came out of presidential candidates mouths.
At one time I was about as popular and influential as that fuckboy catturd.
yes, really. No I am not fucking joking.
Under normal conditions I wouldn't talk about this or reveal it, because who the fuck cares? I'm just some dude on the internet, drunk, both on alcohol, and the pseudo-anonymous equivalent of bragging rights.
You know how many women I turned down because I could? You know how fucking drunk I am? They say a drunk man's words are a sober man's thoughts. Well, I'm not usually honest like this because the internet is full of false braggarts, and you tell people the truth and they don't fucking believe you.
I swear, it seems like I made some faustian bargain at some time, and can achieve no fame or lasting wealth in my life--to save my life.
Shit, I was talking to a chinese women who ran a bank in china (yes, really), who advised me to buy into bitcoin early on. Didn't have the money to. Woulda been a fucking millionaire if I did.
*Non-obvious* Ideas that major corporations are now persuing? Yeah those were sitting in my card index since the early 2000s.
I helped two people build and sell businesses. One for me tens of thousands. Another for millions. Yes, really. Got zero, and I mean, *zero* credit for it.
Point is, doesn't matter how famous you are, or coulda been, Doesn't matter the ideas you have, or had.
The world doesn't promote runners-up, or hasbeens, or wannabes, or could-bes.
What matters is execution.
If you're wandering through life, wondering when you're lucky break will be, stop. You have to realize, you make your own luck. Recognize the difference between what you can control, and what you can, and work on promoting your own ideas or business or values, instead of other people's dreams.
And for those wondering, yes I am drunk, and no, I ain't fucking kidding you in anything I wrote here.
The most important lesson I learned is this:
First work on your own success, before you work on the success of others.
p.s.
I give surprisingly good advice for someone who doesn't benchmark well on traditional measures of success. I know, even I was shocked when I looked at the statistics.32 -
Static HTML pages are better than "web apps".
Static HTML pages are more lightweight and destroy "web apps" in performance, and also have superior compatibility. I see pretty much no benefit in a "web app" over a static HTML page. "Web apps" appear like an overhyped trend that is empty inside.
During my web browsing experience, static HTML pages have consistently loaded faster and more reliably, since the browser is immediately served with content useful for consumption, whereas on JavaScript-based web "apps", the useful content comes in **last**, after the browser has worked its way through a pile of script.
For example, an average-sized Wikipedia article (30 KB wikitext) appears on screen in roughly two seconds, since MediaWiki uses static HTML. Everipedia, in comparison, is a ReactJS app. Guess how long that one needs. Upwards of three times as long!
Making a page JavaScript-based also makes it fragile. If an exception occurs in the JavaScript, the user might end up with a blank page or an endless splash screen, whereas static HTML-based pages still show useful content.
The legacy (2014-2020) HTML-based Twitter.com loaded a user profile in under four seconds. The new react-based web app not only takes twice as long, but sometimes fails to load at all, showing the error "Oops something went wrong! But don't fret – it's not your fault." to be displayed. This could not happen on a static HTML page.
The new JavaScript-based "polymer" YouTube front end that is default since August 2017 also loads slower. While the earlier HTML-based one was already playing the video, the new one has just reached its oh-so-fancy skeleton screen.
It would once have been unthinkable to have a website that does not work at all without JavaScript, but now, pretty much all popular social media sites are JavaScript-dependent. The last time one could view Twitter without JavaScript and tweet from devices with non-sophisticated browsers like Nintendo 3DS was December 2020, when they got rid of the lightweight "M2" mobile website.
Sometimes, web developers break a site in older browser versions by using a JavaScript feature that they do not support, or using a dependency (like Plyr.js) that breaks the site. Static HTML is immune against this failure.
Static HTML pages also let users maximize speed and battery life by deactivating JavaScript. This obviously will disable more sophisticated site features, but the core part, the text, is ready for consumption.
Not to mention, single-page sites and fancy animations can be implemented with JavaScript on top of static HTML, as GitHub.com and the 2018 Reddit redesign do, and Twitter's 2014-2020 desktop front end did.
From the beginning, JavaScript was intended as a tool to complement, not to replace HTML and CSS. It appears to me that the sole "benefit" of having a "web app" is that it appears slightly more "modern" and distinguished from classic web sites due to use of splash screens and lack of the browser's loading animation when navigating, while having oh-so-fancy loading animations and skeleton screens inside the website. Sorry, I prefer seeing content quickly over the app-like appearance of fancy loading screens.
Arguably, another supposed benefit of "web apps" is that there is no blank page when navigating between pages, but in pretty much all major browsers of the last five years, the last page observably remains on screen until the next navigated page is rendered sufficiently for viewing. This is also known as "paint holding".
On any site, whenever I am greeted with content, I feel pleased. Whenever I am greeted with a loading animation, splash screen, or skeleton screen, be it ever so fancy (e.g. fading in an out, moving gradient waves), I think "do they really believe they make me like their site more due to their fancy loading screens?! I am not here for the loading screens!".
To make a page dependent on JavaScript and sacrifice lots of performance for a slight visual benefit does not seem worthed it.
Quote:
> "Yeah, but I'm building a webapp, not a website" - I hear this a lot and it isn't an excuse. I challenge you to define the difference between a webapp and a website that isn't just a vague list of best practices that "apps" are for some reason allowed to disregard. Jeremy Keith makes this point brilliantly.
>
> For example, is Wikipedia an app? What about when I edit an article? What about when I search for an article?
>
> Whether you label your web page as a "site", "app", "microsite", whatever, it doesn't make it exempt from accessibility, performance, browser support and so on.
>
> If you need to excuse yourself from progressive enhancement, you need a better excuse.
– Jake Archibald, 20139 -
Lessons I've learnt so far on programming
-- Your best written code today can be your worst tomorrow (Focus more on optimisation than style).
-- Having zero knowledge of a language then watching video tutorials is like purchasing an arsenal before knowing what a gun is (Read the docs instead).
-- It's works on my machine! Yes, because you built on Lenovo G-force but never considered the testers running on Intel Pentium 0.001 (Always consider low end devices).
-- "Programming" is you telling a story and without adding "comments" you just wrote a whole novel having no punctuation marks (Always add comments, you will thank yourself later for it I promise).
-- In programming there is nothing like "done"! You only have "in progress" or "abandoned" (Deploy progressively).
-- If at this point you still don't know how to make an asynchronous call in your favourite language, then you are still a rookie! take that from me. (Asynchronous operation is a key feature in programming that every coder should know).
-- If it's more than two conditions use "Switch... case" else stick with "If... else" (Readability should never be under-rated).
-- Code editors can MAKE YOU and BREAK YOU. They have great impact on your coding style and delivery time (Choose editors wisely).
-- Always resist the temptation of writing the whole project from scratch unless needs be (Favor patching to re-creation).
-- Helper methods reduces code redundancy by a large chunk (Always have a class in your project with helper methods).
-- There is something called git (Always make backups).
-- If you don't feel the soothing joy that comes in fixing a bug then "programming" is a no-no (Coding is fun only when it works).
-- Get angry with the bugs not the testers they're only noble messengers (Bugs are your true enemy).
-- You would learn more than a lot reading the codes of others and I mean a lot! (Code review promotes optimisation and let's you know when you are writing macaroni).
-- If you can do it without a framework you have yourself a big fat plus (Frameworks make you entirely dependent).
-- Treat your code like your pet, stop taking care of it and it dies! (Codes are fragile and needs regular updates to stay relevant).
Programming is nothing but fun and I've learnt that a long time ago.6 -
Look, I get that it's really tricky to assess whether someone is or isn't skilled going solely by their profile.
That's alright.
What isn't center of the cosmic rectum alright with the fucking buttsauce infested state of interviews is that you give me the most far fetched and convoluted nonsense to solve and then put me on a fucking timer.
And since there isn't a human being on the other side, I can't even ask for clarification nor walk them through my reasoning. No, eat shit you cunt juice swallowing mother fucker, anal annhilation on your whole family with a black cock stretching from Zimbabwe to Singapore, we don't care about this "reasoning" you speak of. Fuck that shit! We just hang out here, handing out tricks in the back alley and smoking opium with vietnamese prostitutes, up your fucking ass with reason.
Let me tell you something mister, I'm gonna shove a LITERAL TON of putrid gorilla SHIT down your whore mouth then cum all over your face and tits, let's see how you like THAT.
Cherry on top: by the time I began figuring out where my initial approach was wrong, it was too late. Get that? L'esprit d'escalier, bitch. I began to understand the problem AFTER the timer was up. I could solve it now, except it wouldn't do me any fucking good.
The problem? Locate the topmost 2x2 block inside a matrix whose values fall within a particular range. It's easy! But if you don't explain it properly, I have to sit down re-reading the description and think about what the actual fuck is this cancerous liquid queef that just got forcefully injected into my eyes.
But since I can't spend too much time trying to comperfukenhend this two dollar handjob of a task, which I'd rather swap for teabagging a hairy ass herpes testicle sack, there's rushing in to try and make sense of this shit as I type.
So I'm about 10 minutes down or so already, 35 to go. I finally decipher that I should get the XY coords of each element within the specified range, then we'll walk an array of those coordinates and check for adjacency. Easy! Done, and done.
Another 10 minutes down, all checks in place. TEST. Wait, wat? Where's the output? WHERE. THE FUCK. IS. THE OUTPUT?! BITCH GIMME AN ANSWER. I COUT'D THE RETURN AND CAN SEE THE TERMINAL BUT ITS NOT SHOWING ME ANYTHINGGG?! UUUGHHH FUCKKFKFKFKFKFKFKFUFUFUFFKFK (...)
Alright, we have about 20 minutes left to finish this motorsaw colonoscopy, and I can't see what my code is outputting so I'm walking through the code myself trying to figure out if this will work. Oh, look at that I have to MANUALLY click this fucking misaligned text that says "clear" in order for any new output to register. Lovely, 10/10 web design, I will violate your armpits with an octopus soaked in rabid bear piss.
Mmmh, looks like I got this wrong. Figures. I'm building the array of coordinates sequentially, as a one dimentional list, which is very inconvenient for finding adjacent elements. No problem, let's try and fix that aaaaaand... SHIT IM ALMOST OUT OF TIME.
QUICK LYEB, QUICK!! REMEMBER WHAT FISCELLA TAUGHT YOU, IN BETWEEN MOLESTING YOUR SOUL WITH 16-BIT I/O CONSOLE PROBLEMS, LIKE THAT BITCH SNOWFALL THING YOU HAD TO SOLVE FOR A FRIEND USING TURBO C ON A FUCKING TOASTER IN COMPUTER LAB! RUN MOTHERFUCKER RUN!!!
I'm SWEATING. HEAVILY. I'm STEAMING, NON-EROTICALLY. Less than 10 minutes left. I'm trying to correct the code I have, but I start making MORE dumbfuck mistakes because I'm in a hurry!
5 minutes left. As I hit this point of no return, I realize exactly where my initial reasoning went wrong, and how I could fix it, but I can't because I don't have enough time. Sadface.
So I hastily put together skeleton of the correct implementation, and as the clock is nearly up, I write a comment explaining the bits I can't get to write. Page up, top of file, type "the editor was shit LMAO" and comment it out. SUBMIT.
This violent tale of brain damaged badmouth schizoid baby versus badly worded code challenges was brought to you by ButtholeSuffers. Tired of taking low-quality viagra before engaging in unprotected anal sex? Then try ButtholeSuffers, the new way to strengthen your everday erections! You'll be as fucking HARD as a WALL!
Visit triple doble minus you dot triple doble YOU dot doble-u doble www dotbit lyshAdy wwwwww academy smashlikeachamp ai/professional/$$%$X$/0FD0EFF~ \*¨-`++ ifyouclickurstupid for for a FREE coupon to get MINUS NaN OFF on a close-encounter with an inter-continental dick, and use my promo code HOPONBITCH if you'd like it *RAMMED* --FAR-- and D E E P L Y.
(lel ad break should continue I'm cutting it shortt) [CENSORED] grants *physical* access to your pants! Big ups to Annihilate for sponsoring this mental breakdown.
Also hi ;>5 -
Update on my Facebook and Booking.com interviews. I had them back to back today.
Even before I start, I accept and admit that I am a hypocrite. I hate Amazon yet order stuff from there. I hate Microsoft yet use their products. I hate Facebook yet went ahead to interview with them.
I fucking hate myself for compromising my ethics, values, and integrity. I had promised myself that even if I work for any major shit company, I'd never go with Facebook. Here I am after many years. Not an excuse, but I am doing it because I see it as an entry point into the UK. That's all.
Community's hate towards me is justified and I'd accept the discrimination from this community because this place is my digital home and you all are my family. Infact first thing I told mom was, dR boys are gonna disown me when they get to know about this.
Anyway, coming to the update part.
I had applied leave at work from last Friday. 4 days of leave earned me 10 days off (including weekends and 2 days of Diwali company holiday).
Last Thursday I got to know that Facebook has scheduled their interview today (Friday). I spent insane amount of time preparing. Approximately 8 hours everyday including weekend. I added nearly 40+ hours preparing for it in last 7 days, because I had to get in. Failure isn't an option now.
I sacrifice my family time, preparing for the interview.
I sacrifice Diwali break, sitting in front of the screen and studying.
I sacrifice my only vacation of 2021, doing mock interviews as late as 11.30 PM.
I sacrifice my free time and enjoyment, stressing over what could happen.
I was prepared like perfect for screening stage.
Interview 1: this guy comes and ask 'what is the best compliment you have got as a PM?' and 'Why do you want to quit the current company?'
He wasn't supposed to ask those as per Facebook's policy and interview stage.
Then he gave me a shit problem to solve and rejected my approach and wanted it his was. I tried to follow him and made sure I was able to convince with the reasoning but he kept pushing me back. He kept putting me down. Did not listen to me or what I had to convey or what was expected as an answer. He had certain output in his mind and wanted me to come up with it as an answer.
For the uninitiated: Facebook gives ton of preparation material and tells upfront the kind of questions they'll ask they just focus on few things. Moreover, in Product interviews, there isn't right or wrong answer.
Anyway, this guy started making funny expressions which put my morale down and I stood my ground with losing my cool. I managed to get all my answers right and the key points the look into a candidate. It went decent. Yet the interviewers attitude was something I did not like.
Interview 2: the lady was really kind and warm. Very accommodating and easy person to deal with. It went amazingly well.
I have two observations I want to share with you all.
1. I hate what Facebook does. Lizardberg is awful human being. But I absolutely liked HOW they are doing things, at least from an interview stand point. They even had mock sessions by their PMs and upfront told how to prepare and how to answer.
2. While it seems to be a 5 star experience, I found them to function mechanically. No small talk, no human connection (ironic to their mission), no conversational flow of the interview (again something that they kept saying a zillion times in all their material). They came, formally introduced themselves, and had a checklist kind of attitude, and left.
I now await for the feedback.
In the next hour, I had Booking.com first round.
Amazing people. Warm friendly experience. Treated me as a human. Heard me. Made me feel part of the conversation rather than someone just being judged.
It went 1000x better than Facebook.
I await the feedback from them as well.
I don't know what's gonna happen but one thing for sure, the kind of expectations Facebook set for their interviews, was nowhere close to the reality. It was awful.
180° was for Booking.com
Guess the saying stands true, expectations always lead to disappointment.
Finally I feel de-stressed and my Diwali vacation starts AFTER Diwali ended. Or rather just a regular weekend.
2021 has been terribly awful year for me. Hope this shitty year ends soon.30 -
My boss has been begging me migrate a nightmarish complex excel report he made to calculate the payout of a tiered rebates program with compounding rewards. Today I finally decided to make take the time and I sat down with him so he could break it down for me...
Me: *looking at the mess of formula's* it would be easier to rewrite the math than decode this - can you just give me the reward rules... where does that value in cellX come from?
Him:*pointing at the spreadsheet* There! All the rules are in there for you :-)... like it's some big favour...
Me:No I mean when you wrote this, what did you base this off? There must be something...
Him: *Very Gravely* No, no, no it's far to complex! It took me ages to get this sheet right and it balances so just trust me and use it ok?
At this point I will mention he's an accountant so yeah I fucking trust him... fast forward past 15 minutes of digging through what may as well be quantum theory and lo and fucking behold all 2 sheets and 100 calculations are mathematically fucking pointless. Aside from formulas like this:
$X10=+(((O10+P10)-((O10+P10)*$X$3))*$R$4)+T10
which is actually equal to (X10/R4)/L10.
Anyway once you compound and sum the "tiered" benefits the rewards payout is ALWAYS = customerSpend*1.81.
This is why programmers name variables. -
What's the point in having a relaxation/fun/chill zone/room in your company when you never have the time to use it except maybe on your lunch break? 🤔🤔3
-
not universal, but works for me:
1. start listening to long video/podcast/talkshow i'm interested in
2. (optional) think about all the physical things i should do, such as cleaning the house, running errands, etc. conclude "nah, i'd rather stay at the computer".
3. open the project i'm working on, thinking "while i listen, i might as well muck about with this for a bit". the key is for the thought to be duration-indeterminate and non-commital, so it feels like an idea for a voluntary idle activity.
4. start mucking around with the project, starting with the simplest smallest tasks, to slowly shift my focus away from what i'm listening to, so it gradually becomes the background thing as the work gets into foreground of my concentration without me even noticing. this also naturally shifts me towards the more important and complicated tasks in the project
5. naturally lose track of time, realizing i've been working for 2 to 3 hours without break only after what i'm listening to ends (sometimes not even then)
6. at that point, take a break, stretch my legs, get some food, watch some 20-30 minute thing with full attention.
7. find a new long-form mostly audio thing to listen to, and go to step 4. repeat.
8. i found i can work like this 8 to sometimes 20 hours straight in a nice atmosphere, without feeling like i spent the time working with all the mental exhaustion it brings, instead it feeling like "i was listening to interesting/entertaining things and mucking around with some stuff on the side", with all the feeling of "i've been idling the whole time" except the work is actually done, or at least i made a progress. it feels almost like procrastinating except without the guilt because i can see i've done a lot through that time. kind of a good compromise between total procrastination and working your ass off into complete anxiety/depression2 -
Built a C#/.NET application with support for a serial device. Tested it on systems A, B, C initially, all Windows system, same .NET version, same targeting, same build tool version, same initial connection configuration etc, etc.
Testing - works on A and C, B nopes.
...
OK, let's check the source, is there something about B that makes it impossible to execute that bit? - No, there is not, you checked that already, stop poking around, it definitively should work on B.
...
OK, maybe admin privileges, there is I/O involved, didn't need that on A and C, but who knows - nope, doesn't work on B.
...
OK, maybe something wrong with the connection settings? First try at reinstalling driver - but no, it doesn't work on B.
...
OK let's try with another device - more/less devices on B. Other USB ports. No. Still does not work on B.
...
OK, this is stupid, but, is the cabling alright? It is, of course it is, stupid - but it still does not work on B.
...
OK, at that point I'm just gonna ask a colleague, GrumpySoftwareDev whether he has any clue why it doesn't work on B. GrumpySoftwareDev knows nothing, but discovers that one of his applications doesn't work on Windows 10. You know nothing, Jon Snow, but it doesn't work on B.
...
OK, now I'm just going to ask another colleague TheLastOfHisKind who handed B down to me somewhat bluntly if he ever experienced problems when working with B and its serial configuration. TheLastOfHisKind tells me he does not and kindly offers me some input on the situation. Still no progress to get it working on B but he hinted he might have fucked up B's driver. I already reinstalled the driver but didn't reboot, which comes after reinstall.
...
OK, I'm just gonna remove and re-install the driver, then restart. Hu! Now the UI is gone but another serial device reacted on a general call. Not fully working on B but we're getting there.
...
OK, I don't know, I'm getting frustrated, let's borrow another system D - which has roughly the same configuration as B - from my colleague StrongCurrentGuy. StrongCurrentGuy borrows me his system and cautions me not to break it. I install the driver, plug the device and copy the application from B. It just works on D. Not on B though.
...
OK, you know what. I'm done. For shits and giggles I'm gonna remove that driver again, reinstall it and restart, maybe it'll magically work afterwar- WHAT THE HELL, I JUST OPENED IT AFTER RESTARTING, IT JUST WORKS - ON B!
... seriously, what the fuck. But yeah, at least it works now.4 -
How to delete 16 days of commits 101 🤯:
First of all, me and my class (computer science in college) were working on a project for around 12 weeks, our “client” is one of our teacher and we literally just finished today to work on the project since our degree terminal projects are starting next week.
So now there's this guy in our class who kinda has the reputation to be stuborn and clumsy; he’s going to do his assigned task, commit, push it and put his task into QA (which is just peer evaluation and testing nothing really complex) and then when we try his functionality and finds out it isn’t working, we tell him and the only thing he always answers is : “but it works on my machine” and then we will need to explicitly ask him to be sure he has all the latest changes (database and codebase) and to see if it still works on his side since it doesn’t work for anyone else.
This actually happened quite a lot in these 12 weeks and you can definitely imagine that of course it would definitely not happen again today when we thought we were finally done with this project…
So another teacher gave us an assignment to create a development environment for our big project so we could try out Docker instead of virtual machines, he made GitHub Classroom repos with a minified version of our project and up to this point everything is fine and clear. That is until 3 hours ago, that our little clumsy friend somehow pushed his Docker related files on the main project, maybe he was trying his Docker setup on the real project no big deal you know EXCEPT IF HE HADN’T NOT PULLED SINCE 16 DAYS 😤.
He was doing maintenance on another project so I can maybe understand but gosh how did he not see the big warning of Git that he wasn’t up to date with master ? And yes we only have a master branch bear with us but hopefully we were able to create a new branch with the up to date project and then merge master.
A couple of us had a gut feeling that this guy would do something that would break the whole project right before we ended, turns out we were right 😅15 -
What the FUCK is the point of submitting a PR, if you're going to approve my code, without looking at it, and then LEAVE ME to further refactoring.
I don't mind the refactoring. At. All.
What I DO mind, is being told "yerp, looks good" and then standing aside as I break everything.
TeAmWoRk5 -
I just tried to install Linux mint on a SD card from a live system for a friend.
I managed to break his windows partition to the point that neither Mint nor the Windows recovery tool could read it and the SD card still won't boot.
I feel like a useless piece of shit and a bad friend.
At least his data is backed up but some of his licenses (Win, Office, ...) might be lost.9 -
Winter break university projects:
Option A: implement writing and reading floating point decimals in Assembly (with SSE)
Option B: reuse the reading and writing module from Option A, and solve a mathematical problem with SSE vectorization
Option C: Research the entirety of the internet to actually understand Graphs, then use Kruskal's algorithm to decide that a graph is whole or not (no separated groups) - in C++
Oh, and BTW there's one week to complete all 3...
I don't need life anyways... -
My lessons both come from my current side project (I will share it with you in a week or two, the website isn't finished yet):
1. Every project comes to the point where it hurts to continue. Keep pushing, the result is worth it.
2. You aren't as good as you thought you were when you started, but you'll be better than you ever were when you finish.
3. Sometimes, there's more points to a list than you'd expect.
4. One hour per day is easier than five hours a week.
How?
Well. I started out my project knowing some C#, but Jack shit about unity. I know most of what I might build will end up being shit I'm gonna regret, refactor and recycle later. But I don't give a fuck. Doing it is better than planning it.
It sometimes hurts to get rid of a carefully planned algorithm that took hours to build because it fails in practice. But it's the right thing to do.
Never plan too much. If I'd have planned this project out, I wouldn't even have started with what I'm good at: write code, break shit and experiment.
It's easier to progress slowly but steady. Look at some awesome games that have been worked on for ages while the public had their say (RimWorld, Project Zomboid, Dwarf Fortress...) as opposed to those that are developed behind closed doors and rushed to the market before Christmas or some other major event (Mafia 3, Fallout 76, Fallout 4 VR...). Progress slowly, deploy early, push often. And the one hour per day approach is a good way to do this. -
Always get into a slight existential crisis during this time of winter.
Is my job worth all the trouble? Should I sell my house? Break up with my love? Start using a different programming language?
Probably has something to do with the psychological effect of this arbitrary point where we consider a year to end, and begin a new one.
I have no idea yet. I think my job is the first one to go, the rest is probably salvageable. -
Okay. I’m upset. So the recent .NET update Microsoft put out fried SharePoint which I am currently the main point of contact for at our company. In addition, my only current projects are creating workflows.
I was publishing a workflow and got an error. I googled the error and found that it was the .NET update that caused it. Internet says to edit the web.config file for your web apps and it will be good to go. I go to our networks guy (only available supervisor) and explain what happened and ask about the recent patch and whether this could be the cause. He says that his team doesn’t actually handle the patches so I should speak with the HelpDesk lead (don’t ask).
I go to the HelpDesk lead and explain the situation, explain the solution and ask for what to do next. Keep in mind that this whole thing takes two hours because it’s Friday and everyone is out and I can’t do any of my work while I’m waiting on this. HelpDesk lead says “you have an admin account, I trust you. Go fix it” so I think uh okay.... I’m a junior and not even technically an IT person but sure. I know how to do it - but got nervous about fucking it up because our entire organization uses Sharepoint.
Nevertheless I go to my desk and look for the root directories and find that they’re on a server somewhere that I have no access to. I message the Helpdesk guy and tell him this and he says to talk to the developer supervisor. Great! He’s super nice and helpful and will totally understand! Only he’s not in. Neither is half of his team.
I go to his team and look around and find nobody but realize I may be able to catch one of the guys I know and work with in the break room. I start leaving and am stopped by a developer who is generally nice and funny. I explain the situation and he says “you... YOU need to edit a config file?” And scoffs. He demands to see what I’m talking about.
I walk him to my machine and show him what’s going on and all the research I did. I start to realize he thinks I’m overstepping and I begin to apologize and explain the details to why I was asked to do it and then I say “I really shouldn’t even be the one doing this” he says “no you should not. This isn’t getting done today. Put in a request, include your research and we will see what we can do when the supervisor gets back next week”
His tone was like I was in trouble and I know that I’m not, but it’s my goal to end up on that team and I just feel like shit about this whole situation. To top it off my boss pulled me off of two projects because of unrelated issues (and nothing to do with me) so I have basically nothing to do and I just feel very discouraged. I feel dumb and like I should have gone to the developers first. I just wanted to make it easy on everyone and do my research. I feel like I keep being put in situations above my level (I’m one of two juniors in a 16 person shop, the other one is an intern) and then “getting in trouble” for working beyond my scope.
Anyways.... fuck Microsoft4 -
procrastinating by getting drunk since 11:00 AM, and writing specs for my (hypothetical) language/os/platform.
feeling righteous retribution because the client made me be stressed for 3 hours due to an issue that THEY caused but for 3 hours the only info I had was "there's a critical blocker issue and we're convinced YOU caused it"
well... no... i did NOT cause the fact that you UPGRADED PHP DURING THE WEEKEND BEFORE MONDAY'S PRESENTATION TO CLIENT (while waiting for an urgent commit from me).
seriously.
also, germans. i've heard many times from other people that they're... basically racist towards us (slavic nations), thinking of us as untermensch, coal-miner peons, but I didn't realize their passive-aggressive covertly smug demanding attitude is due to this, I just assumed it's a reaction to me being incompetent.
so yesterday when we finished the call (in preparation for which I tried to switch to their "client demonstration" branch since that's where the error was, and I wanted a headstart on fixing it, ended up in a place that my today's whole-day task should be "rebuilding the DB into working condition", because there's about 10 "core" sql scripts in two different folders, which need to be run (in a very specific order, of course, which readme tells you, but what it tells you has been outdated at least for 3 months, of course), and
...THE MAIN CORE SCRIPT THAT IS THE FIRST TO RUN, THAT CREATES THE DB schema, HAS THREE SYNTAX-LEVEL typos which fail it mid-way...
...the joys of continuous deployment via scripts, I guess? I would love to challenge any person from them to screenshare to me, manual deployment of the current version from zero, and I would be willing to give the person 20% of my monthly salary if they would be able to do it within 20 minutes.
but... well...
the point is, i should be doing not entirely bullshit stuff.
but yesterday's 6 hours of being in "at full attention because it seems we fucked up" totally convinced me, that today I'm taking a break.
So I'm gonna go buy another 3 beers and continue writing the specs of my dream language/os/platform.19 -
Fuck Unity.
Every single time I try to use Unity to develop my well-along-in-development video game, it finds some way of fucking itself up.
Be it from somehow failing to compile a DLL - which is something completely out of my control, the inspector failing to update itself when I select a new object every five minutes, to the engine managing to fail to load its UI layout because it somehow managed to lose a file responsible for containing the layout, the Inspector forgetting to include a scrollbar and as such trying to cram a bunch of components into one area, crashing in a certain area because I tried using reflections, crashing because I tried running the game in a place that always works, all the way to the whole thing closing instantaneously when I try selecting a new layout.
My experience with using this god-forsaken configuration of code and imagery has been one of endless torment; I've spent hours lamenting about the pain this piece of utter horseshit has caused me to those who'd listen.
I don't know what I did to this thing to deserve to be shown the absolute worst of this engine for the year I've been working on my game for. I can't even take a look at its source code to see if I can piece together things I'll pick up from alien code to fix obnoxious bugs myself because you cunts have it under lock-and-key for some dumbass reason.
Even updating my install of this engine is a gamble; I remember clear-as-day updating my project from 2019.3.14 to whichever one was most recent at the time, and everything breaking. This time, I got lucky and managed to update to 2020.1.4 with no issue on the surface, except I inadvertently let in a host of other issues that somehow made the editor worse than the older one.
There's little point in even bothering to report a bug because this shit happens so randomly that I could be just working on auto-pilot and the next thing I know Unity's stupid "crash handler" rears its ugly head yet again, or you people are probably too busy adding support for platforms no sane person uses like fucking Chromebooks.
There've been times where it's crashed upwards of three times in the span of 40 minutes of light use.
How is one expected to cough up hundreds of dollars a year to use a "pro" version of this horrid editor when every session of use yields a 50/50 chance that it'll either work like it's supposed to, or break in one way or another?
It's a miracle I even managed to type all of this out in one go, I expected the website to just stop responding entirely once I got past four lines.
Do what you will with my post, I don't care.6 -
I cannot even function right now with how angry I am. If you're a python developer, don't take offence to this unless it describes you.
All the python devs I have ever met so far are pompous arrogant cucks that can't even get out of their own way to save themselves. They make EVERYTHING so fucking complicated and complex that the whole point to a project becomes moot.
Instead of understanding HOW a thing works, their answer is ALWAYS rewrite it how THEY want it to work.
They have what we used to call "little-man" syndrome. They're so concerned that they aren't perceived as intelligent that they overcompensate by making the wildest and most fucked up changes to a project I have EVER seen.
They have gone so far as to break the original functional components of a project just to meet THEIR definition of a healthy python project.
I don't hate the language, but GOD DAMN I HATE THE DEVS.
If this describes you, fuck you. Seriously, just fuck off into whatever python hole you crawled out of and stay there.6 -
How do you debate the "it's more complex in my opinion" statement?
So, some months ago I was looking at some code which has stuff as 300 lines of code function(s) and I could feel the bad smell irl...
I analyze it a bit and there is a lot of stuff which is misplaced, repeated or unsafe.
I first re-arrange it and remove redundancy, then break it down in about five functions (plus a caller), all is now readable and assignIcon k(made-up name) only assigns an icon, it doesn't also send a rocket in space.
But then I put the code in review and the previous author of the code says that it's now unreadable, because s/he has to look as multiple functions. I counter by showing how s/he does not need to read 300 lines of code to find a bug, but approximately 60, and I point at how misleading having an `assignIcon` function which also sends rockets in space is.
The counter? "But it looks confusing to have smaller functions, revert it."
How would you debate that? I am shy and hate myself a lot, so I have issues debating good points, but I am really really sure a lot of bugs I encountered were due to stuff like this so I would like to be able to explain my point in a more efficient way, for future teams.12 -
I want to explain to people like ostream (aka aviophille) why JS is a crap language. Because they apparently don't know (lol).
First I want to say that JS is fine for small things like gluing some parts togeter. Like, you know, the exact thing it was intended for when it was invented: scripting.
So why is it bad as a programming language for whole apps or projects?
No type checks (dynamic typing). This is typical for scripting languages and not neccesarily bad for such a language but it's certainly bad for a programming language.
"truthy" everything. It's bad for readability and it's dangerous because you can accidentaly make unwanted behavior.
The existence of == and ===. The rule for many real life JS projects is to always use === to be more safe.
In general: The correct thing should be the default thing. JS violates that.
Automatic semicolon insertion can cause funny surprises.
If semicolons aren't truly optional, then they should not be allowed to be omitted.
No enums. Do I need to say more?
No generics (of course, lol).
Fucked up implicit type conversions that violate the principle of least surprise (you know those from all the memes).
No integer data types (only floating point). BigInt obviously doesn't count.
No value types and no real concept for immutability. "Const" doesn't count because it only makes the reference immutale (see lack of value types). "Freeze" doesn't count since it's a runtime enforcement and therefore pretty useless.
No algebraic types. That one can be forgiven though, because it's only common in the most modern languages.
The need for null AND undefined.
No concept of non-nullability (values that can not be null).
JS embraces the "fail silently" approach, which means that many bugs remain unnoticed and will be a PITA to find and debug.
Some of the problems can and have been adressed with TypeScript, but most of them are unfixable because it would break backward compatibility.
So JS is truly rotten at the core and can not be fixed in principle.
That doesn't mean that I also hate JS devs. I pity your poor souls for having to deal with this abomination of a language.
It's likely that I fogot to mention many other problems with JS, so feel free to extend the list in the comments :)
Marry Christmas!34 -
"I don't see the point of writing tests on this project. It's just a waste of time. "
3 months later:
"I don't know what's broken and every time I change something I don't know what it could possibly break?"
FFS.1 -
Part two of: a day off an iOS developer life:
1. App crashed and stack trace gives no info in which file it happened, I have a generic table view cell that is used in so many places and Xcode just wrote: xcell does not support key value.
2. Mac freezing when Xcode is creating IPA file thanks to a new feature in Xcode 9 (Mac freezing is the new feature, even mouse pointer doesn't move -.-)
3. Let's check the value of this class property, Xcode: fuck off and either print it in console (after hitting a break point) or expand that shitty tree at the bottom to reach your class property!
An advice: never click jump to definition when Xcode is indexing, it will either freezing Xcode or crash it.
Part 1 link: https://devrant.com/rants/1137208/...1 -
I haven't been productive since the bs. (Refer to previous rant) And one deadline is approaching very fast.
My Christmas was ruined because I was anxious/annoyed/everything negative about the bs as well as being alone and stuck in a village. My new year has always been crap but this year it was extra crap.
Overall, I'm having none of the fun. My life is starting to feel like a deadend. I feel like I have to give up on my dreams to survive. And that no one is really on my side, despite whatever they say.
The ADHD rejection sensitivity is also heavily activated. Like I know that realistically I can fix this, but at this point I just want to break everything and let the ship sink.
I have lost time that I could be productive to this bs. And I wish nothing but misery for all those responsible for putting me in this situation. (I take responsibility for my mistakes, but not for how others behaved towards me)6 -
We use a third party paid company to produce a service and give ongoing support for it, which all our revenue streams depend upon. They are shit and their service is shit. Here's how my conversation about testing went today.
Me: 'hey X wrote an integration test project for the service. It shows the service is broken 50% of the time. We should give their team access to it and have them run it as part of CI'
Colleague: 'They are too shit to setup CI'
PM: 'we are stuck with them so there is no point. It is what it is'
Boss: just ignores me. Not even a reply.
Some days later
Head of QA: 'Hey Dev and QA are broken'
Me: 'because their service is broken. I made so and so suggestion before but it was rejected. We will just have to accept Dev and QA are broken 50% of the time'
Head of QA: 'no we cant'
Me: 'ok so we should setup the tests to run by giving them access'
Head of QA: 'No we shouldn't. The tests can only be used by us and if they break it tells us so we can act on it, or choose not to'
Me: 'We would not want to act immediately on all our revenue streams breaking? Yes we can reverse engineer their client and fix errors as they occur, or we could just have them run the tests and a team our company pays for can stop adding breaking changes to their own API every other day. Right now it has been broken for 2 weeks.'
Head of QA: 'in an ideal world we would have an internal team so you're wrong'
Me: :)
I really don't understand how they can come to such a conclusion. Am I missing something or am I surrounded by total fucking idiots?2 -
Well today I feel like shit so I called in sick. Found out the lead developer called in sick as well.
The thing is, there was something really important to be done today that he fucking new that if he was not to be there I was going to get shit from everyone. He is going through some shit right now and I get it, so I would normally cut him some slack.
But fuck man, at some point you got to man the fuck up and deal with your job, if anything do it for your fucking coworkers/friends. He fucking new that I was going to get a fuckload of bullshit over something that he takes care of.
Nevermind that there are only 2 fucking developers for the entire fucking campus(2 campuses actually) and we were told last friday that we were needed. Normally, one would put up with the bullshit and make a presence, but that one of us is always me. Today I said fuck it, its too cold, don't feel good and I don't want to take my daughter to the daycare.
Today I sit at home, go over my OS books, play Skyward Sword with my daughter, watch movies with her and I don't think about work for one second.
On another note, the reason why I need to go through my OS books is that a good portion of my masters degree(which I am to start on August) covers OS development, it seems that the entire curriculum will be C/C++ galore which makes me FUCKING STOKED! finally a break form web development that I can probably use to get me out of web development professionally as well.9 -
!rant but kinda.
!dev but also dev
Hello, my name is ***** and I already had a few Old Fashions🥃
I've been chasing a big career and success since i was about 12.. the first 8 years of my career I did the same.
for the last two years i decided to slow down, I'm still keeping up with stuff and do a good job but I took a break from wanting to being the next Wozniak.
Im much happier and more relaxes now but I'm at a point where i really wanna do, be and achieve more..
My #1 goal in life is to build a family, having a wife and a few kids. (first gotta be able to talk to women though:/)
i have a very strong desire to have an impact on the world and society to build a life in which at least my (non existing) family could be happy and without worries. but i've no fucking clue how to achieve that. how to have an impact. i don't see a way as a software engineer anymore..
i feel lonely and lost without any fucking perspectives..
i feel like i was better off when i was chasing the big money..
i know dev rant is not the place to do this but i can't talk to my family and i wanted to share my emotions. been alone for 3 months now and it's also about my dev career, that's how i justify to post this to our community here😅4 -
Question about burnout here!
I've been a developer for a year and a half now and I've reached a point of burnout. Experiencing a lot of external stress as well as internal (handled well with a fantastic and supportive team)
I'm taking some time away from work and having a much needed break but I'm worried that for now, I can't code! I've got no drive at all to learn anything new, I'm just sat here waiting for a production push.
I'm by no means thinking of changing careers or leaving my current role and the lack of concentration is likely as a result of stress, I just wanted to hear some of your stories so I feel a little less alienated!
Being new to this is pretty overwhelming at times!3 -
Hey guys! lambda is amazing! Docker containers! They said the whole amazing point with containers is that they run the same everywhere! Except not really, because lambda 'containers' are an abomination of *nix standards with arbitrary rules that really don't make sense! That's ok though, you can push your shit to fargate, then it will work more like those docker containers you know and love and can run locally! Oh wait! fargate is a pain in the ass x 2 just to setup! You want to expose your REST api running on a container to the world? well ha, you'd better be ready to spend literally 2 weeks to configure every fucking piece of technology that every existed just to do that!!!! it's great, AWS, i love it, i'm so fucking big brained smart!!!
give me a break.... back in my day you'd set up an nginx instance, put your REST / websocket / graphQL service whatever behind it, and call it a day!!!!!!!
even with tools like pulumi or terraform this is a pain in the ass and a half, i mean what are we really doing here folks
way too complicated, the whole AWS infrastructure is setup for companies who need such a level of granularity because they have 1 billion users daily... too bad there are like 5 companies on the planet who need this level of complexity!!!!!!!
oh, and if your ego is bashed because of this post, maybe reread it and realize you're the 🤡
i'm unhappy because i was lied to. docker containers are docker containers, until they aren't. *nix standards are *nix standards, until they aren't
bed time.12 -
It is the year 2451 ad and mankind rules the galaxy with a lazy iron fist. There are roughly 14,000 civilizations, comprised of just over
17,000 intelligent species on a quarter of a million earth-like
worlds. And all of them call themselves 'the galactic empire'.
No one told them that twenty planets doesn't qualify them for the title "galactic."
Well, we could rule, if we wanted to. Most of its just backwaters that no one wants anyway. It turned out that the reason no one invaded earth before was because they were too busy fighting themselves. Stupidity it appears, is not a unique human quality.That and the sex robots. Theres more of them in the galaxy than actual meatbags. Many species had taken to artificial wombs and 'vatbabies', which is exactly what they are called. Those poor bastards will carry that label for life.
We never did break light speed, but most of the rich exist in hypersleep anyway. Most of them only wake up once a year or so. There are some that only creek out of bed to check their stock portfolio. I hear there is even one trillionaire thats up and about once a century to ask if we have broken light speed yet.
Despite all the progress over the last 400 years, historians all agree about the most significant event in modern history.
The lobster went extinct two hundred years ago on earth.
Theres been riots ever since.
* * *
In other news I'm still working on the game I guess. It's like totally the most okay indie game you'll ever play--if I ever finish it.
I put about a year of work into the NPC system, and then chatGPT came out.
After everything thats happened, at this point I may just make a game about an indie dev making a survival game, being stuck in the actual apocalypse or some weird political dysopia.
Put it on rewind, it was originally a zombie game. But at the time the market got flooded and steam sales for zombie games cratered. So I pivoted to something more along the lines of fallout. Then the flash market crashed, bunch of publishers folded, and adobe stopped support for flash (probably for the best). Then newgrounds, which I was gonna launch on for promotion (because actual marketing is expensive), ended support for flash.
Was going the route of kickstarter, and that year the KS market got flooded and the bar rose almost over night so you needed super high production quality out the gate, and a network of support you already built for months.
We had a brief nuclear war scare, and I watched the articles come out about market saturation for post-apocalypse games, so I pivoted back to zombies. Then covid happened and the entire topic was really fucked. So I went back to fallout meets rimworld. Then we had a flood of games doing that exact premise pretty much out of the fucking blue, so I went for a more single-survivor type game. Then ukraine happened and the threat of nuclear war has been slowly sapping the genre of its steam, on well, steam.
Then I was told to get a cancer screening which I can't afford. Then I broke a tooth and spent a month in agony.
Then a family member died. Then I made no money from the sale of a business I did everything to help get off the ground, then I helped renovate an entire house on short notice and sell it, then I lost two months living in a hotel
while looking for a new place to live. Then I spent two and a half years suffering low-level alcoholism, insomnia, and drifting between jobs.
Then I wrote amazing poetry. And then I rediscovered my love of math. And then I made out for the first time in over a year. And then I rediscovered my love of piano and guitar. And then I fell into severe depression for the last year. Then I made actual discoveries in math. And I learned to love my hobbies again, and jog, and not drink so much, and sing, and go on long drives, and occasional hikes, and talk to people again, and even start designing games and UIs again. And then I learned that doing amazing things without a lot of money is still possible, and then I discovered the sunk cost fallacy, and run on sentences, and how inside me there was a part of me that refused to quit because of circumstances I couldn't control, and then I learned that life goes on even when others lives have ended, even when everything and everyone never had an once of faith in you, and you've become the avatar of the bad luck brian meme..still, life goes on.
And we try to pick up the pieces, try, one more time, because the climb, and the fall, and the getting back up, is all there is.
What I would recommend, if you're thinking of making a game, or becoming an independent game developer, is, unless you have a *lot* of money upfront (think 50-100k saved, minimum, like one years income *bare* minimum), and unless you already have a full decade in the industry--don't make a game.
Just don't.17 -
Below is a transcript from work Slack today. Only the names and some code are changed. It ended up causing a bit of drama. DevRanters, what do you take from this?
---
Delivery Lead:
Hey Gang. What's the blocker for FEATURE-123?
Dev1:
FEATURE-122 crashed on iOS app when viewing Feature Introduction page.
Teach Lead:
I've talked about this with Dev1 on a side channel.
And diagnosed the stack trace.
It looks like there is/was some bad handling of a List in the Feature Introduction view logic.
But this is confined to changes that Dev2 is still working on.
(It's not present in master)
Dev2, what's your current position on this?
Dev2:
I have tested at my end with Dev1 but it seems to be working fine
Tech Lead:
There is a race condition related to the use of someList.first()
My guess is that theres a Flow of those lists defined, with an initial value of emptyList
And that on your machine, that Flow is updating with a new value quickly enough that it doesn't matter.
But on Dev1's, for whatever reason, it doesn't get there in time, hits the empty list and falls over.
The logic that's performing the first() needs to gracefully handle empty lists as well.
Dev2:
Where is that logic called?
Tech Lead:
Here's the stack trace Dev1 provided in our conversation earlier:
Caused by: kotlin.NoSuchElementException: List is empty.
...
at 3 iosApp 0x00000000 kfun:kotlin.NoSuchElementException#<init>(kotlin.String?){} + 00
at 4 iosApp 0x0000000 kfun:kotlin.collections#first@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0 + 000
...
at 9 iosApp 0x0000000 kfun:kotlin.coroutines.native.internal.BaseContinuationImpl#resumeWith(kotlin.Result<kotlin.Any?>){} + 0000
This line:
kfun:kotlin.collections#first@kotlin.collections.List<0:0>()
...says that it's first() being called on an empty list.
Dev1:
FYI: Dev3/Dev4/myself are seeing the same issue with the same stack-trace above.
Tech Lead:
So Dev2, have you introduced such a call?
Because I checked master branch and there isn't one, in that version of the file.
Ok, I'll check your working branch Dev2
...
Yes you have here:
var processed1 = someList.first()
var processed2 = someList.first()
...
Lines 123, 124.
Solution looks really straightforward guys.
Dev2:
Okay, I will fix that and push the change
Tech Lead:
Check if someList is empty and allow for generating / handling null processedValues in the view.
Now; I'm going to be straight with you here.
This issue has been discussed over several hours today.
I expect that either one of you could have gone through the process I did in the last 10 minutes above, and resolved it in the same way :point_up:
Dev2:
I went on a break and it's not reproducible on my machine
Tech Lead:
I didn't reproduce it on mine either.
Dev1:
Dev2 and myself are now on sharing screen to sort this issue out. Hope to update back later.
Tech Lead:
<Screen shot of diff with changed code>
:point_up: That change should do it.
Dev2:
Already have pushed the change.
Tech Lead:
...just seen it, is good - same approach :ok_hand:
Dev1 please let us know when tested on your machine.
Dev1:
That does it. It fixes the issues. Thank you, Dev2. I will pick it off from here.
Tech Lead:
Glad to hear it guys.
Dev1:
I have to say this that it is not because we are not working on the issue - Dev2 and myself (together with Dev3/Dev4) have been on this issue all this morning. It just difficult to connect the dot when it wasn't reproducable on Dev2's machine. I brought the issue up because I wanted to switch to working on other tickets while waiting for this to resolve. Still thank you largely for Dev2's work and your keen eyes that spot and resolve the issue quickly.
Tech Lead:
Noted Dev1.
I think the take-away has to be to read the stack-trace carefully... don't worry - we've all been guilty of not reading the error in full, at some point.
The stack trace said that the 'first' element is being referenced from an empty list - that's just logically impossible, right?
Looking for that call to first, we saw it wasn't in the code before, and is after (two of them, in fact).
So then we ask ourselves, how can we deal with an empty list - and then solution almost presents itself.
It didn't really take reproduction of the error to resolve.
Maybe working with a new tech stack creates an anxiety that every issue faced will have a complex solution related to that stack; but I think you'll agree, this particular issue really just required a deep breath and your trusty 'debugging skills 101'... don't lose them! :smiling_face:4 -
Tl;Dr Im the one of the few in my area that sees sftping as the prod service account shouldn't be a deployment process. And the ONLY ONE THAT CARES THAT THIS IS GONNA BREAK A BUNCH OF SHIT AT SOME POINT.
The non tl;dr:
For a whole year I've been trying to convince my area that sshing as the production service account is not the proper way to deploy and/or develop batch code. My area (my team and 3 sister teams) have no concept of using version control for our various Unix components (shell scripts and configuration files) that our CRITICAL for our teams ongoing success. Most develop in a "prodqa like" system and the remainder straight in production. Those that develop straight in prodqa have no "test" deployment so when they ssh files straight to actual production. Our area has no concept of continuous integration and automated build checking. There is no "test cases", no "systems testing" or "regression testing". No gate checks for changing production are enforced. There is a standing "approved" deployment process by the enterprise (my company is Whyyyyyyyyyy bigger than my area ) but no one uses it. In fact idk anyone in my area who knows HOW to deploy using the official deployment method. Yes, there is privileged access management on the service account. Yes the managers gets notified everytime someone accesses the privileged production account. The managers don't see fixing this as a priority. In fact I think I've only talk to ONE other person in my area who truly understands how terrible it is that we have full production change access on a daily basis. Ive brought this up so many times and so many times nothing has been done and I've tried to get it changed yet nothing has happened and I'm just SO FUCKING SICK that no one sees how big of a deal this. I mean, overall I live the area I work in, I love the people, yet this one glaring deficiency causes me so much fucking stress cause it's so fucking simple to fix.
We even have an newer enterprise deployment. Method leveraging a product called "urban code deploy" (ucd) to deploy a git repository. JUST FUCKING GIT WITH THE PROGRAM!!!!..... IT WAS RELEASED FUCKING 12 YEARS AGO......
Please..... Please..... I just want my otherwise normally awesome team to understand the importance and benefits of version control and approved/revertable deployments2 -
worst part of programming is knowing what needs to happen, having an idea of the logic that needs to run, but having absolutely no idea how to get that logic implemented.
Been staring at my screen for 30 minutes at this point starting to type a function, then deleting it realizing that method won't work, trying another one before deleting that one as well, over and over and over again
I'm about to just close this damn thing and play Minecraft for an hour, maybe a mindless Minecraft break will help.2 -
I really really hope that no one post this,a friend texted it to me and I wanted to share it because made my day.
Idk where it comes, so feel free if know where this came from to post it:
//FUN PART HERE
# Do not refactor, it is a bad practice. YOLO
# Not understanding why or how something works is always good. YOLO
# Do not ever test your code yourself, just ask. YOLO
# No one is going to read your code, at any point don’t comment. YOLO
# Why do it the easy way when you can reinvent the wheel? Future-proofing is for pussies. YOLO
# Do not read the documentation. YOLO
# Do not waste time with gists. YOLO
# Do not write specs. YOLO also matches to YDD (YOLO DRIVEN DEVELOPMENT)
# Do not use naming conventions. YOLO
# Paying for online tutorials is always better than just searching and reading. YOLO
# You always use production as an environment. YOLO
# Don’t describe what you’re trying to do, just ask random questions on how to do it. YOLO
# Don’t indent. YOLO
# Version control systems are for wussies. YOLO
# Developing on a system similar to the deployment system is for wussies! YOLO
# I don’t always test my code, but when I do, I do it in production. YOLO
# Real men deploy with ftp. YOLO
So YOLO Driven Development isn’t your style? Okay, here are a few more hilarious IT methodologies to get on board with.
*The Pigeon Methodology*
Boss flies in, shits all over everything, then flies away.
*ADD (Asshole Driven Development)*
An old favourite, which outlines any team where the biggest jerk makes all the big decisions. Wisdom, process and logic are not the factory default.
*NDAD (No Developers Allowed in Decisions)*
Methodology Developers of all kinds are strictly forbidden when it comes to decisions regarding entire projects, from back end design to deadlines, because middle and top management know exactly what they want, how it should be done, and how long it will take.
*FDD (Fear Driven Development)*
The analysis paralysis that can slow an entire project down, with developments afraid to make mistakes, break the build, or cause bugs. The source of a developer’s anxiety could be attributed to a failure in sharing information, or by implicating that team members are replaceable.
*CYAE (Cover Your Ass Engineering)*
As Scott Berkun so eloquently put it, the driving force behind most individual efforts is making sure that when the shit hits the fan, you are not to blame.2 -
I absolutely hate software to the point where I started converting from sysadmin to becoming more like a dev. That way I could just write my own implementations at will. Easier said than done, that's for sure. And it goes both ways.
I think that in order to be a good dev, you need these skills the most:
- Problem solving skills
- Creativity, you're making stuff
- Logical reasoning
- Connecting the dots
- Reading complex documentation
- Breaking down said documentation
- A strong desire to create order and patterns
- ...
If you don't have the above, you may still be able to become a dev.. but it would be harder for sure, and in some cases acceptance will be lower (seriously, learn to Google!)
One thing I don't think you need in development is mathematics. Sure there's a correlation between it and logic reasoning, but you're not solving big mathematical monsters here. At most you'd probably be dealing with arrays and loops (well.. program logic).
Also, written and spoken English! The language of the internet must be known. If it's not your first language, learn it. All the good (and crucial) documentation out there is in English after all.
One final thing would be security in my opinion, since you're releasing your application to the internet and may even run certain services, and deal with a lot of user data. Making those things secure takes some effort and knowledge on security, but it's so worth it. At the most basic level, it requires a certain mindset: "how would I break this thing I just made?"4 -
The more problems I encounter with Windows the more I have the impression these infested chimps never implemented a real system repair/restoration feature but just faked it with randomized error messages.
Now Windows 10 can't even rollback updates anymore but lands in an infinite boot loop that even a reset to an earlier restoration point won't fix.
And the Windows repair option lists two Windows installations even though there's just one.
Somehow the roles of Linux and Windows have switched nowadays, by now I had to reinstall Win10 5 times on three PCs in the last 12 months.
Windows 8 was shit too but at least it didn't fucking break within a week.3 -
It's my yearly cleanup day, when I fully nuke down my windows installation, to clean out all the installed trash and residue.
Have moved all important data and I will be ready to fully refresh my computer as soon as it syncs, heres the question though.
I decided this time I'll create a dev vm, so I can just each time reset to point 0 and also because I miss having local development.
What new linux distros or flavours are out there that would be worth looking at? (I saw things like ubuntu budgie being mentioned)
If you use it and it doesnt break if I sneeze, mention it, I am open to getting to know other environments, even if its not my usual debian homeplace.5 -
Just a quick rant on JavaScript,
So there’s a lot of people hating javascript, and while not a long time ago i was part of them, but I changed my opinion a little.
I think JavaScript is a great way to deal with website programming as it is quick and efficient, but I would not say to program directly on it, use a js-compilable language (CoffeScript, TypeScript, Kotlin(I think), etc.), but then you might say: “Well, no need for js then, compile it in byte code”. That would break the point of how I see web design/dev. The main intent behind webpages is to have an easy and fast way to send code to other computers to render them, that’s why it is interpreted: “Easy to send” and “*All* computers can handle it” with the proper browser. You need to be able to change the way the website is rendered and/or works sometimes, for diverse reasons like copy/pasting data, make it render properly or use plugins/add-ons to change that code to suit your needs.
I think js should be kept as a “readable byte-code”, so that means: {
Keep comments when compiling the js-compilable code,
Add standardized machine-readable comments that will indicate to smart code viewers how to show a particular thing (Like have a higher-end function compiled in js shown as a minimized code with explanations of the function)
Keep it nicely formated and don’t obfuscate (coz that’s annoying)
Etc.
}
So you bypass the quirks and all that pesky js stuff, while keeping it’s good sides.
-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-
Part 2:
Web design for non-web:
Ok so things like node.js, electron, react-native and all that stuff; I won’t say they’re bad but...
Why we have this is because web designers wanted to make desktop apps and were like “Hey! Making web pages is easy! Let’s port it to desktop”, the problem is: Web technologies were made to work on a restricted canvas, aka a browser. It’s good on web for reasons mention earlier and more. But it’s not on desktop! You’re trying to push it outside of those boundaries. It’s difficult to make it break that canvas and go outside, make something that really works! For social media clients and that kind of stuff that you want to make a little more inclusive, yes! it’s a great idea (hello devrantron ;), but not if it’s an exact same copy of the website, just use the website. But for things that are supposed to really make use of YOUR computer; no!
I see those PWA (progressive webapps aka mobile app, but it’s an offline website”), I stand for the same positions, social media and those sort of things: yes, great idea! Games? 🤢.
I have way more to say but I have difficulties to remember them while reading, so feel free to comment your thoughts
Lol, “just a quick rant”1 -
Easy. I was in just 1, but i heard what they were all about. They happened weekly.
This boss mainly ran his hardware renting business. The software for that hardware was often optional, but they developed and sold that as a seperate company with almost the same name.
The guy had no idea what development meant. What it means to test. Everything he knew was hardware, and it just never really clicked. This means that bugs and non linear development cost for a feature were confusing to him to a point that when brought up or conflicting, he would look confused, and walk out the office without another word.
This guy would bust in, usually monday morning and call a "meeting"
They gather in the lunchroom as thats the only place everyone fit, and the guy would go on a 3 hour monologue on god knows what.
It was never positive and always full off complaints and idiotic ideas that the senior developer had to break down until as if talking to a big toddler, on why they do not work.
As a result everyones day started mizzerable, nothing got done. The software package was full of logic flaws. And everyone wanted to quit but didn't have the energy to invest in that.
During that internship 1 guy was fired. In the 2 months he was there he litterally did jack shit. And if he did anything it was the bare minimum, committed broken but compilable, and then wait for revision requests.
Yeah that place was a shitshow. I loved it, but never again. -
1) Learning little to nothing useful in formal post-secondary and wasting tons of time and money just to have pain and suffering.
"Let's talk about hardware disc sectors divisions in the database course, rather than most of you might find useful for industry."
"Lemme grade based on regurgitating my exact definitions of things, later I'll talk about historical failed network protocols, that have little to no relevance/importance because they fucking lost and we don't use them. Practical networking information? Nah."
"Back in the day we used to put a cup of water on top of our desktops, and if it started to shake a lot that's how you'd know your operating system was working real hard and 'thrashing' "
"Is like differentiation but is like cat looking at crystal ball"
"Not all husbands beat their wives, but statistically...." (this one was confusing and awkward to the point that the memory is mostly dropped)
Streams & lambdas in java, were a few slides in a powerpoint & not really tested. Turns out industry loves 'em.
2) Landed my first student job and get shoved on an old legacy project nobody wants to touch. Am isolated and not being taught or helped much, do poorly. Boss gets pissed at me and is unpleasant to work with and get help from. Gets to the point where I start to wonder if he starts to try and create a show of how much of a nuisance I am. He meddle with some logo I'm fixing, getting fussy about individual pixels and shades, and makes a big deal of knowing how to use GIMP and how he's sitting with me micromanaging. Monthly one on one's were uncomfortable and had him metaphorically jerking off about his lifestory career wise.
But I think I learned in code monkey industry, you gotta be capable of learning and making things happen with effectively no help at all. It's hard as fuck though.
3) Everytime I meet an asshole who knows more and accomplish than I do (that's a lot of people) with higher TC than me (also a lot of people). I despair as I realize I might sound like that without realizing it.
4) Everytime I encounter one of my glaring gaps in my knowledge and I'm ashamed of the fact I have plenty of them. Cargo cult programming.
5) I can't do leetcode hards. Sometimes I suck at white board questions I haven't seen anything like before and anything similar to them before.
6) I also suck at some of the trivia questions in interviews. (Gosh I think I'd look that up in a search engine)
7) Mentorship is nigh non-existent. Gosh I'd love to be taught stuff so I'd know how to make technical design/architecture decisions and knowing tradeoffs between tech stack. So I can go beyond being a codemonkey.
8) Gave up and took an ok job outside of America rather than continuing to grind then try to interview into a high tier American company. Doubtful I'd ever manage to break in now, and TC would be sweet but am unsure if the rest would work out.
9) Assholes and trolls on stackoverflow, it's quite hard to ask questions sometimes it feels and now get closed, marked as dupe, or downvoted without explanation.3 -
Our approach is to get a loose feel for what the client wants, lift some visuals from Theme Forest then spend the next few weeks persuading the client to use our crappy server rather than their preferred AWS solution. Then once the project is behind schedule we break the work down into disparate tasks each of which gets a single line brief from the PM (such as 'create admin' or 'do css'). These then get assigned to different devs with no consideration of their skillset. The PM is available for 10 mins every day to answer queries, the rest of the time our devs are expected to work autonomously. Meanwhile we'll tell the client that we're back on schedule and arrange a demo for an impossibly short deadline. We have the mantra ”dont worry about it” which the PM uses to quash any dev's concerns up until the day before the deadline at which point we'll swap some devs on to unrelated work whilst others concentrate on getting "just the pages the client wants to see looking right" (we have a policy of making it look like it works before it actually does.) Following the demo we will announce all the missing features we had forgotten about from the initial undocumented agreement and set the project aside whilst we service another client.2
-
I suddenly just want to retire.... Job just feels like never ending work.... Can't find time for a break... And well biggest fear in taking a vacation is the amount of work that piles up while I'm gone...
Maybe I suddenly just have burn out... But suddenly just going ah fck... What's the point of all this....
Sometimes wonder, if I didn't have parents around would I just quit and and just do whatever I want until I run out of money...
How many years that would take....10 -
I hate applying for a job online. For some reason it just doesn't work out for me. I have a lot of humor but today my interviewer asked me if i was insecure doing that. I'm like "No, my whole family is like this".
But that's beside the point. Every company thinks they're so special. Well, some do have special benefits. But after a few times turned down my ego starts to break.
I'm so done with this new type of interviewing8 -
When the monthly scrum retrospective reaches the 90 minute mark...
You know when people are being stress tested and they break by getting up, run around screaming and ultimately knock themselves unconscious by running into a wall?
That. I felt like doing that.
I swear someone activates some sort of gravity well when these meetings begin because time beings to stretch on and o........n....... while they meetings happen.
I began to list things I think I'd rather be doing than be in that meeting.
1) Tax returns.
2) Prostate exam (not old enough to need one yet but at least I'd be out the meeting).
3) Visiting the dentist.
4) Assembling IKEA furniture.
5) Watching soccer at least they have the decency to give you a break in the middle and I find sports as engaging as a dog turd on the sidewalk.
So bored was I that I began to notice notches and holes in the ceiling tiles and when I remarked upon them others became engrossed in them and began to speculate upon their origins.
I don't know who a speaker is, what department they are from, what product they're working on or what's so important about the algorithm they're working on. There is no context, no explanation and half way through a show and tell I had to check we were still in a show and tell.
I was bored shitless. I actually felt physical pain from boredom, I've not felt that way since I was a child.
I really, really hate that scrum is implemented in this way.
It left me with only half an hour of coding time left and really it sapped my energy and motivation to the point where I just went home early.
Excuse my language, but:
Fucking bloody cunting waste of time, I've had more productive moments in the restroom. They need to piss off or committed seppuku, ideally both. Dante got it wrong the seventh level of hell is this. I'm usually a very calm and balanced individual but yesterday, yesterday I just... Fuck! Argh! Fuck you meeting, fuck you.
If you are the type that schedules meetings like this:
May a thousand Jabberwockies plague your nightmares and be it that the next seventy seven times you lay with a human shall ye experience bitter failure! I hope Cthulhu himself visits his "enlightenment" upon you and you fear sleep henceforth.
I'm bringing a rubix cube or juggling balls into the next meeting so that I can say at least I learned something and it wasn't time wasted.3 -
Call me a novice, but isn't the point of a user story to be concise, limited in scope and only concerning one purpose? Kind of like a class should only have one responsibility.
This stupid other reviewer developer comes whining at me saying I broke some shit in my user story and that I need to fix it. The weirdest part is that I didn't break anything. I wrote all my tests, they all passed and yep, this guy has the nerve to come and say that I broke other shit. Well genius, if it's OTHER SHIT, then it belongs as a bug in ANOTHER STORY. What the fuck man, seriously.
A few minutes of debugging later, I found out it was someone else who broke some code earlier on a piece that was part of my part of the application.
Why are others so quick to blame? This is unprofessional. OMG I DISCOVERED AN ERROR, YOU'RE PROBABLY THE ONE TO BLAME BECAUSE YOU'RE AN IGNORANT GUY BECAUSE YOUR TITLE IS JUNIOR DEVELOPER!
Right.
Companies like these, people, have bad communication. Bad companies.2 -
Without a break this would probably be around 4 hours. After that I just loose all productivity. So there so is really no point in forcing it any further.
For working without sleep I have regular done stretches as long as 32 hours. With just breaks for food and a quick walk around. To keep my body awake.
Why you probably ask yourself, well this has several reasons. For me to get in the "zone" I have to be awake for at least 12 hours. I'm not sure why this is, but the combination of being too tired to get distracted and the increase in dopamine from sleep deprivation. Is I think what makes for this, or by now it might just be a placebo. But well it works for me.
So when a deadline gets near and I'm not going to be able to make it, which used to happen a lot because I used to have a lot of migraines. I would start working in the morning, trying to get things done but not being to able to. Then after a full workday would take a dinner break and get back in the office, at this point I get in the zone and time flies by as I work through the night. Next morning people are coming back in the office and I start another workday.
I try to plan this so I have a lot of meetings or other social work. I get really social and chatty after being awake for more then 24 hours. Because my problem solving skills have really declined after being awake for so long.
Now when I still used to drink, I would after this workday get some dinner and go out to a bar to have drinks with friends. To celebrate me having made my deadline and well I'm really social from being awake so long. And I stop overthinking everything.
Still looking for a way to get in the zone before being awake for so long, so any tips are welcome! -
I work full time in the data protection field for healthcare whilst investing all my free time into coding as a career change.
I've discovered that despite people telling you how much you need to spend every hour you get free to learn to code, you also need to consider the people closest to you. I was ignoring my partner who I live with because I thought this was more important and that she should be able to see that. But what's the point in being in a relationship if you aren't making an effort with each other?
It's OK to slow down and invest time into the people you have in your life. Give yourself a break. -
First post here...Here's a funny thing that happened to me yesterday. I'm with my friend, we're both taking a break from school, and he comes up to me and mentions how he wants to make 3d games. Conversation goes a bit like this:
Friend: "Hey, I found this 3d model website. I'm thinking of using it for my 3d game."
He was already making a 2d game at this point, so I assumed he just gave up on it.
Me: "Well...do you have Unity?"
Friend: "Yes."
Me: "Well if you're going to make a game on there [stuff about c#]"
Friend insists he can easily make this. I tell him it would take years on end to learn C# and make a good game with it. And then he says something I never wanted to hear.
Friend: "Actually, no. You ever heard of Dani? D-A-N-I? He made a game in 2 weeks. He's actually making a new game and you should wishlist it on steam blah blah yatta yatta."
This guy believed someone else who was previously a game developer (if i recall) learned an entire programming language and engine in two weeks. He could've, but to me that seems seriously outrageous to someone who doesn't even know a smidge of programming.
He then advertised his YouTube channel and his games and brought down my arguments like "he probably had previous knowledge" completely. This guy doesn't even know where to start with C#. Really, all I could do after that was mention three.js (oh wow another JavaScript library, exciting), show him a game Google made with said library, and then said good luck...
Worst thing is, he uses Scratch to make games. And he genuinely thinks that is a real programming language.
That's it for my first post, thank you very much for reading :)6 -
Today, I have installed/uninstalled a combination of [windows 7, arch linux, dual-boot] a total of 9 times...
I wouldn't be surprised if my 120G SSD fails next week
It all started when I had to whip up a GUI-wrapped youtube-dl based program for a windows machine.
Thinking a handy GUI python library will get it done in no time, I started right away with the Kivy quick-start page in front of me.
Everything seemed to be going fine, until I decided it would be "wise" to first check if I can run Kivy on said windows machine.
Here I spent what felt like a day (5 hours) trying to install core pip modules for kivy.. only before realizing my innocent cygwin64 setup was the reason everything was failing, and that sys.platform was NOT set to "win32" (a requirement later discovered when unpacking .whl files)
"Okay.. you know what? Fuck........ This."
In a haze of frustration, I decided it was my fault for ever deciding to do Python on windows, and that "none of this would've happened if I were installing pip modules on a Linux terminal"...
I then had the "brilliant" idea of "Why don't I just use Linux, and make windows a virtual machine within, for testing."
And so I spent the next hour getting everything set up correctly for me get back to programming.... And so I did.
But uh... you're doing GUI stuff, right? -> Yeah...
And you uh.. Kivy uses OpenGL on windows, doesn't it? -> Yeah..?
OpenGL... 2.
-> Fuck.
That's when I realized my "brilliant" idea, was actually a really bad prank. Turns out.. I needed a native windows environment with up-to-date non-virtual graphics drivers that supported at least OpenGL2 for Kivy GUI programs!
Something I already had from square 1.
And at this point, it hurts to even sigh knowing I wasted hours just... making... poor decisions, my very first one being cygwin64 as a substitution for windows cmd.
But persistent as any programmer should be in order to succeed, I dragged my sorry ass back to the computer to reinstall windows on the actual hardware... again.
While the windows installer was busy jacking off all over my precious gigabytes (why does it need that much spaaace for a base install??? fuck.). I had "yet another brilliant idea" YABI™
Why not just do a dual-boot? That way, you have the best of both worlds, you do python stuff in Linux, and when it's time to build and test on the target OS, you have a native windows environment!
This synthetic harmony sounded amazing to the desperate, exhausted, shell of a man that I had become after such a back-breaking experience with cygwin
Now that my windows platter with a side of linux was all set-up and ready-to-go, I once again booted up windows to test if Kivy even worked.
And... It did!
And just as I began raising my victory flags, I suddenly realized there was one more thing I had to do, something trivial, should take me "no time" to do, being in a native windows environment and all.................... -.- (sigh)
I had to make sure it compiles to a traditional exe...
Not a biggy, right? Just find one of those py2exe—sounding modules or something, and surprisingly enough, there was indeed a py2exe—sounding module, conveniently named... py2exe.
Not a second thought given, I thought surely this was a good enough way of doing it, just gonna look up the py2exe guide and...
-> 3 hours later + 1 extra coffee
What do you meeeeean "module not found"? Do I need to install more dependencies? Why doesn't it say so in the DAMN guide? Wait I don't? Why are you showing me that error message then????
-------------------------------
No. I'm not doing this.
I shut off my computer and took a long... long.. break.
Only to return sometime the next day and end up making no progress, beating my SSD with more OS installs (sometimes with no obvious reason to do so).
Wondering whether I should give up Kivy itself as it didn't seem compatible with py2exe.. I discovered pyInstaller, which seemed to be the way Kivy wants exe's to be made on windows..
Awesome! I should've looked up how Kivy developers make exe's instead of jumping straight into py2exe land, (I guess "py2exe" just sounded more effective to me then)
More hours pass, and you'd think I'd have eliminated all of my build environment problems by now... but oh, how wrong you'd be...
pyInstaller was failing, and half the solutions I found online were to download some windows update KB32946..whatever...
The other half telling me to downgrade from Python 3.8.1 to Python 3.8.0000.009 (exaggeration! But you get the point)
At the end of all that mess, I decided it wasn't worth some of my lifespan, and that maybe.. just maybe.. it would've been better to create WINDOWS GUI with the mother fuc*ing WINDOWS API.
Alright, step 1: Get Visual Studio..
Step 2: kys
Step 3: kys again.6 -
This developer has an media query break point for each style 912 break points. 304 desktop, 304 mobile, and 304 tablet break points. With 18000 line style sheet.6
-
I love this wk108 tag. Have a lot of stories related to it.
For me , my mentors are the reason i am what i am today. In this crazy selfish world where people only want to run faster than the others, having nice helping people around is great.
(Val titanLannister=xx)
(1)class 6-10th, xx is a curious, but poor boy with no desktop/mobile , but still loves cs classes due to various ,caring teachers.
(2) class 11th end,programming for the first time that year, hates programming, one day when everybody goes out for lunch, xx tears down while talking to his cs teacher "why can't i score good marks when i was the best till 10th? Is programming so tough?" . I remember him giving me a little but greatest motivational lecture followed by 40 minutes of the most basic concepts in which i might had asked him a 1000 questions. "You are my chaempion", he used to say😂 (bad accent) . But god, if he hadn't motivated me that day, i swear i would have left all this and go for business. Thank-you, lokesh sir💗💗
First year : tried to go for a competitive learning course. Mann, am not cool in that stuff. Again was about to break (i was among the top scorers in school boards and had designed many small games back then. I should have been good here too, but nah... the other guys were like bullets .)
Oh my, my deepest bow to this amazing teacher SUMEET MALIK (oh sir, you were so good) .
How this guy taught? Well, he first explained the concept. Fo those who understood, he gave them question 'A', for those who didn't, he repated . For those who understood , can do question a again, and those eho did A already gets an even advance question B. And this cycle went on until the weakest student(usually me) understood the concept.
And no, it never happened even once that class finished with even a single child not doing all questions he gave.he used to teach very less concepts each class and would go to everybody's desk to check they understood the concept, the question, its working, weather we implemented or not and weather our implementation is correct or not +our doubts. Hell , i even took doubts with him for hours after the class and he always just smiled💗(oh sir, am so sorry for being so dumb)
Real Doubt classes, doubts on whatsApp, revision assignments , tests , competitions,... damn, i haven't seen a teacher with this much dedication. At one point of time, that institution was famous for our Sumeet sir's classes 😂
Then last year, i got another mentor . Harshit bhiya. The guy is awesome, and a little extra swaggy 😂. He got a lot of chill, with his big AAD badge, a bag full of stickers and his every day association with people at udacity and google. As always i tried to overwhelm him with my ton of doubts in class, but he use to just give me a few pointers/links, after which i was like quiet for the complete session😂. He gave me a lot to think/work upon and i got a kind of career to work on.
I also think of mentioning a fucked up depressing-bot assholic friend of mine, but he don't deserve to be in this list of my best people. Just fuck you mann with a blockchain of dicks, if you are reading this.1 -
From such a healthy environment this job turned into an extremely toxic one. Now i finally understand how a toxic environment looks like. It's extremely disgusting. Putting 5 tasks on my name to work in parallel and as i work they put 2 more. All High priority tasks. It is physically impossible. The scrum master whore told me to just check the code how to do something to users and understand this for monday so i can help QA guy to test it. I went over the code with a colleague and understood it. Today she screamed at me angry i didnt do the task. What the fuck are you talking about? I checked the code and im ready to do help the QA guy test it whenever necessary. Then she talked shit changing the task that i was supposed to not only understand the code but also do the task on Monday and now its the end of tuesday and its not done. Fuck you. That was not what she said initially. Its very Fucking confusing. Then she said to QA guy i give up i cant handle it with this guy sorry but ill have to report this to product owner. So be it. I dont give a fuck. I am ALONE working on a GIANT, unmaintainable, spaghetti, caveman technology codebase with broken outdated or nonexistent docs, nobody to help me, the colleague whos supposed to guide me is a good guy but overloaded with tasks himself so he doesnt have time, i him and many of us requested another person to join to work with me on same role but they dont have the budget which is a Fucking lie, a client worth trillions of dollars does not have a budget, yeah get fucked retards. This suffering and downfall of your project is mostly their fault. Theyre too arrogant and proud to understand or admit that it's not possible physically for 1 person to manage and keep knowledge and code on 7 tasks per day. All that for Fucking $8 an hour?????????? I hope cancer eats all of u. Every single one to the very fucking bones till ur bones break. This is fucking disgusting and sickening. Right when i was supposed to get paid $17 an hour (and thats gross income not even net.....) I am now fucking forced to quit this shithole toxic job. Because i realized no amount of fucking money, not even before-tax-$17-an-hour money is worth the weight of stress that i get punched with every fucking day. No fucking job is worth more than health. This is saddening and depressing extremely. All of my fucking plans are ruined. The car to buy on leasing--ruined by a whore. The 2 day vacation this week--ruined by a whore. Going out with my hot blonde gf during this miserable 2 day vacation--ruined by a whore. Meeting with 2 american clients I've been in touch with for several years to work on a side project--ruined by a whore, meeting canceled and delayed due to my overtime work. I am literally fucking treated like the Moscow Crocus Hall terrorist. They have no fucking sympathy or understanding for how fucking HARD this fucking DevOps job is where i work on a 30 year old legacy codebase with no fucking help. It is simply not possible. Now its a race between who's gonna fuck who: either i quit first or they fire me first. At this point its not a matter of if but when. Surely soon enough. Cant wait to get the FUCK away from these pieces of shitheads. I either have option to cry and go mentally insane by giving it my all until i fix the task on time but the stress i would get for that would need them to pay me at least 9 mill $ a year. Fuck with someone else you fucking retards. You're using slave labor to work for basically free just so u can profit a lot. Literally on the meeting one of their bosses said they get 50% of margin which is a lot in biz world for tech field. This is absolutely sickening and saddening that im treated like a fucking terrorist. Fucking Disgusting. Cant wait to not Ever fucking work in this toxic fucking place. Quitting by max 1st of april.3
-
Build my own phone and support the Zerophone project by writing code.
Seriously what the fuck is going on with the development of major companies smartphones. Every year all there is are larger displays, better and more cameras, faster processors and some more 'AI' thrown into the mix.
What the heck am I supposed to do with a phone costing multiple hundreds of euros but locked down with an OS spying on you. The processing power available is hardly ever used because most people just use apps like Instagram, WhatsApp or other messaging services.
I get why larger screens are useful but at some point it gets ridiculous.
Better cameras are useful to some degree as well but there's a limit to it.
If you really want to get into photographing then please buy an actual camera.
Another aspect I'd of course like to talk about is privacy. It's hardly existent on IOS or Android smartphones with Google services. Of course one can install different ROMs like Lineage OS but if I already pay multiple hundreds for a device then I'd prefer it working for and not against me.
And dare you break a single part of your phone. You can't really repair it yourself anymore and one can't even change its battery. Most people either have it repaired or just buy a new one and throw it away. There is so much electronic waste, very difficult and expensive to dispose of, just buried in the ground somewhere.
Summing up: I don't really know where the development of smartphones is heading. A phone is a device you carry around with you almost everyday so I'd like it to be tailored to me and not spy on me.
I hope the Librem phone will be a success and other open source phone projects will gain more attention. I want a phone I can repair myself and tailor the software running on it to my needs. I'd like to write messages, listen to music, make calls, run a WiFi hot-spot on the phone and maybe play some tiny games on it once in a while.6 -
My own little version of moore's law:
In 1986 the connectome (the brain) of c. elegans, a small worm, was mapped. It would take decades before the research caught up to the point where we had the hardware to simulate it.
In 2024, we have successfully mapped, and fully simulated (to matching observed behavioral data) the brain of a fruit fly, a total of 139,255 neurons and corresponding connections.
Thats a 38 year period.
If the period is roughly 40 years, and the leap in successful neurons mapped *and simulated* is by an average of 461 times the prior number of neurons, then by 2062-2064 we will be simulating box jellyfish, fruit flys, zebrafish, bees, ants, honey bees, cockroachs, coconut crabs, geckos, guppys, sand lizards, snakes, skinks, toirtoises, frogs, iguanas, shrews, bats, and even moles.
By the dozens or hundreds in any given simulation.
By the year 2100-2104 we'll be fully simulating the brains of mice, quill, crocodiles, birds such as doves, rats, zebra finchs,
guinea pigs, lemurs, ducks, ferrets, cockatiels, squirrels, mongoose, prairie dogs, rabbits, octopi, house cats, buzzards, parakeets, grey parrots, snowy owls, racoons, and even domestic pigs.
And in the years between 2100 to 2140, starting immediately with domestic dogs, we will ramp up and end with the capacity to simulate human brains in full, probably by the dozens or hundreds.
This assumes we can break the quantum barrier of course.20 -
i never knew id reach that point when i need to take a break from programming and everything that has been causing me so much stress for the past few days. and to be honest, it actually feels great to be focused on only one thing instead of stressing out on different projects and debugging them all at once.
in a few days, ill prolly go back to programming some side projects. its not like i can keep myself away from them...
programming is like a magnet for. that magnetic force is growing stronger day by day and im being pulled closer to it. im happy about it except for some occasions when i get too stressed.4 -
Colleague: Why doesn't this line of code print something out?
Me: Are you sure this line of code has been executed? Try Adding a break point here.
(add break point and debug...)
Colleague: Oh. WTF?!3 -
Agile Product Owner: How long do you think this task will take?
Me: Probably 13 points.
APO: That is too many can you break it down into separate tasks?
Me: Sure its probably an 8 and an 8. Since i need to work on them sequentially and one depends on the other, the second task will take longer if i need to make changes after the first one is merged.
~ Turned 104 (8 tasks * 13) points into 128 (16 tasks * 8 points) points.
A 13 represents a whole 2 week sprint.
An 8 represents a week and a half.
We cannot fit 2 8 point tasks in the same sprint, so now it takes 2 whole sprints to complete 2, 8 point tasks.
We have no smaller tickets so we don't work for the rest of the sprint.
Anyone else been here?5 -
So, I am currently on Spring Break, and what do I do when I am on Spring Break: I take a moment to experiment with different languages. This time, I decided to check out Objective C since it mixes up two languages that I love dearly (but that I do not use outside of academic endeavors) which are C and Smalltalk.
Going around the net I found this https://github.com/Flying-Toast/...
Notice: I have nothing against Swift, I stopped developing apps for IOS back when Swift was in its infancy, so I was forced to use Objective C and tbh I never had an issue with it, I had learned it before through GNUStep, the language was obviously strange when I started learning it, but I did not hate it, I tried following Swift to see if I could use it at least in some portions, but at the time of its release it was still pretty much beta for me, so I passed. I feel it is much better now, but the issues with the language at this point in time I feel are more from the side of XCode which can either be just ok, good or an absolute piece of shit depending on the release. Either way, I found the link to be funny.2 -
Now i am given a task to refactor some piece of Predicate code and then update the unit test so it can be compatible and work with new data
WHAT. Is the Fucking point of unit tests if you have to modify them to adapt to new code anyways???
Unit tests exist just so u can stroke ur sausage??? Just so u can give ur ego an orgasm to tell others "hey look at me how good code i wrote that even unit tests are passing!" ???
I always found unit tests sketchy. almost as if its useless and unnecessary. I still get why they are used (some other dev working on feature 2 might break my shit and unit test can save the day) but if thats the only reason then that doesnt seem like a strong enough reason for me
By now im talking about java!
No wonder i have never seen a single nextjs developer ever write a single unit test. Those people have evolved beyond unit testing just as the nextjs technology itself!
This is why nextjs is the future of web and the Big Daddy Dick King 👑 of technology!8 -
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 -
Hi guys, as I think this is the perfect good place to share point of view, I would love to know what do you think.
Years after years, people fight against hacks/piracy, like governments or video games editor.
Recently, we all heard about that piracy team who said that in the close future, breaking games protection would be impossible, yet the famous Denuvo (DRM) even if hard to break, is still broke few days/weeks after game release.
Here's what I think.
No matter what, hacking/piracy will always have steps ahead of protections. Because that's the way it is, the way it works. Maybe protections will be effective for a while, but there will always be somewhere, someone smart enough to break it. I start thinking that when a iPhone/Sony claims that they were safe and Geohot break their protections one by one.
There is no perfect protection.
(Quantum computers aside).
What do you guys think?3 -
My mum signed me up for a robotics workshop with Lego mindstorms... i kept going to these workshops, doing some of them multiple times. At some point we went from graphical programming to some other kids language, than we made a robocup junior team from the kids who were like me and kept on showing up at these workshops and used arduino and C. Had a break for a year or so from coding so I could finish school, then I went studying computer science at Uni. And the rest is history.
-
At this point of my side project I wanted to check out openresty for dynamic proxy creation in nginx.
Happy to check it out I installed centos 7 as guest using new command I just learned virt-builder that would automate vm creation.
Spend 10 hours debugging why I can ping and ssh but cannot get to application port from any network.
Checked iptables, restarted network, reinstalled vm again 3 times with different methods.
Scrolled trough whole internet and it’s mostly outdated problems.
Learned bunch of new commands without new results.
Results were always the same:
No route to host.
Turned out firewalld is fucking thing now.
systemctl firewalld stop helped
Now I know that systemd would kill me at some point for sure.
What I can add at this point ?
Please add more distros, differences, standards and programming languages so world definitely would be better place.
I need a short break now to actually start making shit that I wanted to start at 4-5pm on Saturday.
It’s Sunday 3:30am and time for breakfast.
At least I am happy it started working.2 -
I honestly do not understand the hate for Macs. I know I'm not the first to rant about it, but it's sad that I have to. Yes, you can build a crazy PC with 172828 cores over-clocked to 79Thz for like $7 and have a taco along with it, but that's not the point. Each of them are good for their own things. Maybe, I don't want to spend the first 13 hours figuring out which version of Linux I need to run after I get a computer. I mean give me a break. Each of them are personal preferences. What people often don't see in Macs are value you get with service and surprisingly useful default apps (I'm looking at you Open office) and a solid feature set. Why am I even writing this, it's fucking 2AM.12
-
!rant
Ever find something that's just faster than something else, but when you try to break it down and analyze it, you can't find out why?
PyPy.
I decided I'd test it with a typical discord bot-style workload (decoding a JSON theoretically from an API, checking if it contains stuff, format and then returning it). It was... 1.73x the speed of python.
(Though, granted, this code is more network dependent than anything else.)
Mean +- std dev: [kitsu-python] 62.4 us +- 2.7 us -> [kitsu-pypy] 36.1 us +- 9.2 us: 1.73x faster (-42%)
Me: Whoa, how?!
So, I proceed to write microbenches for every step. Except the JSON decoding, (1.7x faster was at least twice as slow (in one case, one hundred times slower) when tested individually.
The combination of them was faster. Huh.
By this point, I was all "sign me up!", but... asyncpg (the only sane PostgreSQL driver for python IMO, using prepared statements by default and such) has some of it's functionality written in C, for performance reasons. Not Cython, actual C that links to CPython. That means no PyPy support.
Okay then.1 -
YGGG IM SO CLOSE I CAN ALMOST TASTE IT.
Register allocation pretty much done: you can still juggle registers manually if you want, but you don't have to -- declaring a variable and using it as operand instead of a register is implicitly telling the compiler to handle it for you.
Whats more, spilling to stack is done automatically, keeping track of whether a value is or isnt required so its only done when absolutely necessary. And variables are handled differently depending on wheter they are input, output, or both, so we can eliminate making redundant copies in some cases.
Its a thing of beauty, defenestrating the difficult aspects of assembly, while still writting pure assembly... well, for the most part. There's some C-like sugar that's just too convenient for me not to include.
(x,y)=*F arg0,argN. This piece of shit is the distillation of my very profound meditations on fuckerous thoughtlessness, so let me break it down:
- (x,y)=; fuck you in the ass I can return as many values as I want. You dont need the parens if theres only a single return.
- *F args; some may have thought I was dereferencing a pointer but Im calling F and passing it arguments; the asterisk indicates I want to jump to a symbol rather than read its address or the value stored at it.
To the virtual machine, this is three instructions:
- bind x,y; overwrite these values with Fs output.
- pass arg0,argN; setup the damn parameters.
- call F; you know this one, so perform the deed.
Everything else is generated; these are macro-instructions with some logic attached to them, and theres a step in the compilation dedicated to walking the stupid program for the seventh fucking time that handles the expansion and optimization.
So whats left? Ah shit, classes. Disinfect and open wide mother fucker we're doing OOP without a condom.
Now, obviously, we have to sanitize a lot of what OOP stands for. In general, you can consider every textbook shit, so much so that wiping your ass with their pages would defeat the point of wiping your ass.
Lets say, for simplicity, that every program is a data transform (see: computation) broken down into a multitude of classes that represent the layout and quantity of memory required at different steps, plus the operations performed on said memory.
That is most if not all of the paradigm's merit right there. Everything else that I thought to have found use for was in the end nothing but deranged ways of deriving one thing from another. Telling you I want the size of this worth of space is such an act, and is indeed useful; telling you I want to utilize this as base for that when this itself cannot be directly used is theoretically a poorly worded and overly verbose bitch slap.
Plainly, fucktoys and abstract classes are a mistake, autocorrect these fucking misspelled testicle sax.
None of the remaining deeper lore, or rather sleazy fanfiction, that forms the larger cannon of object oriented as taught by my colleagues makes sufficient sense at this level for me to even consider dumping a steaming fat shit down it's execrable throat, and so I will spare you bearing witness to the inevitable forced coprophagia.
This is what we're left with: structures and procedures. Easy as gobblin pie.
Any F taking pointer-to-struc as it's first argument that is declared within the same namespace can be fetched by an instance of the structure in question. The sugar: x ->* F arg0,argN
Where ->* stands for failed abortion. No, the arrow by itself means fetch me a symbol; the asterisk wants to jump there. So fetch and do. We make it work for all symbols just to be dicks about it.
Anyway, invoking anything like this passes the caller to the callee. If you use the name of the struc rather than a pointer, you get it as a string. Because fuck you, I like Perl.
What else is there to discuss? My mind seems blank, but it is truly blank.
Allocating multitudes of structures, with same or different types, should be done in one go whenever possible. I know I want to do this, and I know whichever way we settle for has to be intuitive, else this entire project has failed.
So my version of new always takes an argument, dont you just love slurping diarrhea. If zero it means call malloc for this one, else it's an address where this instance is to be stored.
What's the big idea? Only the topmost instance in any given hierarchy will trigger an allocation. My compiler could easily perform this analysis because I am unemployed.
So where do you want it on the stack on the heap yyou want to reutilize any piece of ass, where buttocks stands for some adequately sized space in memory -- entirely within the realm of possibility. Furthermore, evicting shit you don't need and replacing it with something else.
Let me tell you, I will give your every object an allocator if you give the chance. I will -- nevermind. This is not for your orifices, porridges, oranges, morpheousness.
Walruses.16 -
That moment when windows tools can't delete a file and only WSL can.
At this point it's just entertaining for for to see in how many ways windows can break.2 -
MORE WEBDEV ADVENTURES
Took a break for a while due to personal stuff. Just got a job (have to get a stupid work permit from school first to actually be able to work tho), had some shit happen with two close friends that now hate me. Right now I'm upset about something that another really good friend did. So I've been doing some webdev to distract myself for a bit.
So I'm turning my URL bar that I had into a little command bar. It'll be what I use to configure stuff along with URLS and shit. I was building a little config menu that I really hated doing, was just becoming too much of a mess. Currently changing the look of it just a bit, then I'm gonna work on the functionality of it later.
Made my weather divs dynamically generated. Turned like 65 lines in the HTML file to ~20 lines of JavaScript that makes that ~65 lines. And it turns out that it doesn't really affect the loading time at all, which was my original worry. My next task for that is to save the weather predictions so the script doesn't have to grab a whole 14kb file every reload (I know, that part's a little bad). The entire page with the icons and all comes out to ~30kb so far. The icons make up about half of that, but they'll never all be in use because only 5 are on screen at any time and there are 7 total. Plus the fact that one may be in use multiple times (like this very moment actually).
Then I want to have an RSS reader which I've been putting off for a while now. Trying to get everything else done before I do that.
At this very moment, the page takes about 1.4 seconds to load. I'm trying to avoid putting anything I don't need in it. Like I'm using vanilla everything. No frameworks or anything. But that's just my personal preference.
I'll make sure to share it with you guys when I have everything built and functional. I've had a lot of interruptions while doing this. My personal life tends to get in the way of shit I try to do, because I let it get to me.
Anyways I'm just rambling at this point. I fucking love you guys1 -
We have been at a university of applied sciences today with our class.
It was kind of ok. I did expect more surprising things there. The whole building was smaller than our college (not the same as in the US). The rooms, where profs tell you things with a series of rows of seats, were dirty and pretty much used to the point that the seats are about to break easily.
I was expecting the university to be kind of the same as the universities you see in the movies lol.
It could have at least been bigger than our college and more "modern" than our school.
[...]
Anyways, let us get to the point here.
We were first in the foyer and afterwards in their main lecture hall.
We were introduced to the day's plans by a team of engaged students from different study programs and the president of the professors. Yada yada yada.
We got the full program in each room and each individual time span filled with study programs on a sheet of paper.
I did select pharmacy, media production, architecture, data science, applied computer science, computer engineering, mechanical engineering and future energies.
Pharmacy and data science were the most interesting study programs to me. I have asked one of the professors if deep learning was a topic for bachelor students, as well.
He said that that is only the usual case for people who got a promotion.
As an example he told me that yesterday he was at a conference hall with 10.000 people in which he gave a talk about deep learning. "Most of them were professors" he said. "Since this study program is new, it might change in a few years" he added to his conversation.
It is quite hard having to decide now.
Geo informatics and Aerospace Engineering did sound interesting, too.
There are a lot of things I would like to study at the same time haha.
Idk if I should just pick mechanical engineering first and add one or two after it to it. But that would take a lot of time. Geez.7 -
I just been feeling really burned out recently to the point I just feel things are just meaningless. I feel unappreciated at work or by people in my life. I appreciate myself but the pandemic is really getting to me. I had to take a break from studying at times when I couldn't focus or got too out of touch. I'm usually better than this.
I tried reaching out as I continue to put up with my current consulting position, study and job searching when I'm not too burned out. I just feel alone in this. Can anyone relate?3 -
I would like to config a service on Windows to make it rerun a .exe and I ended deleting and adding keys to the Windows registry...
Now everything is broken ans I'm here looking at my computer burning down.
If anyone ever wanted to create a session with a unique application available on it (since this session would be used in a public area) please let me know you've been at this point too, when you wanted to break a wall ! -
Sadly took me a little longer than I’d like to admit to go from well placed print statements to using a debugger. Granted there are times when print statements are needed, but for all the devs out there who are using an IDE with a perfectly good debugger and yet doesn’t use it... please use it. It literally gives you a mapping of all objects and data types around a break point that you can easily glance at to speed up debugging. Go figure!9
-
!rant
My ecig mod (or box how some call it) started to missbehave, it started at random not liking more and more batteries and generally it was good time for replacment. Fast forward, im at shop, and I have few options, i dont want to cheap out becouse I know how it ends, and I want reaible box for longer and I can pay a little more for that.
So there was few quite competetive options, but most of them had build quality i wasnt fan of, some even plastic outter shell, magnets which tend to break off, but their feature list was quite competetive, and there most expensive of all (400 pln +-90ish $) that seller presented me had (seemingly) no features. No menu even. But build quality is solid buttons feel are just better, and it looks like it could survive longer than half a year. Fine, i shell out what it looked missing features for solid build quality.
I go home, rtfm, and wtf? "Before use update firmware with XYZ software". Okay, done. But hmmm what is that?
It has plethoria, absolute TON of customization but from PC program. Hell yeah, that was fucking good choice and seller missed whole selling point of this box. Like literally, he didnt know its best feature. I can go as far as customize entire GUI on that small screen. Its been awhile since I did my last pixelart thingy but monochromatic so not too bad :)4 -
Im exhausted from life honestly. I dont think any vacation will help at this point. If i take vacation it will seem like its never enough. I need more than a vacation. I need a break from... life itself7
-
I always procrastinate a lot, but often it's more like taking a creative break so in fact it can make me more productive once I get back to my desk and start "doing actual work" typing code into my keyboard again.
Procrastination becomes unproductive when I have reasons not to do the work, like it's an rude customer, uncooperative team leader, a useless requirement or involves inappropriate or terrible tech stack and legacy code.
Sometimes all of that comes together, but I found even in that situation when procrastinating on devRant and swearing every other minute, I seemed to be above average compared to my team mates who probably felt the same.
Most of us quit the company at some point of that ongoing project. -
This is an actual transcript...
Since it's way too long for the normal 5000 characters, hence splitting it up...
Infra Guy: mr Dev, could you please give some rational for update of jjb?
Dev: sparse checkout support is missing
Infra Guy: is this support mandatory to achive whatever you trying to do?
Dev: yes
Infra Guy: u trying to get set of specific folder for set of specific components?
Dev: yes
Infra Guy: bash script with cp or mv will not work for you?
Dev: no
Infra Guy: ?
Dev: when you have already present functionality why reinvent the wheel
Dev: jenkins has support for it
Dev: the jjb is the bottle neck
Infra Guy: getting this functionality onto our infra would have some implications
Dev: why should I write bash script if jenkins allows me to do that
Dev: what implications ??
Infra Guy: will you commit to solve all the issues caused by new jjb?
Dev: you show me the implications first
Infra Guy: like a year ago i have tried to get new jjb <commit_url>
Infra Guy: no, the implications is a grey area
Infra Guy: i cant show all of them and they may hit like in week or eve month
Dev: then why was it not tackled
Dev: and why was it kept like that
Infra Guy: few jobs got broken on something
Dev: it will crop up some time later
Dev: if jobs get broken because of syntax
Dev: then jobs can be fixed
Dev: is it not ???
Infra Guy: ofc
Infra Guy: its just a question who will fix them
Dev: follow the syntax and follow the guidelines
Dev: put up a test server and try and lets see
Dev: you have a dev server
Dev: why not try on that one and see what all jobs fails
Dev: and why they fail
Dev: rather than saying it will fail and who will fix
Dev: let them fail and then lets find why
Dev: I manually define a job
Dev: I get it done
Infra Guy: i dont think we have test server which have the same workload and same attention as our prod
Dev: unless you test how would you know ??
Dev: and just saying that it broke one with a version hence I wont do it
Infra Guy: and im not sure if thats fair for us to deal with implication of upgrading of the major components just cause bash script is not good enough for u
Dev: its pretty bad
Infra Guy: i do agree
Infra TL Guy: Dev, what Infra Guy is saying is that its not possible to upgrade without downtime
Infra Guy: no
Dev: how long a downtime are we looking at ??
Infra Guy: im saying that after this upgrade we will have deal with consequences for long time
Infra Guy-2: No this is not testing the upgrade is the huge effort as we dont have dev resources to handle each job to run
Dev: if your jjb compiles all the yaml without error
Dev: I am not sure what consequences are we talking of
Infra Guy: so you think there will be no consequences, right?
Dev: unless you take the plunge will you know ??
Dev: you have a dev server running at port 9000
Infra Guy: this servers runs nothing
Dev: that is good
Dev: there you can take the risk
Infra Guy: and the fack we have managed to put something onto api doesnt mean it works
Dev: what API ?
Infra Guy: jenkins api
Infra Guy: hmmm
Dev: what have you put on Jenkins API ??
Infra Guy: (
Dev: jjb is a CLI
Infra Guy: ((
Dev: is what I understand
Dev: not a Jenkins API
Infra Guy: (((
Dev: (((((
Infra Guy: jjb build xmls and push them onto api
Infra Guy: and its doent matter
Dev: so you mean to say upgrading a CLI is goig to upgrade your core jenkisn API
Dev: give me a break
Infra Guy: the matter is that even if have managed to build something and put it onto api
Infra Guy: doesnt mean it will work
Dev: the API consumes the xml file and creates a job
Infra Guy: right
Dev: if it confirms to the options which it understands
Dev: then everything will work
Dev: I am actually not getting your point Infra Guy
Infra Guy: i do agree mr Dev
Dev: we are beating around the bush
Infra Guy: just want to be sure that if this upgrade will break something
Infra Guy: we will have a person who will fix it
Dev: that is what CICD is supposed to let me know with valid reasons
Dev: why can't that upgrade be done
Infra Guy: it can be done
Infra Guy: i even have commit in place3 -
#Suphle Rant 3: Road to PHP8, Flow travails
Some primer: Flows is a feature that causes the framework to bypass handling the request now but read it from cache. This cache entry is meant to be populated without warming, based on the preceding request. It's sort of like prefetching but done on the back end
While building Suphle, I made some notes on some chapters about caveats and gotchas I may forget while documenting. One such note was that when users make the Flow request, the framework will attempt to determine who user is, using authentication mechanism defined on the first module (of the modular monolith)
Now, I got to this point during documentation and started wondering whether it's impossible for the originating request to have used a different authentication mechanism, which would result in an empty entry for returning user. I *think* it's possible cuz I've got something else called "route mirroring", where web based routes can be converted to API routes. They'll then return JSON, get served under defined API path, use JWT, all automatically. But I just couldn't connect the dots for the life of me, regarding how any of this could impact authentication on the Flow request
While trying to figure out how to write the test for this or whether it was even necessary (since I had no use case), it struck me that since Flow requests are not triggered by an actual user, any code attempting to read authenticated user will see nothing!
I HATE it when I realize there's ambiguity or an oversight, after the amount of attention and suffering devoted. This, along with a chain of personal troubles set off despondency for a couple of days. No appetite for food or talk. Grudgingly refactored in this update over some days. Wrote some tests, not all passed. More pain. May have to convert them to unit tests
For clarity, my expectation is, I built this. Nothing should be impossible for me
Surprisingly, I caught a somewhat lucky break –an ex colleague referred me to the 1st gig I'm getting in 1+ year. It's about writing a plugin for some obscure forum software. I'm not too excited cuz it's poorly documented and I'll have to do a lot of groping, they use arrays instead of objects etc. There's no guarantee I'll find how to implement all client's requirements
While brooding last night, surfing the PHP subreddit, stumbled on a post about using Rector to downgrade a codebase. I've always been interested in the reverse but didn't have any incentive to fret over it. Randomly googled and saw a post promising a codebase can be upgraded with 3 commands in 5 minutes to PHP 8. Piqued my interest around 12:something AM. Stayed up all night upgrading it, replacing PHPSTAN with Psalm, initializing the guy's project, merging Flow auth with master etc. I think it may have taken 5 minutes without the challenge of getting local dev environment to PHP 8
My mood is much lighter than it was, although the battle is not won yet –image tests are failing. For some weird reason, PHP8 can't read generated test images. Hope I can ride on that newfound lease on life to study the forum and get the features working
I have some other rant but this is already a lot to digest in one sitting. See you in rant #4 -
Sydochen has posted a rant where he is nt really sure why people hate Java, and I decided to publicly post my explanation of this phenomenon, please, from my point of view.
So there is this quite large domain, on which one or two academical studies are built, such as business informatics and applied system engineering which I find extremely interesting and fun, that is called, ironically, SAD. And then there are videos on youtube, by programmers who just can't settle the fuck down. Those videos I am talking about are rants about OOP in general, which, as we all know, is a huge part of studies in the aforementioned domain. What these people are even talking about?
Absolutely obvious, there is no sense in making a software in a linear pattern. Since Bikelsoft has conveniently patched consumers up with GUI based software, the core concept of which is EDP (event driven programming or alternatively, at least OS events queue-ing), the completely functional, linear approach in such environment does not make much sense in terms of the maintainability of the software. Uhm, raise your hand if you ever tried to linearly build a complex GUI system in a single function call on GTK, which does allow you to disregard any responsibility separation pattern of SAD, such as long loved MVC...
Additionally, OOP is mandatory in business because it does allow us to mount abstraction levels and encapsulate actual dataflow behind them, which, of course, lowers the costs of the development.
What happy programmers are talking about usually is the complexity of the task of doing the OOP right in the sense of an overflow of straight composition classes (that do nothing but forward data from lower to upper abstraction levels and vice versa) and the situation of responsibility chain break (this is when a class from lower level directly!! notifies a class of a higher level about something ignoring the fact that there is a chain of other classes between them). And that's it. These guys also do vouch for functional programming, and it's a completely different argument, and there is no reason not to do it in algorithmical, implementational part of the project, of course, but yeah...
So where does Java kick in you think?
Well, guess what language popularized programming in general and OOP in particular. Java is doing a lot of things in a modern way. Of course, if it's 1995 outside *lenny face*. Yeah, fuck AOT, fuck memory management responsibility, all to the maximum towards solving the real applicative tasks.
Have you ever tried to learn to apply Text Watchers in Android with Java? Then you know about inline overloading and inline abstract class implementation. This is not right. This reduces readability and reusability.
Have you ever used Volley on Android? Newbies to Android programming surely should have. Quite verbose boilerplate in google docs, huh?
Have you seen intents? The Android API is, little said, messy with all the support libs and Context class ancestors. Remember how many times the language has helped you to properly orient in all of this hierarchy, when overloading method declaration requires you to use 2 lines instead of 1. Too verbose, too hesitant, distracting - that's what the lang and the api is. Fucking toString() is hilarious. Reference comparison is unintuitive. Obviously poor practices are not banned. Ancient tools. Import hell. Slow evolution.
C# has ripped Java off like an utter cunt, yet it's a piece of cake to maintain a solid patternization and structure, and keep your code clean and readable. Yet, Cs6 already was okay featuring optionally nullable fields and safe optional dereferencing, while we get finally get lambda expressions in J8, in 20-fucking-14.
Java did good back then, but when we joke about dumb indian developers, they are coding it in Java. So yeah.
To sum up, it's easy to make code unreadable with Java, and Java is a tool with which developers usually disregard the patterns of SAD. -
One day I decided I wanted to build robots.
And not kidding the reason I wanted to build them was because I wanted someone interesting to talk to and stil not kidding I even fantasized about a robot girlfriend... Lame I know I think I was a lonely little guy back then, though even after 7 years or so it doesn't feel as though it's that long ago. Maybe because things didn't change that much. Which is worrying but it's not the topic so I will pass on that future-past worries bullcrapper. After learning how robots worked and what made them function so things gradually led up to me being more interested in machine learning applications and software. I learned Arduino at first, I think I still have some messy circuits and old arduinos around. I only finished one robot though and it couldn't even support it's own weight. The servo motors were taking too many amps that heated up the little arduino even with a fan attached. Provably I should have made use of mechanics for robots books and calculated things first. But even though it couldn't walk properly I still felt success and I loved it like my own kid (me taking it apart was questionable but believe me). After that I focused more on writing code than using my hands to make things which was a pain in the ass if I might add.
After learning arduino and making that failed project of mine. I then picked up C++ wrote hello world program usual things a starter would do. It was the language I wrote my first game which I finished and this time it worked. But I never released it which was partly because I didn't want to spend a hundred bucks on a license for the engine and I also knew that it was a shit game. If I were to describe; lines in different colors come from the top you need to hit the lines with the same colored columns to break them. The columns changed their height and location on random. The lines sped up and gap between them decreased. Now that I think about it it wasn't half bad. But the code was written in game maker studio's version of C so I have no way to salvage it.
But I learned a lot of things from that project and that was the goal, so I would call it a win. I don't remember but after sometime I switched to python. And I'm glad I did, it's fun to code in which was the main reason I coded in the first place. Fun.
Life happens and time passes,
Now I'm waiting to enter college exams in a few months after hopefully passing them. My goal is to get into computer engineering which will be extremely challenging because it's the highest point department in the university I'm aiming at. But hey if the challenge is great the reward is greater right ? To be honest I'm still not sure about my career path. Too many choices. So I will just let my own road called <millions of similarly random events that are actually caused by deterministic reactions, to affect you and your surroundings leading up to a future which only the Laplace's demon can forsee> guide me. Wish me luck.1 -
This is interesting from a troubleshooting point of view. I have a decent laptop I use to play Fallout 4. It was running just fine until recently. The game will spike GPU activity and crash. I found if I reduced settings and lower resolution it happens less often.
I kept searching and finally found someone saying it could be GPU thermal compound has worn out. So I looked how to change that on a laptop. The video I found it looked fairly easy.
I get into my laptop and I find all the screws for the heatsink/head pipe assembly. However there is a ton of thermal tape used everywhere holding it all down. I think if I am not careful I will break the heat sink. I did pull on the main part and it just didn't want to give.
Feeling a bit defeated as I put everything back together. I had gotten some decent thermal compound for this. So I fire up the game and it runs fine at the low settings. Then I raise all the settings to max with max resolution. This was crashing the game the last few days. It just runs and runs fine on those settings. GPU temps look normal (they did before, but I wanted to see). So, all I can think the act of lifting the heat sink a small amount may have reseated the thermal compound a bit. I am still going to price out a professional doing this, but I can play on max settings again. Maybe messing with screws on GPU and slightly moving the heat sink actually did something.
This confirms to me that something needs done about the thermal compound. The company I bought the laptop from offered custom thermal compound at time of purchase. So I am thinking they can do this for me. It will be cheaper to pay a couple hundred bucks to have a pro do this rather than pay $1800 for a new computer. This is only 2 1/2 years old. It has been a top performer up til now.6 -
How do you think about unit testing/TDD when writing apps? (I'm working this at 3am so might be a bit messy... Just a thought I woke up to).
Whenever I write an app, I don't write unit tests but as I'm developing I may create test functions for specific parts that I run to validate a specific component is working before moving onto the next.
So first, when I get a problem, break it up into components based on the requirements. It's usually sort of input, processor, output sequence.
Where the processor is essentially the core app. And so I start coding it, referring to the input thru an interface, model objects, adding fields as I go along (assume no matter what the input, I will get these before the logic is called). I may add some more interfaces as well for other data I may need but I know won't be going in the first input.
So I write all the logic, functions needed to get a basic app to run that does what I am writing the app for.
Only then do I write a test functions passing in different parameters to make sure the logic and response is what I want and making fixes as necessary. At that point I basically have the simplest version of the app.
(I guess this is sort of like mocking?)
Then build outwards implementing and testing components as I go along and may do some simple refactoring/redesign. (I guess all these tests are functional then, have to start the whole app).
And finally when I have the basic requirements fully complete I will add the "nice to haves" on top via refactoring of specific logic in specific components. Again testing by running the app maybe with simple inputs.
I guess now I'm thinking how do you write unit tests/TDD if the app keeps changing (via adhoc refactorings) as you are creating it? -
!Dev rant
So tired of meeting people in my generation who literally live to just freeload. Like some of us are actually trying to get shit done in life and yet here you are, just being a lazy fuck who for some reason thinks they're still in highschool and need to not give a god damn shit about anything else.
I've basically got to a point in my life where I have no idea why am I friends with someone thinks it's okay to punch another grown man in the balls after they changed a song, get to a yelling match with another person over a boardgame, sit in the one way that will definitely break the fucking couch.
But then!!!
When I'm at your house, and I change the music on the Spotify, you kick me out because I'm crossing the line? Also, they almost kicked my friend for wearing the wrong shirt (it had minions on it, they hated that movie)... The fuck.
Like you want respect, buddy you gotta earn it. You literally live off welfare and your parents and your girlfriend parents money. You are a fully capable non disabled straight white male, who hasn't aimed higher in their professional life whatsoever. I know people who had every sad story in the book thrown at them, and yet they have achieved twice what you did.
And after all of that, you feel like it's your right to be a shithead, and tell others how to act.
Go fuck yourself.2 -
Coming back from a break and I'm fixing some minor bugs in an app I'm developing.
The simulator runs the app perfectly.
Builds to android and iOS;
Shows splash screen then nothing...
No error messages...
The worst part is I didn't change any of the code in the files that are meant to be running at this point.
I'm very confused rn!6 -
Here's a story about why putting util functionality in a generic parent class is baaaad. So we run into a bug where an online shop module we develop causes a third party module to break the entire site until the session expires.
We track the bug down to the fact that the third party module has added some functionality to the part of the shop that deals with the cart and that functionality expects that one of the module's libraries is initialized. But as it turns out another of that module's libraries that is loaded earlier is fetching the cart and thus triggers our module which adds gifts to it.
Now, since we need a deeper integration with the cart to make gifts depend on the cart contents we call the part of it that now depends on the third party module's unloaded library.. So we think changing the order the third party libraries are loaded will fix the issue, only to discover the unloaded one is a child class of the first and the cart is fetched in the parent constructor. The parent of course then turns out to be a generic util class, inherited by all the module's libraries, so whatever order we load them in, the constructor is always called, so we had no other choice but to dynamically disable our module during the initialization of those libraries and then patch the updated cart contents into them after they've all been initialized.
At this point we get curious what that module's doing with the cart contents only to discover.. nothing. It's just that the parent class is full of utils and data fetching that the vendor reuses in all their modules.. -
In reply to this:
https://devrant.com/rants/260590/...
As a senior dev for over 13 years, I will break you point by point in the most realistic way, so you don't get in troubles for following internet boring paternal advices.
1) False. Being go-ahead, pro active and prone to learn is a good thing in most places.
This doesn't mean being an entitled asshole, but standing for yourself (don't get put down and used to do shit for others, or it will become the routine) and show good learning and exploration skills will definitely put you under a good light.
2)False. 2 things to check:
a) if the guy over you is an entitled asshole who thinkg you're going to steal his job and will try to sabotage you or not answer acting annoyed, or if it's a cool guy.
Choose wisely your questions and put them all togheter. Don't be that guy that fires questions in crumbles, one every 2 minutes.
Put them togheter and try to work out the obvious and what can be done through google or chatgpt by yourself. Then collect the hard ones for the experienced guy and ask them all at once. He's been put over you to help you.
3) Idiotic. NO.
Working code = good code. It's always been like this.
If you follow this idiotic advice you will annoy everyone.
The thing about renaming variables and crap it's called a standard. Most company will have a document with one if there is a need to follow it.
What remains are common programming conventions that everyone mostly follows.
Else you'll end up getting crazy at all the rules and small conventions and will start to do messy hot spaghetti code filled with syntactic sugar that no one likes, included yourself.
4)LMAO.
This mostly never happens (seniors send to juniors) in real life.
But it happens on the other side (junior code gets reviewed).
He must either be a crap programmer or stopped learning years ago(?)
5) This is absolutely true.
Programming is not a forgiving job if you're not honest.
Covering up mess in programming is mostly impossible, expecially when git and all that stuff with your name on it came out.
Be honest, admit your faults, ask if not sure.
Code is code, if it's wrong it won't work magically and sooner or later it will fire back.
6)Somewhat true, but it all depends on the deadline you're given and the complexity of the logic to be implemented.
If very complex you have to divide an conquer (usually)
7)LMAO, this one might be true for multi billionaire companies with thousand of employees.
Normal companies rarely do that because it's a waste of time. They pass knowledge by word or with concise documentation that later gets explained by seniors or TL's to the devs.
Try following this and as a junior:
1) you will have written shit docs and wasted time
2) you will come up to the devs at the deadline with half of the code done and them saying wtf who told you to do that
8) See? What an oxymoron ahahah
Look at point 3 of this guy than re-read this.
This alone should prove you that I'm right for everything else.
9) Half true.
Watch your ass. You need to understand what you're going to put yourself into.
If it's some unknown deep sea shit, with no documentations whatsoever you will end up with a sore ass and pulling your hair finding crumbles of code that make that unknown thing work.
Believe me and not him.
I have been there. To say one, I've been doing some high level project for using powerful RFID reading antennas for doing large warehouse inventory with high speed (instead of counting manually or scanning pieces, the put rfid tags inside the boxes and pass a scanner between shelves, reading all the inventory).
I had to deal with all the RFID protocol, the math behind radio waves (yes, knowing it will let you configure them more efficently and avoid conflicts), know a whole new SDK from them I've never used again (useless knowledge = time wasted and no resume worthy material for your next job) and so on.
It was a grueling, hair pulling, horrible experience that brought me nothing in return execpt the skill of accepting and embracing the pain of such experiences.
And I can go on with other stories. Horror Stories.
If it's something that is doable but it's complex, hard or just interesting, go for it. Expecially if the tech involved is something marketable.
10) Yes, and you can't stop learning, expecially now that AI will start to cover more and more of our work.4 -
Why does GDB always set the bloody break point one line above or below where I want it to be. This is driving me nuts. It's like its author deliberately planted a nasty practical joke in the code.3
-
So there is this one teacher/dev where I just had a lecture. And I easily can say he is one of the best programming teachers I had so far. Not that what he says is a hundred percent correct (heavily influenced by his opinion, ex. Singleton being a good pattern), but he motivates you to think about what you do and the lecture. He saw that no one was following and said that no one could probably remember the start of the lecture and he was damn right.
He's just so open about it and said that it doesn't matter and you have to go home and practice. At the start he said that we all are programmers and not software developers. Explaining the difference and showing funny pictures. A fucking spoon build out of a fork and a plastic cup. But not reusable at all and might break when overheated by the soup. Genius explanation of the difference. On the other side was a spoon which could be hung up on the edge of the bowl without overhearing the end so you don't burn your hand. That is software developing.
Now the point is that I got a bit mad when he said no one here could develop software and when he asked if someone can explain what a pattern is it was my time to shine. Boom, on point explanation and a complement from him following in the question where I got the knowledge from and why I could explain specific patterns. The answer was a simple 'I learn about software developing and engineering in my free time' and then he just said that I'm a nerd. I was so proud and ashamed at the same time.
Long story short: be proud of us. Geeks and nerds are nice persons and I might just have earned some respect among my friends.
I just realized this is a rather long and unstructured rant but I really felt like sharing that little achievement of being recognized. -
"Designers tend to overvalue differentiation and originality. We are taught this in design school. The best solutions are created ex nihilo, break new ground, resemble nothing else in the world. Everyone wants to stand out, or else what’s the point? But this isn’t true. Most people don’t want to stand out. They want to fit in. More precisely, they want to fit in with the people they like, or want to be like." - Michael Bierut
-
I am accessing the development server via remote desktop, currently maintaining a win forms app on visual studio. there is that one form which when a break point is hit the whole screen freeze and doesn't respond until you minimize the remote desktop and maximize back. just in this form, not the others. it's reproducable.
it's a gem if you ask me, I show it to everyone I know. -
People, help me out.
(first some abstract thoughts)
I am a final year undergrad yet to take steps in the world and i am trying to figure out what to do with my time, what my end goal and next steps should be.
As of now I think my end goal is "relaxation , peace and happiness of me and my loved ones", and to reach there , i need money.
My younger self chose engineering for a particular reason(that i vaguely remember) and weather it was a right or wrong/illogical decision, i guess i am stuck with it and have to use this only to reach my end goal.
Maybe i am regretting this and want to change. Maybe i am just a lazy ass who is bad in his assigned role of an engineer and is running towards glitter in other fields, whatever it is , i am not going against the decision of my past and accepting my identity as an engineer.
I believe once i am able to achieve my goal( that am still not sure about but overall is a good one from general perspective), i guess i will be satisfied
------------------------------------------------
(enough with the deep stuff)
I want to learn how to "learn" . like i am always conflicted about what to do next once the tutor leaves my hand.
for eg, let's say i goto a site abc.
1. They got 1 course each for android , web dev and ai. I choose the web dev course and give my hardworking attention to it
( At this point my choice is usually based on the fact that <A> i should not be stupid to buy all 3 course even if i have money/desire to buy all of em because riding 2 horses is only going to break my ass and <B> some pseudo stats like whichever got more opportunity, which i "like", etc(Point B is usually useless in the long run i guess) )
2. From what i have experienced, these courses usually have a particular list of topic that they cover and apply them to 1 or 2 projects. For eg, say that my web dev course taught me 20 something concepts of basic html/css/js/server and the instructor applied it to blog website
BUT WHAT IS NEXT ?
2.1.
>> Should I make more projects using only those particular list of concepts?
I usually have a ton of ideas that i want to implement now that i know how to build a blog site.
say i got a similar idea to make say url shortner. I start with full enthusiasm but in the middle way there is some new thing that i don't know and when i search the internet, i realize that there are 5 ways to implement such concept, making me wander off towards a whole list of concepts that were not covered in my original 20 concept course. This makes the choice 2. 2
2.2
>> Should I just leave everything , go to docs and start learning concepts from the scratch ??
Usually when i start a project, i soon realize that the original 20 concepts were just the tip of iceberg and there are a ton of things one should know, like how os works, how a particular component interacts with another, how the language is working, how the compiler is executing, etc .
At that point i feel like tearing all my notes away, and learning every associated thing from the scratch. No matter how much my project suffers, i want to know how the things are working from the bottom , like how the requests are being mad, how the routes are working, etc which might not even be relevent for the project.
Why i want to follow approach 2? because of the Goal from abstract thoughts. in theory, having deep knowledge is going to clear my interview thereby getting me a good job.
I will get good money, make projects faster and that will be a happily ever after story.
But in practical this approach is bringing me losses and confusion. every layer of a particular thing i uncover, turns out there is another layer below that. The learning never stops. Plus my original project remained incomplete.
What is your opinon, how do you figure out what to do next?8 -
Critical Tips to Learn Programming Faster Sample:
Be comfortable with basics
The mistake which many aspiring students make is to start in a rush and skip the basics of programming and its fundamentals. They tend to start from the comparatively advanced topics.
This tends to work in many sectors and fields of Technology, but in the world of programming, having a deep knowledge of the basic principles of coding and programming is a must. If you are taking a class through a tutor and you feel that they are going too fast for your understanding, you need to be firm and clear and tell them to go slowly, so that you can also be on the same page like everyone else
Most often than not, many people tend to struggle when they reach a higher level with a feeling of getting lost, then they feel the need to fall back and go through basics, which is time-consuming. Learning basics well is the key to be fast and accurate in programming.
Practice to code by hand.
This may sound strange to some of you. Why write a code by hand when the actual work is supposed to be done on a computer? There are some reasons for this.
One reason being, when you were to be called for an interview for a programming job, the technical evaluation will include a hand-coding round to assess your programming skills. It makes sense as experts have researched and found that coding by hand is the best way to learn how to program.
Be brave and fiddle with codes
Most of us try to stick to the line of instructions given to us by our seniors, but it is extremely important to think out of the box and fiddle around with codes. That way, you will learn how the results get altered with the changes in the code.
Don't be over-ambitious and change the whole code. It takes experience to reach that level. This will give you enormous confidence in your skillset
Reach out for guidance
Seeking help from professionals is never looked down upon. Your fellow mates will likely not feel a hitch while sharing their knowledge with you. They also have been in your position at some point in their career and help will be forthcoming.
You may need professional help in understanding the program, bugs in the program and how to debug it. Sometimes other people can identify the bug instantly, which may have escaped your attention. Don't be shy and think that they'll make of you. It's always a team effort. Be comfortable around your colleagues.
Don’t Burn-out
You must have seen people burning the midnight oil and not coming to a conclusion, hence being reported by the testing team or the client.
These are common occurrences in the IT Industry. It is really important to conserve energy and take regular breaks while learning or working. It improves concentration and may help you see solutions faster. It's a proven fact that taking a break while working helps with better results and productivity. To be a better programmer, you need to be well rested and have an active mind.
Go Online
It's a common misconception that learning how to program will take a lot of money, which is not true. There are plenty of online college courses designed for beginner students and programmers. Many free courses are also available online to help you become a better programmer. Websites like Udemy and programming hub is beneficial if you want to improve your skills.
There are free courses available for everything from [HTML](https://bitdegree.org/learn/...) to CSS. You can use these free courses to get a piece of good basic knowledge. After cementing your skills, you can go for complex paid courses.
Read Relevant Material
One should never stop acquiring knowledge. This could be an extension of the last point, but it is in a different context. The idea is to boost your knowledge about the domain you're working on.
In real-life situations, the client for which you're writing a program for possesses complete knowledge of their business, how it works, but they don't know how to write a code for some specific program and vice versa.
So, it is crucial to keep yourself updated about the recent trends and advancements. It is beneficial to know about the business for which you're working. Read relevant material online, read books and articles to keep yourself up-to-date.
Never stop practicing
The saying “practice makes perfect” holds no matter what profession you are in. One should never stop practicing, it's a path to success. In programming, it gets even more critical to practice, since your exposure to programming starts with books and courses you take. Real work is done hands-on, you must spend time writing codes by hand and practicing them on your system to get familiar with the interface and workflow.
Search for mock projects online or make your model projects to practice coding and attentively commit to it. Things will start to come in the structure after some time.4 -
Just had a memory popup about my uni days about 5 years ago. I was in my Junior year in business school and was doing a "consulting" project involving the whole Class (200 students). Groups of 4 were assigned an international company in either Europe, Asia, or South America. We'd visit them (as well as do some sightseeing) and learn about them (performance, market positions, products) during Spring Break and come up with a real proposal. We would then compete with other teams, and the winning pitchs for each would be presented in the school auditorium in front the entire class.
Our team didn't get that far but that's not the point. We did win the individual classroom competition. Our company was Deutsche Telekom (owner of T-Mobile).
This was in 2010, when the iPhone/smart-phones started to become mainstream... And our team's idea was location-based advertising.
Looking back, we basically predicted the future... though we got the wrong industry...
It's also sort of funny though because I remember the main reason we came up with the idea was to be different.
All other teams just went with some expansion plan to a neighboring country or cutting costs.... pure MBA/business plan. But I guess I was being a natural techie so thought of a tech idea instead.
We had a meeting with our professor after he picked us and he told us he had a history of spotting future hits. We were like "hm... ok... let's give it a shot... we definitely got an A!" but at that point I was sort of skeptical if this would actually work in real-life (the basic idea was they would sell ads to local businesses and if you were nearby, you would get a text message with an offer).
But guess he was pretty right... we just needed to have Google or Facebook to have been our company... though Groupon or Yelp works too... basically a tech company with larger scale rather than a mobile carrier...1 -
floating point numbers are workarounds for infinite problems people didn’t find solution yet
if you eat a cake there is no cake, same if you grab a piece of cake, there is no 3/4 cake left there is something else yet to simplify the meaning of the world so we can communicate cause we’re all dumb fucks who can’t remember more than 20000 words we named different things as same things but in less amount, floating point numbers were a biggest step towards modern world we even don’t remember it
we use infinity everyday yet we don’t know infinite, we only partially know concept of null
you say piece of cake but piece is not measurement - piece is infinite subjective amount of something
everything that is subjective is infinite, like you say a sentence it have infinite number of meanings, you publish a photo or draw a paining there are infinite number of interpretations
you can say there is no cake but isn’t it ? you just said cake so your mind want to materialize something you already know and since you know the cake word there is a cake cause it’s infinite once created
if you think really hard and try to get that feeling, the taste of your last delicious cake you can almost feel it on your tongue cause you’re connected to every cake taste you ate
someone created cake and once people know what cake is it’s infinite in that collection, but what if no one created cake or everyone that remember how cake looks like died, everything what’s cake made of extinct ? does it exist or is it null ? that’s determinism and entropy problem we don’t understand, we don’t understand past and future cause we don’t understand infinity and null, we just replaced it with time
there is no time and you can have a couple of minutes break are best explanations of how null and infinite works in a concept of time
so if you want to change the world, find another thing that explains infinity and null and you will push our civilization forward, you don’t need to know any physics or math, you just need to observe the world and spot patterns10 -
I'm actually in the middle of an impossible deadline and I just needed a break. I'm in a third world country that basically doesn't have any decent internet infrastructure. But that isn't really the problem. The problem was that we couldn't really learn online for a long while and once we had that going, all the CS teachers decided that we should be doing our final, defensible projects within 2 weeks notice (even though we didn't really have the time or the appropriate knowledge to do it) and so it was all basically a struggle where you'd have 3 or less days to shit out some kind of program for one subject and then immediately get to work on another. At this point I might just need a gap year...
-
Self-isolation takes its toll on people's lives and, naturally, on interviews for our platform . So, a technical interview with a DevOps engineer at Zoom. The candidate started to surprise us already in the first minutes of the meeting. To begin with he apparently decided that the formality was enough at the first stage of the interview and decided to talk to the technical experts in a T-shirt and lying on the couch. That would have been fine, but in the middle of the interview his caring wife came in and insisted that the husband should eat his sandwiches and drink his tea. The candidate tried to remain unperturbed and undistracted, but his short "no", "don't want to", "come on!" didn't take effect. At one point, the applicant's wife escalated the tone of the conversation and threw a sandwich at him, promising to do the same with the tea. The supervisor and I became worried about the candidate and already in the voice of his wife began to persuade him to take a break for an afternoon snack. And such stressful interviews happen, and not at the company's initiative.7
-
Suddenly, I find myself in a crossroad situation. I have been offered a position which would align perfectly with my career path aspirations (cloud solutions architect) with double the pay to my current salary. If only those were the only variables in this equation, taking the offer would be a no-brainer. Alas, it is never that simple (unless all you care about are pay and career path, of course)…
So, let’s break it down to pros and cons of jumping ship, shall we?
Pros:
- double pay compared to current salary
- aligns with my career aspiration
- part of a team of cloud solutions architects (mentorship opportunities)
- varying projects (position is at a consultancy firm)
- shares of the company come with the position ($$$ if it grows)
- possibility to influence strategic decisions
- no more 2h+ commutes
Cons:
- it’s a consultancy startup (emphasis on both consultancy and startup)
- 100% wfh
- would mean losing my current team where we are well and truly glued together and have such great vibes (and I value this, very very highly - this really is the main con)
- would mean losing my current work environment, where we have a gym and sauna at the office etc all kinds of stuff that support my athletic lifestyle
- would mean I don’t have as many opportunities to visit my parents anymore (since they live close to my current office but not close to me)
- at my current position I have super interesting projects both ongoing and in the horizon for a long time to come
- would mean eating my words (see previous point, and the fact I’ve said to my TM ”I can see myself staying as long as this job offers me opportunities to keep learning skills that are meaningful to me”), and I value my integrity
- would mean leaving my colleagues in quite a hairy spot, effectively betraying them in my mind (when our lead dev jumped ship a few years ago, he left us in quite a limbo and hands full of shit we didn’t know what to do about… I don’t wish that situation for anyone)
So, to sum it up, my reasons to stay are more those of moral integrity and convenience, well as the will to see the wheels I got rolling to the end, whereas my reasons to go are more personal finances and career oriented. A difficult decision. What to do?14 -
visit the corporate elearning portal to do the mandatory trainings.. open browser, go to the page, login. start the training, then a quiz question pops up...
my IT sense tingling... open browser's developer tools, starts checking the HTML and JS source... then suddenly found something like this:
isCorrect = selected.join() === anwsers.join()
placed break point, put in random anwser, checked watch... (heartbeat increasing)
see the value is FALSE. Changed to TRUE manually, resume code...
Thank you, your anwser is correct!
WTF? I don't consider myself as a developer, but it's still hurts...1 -
"I love the comment, 'You must love designing for a living.' At that point I usually start to laugh or break into uncontrollable tears." - Andrew Lewis
-
question to my male homies (or ladies too, if you are equally violent) hey what are your thoughts about someone fucking with your priced possession? you might not have a generic answer, so here are some specific scenarios:
1. some random drunk guy intentionally keys your car/breaks a headlight and you see it.
2. some guy teases /touches your girl/wife/SO/kid inappropriately.
3. some guy drops your phone and breaks screen.
my personal angry reaction for above things could go from either slapping/punching a guy to possibly do him a permanent damage (break arm,leg,nose,hand etc). i am not a violent guy , but some things matter more than a crime i guess (although, does it really count as a crime tho?)
i feel we can give a very these violent reaction for 2 reasons : these possessiona are so damn expensive that we genuinely get hurt and want an instant revenge and secondly we don't trust the judiciary to give a worthy punishment
i asked a friend of mine a simialar question and his violence meter is even lesser. he (20 at that time) once slapped his 50 year old neighbour coz they entered his home and started shouting at his dad, another time caused a big scene on a T-point as an auto driver accidentally dented his car while turning (the car was 2 days old)13 -
It’s been a while since I have posted here but I felt like I want to rant without any thought of being judged.
I had take a break from work and it was working well for me. I had my ups and downs. I was always working on something but on the outside everyone just assumed that I did nothing.
I had other personal incidents that affected me. I started to get trigger with my environment and how much ever effort I made to make it lower it was still triggering.
For that reason I thought to pick up course in a different country and work on myself w/o these triggers existing.
Even though I have a plan to get started to work on things. There is this huge heaviness in my head that doesn’t seem to go away. It makes me doubt wether I am good enough to be a developer.
The previous two companies that I worked for keep reaching out to me to join them back but it still doesn’t feel like enough.
I think I am just scared to fail at this point.
Plus with everyone constantly asking me about the recession it’s adding up to my cloudy head.
I know this cloudy feeling is temporary but it’s this that stops me from being an optimal person and that mildly infuriates me. -
I have never seen core coding questions here so this is one of my shots in the dark-- this time, because I have a phobia for stackoverflow, and specifically, discussing this objective among wider audience
Here it goes: Ever since elon musk overpriced twitter apis, the 3rd-party app I used to unfollow non-followers broke. So I wrote a nifty crawler that cycles through those following me and fish out traitors who found me unpleasant enough to unfollow. Script works fine, I suspect, because I have a small amount I'm following
The challenge lies in me preemptively trying to delete some of the elements before the dom can overflow. Realistically, you want to do this every 1000 rows or so. The problem is, tampering with the rows causes the page's lazy loader to break. Apparently, it has some indicator somewhere using information on one of the rows to determine details of the next fetch
I've tried doing many things when we reach that batch limit:
1) wiping either the first or last
2) wiping only even rows
3) logging read rows and wiping them when it reaches batch limit
4) Emptying or hiding them
5) Accessing siblings of the last element and wiping them
I've tried adding custom selectors to the incoming nodes but something funny occurs. During each iteration, at some point, their `.length` gets reset, implying those selectors were removed or the contents were transferred to another element. I set the MutationObserver to track changes but it fetches nothing
I hope there are no twitter devs here cuz I went great pains to decipher their classes. I don't want them throwing another cog that would disrupt the crawler. So you can post any suggestions you have that could work and I will try it out. Or if it's impossible to assist without running the code, I will have no choice but to post it here4 -
i am so fucking conflicted right now. seeing my fiture getting ruined in front of my present eyes. Life always gives me a chance to jump out of a ship that's about to fucking blow , i took it the first time, but this time i missed it for bravery ( and stupidity), and now am sinking alongside this fucking ship
my first job was amazing. decent work, sometimes a lot and sometimes too less. i would learn new things ,interact with people, handle a lot of fuckups . at one point i felt like looking for another opportunity , got one giving 50% hike , so i jumped the ship and sent a resignation letter. the noitice peripd was less, so i enjoyed my days applying to other ships. got even a better offer with 100% hike, so from one boat to another to now a literal cruise.
later i got to know that my original company got bankrupt and fired 85% staff. the next month the company that gave me the first offer layed off 30% staff.
now the waters are tough and my cruise is also getting impacted. but instead of firing, they are asking us to come to the office permanently. their office is in a fucked up place: you need 8$ just to breath the fucking air there. its the city of blood and money. and you will be giving away both things there.
my brain got split into 2 parts after this announcement: my stupid self was still considering this while my sensible self started applying for jobs. my stupid self was thinking that this is a great opportunity to leave my fucking nest of a home , where i am liv8ng woth my parents for last 25 years, and learn to live alone. clean utensils, cook food , wash clothes... i wanted to live the life the harsh way.
but life still took a pity on the fool that j am and gave me an opportunity. an opportunity to work with a big brand who hasn't done any layoffs in their 40+ yrs of existence (but also known for giving shit increments)
the offer was just a 40% hike but it was near my home. i could be in office in 1 hr in less than a dollar a day and still earn more than what am earning now.
plus my notice period is now 60 days , so who knows what other offer i could have got in those 60 days ( when i would keep my profile with a big green "immediately available to hire" circle on me.
however this time i didn't jump the boat. i asked them for a bigger raisez they declined and my stupid self was more than happy.
now the company has started to send mails regarding relocation and yepp the cruise is sinking , atleast for me. if i was savingsx in this company, my savings would become x/8 if i go to that city. in the new offer it would have at worst remained x.
and that's not even half of what's bothering me. i had accepted the money loss in exchange of what that city and my company had to offer : a chance to experience WFO, a chance to live life like a mature man and not a kid in his mom's house ,and a life full of hurdles and strangers.
however i always like to keep an emergency fallback mechanism on me , for if things don't work out. I don't wanna go depressed and cut my wrists there, I don't want people to hurt me so much that I can't recover. i want to run away from that wreched city the moment i start to loose the battles there and the city starts taking over me.
but what the holy fuck? my company's notice period is 60 days, and my rented room's security deposit is 6 fucking months? i will be giving 6 months of deposit + 1 month of brokerage + 1month of rent on the first day i put my steps on that wretched land after travelling in a 100 dollar flight! where am i supposed to get this much money?!
and okay, somehow i manage this. say i did an 11 months agreement, paid the fucking 8 months of rent at one go and simply started living a shitty life there. in month 2 i break down and wanted to implement my escape mechanism. it would go like this : i will suck up and try to live for rent free for next 6 months. but wait, THAT'S NOT FUCKING ALLOWED!! iam supposed to get my security AFTER 11+1 MONTHS!! why not freaking adjust it in my rent?
I can't think straight . 6 months of security deposit has blown my brain. i am regretting anything and everything. I can't think of my roommates situation, home safety, room location, whatever the fucks we think while looking for a room . all i can think is ...WHY SO MUCH MONEY NEEDS TO GO AT ONCE!?
FUCK1 -
I search for a problem. Write down all of its aspects. Write down the process I would like to implement for each aspect.
At this point I ask myself which language/db/library... is compatible with my processes. I write down all the data types I would probably need and a rough outline for the ui.
After that I just start coding and go with the flow 3 rewrites later I need a break.
Not very efficient start. -
How do you deal when you are overpromising and underdelivering due to really shitty unpredictable codebase? Im having 2-3 bad sprints in a row now.
For context: Im working on this point of sale app for the past 4 months and for the last 3 sprints I am strugglig with surprises and edgecases. I swear to god each time I want to implement something more complex, I have to create another 4-5 tickets just to fix the constraints or old bugs that prevent my feature implementation just so I could squeeze my feature in. That offsets my original given deadlines and its so fucking draining to explain myself to my teamlead about why feature has to be reverted why it was delayed again and so on.
So last time basically it went like this: Got assigned a feature, estimated 2 weeks to do it. I did the feature in time, got reviewed and approved by devs, got approved by QA and feature got merged to develop.
Then, during regression testing 3 blockers came up so I had to revert the feature from develop. Because QA took a very long time to test the feature and discover the blockers, now its like 3 days left until the end of the sprint. My teamlead instantly started shitting bricks, asked me to fix the blockers asap.
Now to deal with 3 blockers I had to reimplement the whole feature and create like 3 extra tickets to fix existing bugs. Feature refactor got moved to yet another sprint and 3 tickets turned into like 8 tickets. Most of them are done, I created them just to for papertrail purposes so that they would be aware of how complex this is.
It taking me already extra 2 weeks or so and I am almost done with it but Im going into really deep rabbithole here. I would ask for help but out of other 7 devs in the team only one is actually competent and helpful so I tried to avoid going to him and instead chose to do 16 hour days for 2 weeks in a row.
Guess what I cant sustain it anymore. I get it that its my fault maybe I should have asked for help sooner.
But its so fucking frustrating trying to do mental gymnastics over here while majority of my team is picking low hanging fruit tasks and sitting for 2 weeks on them but they manage to look good infront of everyone.
Meanwhile Im tryharding here and its no enough, I guess I still look incompetent infront of everyone because my 2 weeks task turned into 6 weeks and I was too stubborn to ask for help. Whats even worse now is that teamlead wants me to lead a new initiative what stresses me even more because I havent finished the current one yet. So basically Im tryharding so much and I will get even extra work on top. Fucking perfect.
My frustration comes from the point that I kinda overpromised and underdelivered. But the thing is, at this point its nearly impossible to predict how much a complex feature implementation might take. I can estimate that for example 2 weeks should be enough to implement a popup, but I cant forsee the weird edgecases that can be discovered only during development.
My frustration comes from devs just reviewing the code and not launching the app on their emulator to test it. Also what frustrates me is that we dont have enough QA resources so sometimes feature stands for extra 1-2 weeks just to be tested. So we run into a situation where long delays for testing causes late bug discovery that causes late refactors which causes late deliveries and for some reason I am the one who takes all the pressure and I have to puloff 16 hour workdays to get something done on time.
I am so fucking tired from last 2 sprints. Basically each day fucking explaining that I am still refactoring/fixing the blocker. I am so tired of feeling behind.
Now I know what you will say: always underpromise and overdeliver. But how? Explain to me how? Ok example. A feature thats add a new popup? Shouldnt take usually more than 2 weeks to do my part. What I cant promise is that devs will do a proper review, that QA wont take 2 extra weeks just to test the feature and I wont need another extra 2 weeks just to fix the blockers.
I see other scrum team devs picking low hanging fruit tasks and sitting for 2 weeks on them. Meanwhile Im doing mental gymnastics here and trying to implement something complex (which initially seemed like an easy task). For the last 2 weeks Im working until 4am.
Im fucking done. I need a break and I will start asking other devs for help. I dont care about saving my face anymore. I will start just spamming people if anything takes longer than a day to implement. Fuck it.
I am setting boundaries. 8 hours a day and In out. New blockers and 2 days left till end of the sprint? Sorry teamlead we will move fixes to another sprint.
It doesnt help that my teamlead is pressuring me and asking the same shit over and over. I dont want them to think that I am incompetent. I dont know how to deal with this shit. Im tired of explaining myself again and again. Should I just fucking pick low hanging fruit tasks but deliver them in a steady pace? Fucking hell.4