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 - "what's the reason"
-
Why do some female programmers place emphasis on their gender?
It's always: female programmer... Female web developer... Female android dev... Female Sysadmin... Etc
I mean, you don't see males saying "I'm a male programmer."
Female programmers aren't rare anymore. More and more of them are starting to program, so what's the point of emphasizing your gender?
For some reason, females think it's "special" to be a female programmer.
How does your gender relate to your skill?103 -
Long rant ahead, but it's worth it.
I used to work with a professor (let's call him Dr. X) and developed a backend + acted as sysadmin for our team's research project. Two semesters ago, they wanted to revamp the front end + do some data visualization, so a girl (let's call her W) joined the team and did all that. We wanted to merge the two sites and host on azure, but due to issues and impeding conferences that require our data to be online, we kept postponing. I graduate this semester and haven't worked with the team for a while, so they have a new guy in charge of the azure server (let's call him H), and yesterday my professor sends me (let's call me M), H and W an email telling us to coordinate to have the merge up on azure in 2-3 days, max. The following convo was what I had with H:
M: Hi, if you just give me access to azure I'll be able to set everything up myself, also I'll need a db set up, and just send me the connection string.
H: Hi, we won't have dbs because that is extra costs involved since we don't have dynamic content. Also I can't give you access, instead push everything on git and set up the site on a test azure server and I will take it from there.
M: There is proprietary data on the site...
H: Oh really? I don't know what's on it.
<and yet he knows we have no dynamic data>
M: Fine, I'll load the data some other way, but I have access to all the data anyway, just talk to Dr. X and you'll see you can give me access. Delete my access after if you want.
H: No, just do what I said: git then upload to test azure account.
Fine, he's a complete tool, but I like Dr. X, so I message W and tell her we have to merge, she tells me that it's not that easy to set it up on github as she's using wordpress. She sends me instructions on what to do, and, lo and behold, there's a db in her solution. Ok, I go back to talking to H:
M: W is using a db. Talk to her so we can figure out whether we need a database or not.
H: We can't use a database because we want to decrease costs.
M: Yes I know that, so talk to her because that probably means she has to re-do some stuff, which might take some time. Also there might be dynamic content in what she's doing.
H: This is your project, you talk to her.
<I'm starting to get mad right now>
M: I don't know what they had her do apart from how it interfaces with what I've done.
H: We still can't have databases.
M: Listen, I don't do wordpress, and I'm not gonna mess with it, you talk to her
H: I won't do any development
<So you won't do any dev, but you won't give me access to do it either?>
M: Man, the bottleneck isn't the merging right now, it's the fact that W needs a db
H: I know, so talk to her
M: THE RESTRICTION TO NOT HAVE DATABASES IS NOT MINE, IT'S YOURS, YOU TALK TO HER. I can't evaluate whether it's a reasonable enough reason or not since I don't know the requirements or what they're willing to spend.
H: It's your project.
M: Then give me fucking access to azure and I'll handle it, you know you'll have to set up wordpress again regardless whether we set it up the first time.
H: Man just do your job.
At this point I lost it. WHAT A FUCKING TOOL. He doesn't wanna do dev work, wants me to go through the trouble of setting up on a test subscription first, and doesn't want to give me access to azure. What's more, he did shit all and doesn't want to anything else. Well fuck you. I googled him, to see if he's anyone important, if he's done anything notable which is why he's being so God damn condescending. MY INTERNSHIP ALONE ECLIPSES HIS ENTIRE CV. Then what the fuck?
There's also this that happened sometime during our talk:
M: You'll have to take to Dr. Y so he'll change the DNS to point to the azure subscription instead of my server.
H: Yea don't worry, too early for that.
M: DNS propagation takes 24 hours...
H: Yea don't worry.
DNS propagation allows the entire web to know that your website is hosted on a different server so it can change where it's pointing to. We have to do this in 2-3 days. Why do work in parallel? Nah let's wait.
I went over his head and talked to the professor directly, and despite wanting to tell him that he was both drunk and high the day he hired that guy, I kept it professional. He hasn't replied yet, but this fucker's pompous attitude is just too much for me alone, so I had to share.
PS: I named his contact as Annoying Prick 4 minutes into our chat. Gonna rename him cz that seems tooooooo soft a name right now.undefined tools i have access and you don't haha retards why the fuck would you hire that guy? i don't do development46 -
So... A random morning moment:
(c - Cient, m - me)
C: Help!!! Our users are complaining that our website is not working as intended!!! This is crucial!!!!
M: What's the problem? What is not working?
C: EVERYTHING!!!! FIX IT!!!!
M: Could you be more specific...?
C: Look at the bugsnag - it has all the errrors!!!
M: *looks there - no errors* - But... It has no errors...
C: Okay, so client told me he's using Galaxy SII - does that ring a bell?
M: *thinks that I'm fucked* - Asks, which browser?
C: Why do you need it? It's a browser after all...
M: Yeah but not all browsers are the same and I need type and version to investigate...
C: It's Samsung default browser... Last updated 2012 January.
M: Well, tell that user to update the browser, the site is working fine on newer versions...
C: No, you update it.
M: Browser?!
C: Yes, what else?!
M: Of course, I'll fly 3000 kilometres to press UPDATE button on clients phone...
C: Well, he's not doing it himself - he's afraid!
M: Well, that is his problem. Site is working fine for other users with newer browsers.
C: But... He's a client
M: I get it but he's a client that uses 6 years old browser and tries to visit our website. Don't you remember that we ditched IE support on your behalf for the same reason?!
C: Oh... I see... Can you make something that it works with 2005 browsers?
M: Of course... *evil laugh starts* I'll make the website work on EVERY single device EVER - make it plain text.
C: Are you joking?
M: Are you?
----
And since then, we ditched the actual need for supporting users with old browsers that don't update to modern standards... Feels great!12 -
Le monday morning after a commit on sunday evening...
PM: BLAAAH!!!! Your commit broke the site, nothing is working!!!!!!
Me: What? All of tests passed (coverage 95%), no issues were found.
PM: NOO!!!! Site is broken, we can't use it no more!!!
Me: Ok, what's the problem?
PM: I've tried to enter -10021 into this field on that page and it gived me an error.
Me: Ok? So, that single page is broken?
PM: No, whole site!!!! This is important
Me: Sure... Let me take a look
* PM tried to enter a negative value into an unsigned field that I've mutated yesterday after checking LIVE database if there was no records with negative value. Reason: we've hit an int limit and there was no chance that the value would be negative. Validation? Well, yes.... Except that page was added by him this morning without even checking everything else *
Me: Here, this is the issue, *gives explanation*
PM: Well.... You shouldn't do this. This is unacceptable. You must never leave int fields without negative values. Didn't they teach you in school that integers can be negative?!
Me: What? *consufed as hell*
PM: *More morale... blah blah blah....* Revert it back!
Me: Ok but if anything else breaks, copy of this slack conversation will be kept.
PM: Don't care! Fix it!
Me: * Reverts the fix, saves chat copy * - Done.
PM: Great.
* 5 wild minutes later *
PM: BLAAAH!!!! Site is down, service is not working, what have you done?
Me: Reverted the change needed for it to work. Todays schedule is full with other important tasks. * pastes a screenshot as a proof that he asked me to do this *
PM: FIX IT NOW! Apply your fix.
Me: You're the PM. - Done.
PM: Great, now I'll fix my code. You should be more careful next time.
Me: * YOU DENSE MATHA...KER * Sure.
How's your morning going? :)9 -
I. FUCKING. HATE. MOBILE. DEVELOPMENT.
I already manage the data, devops, infra, and most of the backend dev.
We had a mobile guy. He was great. I never had to think about it and kept moving quickly on my work. #SpecializationOfLaborFTW
He left. Why? Because they wouldn't give him a small raise despite being one of the best mobile engineers in the firm. WTF.
I made the mistake of picking up just enough slack on this workflow in the interim such that I'm, apparently, the fucking god-damned release manager, fixer of pipelines, fixer of build configs, fixer of anything where someone just needs to RTFM for a half-hour to not fucking break things.
Now, 8 months later...and, apparently, Fortune 500 companies are too fucking god-damned cheap to pay for someone who actually knows WTF they're doing for a very reasonable thing to have at least one dedicated set of eyes for.
I never wanted to be a mobile dev.
I never will want to be a mobile dev.
And I certainly don't want to manage your HALF-FACE-FUCKED detached expo configs.
There's a reason I never intentionally involved myself in mobile. All the way down, it's just shitty cross-compilation, transpilation, dependency-hell, brittle-as-fuck build processes so we can foot-gun and mouth-gun react-native and expo and babel and whatever the fuck else cargo-culted horseshit into the wild.
And why? What's the actual fucking root cause? The biggest white elephant that ever fucking elephant-ed? It's because Apple and Google decided to never collaborate on a truly-native cross-platform SDK--where engineers could write native code that compiles to native binaries that's simply write-once, run-everywhere. They know they could have done that, and they didn't. So what'd they get back? Expo--a too-cleverly-designed backdoor/hack--more-or-less a way to circumvent the sane release process software has usually followed: code -> executable -> deploy. Or code -> deploy (for interpreted langs). Expo's like "keep your same executable, we're just gonna to do updates by injecting new code into it whenever we want". Didn't we learn anything with web? Shit gets messy real quick? Not to mention: HEY EXPO, WE WERE ALREADY BUILDING NATIVE APPS, YOU SHORT-SIGHTED FUCKS. THANKS FOR LURING OUR CTOs INTO FORCING EXPO DOWN OUR THROATS W/ THE IMPLICIT (BUT INCORRECT) TOO-GOOD-TO-BE-TRUE PROMISE THAT WE CAN HAVE WRITE-ONCE, RUN-ANYWHERE WITHOUT ANY BUY-IN OR COOPERATION FROM THE ACTUAL TARGET PLATFORMS.
And, we just, like, accept this? We all know it's garbage engineering. The principles we learned in the classroom aren't just academic abstractions--they actually yield real-world results--and eschewing them yields real-world failures. Expo is tightly-coupled to high-heaven, with leaky abstractions six-ways-to-christmas, chock-full of foot-guns, and fails the most basic test of quality: does it, "just work?"
Expo is fucking shameful and it should fucking die. Its promises are too bold, its land-mines too many, its future-proof-ness is alway, always, always questionable as fuck and a risk to every project that uses it.
You want a rant? This is my fucking venue, 'tis not? Well, then this is a piss and vinegar rant straight from my blood-red, beating fucking heart:
EXPO FUCKING SUCKS. AND IF YOU'RE A FAN, YOU FUCKING SUCK TOO.27 -
My guide to know if your startup is failing:
My Qualifications: Every startup I've joined has failed. Not necessarily because of me.
For the sake of me typing faster, x=startup.
1) X doesn't have a product, but just an idea that x keeps pitching as the next "big thing". (What's with this shit anyway?)
2)X keeps changing products, One day your designing IoT sex toys and the next day your building a self aware AI. For some reason, the people at X saw Silicon Valley or that meme about how Instagram was created and thought "Fuck that happens to every moron who can switch on a computer."
3) Even worse, X keeps changing industries.
4) X keeps lying to you, your marginal user base and seems overall unethical. (You should leave at this point.)
5) X wants to target some obscure and very specific market and keeps pitching the company along the following lines
<famous_company> for <random_market>
Eg: "Yo bro it's like Amazon but for necrophiles."
6)X keeps saying that X is the next big thing. (X is not and I can't emphasize this point enough.)
What you should realize is this is my general observation and some or all of these points may not apply to every situation.
Sorry for typos and any other stuff.11 -
HP Virtual Agent, you're about as useless as the fucking hardware that I'm troubleshooting. What part of fucking "Arch Linux" do you not understand?! Not everyone runs your fucking assumed OS choices - WanBLowS 7, 8 or 10. What's more, the hardware that I'm troubleshooting doesn't even support those bloody operating systems.
Long live HP and its random freezes due to poor thermal management. And long live Intel's fucking wireless drivers, that for no good reason disconnect after half an hour and require me to restart NetworkManager to (hopefully) get shit connected again. And long live those useless fucking "virtual assistants"!!!16 -
This rant is a confession I had to make, for all of you out there having a bad time (or year), this story is for you.
Last year, I joined devRant and after a month, I was hired at a local company as an IT god (just joking but not far from what they expected from me), developer, web admin, printer configurator (of course) and all that in my country it's just called "the tech guy", as some of you may know.
I wasn't in immediate need for a full-time job, I had already started to work as a freelancer then and I was doing pretty good. But, you know how it goes, you can always aim for more and that's what I did.
The workspace was the usual, two rooms, one for us employees and one for the bosses (there were two bosses).
Let me tell you right now. I don't hate people, even if I get mad or irritated, I never feel hatred inside me or the need to think bad of someone. But, one of the two bosses made me discover that feeling of hate.
He had a snake-shaped face (I don't think that was random), and he always laughed at his jokes. He was always shouting at me because he was a nervous person, more than normal. He had a tone in his voice like he knew everything. Early on, after being yelled for no reason a dozen of times, I decided that this was not a place for me.
After just two months of doing everything, from tech support to Photoshop and to building websites with WordPress, I gave my one month's notice, or so I thought. I was confronted by the bosses, one of which was a cousin of mine and he was really ok with me leaving and said that I just had to find a person to replace me which was an easy task. Now, the other boss, the evil one, looked me on the eye and said "you're not going anywhere".
I was frozen like, "I can't stay here". He smiled like a snake he was and said "come on, you got this we are counting on you and we are really satisfied with how you are performing till now". I couldn't shake him, I was already sweating. He was rolling his eyes constantly like saying "ok, you are wasting my time now" and left to go to some basketball practice or something.
So, I was stuck there, I could have caused a scene but as I told you, one of the bosses was a cousin of mine, I couldn't do anything crazy. So, I went along with it. Until the next downfall.
I decided to focus on the job and not mind for the bad boss situation but things went really wrong. After a month, I realised that the previous "tech guy" had left me with around 20 ancient Joomla - version 1.0 websites, bursting with security holes and infested with malware like a swamp. I had never seen anything like it. Everyday the websites would become defaced or the server (VPN) would start sending tons of spam cause of the malware, and going offline at the end. I was feeling hopeless.
And then the personal destruction began. I couldn't sleep, I couldn't eat. I was having panick attacks at the office's bathroom. My girlfriend almost broke up with me because I was acting like an asshole due to my anxiety issues (but in the end she was the one to "bring me back"(man, she is a keeper)) and I hadn't put a smile on my face for months. I was on the brink of depression, if not already there. Everyday I would anxiously check if the server is running because I would be the one to blame, even though I was trying to talk to the boss (the bad one was in charge of the IT department) and tell him about the problem.
And then I snapped. I finally realised that I had hit rock bottom. I said "I can't let this happen to me" and I took a deep breath. I still remember that morning, it was a life-changing moment for me. I decided to bite the bullet and stay for one more month, dealing with the stupid old server and the low intelligence business environment. So, I woke up, kissed my girlfriend (now wife), took the bus and went straight to work, and I went into the boss's office. I lied that I had found another job on another city and I had one month in order to be there on time. He was like, "so you are leaving? Is it that good a job the one you found? And when are you going? And are you sure?", and with no hesitation I just said "yup". He didn't expect it and just said "ok then", just find your replacement and you're good to go. I found the guy that would replace me, informing him of every little detail of what's going on (and I recently found out, that he is currently working for some big company nowadays, I'm really glad for him!).
I was surprised that it went so smoothly, one month later I felt the taste of freedom again, away from all the bullshit. Totally one of the best feelings out there.
I don't want to be cliche, but do believe in yourself people! Things are not what the seem.
With all that said, I want to give my special thanks to devRant for making this platform. I was inactive for some time but I was reading rants and jokes. It helped me to get through all that. I'm back now! Bless you devRant!
I'm glad that I shared this story with all of you, have an awesome day!15 -
!rant
So it turns out that my dad accidentally took my spare laptop on a work trip. He's about as non-tech as you can get, and that laptop runs...Arch Linux. Yeah.
(call from dad)
M: hi dad
D: what's your desktop password?
M: (confused) {Password}
D: okay.
(cuts the call)
M: *shrug*
(call from dad)
M: hi dad
D: so where is PowerPoint?! where's the Windows button?! I've been at this for half an hour now and I have to edit a presentation for tomorrow!!
M: (realizes what's happened) oh...uh...dad...that's.. Linux...
D: don't you people do anything the way it's supposed to be done?
M: uh...
D: ugh! So you can't edit PPTs on this?
M: (processing...LibreOffice isn't installed on the laptop, and he will have to use the command line to connect to the internet to use Office Online or Google Slides since the Deepin WiFi module keeps fucking up for some reason)
D: well?
M: (internal sigh) No, you can't edit PPTs on that.
D: wow.
(cuts the call)
He either thinks we're all useless or that we have godlike computer skills to be able to edit PPTs on Linux. Oh well.
(He managed to use the hotel's "workstation" to get it done, so all is well. I should tell him to change his password though, hotel computers have rubbish security.)14 -
I'm drunk and I'll probably regret this, but here's a drunken rank of things I've learned as an engineer for the past 10 years.
The best way I've advanced my career is by changing companies.
Technology stacks don't really matter because there are like 15 basic patterns of software engineering in my field that apply. I work in data so it's not going to be the same as webdev or embedded. But all fields have about 10-20 core principles and the tech stack is just trying to make those things easier, so don't fret overit.
There's a reason why people recommend job hunting. If I'm unsatisfied at a job, it's probably time to move on.
I've made some good, lifelong friends at companies I've worked with. I don't need to make that a requirement of every place I work. I've been perfectly happy working at places where I didn't form friendships with my coworkers and I've been unhappy at places where I made some great friends.
I've learned to be honest with my manager. Not too honest, but honest enough where I can be authentic at work. What's the worse that can happen? He fire me? I'll just pick up a new job in 2 weeks.
If I'm awaken at 2am from being on-call for more than once per quarter, then something is seriously wrong and I will either fix it or quit.
pour another glass
Qualities of a good manager share a lot of qualities of a good engineer.
When I first started, I was enamored with technology and programming and computer science. I'm over it.
Good code is code that can be understood by a junior engineer. Great code can be understood by a first year CS freshman. The best code is no code at all.
The most underrated skill to learn as an engineer is how to document. Fuck, someone please teach me how to write good documentation. Seriously, if there's any recommendations, I'd seriously pay for a course (like probably a lot of money, maybe 1k for a course if it guaranteed that I could write good docs.)
Related to above, writing good proposals for changes is a great skill.
Almost every holy war out there (vim vs emacs, mac vs linux, whatever) doesn't matter... except one. See below.
The older I get, the more I appreciate dynamic languages. Fuck, I said it. Fight me.
If I ever find myself thinking I'm the smartest person in the room, it's time to leave.
I don't know why full stack webdevs are paid so poorly. No really, they should be paid like half a mil a year just base salary. Fuck they have to understand both front end AND back end AND how different browsers work AND networking AND databases AND caching AND differences between web and mobile AND omg what the fuck there's another framework out there that companies want to use? Seriously, why are webdevs paid so little.
We should hire more interns, they're awesome. Those energetic little fucks with their ideas. Even better when they can question or criticize something. I love interns.
sip
Don't meet your heroes. I paid 5k to take a course by one of my heroes. He's a brilliant man, but at the end of it I realized that he's making it up as he goes along like the rest of us.
Tech stack matters. OK I just said tech stack doesn't matter, but hear me out. If you hear Python dev vs C++ dev, you think very different things, right? That's because certain tools are really good at certain jobs. If you're not sure what you want to do, just do Java. It's a shitty programming language that's good at almost everything.
The greatest programming language ever is lisp. I should learn lisp.
For beginners, the most lucrative programming language to learn is SQL. Fuck all other languages. If you know SQL and nothing else, you can make bank. Payroll specialtist? Maybe 50k. Payroll specialist who knows SQL? 90k. Average joe with organizational skills at big corp? $40k. Average joe with organization skills AND sql? Call yourself a PM and earn $150k.
Tests are important but TDD is a damn cult.
Cushy government jobs are not what they are cracked up to be, at least for early to mid-career engineers. Sure, $120k + bennies + pension sound great, but you'll be selling your soul to work on esoteric proprietary technology. Much respect to government workers but seriously there's a reason why the median age for engineers at those places is 50+. Advice does not apply to government contractors.
Third party recruiters are leeches. However, if you find a good one, seriously develop a good relationship with them. They can help bootstrap your career. How do you know if you have a good one? If they've been a third party recruiter for more than 3 years, they're probably bad. The good ones typically become recruiters are large companies.
Options are worthless or can make you a millionaire. They're probably worthless unless the headcount of engineering is more than 100. Then maybe they are worth something within this decade.
Work from home is the tits. But lack of whiteboarding sucks.37 -
It's maddening how few people working with the internet don't know anything about the protocols that make it work. Web work, especially, I spend far too much time explaining how status codes, methods, content-types etc work, how they're used and basic fundamental shit about how to do the job of someone building internet applications and consumable services.
The following has played out at more than one company:
App: "Hey api, I need some data"
API: "200 (plain text response message, content-type application/json, 'internal server error')"
App: *blows the fuck up
*msg service team*
Me: "Getting a 200 with a plaintext response containing an internal server exception"
Team: "Yeah, what's the problem?"
Me: "...200 means success, the message suggests 500. Either way, it should be one of the error codes. We use the status code to determine how the application processes the request. What do the logs say?"
Team: "Log says that the user wasn't signed in. Can you not read the response message and make a decision?"
Me: "That status for that is 401. And no, that would require us to know every message you have verbatim, in this case, it doesn't even deserialize and causes an exception because it's not actually json."
Team: "Why 401?"
Me: "It's the code for unauthorized. It tells us to redirect the user to the sign in experience"
Team: "We can't authorize until the user signs in"
Me: *angermatopoeia* "Just, trust me. If a user isn't logged in, return 401, if they don't have permissions you send 403"
Team: *googles SO* "Internet says we can use 500"
Me: "That's server error, it says something blew up with an unhandled exception on your end. You've already established it was an auth issue in the logs."
Team: "But there's an error, why doesn't that work?"
Me: "It's generic. It's like me messaging you and saying, "your service is broken". It doesn't give us any insight into what went wrong or *how* we should attempt to troubleshoot the error or where it occurred. You already know what's wrong, so just tell me with the status code."
Team: "But it's ok, right, 500? It's an error?"
Me: "It puts all the troubleshooting responsibility on your consumer to investigate the error at every level. A precise error code could potentially prevent us from bothering you at all."
Team: "How so?"
Me: "Send 401, we know that it's a login issue, 403, something is wrong with the request, 404 we're hitting an endpoint that doesn't exist, 503 we know that the service can't be reached for some reason, 504 means the service exists, but timed out at the gateway or service. In the worst case we're able to triage who needs to be involved to solve the issue, make sense?"
Team: "Oh, sounds cool, so how do we do that?"
Me: "That's down to your technology, your team will need to implement it. Most frameworks handle it out of the box for many cases."
Team: "Ah, ok. We'll send a 500, that sound easiest"
Me: *..l.. -__- ..l..* "Ok, let's get into the other 5 problems with this situation..."
Moral of the story: If this is you: learn the protocol you're utilizing, provide metadata, and stop treating your customers like shit.22 -
So, basically i am getting desperate, and i'm also angry... and want to cry, and i feel a failure.
My biggest error in this story is "believing"
First of all, I'm a starting entrepreneur as freelancer, started of 6 months ago, back then it all seemed bright, i had my first customer, they believed me, got a second assignment for that same customer, fulfilled the task in brilliance, and was ready to move on to a bigger customer base. Here's where shit goes wrong.
Working with another office that outsources people to various (goverment) contractors, Had a meeting with them, we would cooperate very soon. This was january.
PM: "We've got a gov Dept as a customer that wants to do project XYZ and starting in february, requirements are yadiyadiyadi, you up for it?
Me:"Sure, send me the specs, and timeframe and i'll apply with my offer)"
Project is about a bit backup system migration, lots of fancy shmancy tech used, 2 datacenters setup... a big project that can take up several months...
- sends offer- received an acceptance on the offer
PM " Great, we'll start end of february"
Me: "Ok, end of february is a go then, looking forward to cooperate"
FF to near end of february, receive msg from PM: "Project XYZ delayed until half if march"
Me: "Okay... what is the delay?"
PM:"Govt bureaucracy"
Me " Ok, let's keep in touch"
Near Half of March
PM " Project delayed again".
Me: " Okay... what's the reason?"
PM: "they have decided to take a different approach, and want 3 datacenters now"
Me: "That will change the offer i made for you, can you send me the specs?"
PM: "No, because they havent decided on the techs used, expect end of march"
Me: "Okay...but once you got the specs,s end them to me"
End of March
Pm: " Hy NeatNerdPrime, we still havent got any specs yet... they still forgot to make the shopping list"
Me: "(-_-) ... I thought they already had that covered"
PM:" No, new Govt budget cuts and lots of changes, basically, they still don't know what they really want. But we're just -delayed- , not -cancelled-"
Me: "Okay... i hope we get started soon"
PM: "expect launch beginning of april"
I was not really satisfied with this explanation.... but ok
Beginning of april, at april's folls day
PM "Project delayed again"
Me: " This is a joke right?"
PM: "Sadly, no, they delayed the project since they don't really know what they actually want, we are trying to give them the proposed solution... but they still need approval, and still need to set up shopping list"
Me:"when do we start then?"
PM: " I was told 17th of april'
Me:" I really hope it gets through, i had to decline some proposals for work for months due to this, this ain't funny"
PM: "I know, i'll make up for it"
15th of april...
PM " Project delayed again"
Me right now almost losing my shit
"why this time??? I thought you said 17th of april real launch!"
PM: "they fired their PM, need to hire a new one, delayed until May/June"
Me: "I've set aside some other assignments just because you said you were going to launch at those dates... This is really pushing my limits, can you give me SOME assurances?"
PM: "5th of june would be official go" Me: " Okay, i'm noting 5th of june in my agenda, let's get this through!"
And now i get a message...stating that the date of 5th of june , is for another project, at the same goct dept, but totally different project
WHAT THE FUCKING SHIT I'VE SPENT MONTHS WAITING FOR A PROJECT THAT WAS PRACTICALLY ALL SET AND GO AND EVERY SINGLE FUCKING TIME IT GETS DELAYED, EVERY FUCKING TIME I THINK "you know, i cannot accept these offers since that Govt project will start soon, i cannot do 2 assignments at once especially when they require me to work at govt office at the capital..." AND EVERY FUCKING TIME IT GETS DELAYED!!!
I feel at a loss now..... i've done i think the most horrible thing you can do as a independent and that's not accepting another assignment just because there was a concrete promise for a govt contract...
Almost dried up, nothing much left, had to do some spending because of a move to another apartment... I'm feeling really down, and angry...and down, but mostly angry, for not accepting those offers in the meantime...undefined govt contracts why i'm so gullible promise promises written in butter wtf start dates fucking delays never refuse another assignment again13 -
Client comes to me after a year to publish an update to his app.
I accept, start looking for my release key.... Found it.
Fuuuuuuucccck what's the password? I can't remember
Googled what to do if forgot password of keystore: Nope can't do shit other than brute Force. You've to forget your app and publish as a new app. Nice.
I must have written it somewhere... I'm sure. Check my password manager: Nope.
Start brute forcing:
Default pass: android. Nope
Name of app? Nope
After 10 mins of brute forcing:
Why would I not store the password in my password manager? The only reason I can think is the password is too stupid to be stored.
Try "password". App signed successfully.
I'm ashamed of 1 year older me xD6 -
"Can you work on this ticket? It's kind of urgent."
-- "OK"
"And could you please not refactor? Just get this done."
-- "Why? What's the issue?"
"The logic is complex. We should not break it."
-- "Erm, that's what the tests are for. So yes, if the need arises, I'll refactor. The tests are my guidelines if the logic breaks or not."
There's a reason we create tests. So let's not hinder code base improvements by some random fear that stuff might break.
If breaks due to refactoring, we'll fix it by adding a valid test case during and then fixing the bug.
If my refactoring does not break the tests, I'll assume the code base is stable.
If your code is untested, then we have a complete different problem.3 -
With the wake of some rants shouting at Linuxers who express their opinion in a considered to be very not good way, I decided to make such a rant. Not to be annoying but because, although I get that fanboyism in that way isn't even good in MY opinion, I do think that one should be able to express their opinion.
But, If you'd like to express your opinion, I think you at least should do that with some good arguments. Not everyone might agree with those arguments but hey, that's the point of opinions sometimes :)
I don't hate windows/mac for being windows or mac. Nope.
I hate the systems for not giving the user freedom to do what they wish with the system but more importantly, for integrating their users in worlds biggest mass surveillance program AND on top of fucking that, not giving peoples the option to look at the source code aka at what's ACTUALLY going on in the system. Next to that, Windows 10's data collection is officially not legal in the netherlands so don't even try justifying their fucking data slurping.
Of course there's a chance that they don't contain any bad stuffs but since the Snowden revelations I don't trust those commercial companies anymore on their 'blue' eyes.
Yeah, I've ranted about this before, I know, felt like doing it again in combination with my reason above. I also know that I will probs receive hate for this but oh well, i'm used to that by now.
So yeah, windows and osx: go fuck yourself.21 -
$sis: hey $me, can you help me?
$me: Uhm, sure, what's wrong?
$sis. The printer doesn't work..
$me: what does it say?
$sis: what do you mean?
$me: like, when you try to print something, what does it say?
$sis: uhm... idk...where should it say something
$me: On your screen you should be getting an error message right?
$sis (now getting irritated for some reason): no it doesn't..
$me: okay, let me check it out
*I walk to the printer with my sister's laptop and plug in the usb*
*Select printer > click print*
"Printer offline"
$me: was it also saying this before
$sis: uhm...yes
$me: ok
At this point im already getting a bit fed up
$me: are you sure this port is working
$sis: yes, I am sure
Okay, check other ports just to be sure, also don't work.
After about 15 minutes of debugging, turns out she managed to unplug the cable on the printer...
And all I got was a "o thanks"
Fml4 -
Woohoo! 32k achieved!!! Finally I can post some new rant without risking some sudden overshoot 😁
So putting celebrations aside for a minute, a while ago I've noticed a tingle when I stroke my finger across metal areas of my tablet, or the sides of my phone (which probably has metal near it too) while it's charging. And it's been bugging me ever since.
Now, some things to note are that it only happens when my feet are touching the ground though slippers, and that the frequency is so low that I can actually feel the tingle when I slide my finger across the material. This to me at least seems like electricity flows through me into ground, and touching the ground directly provides a path so easy for the electrons to run away that I don't feel it at all. But if I lift my feet off the ground entirely, I just get charged up and after that, nothing else happens.
So those are my ideas. The answers on the subject on the other hand.. absolute cancer. Unsurprisingly, most of them came from Apple users. Here's some of them.
https://discussions.apple.com/threa...
- I've not noticed it, but if you're concerned bring the phone to Apple for evaluation.
- Me too facing same problem.. did u visit apple care?
And one good answer at least...
- google emf sensitivity, its real. You are right, there is a small current flowing through your body, try to limit your usage. The problem with this issue is those who aren't affected (lucky ones for now) will tell you these products are 100% safe. To a degree they are, i used my ipod touch for about 2 years straight vwith virtually no symptoms. then the tingling started and it gets worse.You will get more sensitive to progressively less powerful things. I dont want to scare you but just limit your usage like i didnt do 🙂
Overall that discussion was pretty good actually, aside from "bring it to the Genius Bar, they'll know for sure and not just sell you another unit". But then there's Reddit.
https://reddit.com/r/iphone/...
- Ok, real reason is probably that the extension cord and/or outlet is probably not grounded correctly. Either that or you are using a cheap knockoff charger.
Either use a surge protector and/or use the authentic Apple Charger.
- It's not the volts that hurt you, it's the amps
- I think you are in deep love with your phone. That tingling sensation is usually referred to as "love" in human language.
- Do less acid, I would advise.
Okay, so that's the real cancer. Grounding issue sounds reasonable despite it being wrong. Grounding is actually not needed when your charging appliance doesn't have any exposed metal parts. And isolation from high voltage to low voltage side actually happens through things like routering holes into the PCB, creating spark gaps, and using galvanic isolation through things like optocouplers. As for a surge protector? I'm using them to protect my PC and my servers, but the only purpose they serve is to protect from.. you guessed it.. voltage surges, like lightning bolts hitting the grid. They don't do shit for grounding or reducing this tingle! What a fucking tool.
It's not the volts that kill, it's the amps.. yeah I'm sure that the debunking of that is easy to find. Not gonna explain that here. And the rest of it.. yeah it's just fucking cancer.
Now what's the real issue with this tingle? It's actually a Class-Y rated (i.e. kV rated) capacitor that's on the transformer of any switch-mode power supply, including phone chargers. If memory serves me right, it helps with decoupling the switching noise and so on. But as it's connected to the primary side of the transformer, if the cap is sufficiently large and you are sufficiently sensitive, it can actually cause that tingle by passing a fraction of the mains electricity into your body. It's totally safe though, as the power that these caps pass is very small. But to some, it's noticeable.
Hope you found this interesting! And thanks a lot for bringing me to 2^15. I really appreciate it ♥️15 -
If you are a salesperson, you can just go straight to hell. You're all a bunch of cocksucking twats and I'm amazed you manage to get yourselves dressed each day. You're a no good fucking waste of oxygen and you need to put your fork in a socket the next time you're eating.
I'm working on building a crm and ticket management system for use in the office to handle client passwords. Since I'm building from scratch I wanted to make sure I had properly planned my classes and functions before opening the code editor so I put a message on my door that says "Don't interrupt, thanks" followed by the date so people knew it was a fresh message and not something left from the previous day.
I'm deep in the zone, the psuedo code and logic is flowing, I'm getting classes planned and feeling really productive for an hour or so when suddenly my door flies open and in comes a sales person.
SP: "Hey, do you have any extra phones lying around? Mine's being slow and keeps hanging up on people."
Me: "Do you see the sign on my door right there at eye level which says not to bother me?"
SP: "oh, do you want me to come back later?"
Me: "You've already interrupted me now, let's go see what's going on before I spent an hour setting up a new phone for you." While we are walking across the office I asked him when the last time the phone rebooted.
SP: "idk, Salesperson#2 suggested that as I was headed over here but I figured I'd just ask you."
We get over to his desk and I see he has two phones sitting on his desk. "Where did this one come from?"
SP: "Oh that was on the desk over here but I figured I could use it."
Me: "Well aside from the fact that the phones are assigned to specific people for a reason, you took the time to unhook your phone to set this one up and you didn't think to reboot your phone first. Plug your phone back in."
He plugs the old phone, which is assigned to him, and while booting it does a quick firmware update and boots up fine. He tests a few things and decides it's all better now.
So someone suggested a fix for you and you decided, instead, you would break company IT policy by moving equipment from one station to another without notifying the IT department. You entered a room which had a closed door without knocking, and you disobeyed the sign on the actual door itself which politely requests that you go away. All because you couldn't be bothered to take 2 minutes and reboot your phone, which you had to do anyways.
You completely broke my train of thought and managed to waste 2 hours of effecient workflow because you had an emergency.9 -
I have been gone a while. Sorry. Workplace no longer allows phones on the lab and I work exclusively in the lab. Anyway here is a thing that pissed me off:
Systems Engineer (SE) 1 : 😐 So we have this file from the customer.
Me: 😑 Neat.
SE1: 😐 It passes on our system.
Me: 😑 *see prior*
Inner Me (IM): 🙄 is it taught in systems engineer school to talk one sentence at a time? It sounds exhausting.
SE1: but when we test it on your system, it fails. And we share the same algorithms.
Me: 😮 neat.
IM: 😮neat, 😥 wait what the fuck?
Me: 😎 I will totally look into that . . .
IM: 😨 . . . Thing that is absolutely not supposed to happen.
*Le me tracking down the thing and fixing it. Total work time 30 hours*
Me: 😃 So I found the problem and fixed it. All that needs to happen is for review board to approve the issue ticket.
SE1: 😀 cool. What was the problem?
Me: 😌 simple. See, if the user kicked off a rerun of the algorithm, we took your inputs, processed them, and put them in the algorithm. However, we erroneously subtracted 1 twice, where you only subtract 1 once.
SE1: 🙂 makes sense to me, since an erroneous minus 1 only effects 0.0001% of cases.
*le into review board*
Me: 😐 . . . so in conclusion this only happens in 0.0001% of cases. It has never affected a field test and if this user had followed the user training this would never have been revealed.
SE2: 🤨 So you're saying this has been in the software for how long?
Me: 😐 6 years. Literally the lifespan of this product.
SE2: 🤨 How do you know it's not fielded?
Me: 😐 It is fielded.
SE2: 🤨 how do you know that this problem hasn't been seen in the field?
Me: 😐 it hasn't been seen in 6 years?
IM: 😡 see literally all of the goddamn words I have said this entire fucking meeting!!!
SE2: 😐 I would like to see an analysis of this to see if it is getting sent to the final files.
Me: 🙄 it is if they rerun the algorithm from our product. It's a total rerun, output included. It's just never been a problem til this one super edge case that should have been thrown out anyway.
SE2: 🤨 I would still like to have SE3 run an analysis.
Me: 🙄 k.
IM: 😡 FUUUUUUUUUCK YOOOOOU
*SE3 run analysis*
SE3: 😐 getting the same results that Me is seeing.
Me: 😒 see? I do my due diligence.
SE2: 😐 Can you run that analysis on this file again that is somehow different, plus these 5 unrelated files?
SE3: 😎 sure. What's your program's account so I can bill it?
IM: 😍 did you ever knooooow that your my heeeerooooooo.
*SE3 runs analysis*
SE3: 😐 only the case that was broken is breaking.
SE2: 😐 Good.
IM: 🤬🤬🤬🤐 . . . 🤯WHY!?!?
Me: 😠 Why?
SE2: 😑 Because it confirms my thoughts. Me, I am inviting you to this algorithm meeting we have.
Me/IM: 😑/😡 what . . . the fuck?
*in algorithm meeting*
Me: 😑 *recaps all of the above* we subtract 1 one too many times from a number that spans from 10000 to -10000.
Software people/my boss/SE1/SE3: 🤔 makes sense.
SE2:🤨 I have slides that have an analysis of what Me just said. They will only take an hour to get through.
Me: 😑 that's cool but you need to give me your program's account number, because this has been fixed in our baseline for a week and at this point you're the only program that still cares. Actually I need the account to charge for the last couple times you interrupted me for some bullshit.
*we are let go.*
And this is how I spent 40+ useless hours against a program that is currently overrunning for no reason 🤣🤣🤣
Moral: never involve math guys in arithmetic situations. And if you ever feel like you're wasting your time, at least waste someone else's money.10 -
Here are the reasons why I don't like IPv6.
Now I'll be honest, I hate IPv6 with all my heart. So I'm not supporting it until inevitably it becomes the de facto standard of the internet. In home networks on the other hand.. huehue...
The main reason why I hate it is because it looks in every way overengineered. Or rather, poorly engineered. IPv4 has 32 bits worth, which translates to about 4 billion addresses. IPv6 on the other hand has 128 bits worth of addresses.. which translates to.. some obscenely huge number that I don't even want to start translating.
That's the problem. It's too big. Anyone who's worked on the internet for any amount of time knows that the internet on this planet will likely not exceed an amount of machines equal to about 1 or 2 extra bits (8.5B and 17.1B respectively). Now of course 33 or 34 bits in total is unwieldy, it doesn't go well with electronics. From 32 you essentially have to go up to 64 straight away. That's why 64-bit processors are.. well, 64 bits. The memory grew larger than the 4GB that a 32-bit processor could support, so that's what happened.
The internet could've grown that way too. Heck it probably could've become 64 bits in total of which 34 are assigned to the internet and the remaining bits are for whatever purposes large IP consumers would like to use the remainder for.
Whoever designed IPv6 however.. nope! Let's give everyone a /64 range, and give them quite literally an IP pool far, FAR larger than the entire current internet. What's the fucking point!?
The IPv6 standard is far larger than it should've been. It should've been 64 bits instead of 128, and it should've been separated differently. What were they thinking? A bazillion colonized planets' internetworks that would join the main internet as well? Yeah that's clearly something that the internet will develop into. The internet which is effectively just a big network that everyone leases and controls a little bit of. Just like a home network but scaled up. Imagine or even just look at the engineering challenges that interplanetary communications present. That is not going to be feasible for connecting multiple planets' internets. You can engineer however you want but you can't engineer around the hard limit of light speed. Besides, are our satellites internet-connected? Well yes but try using one. And those whizz only a couple of km above sea level. The latency involved makes it barely usable. Imagine communicating to the ISS, the moon or Mars. That is not going to happen at an internet scale. Not even close. And those are only the closest celestial objects out there.
So why was IPv6 engineered with hundreds of years of development and likely at least a stage 4 civilization in mind? No idea. Future-proofing or poor engineering? I honestly don't know. But as a stage 0 or maybe stage 1 person, I don't think that I or civilization for that matter is ready for a 128-bit internet. And we aren't even close to needing so many bits.
Going back to 64-bit processors and memory. We've passed 32 bit address width about a decade ago. But even now, we're only at about twice that size on average. We're not even close to saturating 64-bit address width, and that will likely take at least a few hundred years as well. I'd say that's more than sufficient. The internet should've really become a 64-bit internet too.34 -
(!dev)
Fuck Twitter.
I get sucked in for 10 minutes through some news article, and my blood is boiling.
I think the platform does not even deserve to exist.
And I didn't think I would ever say that.
I used to be a staunch defender of the free & open internet, even with it's ugly and extreme sides, because I was convinced the good would outshine the evil.
I displayed the Pirate flag with pride on the mast outside of my house, I was intimately involved in the founding of their political party in my country. I was convinced of the power of the internet, I believed it would empower democracy and debate.
So why do simple tweets, even just the ones about technology, incite an endless stream of vile ultranationalist & misogynist hate?
How is it that those who are reasonable get drowned out?
That fucking character limit is a cancer.
The orator's wings are clipped. The richness of language is wilting before our eyes. All that remains are a bunch of caged chickens pecking every argument to death.
I will defend the right to free speech, even when it comes to the most disagreeable and controversial opinions.
But Twitter does not promote free speech. It's poison to free speech.
It's an endless torrent of non sequiturs, which constricts all reason and intellect. It replaces free speech by pretending to have equal value.
I really don't care if you are left or right, socialist or libertarian, globalist or nationalist.
You can argue to me that we should close all borders for immigrants, that Apple makes great products, that genocide has its pros, you could try to convince me that Heineken tastes acceptable (sorry AlexDeLarge), that Linux should be outlawed or that we should really try to bring this Eugenics thing back again.
Just be fucking rational -- and "Rationality implies the conformity of one's beliefs with one's reasons to believe"
You can NOT fit both your beliefs and their supporting reasons in 140 or even 280 characters.
So what's left is just your beliefs.
Stripped of all reason.
Repeat it often enough, keep spewing, keep throwing out incomplete arguments, and you'll train yourself to forego ratio in your convictions completely.
All social platforms should get a forced captcha for every spelling/grammar error, and a 1000 character minimum.
The world would be a slightly better place.6 -
!drunk (yet)
It's whiskey and code tonight!
(Whiskey because I couldn't get to my rum. annoyed face.)
Why? Because rum is so much better. duh.
More seriously: My boss has thrown me every single one his current tasks and is refusing to answer simple questions about them, such as "oh, so you already know about this bug; what's the cause?" or "how do i test this once i've fixed it?" or "where the fuck are you?"
and I'm also getting lots of bugs from other people. They're all basically categorized "urgent, please fix immediately" but should instead be categorized "super-boring and not-at-all-important, and should get fixed on the off chance you happen to remember it next year". That's the best category of bug.
I just gave up on fixing a Rails pluralize bug which fits into the aforementioned category quite nicely. It's returning "2x round of golves" -- which is hilarious and I might leave it in just for the amusement. But now it's back to fighting with ActionCable! Everything has been getting in the way of me finishing that. I'm about to start biting.
Speaking of ActionCable, it turns out my code wasn't wrong after all (have I said that yet?). Since the official documentation and examples suck, I've been digging through the (generated) javascript source and working my way backwards to learn how to use it. I cleaned up my code a little, but it was still correct. The reason nothing is working correctly is that API Guy gave me broken code. ...Again! Go figure. So I'll be rewriting that today. or tomorrow. (Whiskey, remember?)
I also have some lovely netcode to debug and fix. So totally not looking forward to that. The responses are less bloody reliable than my boss's code ffs. *grumble grumble*6 -
So I once had a job as a C# developer at a company that rewrote its legacy software in .Net after years of running VB3 code - the project had originally started in 1994 and ran on Windows 3.11.
As one of the only two guys in the team that actually knew VB I was eventually put in charge of bug for bug compatibility. Since our software did some financial estimations that were impossible to do without it (because they were not well defined), our clients didn't much care if the results were slightly wrong, as long as they were exactly compatible with the previous version - compatibility proved the results were correct.
This job mostly consisted of finding rounding errors caused by the old VB3 code, but that's not what I'm here to talk about today.
One day, after dealing with many smaller functions, I felt I was ready to finally tackle the most complicated function in our code. This was a beast of a function, called Calc, which was called from everywhere in the code, did a whole bunch of calculations, and returned a single number. It consisted of 500 or so lines of spaghetti.
This function had a very peculiar structure:
Function Calc(...)
...
If SomeVariable Then
...
If Not SomeVariable Then
...
(the most important bit of calculation happened here)
...
End If
...
End If
...
End Function
But for some reason it actually worked. For days I tried to find out what's going on, where the SomeVariable was being changed or how the nesting indentation was actually wrong and didn't match the source, but to no avail. Eventually, though, after many days, I did find the answer.
SomeVariable = 1
Somehow, the makers of VB3 though it would be a good idea for Not X to be calculated as (-1 - X). So if a variable was not a boolean (-1 for True, 0 for False), both X and Not X could be truthy, non-zero values.
And kids these days complain about JavaScript's handling of ==...7 -
First time my laptop acted as a CV.
I've been in a personal project with my pal for like a three months. We meet sometimes at a cafe which is a very nice workplace, we often see more people with laptops, so we are not the only ones that thinks so.
My pal was waiting for me, he got a table early and then I arrived. there was a guy nearby us.
Me: (this guy has a newest new macbook pro, fucking riche)
-- I sit, put my laptop and start to work with my pal --
The guy starts looking at my stickers without hiding his doing at all. I noticed that instantly
Me: (Crap, he's gonna ask something :( )
-- I kept discussing stuff with my pal for like 5 minutes and then it happened. the guy stands up and... --
Guy: hey! how are you? sorry for bother, are you perhaps developers? I'm asking because I saw your stickers
Me: mmm yes
Guy: Do you have a job currently?
Me: We are in a project (No need to mention this is personal project and I got my full time job)
Guy: Oh, ok, no problem, you see I got a company, and currently we are looking for people to work with us, we want frontend developers with javascript skills preferable, but anything is welcome. Interviews starts next week, so if you are interested or know someone that could be, I'll give you my card and please write me at my mail if anything.
Me: got it, no problem.
-- I tried my best to hide my displeasure face(but I think I showed it a little), for him to being a riche with a new macbook pro, and you know, the interruption, I wanted to be focused while working in da project --
-- I got the card, I read it a bit, didn't dig into too much, there was stuff to do at the moment. the guy already returned to his chair and my friend --
Pal: Excuse me Mr Guy, what's the job tittle?
Me: (FUCK! dude!, we're working in our shit, don't give him more reason to try to scout us. we are behind the schedule and I need to explain this shit to you FFS)
Guy: Oh yes, will be frontend developer(again), but if you are a full stack that will be a plus too, we got some stuff with angular 1.x(ugh), and sencha touch(ugh) and ...(don't remember what else was it)
Pal: Ok and the job is full time in site? or are you open to work remotely
Me: (ok man, you sound interested, that makes me look interested too >:( )
Guy: preferable in site, but we would consider remotely depending on the person.
Pal: Good! thank you very much Mr. X
Guy: cool
-- Later on, like two hours, my friend goes to the counter for more coffee --
-- I text him: dude, I feel the guy will kidnap me or something --
-- then the guy start looking again at my laptop and... ---
Guy: hey! Jhon was your name right? Do you have experience with devops? I see your aws stickers
Me: yes
Guy: do you have experience with microservices?
Me: yes, a bit with lambda, also I've done some stuff with kubernetes, opsworks, rds and whatnot. no biggie
Guy: oh cool! we have a devops job too, there is a migration we need to do for an app to micro services. again if you are interested or know someone that it does. please mail me :)
Me: gotcha
There were no further interactions with Mr. Guy the rest of the day.
I'll be thrilled if someone ask me about my bee and puppycat sticker12 -
I hate that trend of making things more lax in terms of implementation quality while writing it off with a simple but stupid "oh computers are faster now, users have the RAM, yadda yadda". Yeah but back in a day things were actually running pretty damn fast in comparison while doing it on hardware that is totally potato in comparison to what's used now. This trend eats away ANY gains we get in terms of performance with upgrades. It deprecated the whole notion of netbooks (and I kinda liked them for casual stuff), since now every goddamn one-page blog costs you from several megabytes and up to tens of megabytes of JS alone and lots of unnecessary computations. Like dude, you've brought in a whole Angular to render some text and three buttons, and now your crappy blog is chewing on 500 MB of my RAM for whatever reason.
Also, Electron apps. Hate them. Whoever invented the concept, deserves their own warm spot in Hell. You're doing the same you would've done more efficiently in Qt or whatever there is. Qt actually takes care of a lot of stuff for you, so it doesn't look like you'll be slowed down by choosing it over Electron. Like yeah, web version will share some code with your desktop solution but you're the whole reason I'm considering your competitor's lack of Electron a huge advantage over you even if they lack in features.
Same can be said pretty much about everything that tries to be more than it should, really. IDEs, for example, are cancerous. You can do 90%+ of what you intended to do in IDE using plain Vim with *zero* plugins, and it will also result in less strain on your hands.
People have just unlearned the concept of conscious consumption, it seems.28 -
I just realized why you should never help people with tech problems, at least for free.
I went to grab the rent from a family that lives in my grandma's childhood home.
The father asks me if I could have a look at their new internet connection because it doesn't open any pages on the browser.
After fiddling for about an hour and a half trying every trick in the book and gently explaining to his children how everything is supposed to work (kids need to learn how these machines work imho) I ask him to give me his service provider number and confirmed that indeed the problem was that the connection wasn't activated on their side. Installed chrome, set the date,/time because it wouldn't sync and told them twice how to get past the certificate problem should some page not open. Smiles all around, all is well.
Fast forward next to next morning and I get a call from the guy telling me his internet doesn't work because he pulled out the power cable for whatever reason. I instruct him to restart the router just to be sure and then ask him what's on the screen. Turns out it was the certificate problem. I try as best I can explaining and reminding him how to get past but he doesn't understand. He goes on asking me to "come over for 5minutes and have a look at it". I politely tell him that just the trip is half an hour and that I am currently in the middle of exams to finish university. His tone becomes increasingly passive aggressive as I tell him again that it's isn't possible for me to make the time for a one hour round trip at the moment. Hangs up with a grim "right right whatever you say."
First time I was genuinely angry at a person being both so ungrateful after helping them and not even trying to fix something after I took the time to explain it to them.10 -
Im gunna get a lot of flak for this but just hear me out:
People keep asking me what it's like working in a male dominated industry. They have conferences for women in tech empowerment and I get forced to go to them because I'm the only female in the office.
The thing is. I don't feel oppressed. I get that we "need" more women in tech but from my experience and from talking to various women at my old university, the reason women are avoiding the tech industry isn't because it's male dominated and they feel out of place. It's because a) it doesn't interest them or b) they never thought of it as an option (like myself).
Computer programming should be in grade schools and highschool's just like math and science to help educated not only women but people in general that it's an option. That's what's going to help more women get in the tech industry. Not these bullshit conferences and women's rights in tech movements, and hiring women over men (even if she's worse than him in skill level) just because she's a woman.
Frankly I think it's downright shameful that companies that are male dominated feel the need to hire women over men just because of gender. If I'm applying somewhere and there's a better male candidate, hire him! I'd much rather your company have a good team then a "balanced" team. Great tech teams are what will bring along new and better technologies, not balanced ones.
Keep in mind I'm talking about Western Civilization here, I get that a lot of countries are still struggling with the balance of women's rights at all but this is Canada.
I also get that there are probably some women who want to join tech but won't because it's too male dominated but frankly that's a shit poor excuse. If you really wanted to join tech then being surrounded by make co-workers wouldn't deter you from living your life the way you want to. If you feel so uncomfortable around men that you won't go into an industry you love because it's male dominated then I'm sorry for you and you should probably see a councillor to get that worked out.
I feel more oppressed by having to put aside my programming and being forced to go to these conferences than I do in the every day workplace. My boss is literally more offended that I don't feel offended about being a woman "minority". He spent a week pestering me about how I would feel about this, that and the other thing if it happened to me.
I'm not saying nobody ever says anything even remotely sexist to me but frankly I could give two shits- I'm here. I'm coding. I'm good at what I do and I'm comfortable enough with myself that I can just blow off the comment (which probably wasn't even meant to offend me) and continue working. But you're going to get that wherever you go, this isn't a flaw of the tech industry. This is a flaw of the world and it goes both ways (men get flak too).26 -
!rant
So nearly done with the work app and I need these images scaled accurately (it's for comparing pupils) my problem is I'd normally ask my brother to make the images but he is busy with uni for the next few weeks.
I'm just wondering is there a tool I can use that can rescale images (I have images from the iPhone app, and I gotta say I had to add in % changes despite the proper dpi sizing), I'm looking at the Android documentation but what's funny is in the listed resolutions OnePlus 3 wasn't included (along with some other newer resolutions) lol, and also Wikipedia for OnePlus 3 has the width and height switched (for some reason the author imagined the phone is also in landscape lol).
So do you guys know of something I can use? Programming is one thing but designer is another :/4 -
I've run into problems with the app I'm working on, the problems are related to issues regarding code.
No in fact it's related the last guy who wrote the app, the code has no comments and the variable names make no sense, the only comments in the code are blocks of code... With no reason as to why it was commented.
I have to add in some checks to determine if a person that has logged in is a full member or not (full member has access to the feature I've added) and the way the guy has made this app works makes no sense to me at all.
I've tried my best to avoid all contact with his code because it makes me want to yell out in frustration.
But for this one case I have to work with what's there.
I know I've mentioned this before but I've hit my limit yet again.
And for those who don't know this guy managed to scrape together skeleton code from two apps to make part of this app, rather than using parts of the other apps he left out code that was specifically made for the other apps, (majority of the commented out code).
One app was a taxi app and from the looks of it the feature he used was to get GPS location (which I don't understand before Google maps is a think after all... The taxi app USES Google maps), the other app is some sort of funeral webcasting app (I found code imports for it, without any actual code).
I don't actual understand how this guy could put this together without not thinking "maybe this is a bad idea"
Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live
I'm that psychopath right now..... Fuck that guy (don't know where he lives though)1 -
I've noticed something odd lately.. every time I mention mains electricity in certain EE forums, people tend to go "you are a madman for wanting to use that 🤨".
To which I think in my head, sure it's a dangerous thing, after all the angry pixies that dance back and forth are kind of angry (120V) or actually insane (230V) depending on where you live.. but to mindlessly tell people to not use it at all, as an electronics engineer.. what's up with that?
I mean, it's a matter of respecting its power, right. So whenever I work with it, thick gloves, keeping my exposed lines as tiny as possible, keeping them around for as short as possible, properly insulating anything permanent, and even asking my landlord to install a defibrillator for when things still go horribly wrong (to which she agreed because it'd be useful to the other residents as well, yay 😁) are kinda mandatory.
And that's for the same reason essentially that precautions are taken when climbing a mountain by having climbing shoes, connecting yourself to pikes jammed into the mountain over a strong metal wire in case things go wrong, etc etc. And for the same reason that you don't climb a ladder in high heels and so on. Obvious, right.
Point is, inexperienced people indeed shouldn't be working with mains AC at all and that's the reason that I've avoided it in the first year or 2 of learning about electronics. But mindlessly telling people in EE forums that they're a redneck for working with the imminently lethal AC.. what's up with that?
Maybe I should just go find another electronics forum like the EEVblog forums over some random (kinda dead) electronics chat on Telegram though ¯\_(ツ)_/¯12 -
I just got e-mail:
"Sunsetting Mercurial support in Bitbucket
After much consideration, we've decided to remove Mercurial support bla bla bla crocodile tears bla bla..."
So basically, Bitbucket started out as a Mercurial repository hosting platform. After GitHub's rise in popularity, they decided "hey, everyone's welcome, both Hg and Git!" Then it became Git and "okay Hg too, but shhh don't tell anyone". Now they FINALLY completed running it into the ground: "Only 1% of repositories are Mercurial" - yeah no shit sherlock, after actively hiding the fact you support it, people don't find out you support it! Surprised Pikachu! Oh congrats, Atlassian. You're so smart.
Mercurial support was the sole reason I had repositories there. I mean, for Git we already have GitHub, GitLab and others. So what's their unique selling point again? What's that, the sound of crickets? Thought so.
So after that, hopefully they change the name to "Gitbucket". Or preferably "Bitfuckit".7 -
Just now I realized that for some reason I can't mount SMB shares to E: and H: anymore.. why, you might ask? I have no idea. And troubleshooting Windows.. oh boy, if only it was as simple as it is on Linux!!
So, bimonthly reinstall I guess? Because long live good quality software that lasts. In a post-meritocracy age, I guess that software quality is a thing of the past. At least there's an option to reset now, so that I don't have to keep a USB stick around to store an installation image for this crap.
And yes Windows fanbois, I fucking know that you don't have this issue and that therefore it doesn't exist as far as you're concerned. Obviously it's user error and crappy hardware, like it always is.
And yes Linux fanbois, I know that I should install Linux on it. If it's that important to you, go ahead and install it! I'll give you network access to the machine and you can do whatever you want to make it run Linux. But you can take my word on this - I've tried everything I could (including every other distro, custom kernels, customized installer images, ..), and it doesn't want to boot any Linux distribution, no matter what. And no I'm not disposing of or selling this machine either.
Bottom line I guess is this: the OS is made for a user that's just got a C: drive, doesn't rely on stuff on network drives, has one display rather than 2 (proper HDMI monitor recognition? What's that?), and God forbid that they have more than 26 drives. I mean sure in the age of DOS and its predecessor CP/M, sure nobody would use more than 26 drives. Network shares weren't even a thing back then. And yes it's possible to do volume mounts, but it's unwieldy. So one monitor, 1 or 2 local drives, and let's make them just use Facebook a little bit and have them power off the machine every time they're done using it. Because keeping the machine stable for more than a few days? Why on Earth would you possibly want to do that?!!
Microsoft Windows. The OS built for average users but God forbid you depart from the standard road of average user usage. Do anything advanced, either you can't do it at all, you can do it but it's extremely unintuitive and good luck finding manuals for it, or you can do it but Windows will behave weirdly. Because why not!!!12 -
What's a good reason to be an android lover?
Having 4 apps running on screen at once!
(The 4th is using the quick reply when getting a message)
I still get amazed at how far mobile operating systems have evolved compared to the desktop!17 -
So having gotten my hands on the books I need for the next semester I decided to go take a look at what's in them.
Now the first is mostly web stuff and the second is just about software design. It starts off with an introduction to HTML5, where they didn't really teach HTML5, more like they taught HTML3/4 but not in a way that was too dangerous. I can tolerate not having my semantic tags tbh. They also used spaces on both sides of the = for some reason.
Then a CSS chapter which was also surprisingly mediocre. They didn't use a dedicated CSS file, but I can live with that, for starters.
Then there were some surprisingly decent JS chapters. Although they did use newlines before their { kinda miffed me. There has also been a few developments since this books release, but tbh this isn't the worst case of outdatedness. (And at least they didn't use jquery when teaching JS)
Then a chapter on SQL which I ignored.
Then a chapter about PHP, and, uhm, when did this book get released? Well the ISBN is 978-0-13-215100-9 and using the power of Google we can reveal it was published in.. 2011..
I'm quite happy that I already know how to program12 -
After a few weeks of being insanely busy, I decided to log onto Steam and maybe relax with a few people and play some games. I enjoy playing a few sandbox games and do freelance development for those games (Anywhere from a simple script to a full on server setup) on the side. It just so happened that I had an 'urgent' request from one of my old staff member from an old community I use to own. This staff member decided to run his own community after I sold mine off since I didn't have the passion anymore to deal with the community on a daily basis.
O: Owner (Former staff member/friend)
D: Other Dev
O: Hey, I need urgent help man! Got a few things developed for my server, and now the server won't stay stable and crashes randomly. I really need help, my developer can't figure it out.
Me: Uhm, sure. Just remember, if it's small I'll do it for free since you're an old friend, but if it's a bigger issue or needs a full recode or whatever, you're gonna have to pay. Another option is, I tell you what's wrong and you can have your developer fix it.
O: Sounds good, I'll give you owner access to everything so you can check it out.
Me: Sounds good
*An hour passes by*
O: Sorry it took so long, had to deal with some crap. *Insert credentials, etc*
Me: Ok, give me a few minutes to do some basic tests. What was that new feature or whatever you added?
O: *Explains long feature, and where it's located*
Me: *Begins to review the files* *Internal rage wondering what fucking developer could code such trash* *Tests a few methods, and watches CPU/RAM and an internal graph for usage*
Me: Who coded this module?
O: My developer.
Me: *Calm tone, with a mix of some anger* So, you know what, I'm just gonna do some simple math for ya. You're running 33 ticks a second for the server, with an average of about 40ish players. 33x60 = 1980 cycles a minute, now lets times that by the 40 players on average, you have 79,200 cycles per minute or nearly 4.8 fucking cycles an hour (If you maxed the server at 64 players, it's going to run an amazing fucking 7.6 million cycles an hour, like holy fuck). You're also running a MySQLite query every cycle while transferring useless data to the server, you're clusterfucking the server and overloading it for no fucking reason and that's why you're crashing it. Another question, who the fuck wrote the security of this? I can literally send commands to the server with this insecure method and delete all of your files... If you actually want your fucking server stable and secure, I'm gonna have to recode this entire module to reduce your developer's clusterfuck of 4.8 million cycles to about 400 every hour... it's gonna be $50.
D: *Angered* You're wrong, this is the best way to do it, I did stress testing! *Insert other defensive comments* You're just a shitty developer (This one got me)
Me: *Calm* You're calling me a shitty developer? You're the person that doesn't understand a timer, I get that you're new to this world, but reading the wiki or even using the game's forums would've ripped this code to shreds and you to shreds. You're not even a developer, cause most of this is so disorganized it looks like you copy and pasted it. *Get's angered here and starts some light screaming* You're wasting CPU usage, the game can't use more than 1 physical core, and after a quick test, you're stupid 'amazing' module is using about 40% of the CPU. You need to fucking realize the 40ish average players, use less than this... THEY SHOULD BE MORE INTENSIVE THAN YOUR CODE, NOT THE OPPOSITE.
O: Hey don't be rude to Venom, he's an amazing coder. You're still new, you don't know as much as him. Ok, I'll pay you the money to get it recoded.
Me: Sounds good. *Angered tone* Also you developer boy, learn to listen to feedback and maybe learn to improve your shitty code. Cause you'll never go anywhere if you don't even understand who bad this garbage is, and that you can't even use the fucking wiki for this game. The only fucking way you're gonna improve is to use some of my suggestions.
D: *Leaves call without saying anything*
TL;DR: Shitty developer ran some shitty XP system code for a game nearly 4.8 million times an hour (average) or just above 7.6 million times an hour (if maxed), plus running MySQLite when it could've been done within about like 400 an hour at max. Tried calling me a shitty developer, and got sorta yelled at while I was trying to keep calm.
Still pissed he tried calling me a shitty developer... -
I had spent the last year working on a online store power by woocommerce with over 100k products from various suppliers. This online store utilized a custom API that would take the various formats that suppliers offer their inventory in and made them consistent. Now everything was going swimmingly initially, but then I began adding more and more products using a plug-in called WP all import. I reached around 100k products and the site would take up to an entire minute to load sometimes timing out. I got desperate so I installed several caching plugins, but to no avail this did not help me. The site was originally only supposed to take three to four months but ended up taking an entire year. Then, just yesterday I found out what went wrong and why this woocommerce website with all of these optimizations was still taking anywhere from 60 to 90 seconds to load, or just timing out entirely. I had initially thought that I needed a beefier server so I moved it to a high CPU digitalocean VM. While this did help a little bit, the site was still very slow and now I had very high CPU usage RAM usage and high disk IO. I was seriously stumped the Apache process was using a high amount of CPU and IO along with MYSQL as well. It wasn't until I started digging deeper into the database that I actually found out what the issue was. As I was loading the site I would run 'show process list' in the SQL terminal, I began to notice a very significant load time for one of the tables, so I went to go and check it out. What I did was I ran a select all query on that particular table just to see how full it was and SQL returned a error saying that I had exceeded the maximum packet size. So I was like okay what the fuck...
So I exited my SQL and re-entered it this time with a higher packet size. I ran a query that would count how many rows were in this particular table and the number came out to being in the millions. I was surprised, and what's worse is that this table belong to a plugin that I had attempted to use early in the development process to cache the site. The plugin was deactivated but apparently it had left PHP files within the wp content directory outside of the actual plugin directory, so it's still executing scripts even though the plugin itself was disabled. Basically every time I would change anything on the site, it would recache the whole thing, and it didn't delete any old records. So 100k+ products caching on saves with no garbage collection... You do the math, it's gonna be a heavy ass database. Not only that but it was serialized data, so when it did pull this metric shit ton of spaghetti from the database, PHP then had to deserialize it. Hence the high ass CPU load. I had caching enabled on the MySQL end of things so that ate the ram. I was really desperate to get this thing running.
Honest to God the main reason why this website took so long was because the load times made it miserable to work on. I just thought that the hardware that I had the site on was inadequate. I had initially started the development on a small Linux VM which apparently wasn't enough, which is why I moved it to digitalocean which also seemed to not be enough, so from there I moved to a dedicated server which still didn't seem to be enough. I was probably a few more 60-second wait times or timeouts from recommending a server cluster to my client who I know would not be willing to purchase it. The client who I promised this site to have completed in 3 months and has waited a year. Seriously, I would tell people the struggles that I would go through with this particular site and they would just tell me to just drop the site; just take the money, just take the loss. I refused to, this was really the only thing that was kicking my ass. I present myself as this high-and-mighty developer like I'm just really good at what I do but then I have this WordPress site that's just beating the shit out of me for a year. It was a very big learning experience and it was also very humbling as well, it made me realize that I really don't know as much as I think I might. It was evidence that there is still so much more to learn out there, I did learn a lot from that experience especially about optimizing websites the different types of methods to do that particular lonely on the server side and I'll be able to utilize this knowledge in the future.
I guess the moral of the story is, never really give up. Ultimately things might get so bad that you're running on hopes and dreams. Those experiences are generally the most humbling. Now I can finally present the site that I am basically a year late on to the client who will be so happy that I did not give up on the project entirely. I'll have experienced this feeling of pure euphoria, and help the small business significantly grow their revenue. Helping others is very fulfilling for me, even at my own expense.
Anyways, gonna stop ranting. Running out of characters. If you're still here... Ty for reading :')7 -
Spent a lot of time designing a proper HTTP (dare I even say RESTful) API for our - what is until now a closed system, using a little-known/badly-supported message-over-websocket protocol to do RPC-style communications - supposedly enterprise-grade product.
I make the API spec go through several rounds of review with the rest of the dev team and customers/partners alike. After a few iterations, everybody agrees that the spec will meet the necessary requirements.
I start implementing according to spec. Because this is the first time we're actually building proper HTTP handling into the product, but we of course have to make it work at least somewhat with the RPC-style codebase, it's mostly foundational work. But still, I manage to get some initial endpoints fully implemented and working as per the spec we agreed. The first PR is created, reviews are positive, the direction is clear and what's there already works.
At this point in time, I leave on my honeymoon for two weeks. Naturally, I assume that the remaining endpoints will be completed following the outlines/example of the endpoints which I built. When I come back, the team mentions that the implementation is completed and I believe all is well.
The feature is deployed selectively to some alpha customers to start validation testing before the big rollout. It's been like that for a good month, until a few days ago when I get a question related to a PoC integration which they can't seem to get to work.
I start investigating and notice that the API hasn't been implemented according to the previously agreed upon spec at all. Not only did the team manage to implement the missing functionality in strange and some even broken ways, they also managed to refactor my previously working endpoints into being non-compliant.
Now, I'm a flexible guy. It's not because something isn't done exactly as I've imagined it that it's automatically bad. However, I know from experience that designing a good/clear/future-proof API is a tricky exercise. I've put a lot of time and effort into deliberate design decisions that made up the spec that we all reviewed repeatedly and agreed upon. The current implementation might also be fine, but I now have to go over each endpoint again and reason about whether the implementation still fulfills the requirements (both soft and hard) that we set out to meet.
I'm met with resistance, pushback and disbelief from product management and dev co-workers alike when I raise the concern that the API might actually not be production-ready (while I'm frantically rewriting my integration tests and figuring out how the actual implementation works in comparison to what was spec'ed).
Oh, and did I mention that product management wants to release this by end-of-week?!7 -
New episode on my clients being morons.
Got a call this morning:
Client: hello, we've got a problem here...
Me: tell me about it
C: well... Do you remember the 1200 account we loaded last week ?
Me: yes? What's wrong, we tested them, everything was alright.
C: yeah... But we just noticed we loaded them in the wrong status... Fix that!
Me: easy, we clear the database and load the correct data back.
C: NO WAY! We already worked on 3 accounts. Don't want to lose any of that. Just change the status, it's easy
Me: well not really, there's a lot more going on when you go from one status to another.
C: Don't care, just do it
So... now I need to delete the bad data, checking nothing else gets impacted in the application. And then reload that same data with the proper status this time.
As weird as this sounds like, this is the reason why I love my job. You get challenges like that every single day.4 -
No, you cannot ask us to move our tech meeting elsewhere because we're being "loud", for the same reason we don't ask you to leave the area because your non-work-related chatter is distracting us from our said meeting. It's the only video conferencing system in the joint, and it's not our fault you and your people sit nearby. How dare you go past us and complain to our boss as if we're nothing to you - just because you were recently promoted, don't act like you were never in the trenches with the rest of us. It's like you have no respect for us now that you've gone a step up the ladder. The next time you or your team members try to fuck with us like that over petty shit like this, we're going to bring the hammer down on your asses and burn every last vestige of self-worth you have by making sure you never get a moment's peace. It's bad enough you and your team suck each other off during our bi-weekly department meeting by patting yourselves on the back for doing what's supposed to be your fucking jobs - don't you dare try to drag us down to make yourselves look like fucking saints. That is where I cross the goddamn line.
-
A few days ago Aruba Cloud terminated my VPS's without notice (shortly after my previous rant about email spam). The reason behind it is rather mundane - while slightly tipsy I wanted to send some traffic back to those Chinese smtp-shop assholes.
Around half an hour later I found that e1.nixmagic.com had lost its network link. I logged into the admin panel at Aruba and connected to the recovery console. In the kernel log there was a mention of the main network link being unresponsive. Apparently Aruba Cloud's automated systems had cut it off.
Shortly afterwards I got an email about the suspension, requested that I get back to them within 72 hours.. despite the email being from a noreply address. Big brain right there.
Now one server wasn't yet a reason to consider this a major outage. I did have 3 edge nodes, all of which had equal duties and importance in the network. However an hour later I found that Aruba had also shut down the other 2 instances, despite those doing nothing wrong. Another hour later I found my account limited, unable to login to the admin panel. Oh and did I mention that for anything in that admin panel, you have to login to the customer area first? And that the account ID used to login there is more secure than the password? Yeah their password security is that good. Normally my passwords would be 64 random characters.. not there.
So with all my servers now gone, I immediately considered it an emergency. Aruba's employees had already left the office, and wouldn't get back to me until the next day (on-call be damned I guess?). So I had to immediately pull an all-nighter and deploy new servers elsewhere and move my DNS records to those ASAP. For that I chose Hetzner.
Now at Hetzner I was actually very pleasantly surprised at just how clean the interface was, how it puts the project front and center in everything, and just tells you "this is what this is and what it does", nothing else. Despite being a sysadmin myself, I find the hosting part of it insignificant. The project - the application that is to be hosted - that's what's important. Administration of a datacenter on the other hand is background stuff. Aruba's interface is very cluttered, on Hetzner it's super clean. Night and day difference.
Oh and the specs are better for the same price, the password security is actually decent, and the servers are already up despite me not having paid for anything yet. That's incredible if you ask me.. they actually trust a new customer to pay the bills afterwards. How about you Aruba Cloud? Oh yeah.. too much to ask for right. Even the network isn't something you can trust a long-time customer of yours with.
So everything has been set up again now, and there are some things I would like to stress about hosting providers.
You don't own the hardware. While you do have root access, you don't have hardware access at all. Remember that therefore you can't store anything on it that you can't afford to lose, have stolen, or otherwise compromised. This is something I kept in mind when I made my servers. The edge nodes do nothing but reverse proxying the services from my LXC containers at home. Therefore the edge nodes could go down, while the worker nodes still kept running. All that was necessary was a new set of reverse proxies. On the other hand, if e.g. my Gitea server were to be hosted directly on those VPS's, losing that would've been devastating. All my configs, projects, mirrors and shit are hosted there.
Also remember that your hosting provider can terminate you at any time, for any reason. Server redundancy is not enough. If you can afford multiple redundant servers, get them at different hosting providers. I've looked at Aruba Cloud's Terms of Use and this is indeed something they were legally allowed to do. Any reason, any time, no notice. They covered all their bases. Make sure you do too, and hope that you'll never need it.
Oh, right - this is a rant - Aruba Cloud you are a bunch of assholes. Kindly take a 1Gbps DDoS attack up your ass in exchange for that termination without notice, will you?5 -
Want to make someone's life a misery? Here's how.
Don't base your tech stack on any prior knowledge or what's relevant to the problem.
Instead design it around all the latest trends and badges you want to put on your resume because they're frequent key words on job postings.
Once your data goes in, you'll never get it out again. At best you'll be teased with little crumbs of data but never the whole.
I know, here's a genius idea, instead of putting data into a normal data base then using a cache, lets put it all into the cache and by the way it's a volatile cache.
Here's an idea. For something as simple as a single log lets make it use a queue that goes into a queue that goes into another queue that goes into another queue all of which are black boxes. No rhyme of reason, queues are all the rage.
Have you tried: Lets use a new fangled tangle, trust me it's safe, INSERT BIG NAME HERE uses it.
Finally it all gets flushed down into this subterranean cunt of a sewerage system and good luck getting it all out again. It's like hell except it's all shitty instead of all fiery.
All I want is to export one table, a simple log table with a few GB to CSV or heck whatever generic format it supports, that's it.
So I run the export table to file command and off it goes only less than a minute later for timeout commands to start piling up until it aborts. WTF. So then I set the most obvious timeout setting in the client, no change, then another timeout setting on the client, no change, then i try to put it in the client configuration file, no change, then I set the timeout on the export query, no change, then finally I bump the timeouts in the server config, no change, then I find someone has downloaded it from both tucows and apt, but they're using the tucows version so its real config is in /dev/database.xml (don't even ask). I increase that from seconds to a minute, it's still timing out after a minute.
In the end I have to make my own and this involves working out how to parse non-standard binary formatted data structures. It's the umpteenth time I have had to do this.
These aren't some no name solutions and it really terrifies me. All this is doing is taking some access logs, store them in one place then index by timestamp. These things are all meant to be blazing fast but grep is often faster. How the hell is such a trivial thing turned into a series of one nightmare after another? Things that should take a few minutes take days of screwing around. I don't have access logs any more because I can't access them anymore.
The terror of this isn't that it's so awful, it's that all the little kiddies doing all this jazz for the first time and using all these shit wipe buzzword driven approaches have no fucking clue it's not meant to be this difficult. I'm replacing entire tens of thousands to million line enterprise systems with a few hundred lines of code that's faster, more reliable and better in virtually every measurable way time and time again.
This is constant. It's not one offender, it's not one project, it's not one company, it's not one developer, it's the industry standard. It's all over open source software and all over dev shops. Everything is exponentially becoming more bloated and difficult than it needs to be. I'm seeing people pull up a hundred cloud instances for things that'll be happy at home with a few minutes to a week's optimisation efforts. Queries that are N*N and only take a few minutes to turn to LOG(N) but instead people renting out a fucking off huge ass SQL cluster instead that not only costs gobs of money but takes a ton of time maintaining and configuring which isn't going to be done right either.
I think most people are bullshitting when they say they have impostor syndrome but when the trend in technology is to make every fucking little trivial thing a thousand times more complex than it has to be I can see how they'd feel that way. There's so bloody much you need to do that you don't need to do these days that you either can't get anything done right or the smallest thing takes an age.
I have no idea why some people put up with some of these appliances. If you bought a dish washer that made washing dishes even harder than it was before you'd return it to the store.
Every time I see the terms enterprise, fast, big data, scalable, cloud or anything of the like I bang my head on the table. One of these days I'm going to lose my fucking tits.10 -
So last time I said I'm gonna look for a new job.
I just had a discussion with the boss and he is very apologetic and understands my situation and frustration very well. He agreed that they are having a technical dept, so at least he knows what's up and wants to get it finally forever fixed.
Since I wanted to go self employed anyways, we've come up that I only work for them, if there is a reason and real work to do. No more useless backend work for me *pew*.
We will also split my weekly hours from 40 to 20h and increase my hourly wage.
I'm gonna hear back by Monday for the details and legal paperwork.
Wish me luck, feeling positive about this!2 -
I've kinda ghosted DevRant so here's an update:
VueJS is pretty good and I'm happy using it, but it seems I need to start with React soon to gain more business partnerships :( I'm down to learn React, but I'd rather jump into Typescript or stick with Vue.
Webpack is cool and I like it more than my previous Gulp implementation.
Docker has become much more usable in the last 2 years, but it's still garbage on Windows/Mac when running an application that runs on Symfony...without docker-sync. File interactions are just too slow for some of my enterprise apps. docker-sync was a life-saver.
I wish I had swapped ALL links to XHR requests long ago. This pseudo-SPA architecture that I've got now (still server-side rendered) is pretty good. It allows my server to do what servers do best, while eliminating the overhead of reloading CSS/JS on every request. I wrote an ES6 component for this: https://github.com/HTMLGuyLLC/... - Frankly, I could give a shit if you think it's dumb or hate it or think I'm dumb, but I'd love to hear any ideas for improving it (it's open source for a reason). I've been told my script is super helpful for people who have Shopify sites and can't change the backend. I use it to modernize older apps.
ContentBuilder.js has improved a ton in the last year and they're having a sale that ends today if you have a need for something like that, take a look: https://innovastudio.com/content-bu...
I bought and returned a 2019 Macbook pro with i9. I'll stick with my 2015 until we see what's in store for 2020. Apple has really stopped making great products ever since Jobs died, and I can't imagine that he was THAT important to the company. Any idiot on the street can you tell you several ways they could improve the latest models...for instance, how about feedback when you click buttons in the touchbar? How about a skinnier trackpad so your wrists aren't constantly on it? How about always-available audio and brightness buttons? How about better ports...How about a bezel-less screen? How about better arrow keys so you can easily click the up arrow without hitting shift all the time? How about a keyboard that doesn't suck? I did love touch ID though, and the laptop was much lighter.
The Logitech MX Master 3 mouse was just released. I love my 2s, so I just ordered it. We'll see how it is!
PHPStorm still hasn't fixed a couple things that are bothering me with the terminal: can't reorder tabs with drag and drop, tabs are saved but don't reconnect to the server so the title is wrong if you reopen a project and forget that the terminal tabs are from your last session and no longer connected. I've accidentally tried to run scripts locally that were meant for the server more than once...
I just found out this exists: https://caniuse.email/
I'm going to be looking into Kubernetes soon. I keep seeing the name (docker for mac, digitalocean) so I'm curious.
AWS S3 Glacier is still a bitch to work with in 2019...wtf? Having to setup a Python script with a bunch of dependencies in order to remove all items in a vault before you can delete it is dumb. It's like they said "how can we make it difficult for people to remove shit so we can keep charging them forever?". I finally removed almost 2TB of data, but my computer had to run that script for a day....so dumb...6 -
I was reminded of people's posts about preferred text editors in another post, so I thought I'd do the same, but also add some super old technology that I used along the way.
The first text editor I consistently used was pico. I used it to write my first webpage at school.edu/~username. It was a natural choice, because the it was the default text editor in pine, which is what we would all use for our email after opening a serial connection to the college's Digital Unix server. Or if we were the lucky ones who had a computer in a wired dorm, telnet. My dorm was not wired until my sophomore year.
I got my first job in tech in 2001, working as a night shift tier-one support technician. By this time, most people were using web based email, or POP3, but I wanted to keep using pine (or elm, or mutt) because I was totally in love with the command line by this time, and had been playing with Linux for two or three years by now. I arranged a handshake deal with a guy in my home town who had a couple well-connected NetBSD servers, to let me have an account on one for email and web hosting (a relatively new idea at the time).
I recall telnetting into my shared hosting account from the HP-UX workstations we had in the control room. I would look at webpages on HTML conventions and standards, and I kept seeing references to this thing called vi. I looked into it more deeply, and found that it was a text editor, and was the reason I always had to CTRL-Z out of elm. I was already finding pico to be lacking, so I found a modern implementation of vi called vim that was already installed on the aforementioned NetBSD server, and read through vimtutor on it. I was hooked instantly. The modality massively appealed to me, and I found editing files to be an absolute delight, compared to pico, and its nascent open source offspring/successor, nano.
My position on that hasn't changed in the years that have passed since then.
What's your text editor origin story?1 -
Oh boy, this is gonna be good:
TL;DR: Digital bailiffs are vulnerable as fuck
So, apparently some debt has come back haunting me, it's a somewhat hefty clai and for the average employee this means a lot, it means a lot to me as well but currently things are looking better so i can pay it jsut like that. However, and this is where it's gonna get good:
The Bailiff sent their first contact by mail, on my company address instead of my personal one (its's important since the debt is on a personal record, not company's) but okay, whatever. So they send me a copy of their court appeal, claiming that "according to our data, you are debtor of this debt". with a URL to their portal with a USERNAME and a PASSWORD in cleartext to the message.
Okay, i thought we were passed sending creds in plaintext to people and use tokenized URL's for initiating a login (siilar to email verification links) but okay! Let's pretend we're a dumbfuck average joe sweating already from the bailiff claims and sweating already by attempting to use the computer for something useful instead of just social media junk, vidya and porn.
So i click on the link (of course with noscript and network graph enabled and general security precautions) and UHOH, already a first red flag: The link redirects to a plain http site with NOT username and password: But other fields called OGM and dossiernumer AND it requires you to fill in your age???
Filling in the received username and password obviously does not work and when inspecting the page... oh boy!
This is a clusterfuck of javascript files that do horrible things, i'm no expert in frontend but nothing from the homebrewn stuff i inspect seems to be proper coding... Okay... Anyways, we keep pretending we're dumbasses and let's move on.
I ask for the seemingly "new" credentials and i receive new credentials again, no tokenized URL. okay.
Now Once i log in i get a horrible looking screen still made in the 90's or early 2000's which just contains: the claimaint, a pie chart in big red for amount unpaid, a box which allows you to write an - i suspect unsanitized - text block input field and... NO DATA! The bailiff STILL cannot show what the documents are as evidence for the claim!
Now we stop being the pretending dumbassery and inspect what's going on: A 'customer portal' that does not redirect to a secure webpage, credentials in plaintext and not even working, and the portal seems to have various calls to various domains i hardly seem to think they can be associated with bailiff operations, but more marketing and such... The portal does not show any of the - required by law - data supporting the claim, and it contains nothing in the user interface showing as such.
The portal is being developed by some company claiming to be "specialized in bailiff software" and oh boy oh boy..they're fucked because...
The GDPR requirements.. .they comply to none of them. And there is no way to request support nor to file a complaint nor to request access to the actual data. No DPO, no dedicated email addresses, nothing.
But this is really the ham: The amount on their portal as claimed debt is completely different from the one they came for today, for the sae benefactor! In Belgium, this is considered illegal and is reason enough to completely make the claim void. the siple reason is that it's unjust for the debtor to assess which amount he has to pay, and obviously bailiffs want to make the people pay the highest amount.
So, i sent the bailiff a business proposal to hire me as an expert to tackle these issues and even sent him a commercial bonus of a reduction of my consultancy fees with the amount of the bailiff claim! Not being sneery or angry, but a polite constructive proposal (which will be entirely to my benefit)
So, basically what i want to say is, when life gives you lemons, use your brain and start making lemonade, and with the rest create fertilizer and whatnot and sent it to the lemonthrower, and make him drink it and tell to you it was "yummy yummy i got my own lemons in my tummy"
So, instead of ranting and being angry and such... i simply sent an email to the bailiff, pointing out various issues (the ones6 -
I have been working 100 hours per week for the last 4 years. I had to deal with many stress issues, eyes, pain and headaches.
But nothing has scared me like my college life. For some reason, I still get nightmares about the viva exams.
What's wrong with me?3 -
Just when I was about to watch the Downton Abbey clips on YouTube I realize that my Firefox went completely silent without warning.
So the latest Firefox 52.0 decided to drop ALSA and force users to use pulseaudio instead. Otherwise the only way is to recompile the source with the alsa option enabled, or downgrade.
What the actual fuck Mozilla? Who made this decision? What's the reason behind? So far Firefox is the only browser that is having the sound problem.
Nope. not another bloated package. Maybe I should switch over to Chrome.4 -
What's the lastest Stack Exchange "Hot Network Question" you clicked for absolutely had no reason? Me:16
-
!dev
Guys, we need talk raw performance for a second.
Fair disclaimer - if you are for some reason intel worker, you may feel offended.
I have one fucking question.
What's the point of fucking ultra-low-power-extreme-potato CPUs like intel atoms?
Okay, okay. Power usage. Sure. So that's one.
Now tell me, why in the fucking world anyone would prefer to wait 5-10 times more for same action to happen while indeed consuming also 5-10 times less power?
Can't you just tune down "big" core and call it a day? It would be around.. a fuckton faster. I have my i7-7820HK cpu and if I dial it back to 1.2Ghz my WINDOWS with around lot of background tasks machine works fucking faster than atom-powered freaking LUBUNTU that has only firefox open.
tested i7-7820hk vs atom-x5-z8350.
opening new tab and navigating to google took on my i7 machine a under 1 second, and atom took almost 1.5 second. While having higher clock (turbo boost)
Guys, 7820hk dialled down to 1.2 ghz; 0.81v
Seriously.
I felt everything was lagging. but OS was much more responsive than atom machine...
What the fuck, Intel. It's pointless. I think I'm not only one who would gladly pay a little bit more for such difference.
i7 had clear disadvantages here, linux vs windows, clear background vs quite a few processes in background, and it had higher f***ng clock speed.
TL;DR
Intel atom processors use less power but waste a lot of time, while a little bit more power used on bigger cpu would complete task faster, thus atoms are just plain pointless garbage.
PS.
Tested in frustration at work, apparently they bought 3 craptops for presentations or some shit like that and they have mental problems becouse cheapest shit on market is more shitty than they anticipated ;-;
fucking seriously ;-;16 -
I don't understand how my managers suddenly forgot that my "down weeks" we're due to technical debt I inherited. The whole on boarding hasn't been in my favor. I've stayed at work everyday til long after work hours, digging through code, trying to get JIRA tickets done, encountering issues specific to our code base that no one would ever discover on their own without docs/help from the original dev. The whole time, I was told that they know what's going on and apologize. I constantly expressed that plenty of what we were doing was building on antipatterns. They acknowledged. When a ticket wasn't done, they always knew the very specific reason and I wasn't faulted. 6 months in, I receive a great annual review. 7 months in? I receive an email titled "Performance Discussion," detailing 4 of those incidents where a ticket was pushed back -- with inaccurate depictions of what actually went down. They actually wrote that I didn't communicate. One part of the report expressed that there were "bugs found in production due to inadequate test coverage." WTF!! Everything made it past code review and QA. What are you talking about?? In fact, the person who wrote that merged my code in each time!!!! Insane!! Anyway, Q2 is partly about cleaning up technical debt, which is a responsibility I have been vested (fantastic). I've deleted about 800 lines of code in the last 2 weeks and added plenty of doc strings. Two of the most important modules our application works from are about 1000 lines of JavaScript each without any comments/docs. I'm changing that, but I don't know if my managers truly know the significance. Someone was recently promoted to my position but manually wrote out a sorting algorithm (specified numeric indexes and all); didn't do shit to earn it but breathe. And while they get more and more praise and responsibility, I'm over here stuck trying to prove myself and live up to why I assume they hired me. It's ridiculous. I love the company, but I'm not getting any sleep and I'm stressed out. It's only been about 7 months and I've been doing everything I can. Why is this happening? What am I doing wrong? I've been developing a recurring (physical) headache and ticks. My heart/chest area sometimes feels like it's lifting weights. I sound like an idiot, pushing so hard for a company that isn't mine, but I take so much pride in being in this position, and I'm so set on proving myself this early in my career (I'm 25).8
-
A bug is born
... and it's sneaky and slimy. Mr. Senior-been-doing-it-for-ears commits some half-assed shitty code, blames failed tests on availability of CI licenses. I decided to check what's causing this shit nevertheless, turns out he forgot to flag parts of the code consistently using his new compiler defines, and some parts would get compiled while others needed wouldn't .. Not a big deal, we all make mistakes, but he rushes to Teams chat directing a message to me (after some earlier non-sensible argument about merits of cherry picking vs re-base):
Now all tests pass, except ones that need CI license. The PR is done, you can use your preferred way to take my changes.
So after I spot those missing checks causing the tests to fail, as well as another bug in yet another test case, and yet another disastrous memory related bug, which weren't detected by the tests of course .. I ponder my options .. especially based on our history .. if I say anything he will get offended, or at best the PR will get delayed while he is in denial arguing back even longer and dependent tasks will get delayed and the rest of the team will be forced to watch this show in agony, he also just created a bottleneck putting so many things at stake in one PR ..
I am in a pickle here .. should I just put review comments and risk opening a can of worms, or should I just mention the very obvious bugs, or even should I do nothing .. I end up reaching for the PM and explained the situation. In complete denial, he still believes it's a license problem and goes on ranting about how another project suffering the same fate .. bla bla bla chipset ... bla bla bla project .. bla bla bla back in whatever team .. then only when I started telling him:
These issues are even spotted by "Bob" earlier, since for some reason you just dismissed whatever I just said ..
("Bob" is another more sane senior developer in the team, and speaks the same language as the PM)
Only now I get his attention! He then starts going through the issues with me (for some reason he thinks he is technical enough to get them) .. He now to some extent believes the first few obvious bugs .. now the more disastrous bug he is having really hard time wrapping his head around it .. Then the desperate I became, I suggest let's just get this PR merged for the sake of the other tasks after may be fixing the obvious issues and meanwhile we create another task to fix the bug later .. here he chips in:
You know what, that memory bug seems like a corner case, if it won't cause issues down the road after merging let's see if we need even to open an internal fix or defect for it later. Only customers can report bugs.
I am in awe how low the bar can get, I try again and suggest let's at least leave a comment for the next poor soul running into that bug so they won't be banging their heads in the wall 2hrs straight trying to figure out why store X isn't there unless you call something last or never call it or shit like that (the sneaky slimy nature of that memory bug) .. He even dismissed that and rather went on saying (almost literally again): It is just that Mr. Senior had to rush things and communication can be problematic sometimes .. (bla bla bla) back in "Sunken Ship Co." days, we had a team from open source community .. then he makes a very weird statement:
Stuff like what Richard Stallman writes in Linux kernel code reviews can offend people ..
Feeling too grossed and having weird taste in my mouth I only get in a bad hangover day, all sorts of swear words and profanity running in my head like a wild hungry squirrel on hot asphalt chasing a leaky chestnut transport ... I tell him whatever floats your boat but I just feel really sorry for whoever might have to deal with this bug in the future ..
I just witnessed the team giving birth to a sneaky slimy bug .. heard it screaming and saw it kicking .. and I might live enough to see it a grown up having a feast with other bug buddies in this stinky swamp of Uruk-hai piss and Orcs feces.1 -
Decided to try keepass again and the combination of it all nowadays is just (nearly) perfect:
- Keepass2
- KeepassXC Browser extension (the only reason for "nearly" since NatMsg tries to emulate keepassxc but sometimes fails)
- KeePassNatMsg
- Syncthing
- Keepass2Android
There's tons of more things to discover still, but that already gave me a much easier (especially backups wise) and plugin setup than what I had before with bitwarden!
Syncthing also _just works_ (not like it used to be) which makes me all the time question what's wrong with it haha12 -
seconds into 2019
I see one incompetent fucker asking to eval in Node.js..
A FUCKING FETCH OF A NPM MODULES IN CDNJS
you know what's the reason?
node_modules
Fucking kill me unless you're some dumb bitch who uses npm modules like some braindead motherfucker who doesn't know what a number is, node_modules takes only an average of 3.6MB
Compared to RubyGems who takes 40+
Or Pip
Seriously stop this. I wanna hang myself because my 2019 put me in a shit mood1 -
What the heck COVID!
All the days have been blending together for the past 6 mo! What day of the week is this? Who am I? What's the meaning of life? Have I ever left the house?
Not going outside, getting alienated from my friends, getting somewhat anxious for no good reason...
Its so weird! This eery, suffocating stillness.
Alas! I hope the day comes soon that I may frolic in the multitudes of people!11 -
So, I've had a personal project going for a couple of years now. It's one of those "I think this could be the billion-dollar idea" things. But I suffer from the typical "it's not PERFECT, so let's start again!" mentality, and the "hmm, I'm not sure I like that technology choice, so let's start again!" mentality.
Or, at least, I DID until 3-4 months ago.
I made the decision that I was going to charge ahead with it even if I started having second thoughts along the way. But, at the same time, I made the decision that I was going to rely on as little external technology as possible. Simplicity was going to be the key guiding light and if I couldn't truly justify bringing a given technology into the mix, it'd stay out.
That means that when I built the front end, I would go with plain HTML/CSS/JS... you know, just like I did 20+ years ago... and when I built the back end, I'd minimize the libraries I used as much as possible (though I allowed myself a bit more flexibility on the back end because that seems to be where there's less issues generally). Similarly, any choice I made I wanted to have little to no additional tooling required.
So, given this is a webapp with a Node back-end, I had some decisions to make.
On the back end, I decided to go with Express. Previously, I had written all the server code myself from "first principles", so I effectively built my own version of Express in other words. And you know what? It worked fine! It wasn't particularly hard, the code wasn't especially bad, and it worked. So, I considered re-using that code from the previous iteration, but I ultimately decided that Express brings enough value - more specifically all the middleware available for it - to justify going with it. I also stuck with NeDB for my data storage needs since that was aces all along (though I did switch to nedb-promises instead of writing my own async/await wrapper around it as I had previously done).
What I DIDN'T do though is go with TypeScript. In previous versions, I had. And, hey, it worked fine. TS of course brings some value, but having to have a compile step in it goes against my "as little additional tooling as possible" mantra, and the value it brings I find to be dubious when there's just one developer. As it stands, my "tooling" amounts to a few very simple JS scripts run with NPM. It's very simple, and that was my big goal: simplicity.
On the front end, I of course had to choose a framework first. React is fine, Angular is horrid, Vue, Svelte, others are okay. But I didn't want to bother with any of that because I dislike the level of abstraction they bring. But I also didn't want to be building my own widget library. I've done that before and it takes a lot of time and effort to do it well. So, after looking at many different options, I settled on Webix. I'm a fan of that library because it has a JS-centric approach. There's no JSX-like intermediate format, no build step involved, it's just straight, simple JS, and it's powerful and looks pretty good. Perfect for my needs. For one specific capability I did allow myself to bring in AnimeJS and ThreeJS. That's it though, no other dependencies (well, at first, I was using Axios because it was comfortable, but I've since migrated to plain old fetch). And no Webpack, no bundling at all, in fact. I dynamically load resources, which effectively is code-splitting, and I have some NPM scripts to do minification for a production build, but otherwise the code that runs in the browser is what I actually wrote, unlike using a framework.
So, what's the point of this whole rant?
The point is that I've made more progress in these last few months than I did the previous several years, and the experience has been SO much better!
All the tools and dependencies we tend to use these days, by and large, I think get in the way. Oh, to be sure, they have their own benefits, I'm not denying that... but I'm not at all convinced those benefits outweighs the time lost configuring this tool or that, fixing breakages caused by dependency updates, dealing with obtuse errors spit out by code I didn't write, going from the code in the browser to the actual source code to get anywhere when debugging, parsing crappy documentation, and just generally having the project be so much more complex and difficult to reason about. It's cognitive overload.
I've been doing this professionaly for a LONG time, I've seen so many fads come and go. The one thing I think we've lost along the way is the idea that simplicity leads to the best outcomes, and simplicity doesn't automatically mean you write less code, doesn't mean you cede responsibility for various things to third parties. Those things aren't automatically bad, but they CAN be, and I think more than we realize. We get wrapped up in "what everyone else is doing", we don't stop to question the "best practices", we just blindly follow.
I'm done with that, and my project is better for it! -
Microsoft and their dev tools...
> Trying to login to Azure VM
> Get an error, saying that password needs to be changed before logging in the first time
> Head over to Azure portal, try resetting password
> Password reset is not successful. Reason: Account already exists (???)
> Google the error message. Found solution (coming from a Microsoft employee!): Create a new user, login with that, fix the password for user #1 inside the VM, then delete the new user
What's wrong with these people? 😂3 -
Just a short "dafuq?" about VS Code.
I have a MacBook Pro from last year, so it's a capable machine. And there I was today, sitting on the train, coding some Python in VS Code.
Suddenly it got all laggy. Like, one second behind my typing, dropping keystrokes, stuttery scrolling... the whole deal. The system itself was perfectly responsive and the activity manager showed the CPU at 30%. After a minute or so, it magically recovered and worked as if nothing ever happened.
What the actual fuck was VS Code doing? I mean, it's a fucking text editor. In 2019 this should be a bloody solved problem! There's absolutely no reason to use around 30% CPU in the first place, and use that much and still *lag*. Holy crap, and people ask with a straight face "what's wrong with reinventing everything based on web technologies?" Fuck everything Electron-based. Make it ElectrOFF already.
*takes deep breath*
So, editor suggestions are welcome. I used Sublime Text 3 before VS Code, I'll likely return to that.18 -
Over the summer I was recruited to be a supplement instructor for a data structures course. As a result of that I was asked (separately by the professor) to be a grader for the course. Because of pay limitations I've mostly been grading homework project assignments. In any case, it's a great job to get my foot into the department and get recognized.
Over the course of the semester I've had this one person, OSX, named after their operating system of choice, who has been giving me awkward submissions. On the first assignment they asked the professor for extra time for some reason or the other, and that's perfectly fine.
So I finally receive OSX's submission, and it's a .py file as per course of the course. So I pop up a terminal in the working directory and type "python OSX_hw1.py". Get some error spit out about the file not being the right encoding. I know that I can tell python to read it in a different encoding, so I open it up in a text editor. To my surprise it's totally not a text file, but rather a .zip file!
I've seen weirder things done before, so no big deal. I rename the file extension, and open it up to extract the files when I see that there's no python files. "Okay, what's goin on here OSX..." I think to myself.
Poking around in the files it appears to be some sort of meta-data. To what, I had no clue, but what I did find was picture files containing what appeared to be some auto-generated screenshots of incomplete code. Since I'm one to give people the benefit of doubt even when they've long exhausted other peoples', I thought that it must be some fluke, and emailed OSX along with the professor detailing my issue.
I got back a rather standard reply, one of which was so un-notable I could not remember it if my life depended on it. However, that also meant I didn't have to worry about that anymore. Which when you're juggling 50 bazillion things is quite a relief. Tragically, this relief was short lived with the introduction of assignment 2.
Assignment 2 comes around, and I get the same type of submission from OSX. At this time I also notice that all their submissions are *very* close to the due time of 11:59pm (which I don't care about as long as it's in before people start waking up the next morning). I email OSX and the professor again, and receive a similar response. I also get an email from OSX worried about points being deducted. I reply, "No issue. You know what's wrong. Go and submit the right file on $CentralGradingCenter. Just submit over your old assignment".
To my frustration OSX claimed to not know how to do this. I write up a quick response explaining the process, and email it. In response OSX then asks if I can show them if they comes to my supplemental lesson. I tell OSX that if they are the only person, sure, otherwise no because it would not be a fair use of time to the other students.
OSX ends up showing up before anyone else, so I guide them through the process. It's pretty easy, so I'm surprised that they were having issues. Another person then shows up, so I go through relevant material and ask them if they have any questions about recent material in class. That said, afterwards OSX was being somewhat awkward and pushy trying to shake my hand a lot to the point of making me uncomfortable and telling them that there's no reason to be so formal.
Despite that chat, I still did not see a resubmission of either of those two assignments, and assignment 3 began to show it's head. Obviously, this time, as one might expect after all those conversations, I get another broken submission in the same format. Finally pissed off, I document exactly how everything looks on my end, how the file fails to run, how it's actually a zip file, etc, all with screenshots. That then gets emailed to the professor and OSX.
In response, I get an email from OSX panicking asking me how to submit it right, etc, etc. However, they also removed the professor from the CC field. In response I state that I do not know how to use whatever editor they are using, and that they should refer to the documentation in order to get a proper runnable file. I also re-CC the professor, making sure OSX's email to me is included in my reply.
OSX then shows up for one of my lessons, and since no one had shown up yet, I reiterate through what I had sent in the email. OSX's response was astonished that they could ever screw up that bad, but also admits that they had yet to install python(!!!). Obviously, the next thing that comes from my mouth is asking OSX how they write their code. Their response was that they use a website that lets them run python code.
At this point I'm honestly baffled and explain that a lot of websites like those can have limitations which might make code run differently then it should (maybe it's a simple interpreter written on JavaScript, or maybe it is real python, but how are you supposed to do file I/O?) .
After that I finally get a submission for assignment 1! -
I'm considering quitting a job I started a few weeks ago. I'll probably try to find other work first I suppose.
I'm UK based and this is the 6th programming/DevOps role I've had and I've never seen a team that is so utterly opposed to change. This is the largest company I've worked for in a full time capacity so someone please tell me if I'm going to see the same things at other companies of similar sizes (1000 employees). Or even tell me if I'm just being too opinionated and that I simply have different priorities than others I'm working with. The only upside so far is that at least 90% of the people I've been speaking to are very friendly and aren't outwardly toxic.
My first week, I explained during the daily stand up how I had been updating the readmes of a couple of code bases as I set them up locally, updated docker files to fix a few issues, made missing env files, and I didn't mention that I had also started a soon to be very long list of major problems in the code bases. 30 minutes later I get a call from the team lead saying he'd had complaints from another dev about the changes I'd spoke about making to their work. I was told to stash my changes for a few weeks at least and not to bother committing them.
Since then I've found out that even if I had wanted to, I wouldn't have been allowed to merge in my changes. Sprints are 2 weeks long, and are planned several sprints ahead. Trying to get any tickets planned in so far has been a brick wall, and it's clear management only cares about features.
Weirdly enough but not unsurprisingly I've heard loads of complaints about the slow turn around of the dev team to get out anything, be it bug fixes or features. It's weird because when I pointed out that there's currently no centralised logging or an error management platform like bugsnag, there was zero interest. I wrote a 4 page report on the benefits and how it would help the dev team to get away from fire fighting and these hidden issues they keep running into. But I was told that it would have to be planned for next year's work, as this year everything is already planned and there's no space in the budget for the roughly $20 a month a standard bugsnag plan would take.
The reason I even had time to write up such a report is because I get given work that takes 30 minutes and I'm seemingly expected to take several days to do it. I tried asking for more work at the start but I could tell the lead was busy and was frankly just annoyed that he was having to find me work within the narrow confines of what's planned for the sprint.
So I tried to keep busy with a load of code reviews and writing reports on road mapping out how we could improve various things. It's still not much to do though. And hey when I brought up actually implementing psr12 coding standards, there currently aren't any standards and the code bases even use a mix of spaces and tab indentation in the same file, I seemingly got a positive impression at the only senior developer meeting I've been to so far. However when I wrote up a confluence doc on setting up psr12 code sniffing in the various IDEs everyone uses, and mentioned it in a daily stand up, I once again got kickback and a talking to.
It's pretty clear that they'd like me to sit down, do my assigned work, and otherwise try to look busy. While continuing with their terrible practices.
After today I think I'll have to stop trying to do code reviews too as it's clear they don't actually want code to be reviewed. A junior dev who only started writing code last year had written probably the single worst pull request I've ever seen. However it's still a perfectly reasonable thing, they're junior and that's what code reviews are for. So I went through file by file and gently suggested a cleaner or safer way to achieve things, or in a couple of the worst cases I suggested that they bring up a refactor ticket to be made as the code base was trapping them in shocking practices. I'm talking html in strings being concatenated in a class. Database migrations that use hard coded IDs from production data. Database queries that again quote arbitrary production IDs. A mix of tabs and spaces in the same file. Indentation being way off. Etc, the list goes on.
Well of course I get massive kickback from that too, not just from the team lead who they complained to but the junior was incredibly rude and basically told me to shut up because this was how it was done in this code base. For the last 2 days it's been a bit of a back and forth of me at least trying to get the guy to fix the formatting issues, and my lead has messaged me multiple times asking if it can go through code review to QA yet. I don't know why they even bother with code reviews at this point.18 -
I've had a Xiaomi Mi 8 for a few months now. Although I'm impressed by what I got for the amount I paid (a phone that cost about $250 for 6GB RAM, Snapdragon 845, Android 9 and premium build quality is quite a steal), it definitely comes with a consequence.
MIUI (specifically MIUI 11) is godawful. It is single-handedly the worst Android ROM I've ever used since my shitty Android 2.2 phone back around 2010. If you're gonna buy a Xiaomi phone, plan to install Lineage OS on it (but even that's a pain which I'll explain why later).
- Navigation buttons don't hide while watching a video.
Why? God only knows. The ONLY way to bypass without root this is to use its garbage fullscreen mode with gestures, which is annoying as all hell.
- 2 app info pages?
Yeah, the first one you can access just by going to its disaster of a settings app, apps, manage apps and tap on any one.
The 2nd one you can access through the app info button in any 3rd party launcher. Try this: Download Nova launcher, go to the app drawer, hold on any app and tap "app info", and you'll see the 2nd one.
Basically, instead of modifying Android's FOSS source code, they made a shitty overlay. These people are really ahead of their time.
- Can only set lock screen wallpapers using the stock Gallery app
It's not that big an issue, until it is, when whatever wallpaper app you're using only allows you to set the wallpaper and not download them. I think this is both a fuckup on Xiaomi and (insert wallpaper app name here), but why Xiaomi can't include this basic essential feature that every other Android ROM ever made has is beyond me.
- Theming on MIUI 11 is broken
Why do they even bother having a section to customize the boot animation and status bar when there's not one goddamn theme that supports it? At this point you're only changing the wallpaper and icon pack which you can do on any Android phone ever. Why even bother?
They really, REALLY want to be Apple.
Just look at their phones. They're well designed and got good specs, but they don't even care anymore about being original. The notch and lack of a headphone jack aren't features, they're tremendous fuckups by the dead rotting horse known as Apple that died when Steve Jobs did.
Xiaomi tries to build a walled garden around an inherently customizable OS, and the end result is a warzone of an Android ROM that begs for mercy from its creator. Launchers integrate horribly (Does any power user actually use anything that isn't Nova or Microsoft launcher?), 3rd party themes and customization apps need workarounds, some apps don't work at all. People buy from Xiaomi to get a high end budget Android phone at the price of some ads and data collection, not a shitter iOS wannabe.
They really, REALLY want you to have a sim card
If you don't have a sim card and you're using your phone for dev stuff, you're a 2nd class citizen to Xiaomi. Without one, you can't:
- Install adb through adb
- Write to secure settings
- Unlock your bootloader and get away from this trash Android ROM
What's the point? Are they gonna shadow ban you? Does anyone contact them to unlock their bootloader saying "yeah I wanna use a custom rom to pirate lizard porn and buy drugs"? They made this 1000000000x harder than it needs to be for no reason whatsoever. Oh yeah and you gotta wait like a week or something for them to unlock it. How they fucked up this bad is beyond me.
So yeah. Xiaomi. Great phones, atrocious OS.11 -
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 -
Three days ago my focus was shifted from a development role to a support role. I was shifted to replace another support guy who had used fraud to get the position. I have no experience with this role but there was decent KT and I'm catching on fine. During onboarding and KT I'm serving as the first contact for new tickets and whatnot...
Today I got a ticket with an error on our production instance that no one had ever seen before. It prevented the guy from using our service entirely. I tried to reproduce it and... I couldn't use the service either. No one could. Everything was down. I could see the sweat building on my manager's forehead.
Thankfully another member on my team has done a bit of support before, so we collaborated with each other and other teams throughout the day to figure out what's wrong and how to fix it. I'm listening to them chat remotely as we speak - so far I've been working on it 9 hours straight.
This service is used by everyone - it's a business critical service with due dates on actions and escalations to managers... Imagine if the support ticketing service for your company crashed. That means a lot of people are asking what's wrong, requiring extensions, etc. I've been answering to managers and seniors in the business throughout the day.
The best part? We figured out why the server went down, and the reason is fantastic: someone updated the server's code without telling anyone, and all they had done was remove critical parsing code. Just took it right out, pushed, redeployed. We don't know who did it or who even has access to do that. I guess I have some detective work cut out for me after we've fixed everything that was broken by that.
I miss coding already.1 -
Whenever i want to chill out, play games and movies the computer is very supportive
"Here ya go fella ooo 20 chrome tabs on a conspiracy? Sure why not" but i swear to god the moment i want to be productive,
"What's that? Android studio? Why don't i triple the normal loading time, freeze for 1absolutely no reason ooo u wanna run emulator with that? Lol okay sweetie good luck"
or or
"Sir do you have a moment to talk about our lord and savior, the WINDOWS UPDATE? Oh no you can't shut the door your house is practically OURS"
Guys i feel my computer is sentient. It doesn't want me getting too smart for ..reasons? Does anyone else feel the same way about their machine? I hope its not too late to start a revolution yet1 -
Those little assholes who code the web interfaces for the provider specific router. You also can't replace it with a fritzbox or something similar.
1. Password field only
2. Password field is no password field
3. This red internet thing doesn't tell me what's fucking wrong
4. The "diagnose" says everything is alright with my internet
5. It always complains because not every device in my network supports gigabit yet (there is an old switch). No reason to show everything in fucking red imo.
6. The things it lists I have to check can be and also should be checked by the fucking thing itself. Like wtf. They wanted a lot of money from me for this shitty thing and there is no temperature sensor to check if it's too hot.
7. It just stops working on hot days... Restart manually solves it. Let's restart manually from work when I have to access my files on my NAS from fucking 40 km away..
(see comments for more screenshots)4 -
Hold a meeting that the participants actually want.
The biggest time wasters I had to attend were:
- "generic weekly meet up of people not working together telling what's new on their side" (I don't work with you, I DON'T CARE)
- "management wants updates/wants to talk about doing instead of letting us do" (go read Jira tickets, and ffs stay out of the experts' field... They're experts in it for a reason)
- "no agenda, this is just to get to know each other" (I get to know people on my own terms, stop forcing what can't be forced)
- most Scrum meetings (some people need guidance, I don't! Your Scrum chains actually hinder my productivity! Can we please stop wasting my time and nerves?)
And the best meetings? A couple of coworkers realizing "hey we need to make a decision here, let's book a conference room together" and "hey you know your stuff about xyz, can you teach us what you know?".10 -
the more i learn about web dev, the more i realise the reason for its mess up . There are 2 major problems in it : the people who create various important concepts and tools for web dev were 1) working on it without any collaboration and agreements on the philosophy and 2) were too stubborn on their ideology i guess.
There is no limitation to anything's functionalities, and the limits that are "defined" are badshit crazy. for eg:
====================================
HTML creator : "I am gonna make a language that would provide a skeleton to web page. it will just have the text and basic markers to let the scripting and styling engines/languages know which text is supposed to be rendered and how.
It won't provide any click or loading functionality.
someone: "So i guess opening a page or loading an image would be handled by JS or other programming language? also, bold , italic or division would be added via CSS?"
HTMLguy : Nah, my html engine would ALSO do that.
someone : what , why? won't that just be stupid and against your philosophy?
HTMLguy : WHAT? am too awesome, can't hear you
w3c , 50 yrs later : sorry can't change this, gotta support the 50 yrs of web dev and billion sites
=================================
CSS guy: I am gonna make the world's best beautifying stylesheet language to provide colors, styling, fonts and backgrounds to a page. every loadings and clicks would be handled somewhere else
Some1: cool, then clicks, hover and running of animation would be handled by JS only
CSSguy :Umm, i guess i could handle those.
Some1 wha-?
CSSguy : Thankyou Thankyou Thankyou for the nobel price!
====================================
JS guy : I am gonna make a god web programming language! It can do everything: add/remove html tags, add styling, control animations, control browser, handle clicks , perform operations, everything!
some1: cool! you must be making very large programming language with lots of modules.
JS guy: No! i am gonna keep it small. no built in classes and file imports! just use the functions directly. if someone wants the additional lib functionality, install them on your server
some1 : innovative! what's typeof NaN ?
JSguy :shut up.6 -
Spent 2 hours wondering why Unity Engine sees my 2 joysticks as Joystick 1 and Joystick 5 (or 6 depending on a UBS port).
Turns out, for some reason, Unity remembers ALL the ports that were ever used (even with the usb extender). That's documented...exactly nowhere. Ok, at least I figured that out, but what am I gonna do about it? Nothing, there's no way to change the order.
So after a quick nervous breakdown, and a cigarette break, I decided to build and run the game, just to see how it looks, and...what's this?
Everything's working! Unity removes all the joysticks from it's array and puts only active ones in the right order and that too is documented...NOWHERE!
Ugh... Unity I still love you, but god damn, GET YOUR SHIT TOGETHER!!!
Needless to say, this day is an emotional roller coaster.1 -
Okay, I really need some help here.
We're building quite a large application that will serve as the backbone for the whole company. We have to implement some sort of role system. We're debating whether or not to store roles in the DB or in code (some sort of config file). Personally I don't see any reason to do so. What's your thoughts?13 -
Yeah, handouts create lazy people I'm not impressed with
You want something in life, then why don't you go and get it?
Actions speak louder than words do, it's pretty quiet, isn't it?
Look at the world we live in, defined by comment sections
Surround yourself with people that challenge how you think
Not people that nod their head and act like they agree
Those people will cut you open just to watch you bleed
Always be yourself, not the person that you pretend to be, no!
These people gon' tell you that you will never make it
Then when you do, they gon' say they knew you were goin' places
That's just how it works, next thing you know you'll be overrated
Hearing people say they miss the "old you, " it's crazy, ain't it?
And perfect people don't exist, so don't pretend to be one
I don't need pats on the back from people for my achievements
When I die I wanna know that I lived for a reason
Anyone can take your life, but not what you believe in, no
Just remember this
Yeah, don't take opinions from people that won't listen to yours
If money's where you find happiness, you'll always be poor
If you don't like the job you have, then what do you do it for?
The cure to pain isn't something you buy at liquor stores, nah
The real you is not defined by the size of your office
The real you is who you are when ain't nobody watchin'
You spend your whole life worried about what's in your wallet
For what? That money won't show up in your coffin, woo!
Yeah, anger's a liar, he ain't got no respect
I fell in love with my pain and I slept with my regrets
Happiness saw it happen, maybe that's why she up and left
Joy called me a cheater, said she ain't coming back
I've always had a problem with relationships
But that's what happens when you see the world through a broken lens
Mistakes can make you grow, that doesn't mean you're friends
Who you are is up to you, don't leave it up to them, no
Just remember this
Yeah, they say you got into music, you signed up to be hated
That's kinda weird cause I don't remember signing my name up
Coming from people that give advice but never take none
I like my privacy, but, lately, I feel it's invaded
I heard that life's too short, don't let it pass you by
We waste a lot of time crying over wasted time
It's not about what people think, it's how you feel inside
My biggest failures in life are knowing I never tried, woo!
I look at the world from a different angle
People change, even Satan used to be an angel
Think twice before you're bitin' on the hand that made you
Don't believe what you believe just 'cause that's how they raised you
Think your own thoughts, don't let them do it for you
Say you want a drink, don't wait for people to pour it on you
Cut out the liars, stay close to the people you know are loyal
Grab your own glass and fill it, don't let your fear destroy you, woo!2 -
The time that we dedicate to the things and people that we love/like, when it's enough?
The question is generic and for good reason.
Yesterday, semi-seriously, my gf asked me when we'll have a baby, I answered, seriously, that it's gonna be when I'll feel ready to share the daily time with someone as demanding as another family member growing up.
Now, between job time, hobbies time and girlfriend (gonna marry soon) time the time is already tight and because I'm self sufficient about happiness and kind of a loner I don't share really much time with her most of the days, and from this realisation from her side she broke into crying.
From that experience I understood that there might be need some adjustment on my side.
But on another side I'm puzzled of how other families deal with this, because though my life I've seen couples/married-people that had not really much interactions with each other on a daily basis and seemed fine with living like that.
So knowing this context, what's your experience about this phenomenon through your life time?4 -
## building my own router
I hoped things would go more smoothly :)
Anyway, my new miniPC easily accepted CentOS 8 - no fuss here. And I've got to say - I love CentOS8 so far! Shell has amazing nifty tricks, UI (gnome3) is also snappy, video/audio/ethernet,.. everything works.
What I did NOT expect is hardware being off. Well okay, the price was low - it was obvious smth is not right. But still.. I decided to build my own router so that I could swap wifi card whenever I want. So that I could run my own network services in there. Turns out - the card swapping is not as easy as one might think.
I got the AX200 WiFi6 card for that very purpose. But once plugged in the OS can only see it's bluetooth module. Weird... What's even weirder is that even though the card is PCIe, the OS uses btusb module to talk to that device. What? USB?? emm.. What??
And there it is. After opening it up again I noticed that the mPCIe area is marked with a label: "USB WIFI / WWAN". USB? Does that mean this PCIe slot is wired into the USB bus? Not impossible I guess.
Googling for a "pcie wifi over usb" or smth like that brought me to one reddit (I think?) where someone wanted to build a DIY wifi mPCIe -> USB adapter and someone else adviced hime that (for some reason) at best he could only get bluetooth working (hey! just like me!). It's got to do smth with pcie channels and USB being too weak to handle all that load, or smth.. IDK, I'm not a HW guy.
Well that sucks then! I have a mPCIe slot that does not work as a PCIe. Shit! So I guess the best I could do is to plug back in the same wifi card that came with the device. It smells like 2003 - supports only g protocol. Fine, let's try that. Maybe I'll find a way to work around this mPCIe limitation later on (USB adapter or smth... except there are no USB WIFI6 dongles yet :( ). So I plug it back in and start turning it into a router. Disable NetworkManager, configure static NCs' settings, install dhcpd, hostapd, bind and others. Looks like all is done! Now it's time to start it all. systemctl start hostapd --> FAILED. wtf? journalctl says it could not initialize a driver. umm okay? Why? Forums say I should airodump-ng check and kill whatever's using that device. Fine. airodumo reveals avahi and wpa_suppl are still using it. kill, kill, GOTTA KILL 'EM ALL!! Starting hostapd again -- same shit... wtf?
iw list
My gawd... That shitty network card does not even support AP mode :( I mean.. My USB wifi dongle for 2€ supports 2x more modes, is faster, has better range and is easier to work with than this old tart!
Yeah. That was an interesting day. When enfironment engineers break my testing environments at work I'm glad I have where to spend my time now.
BTW any ideas how to bypass this mPCIe nonsense? Come on, there are USB GPUs out there.. Why can't they make a USB (or dual-USB if they really need to) mPCIe adapter?8 -
How low ($) is too low if u don't have a degree? Cause I got a pay decrease and that was cited as the reason. Even after I told the boss on numerous occasions that Im still in school.
What's the lowest you would take?27 -
Today I woke up from this craziest dream.
We were in France and there was a younger Mike Patton (who was french) speaking and apparently teaching french to an African girl.
The next scene he's in the back seat of what's apparently a taxi, and brags about how perfectly he can speak English. Besides that I see him playing the guitar.
In the last moments of the dream, however - and confusingly - the song Rusty Cage by SoundGarden starts playing loudly in the background. And that's when I found Patton is also a hacker.
Thinking about this part of the dream minutes aftger waking up, I found it to be the funniest, though not the craziest thing I ever dreamed.
Whereas I tried for hours to edit the configuration files of a tractor demolition game (some sort of Vigilante 8, but with tractors), he gets angry on a lady for an reason unknown to me, and in his moment of rage, manages to jump her houses' fence, surprisingly to edit her /etc/resolv.conf file - as if it was the most evil deed in the world.
In this final part, with Rusty Cage still playing very loudly, I find out me and my sister where watching this scene on TV (apparently patton was also an actor). After that, I comment to my sister in a grave tone: "Well, this guy is dangerous, maybe she should build a higher fence".
Then I wake up.
Although a crazy dream, it clearly addresses the fact I sometimes try to be a lot of things at the same time, and how this overwhelms me...1 -
A TypeScript boolean/undefined Flag variable kept fucking up
true == true didnt hold true
checked the "typeof" in console and it's GOODDAMN STRING.
What's the point of TypeScript's "type safety" if a Boolean variable is holding a String type for whatever reason. URGHH I HATE JAVASCRIPT.23 -
Well, atom won't open. SO, what's the next free editor I will learn to use, configure exactly right, and then need to abandon because it won't fucking open for no apparent reason?
Sure, I could become a certified Atom expert and learn exactly what is going on, but I HAVE FUCKING WORK THAT IS DUE WHAT THE FUCKING HELL
Wishing I could afford PyCharm, maybe I will just try the trial since EVERY editor I have ever used eventually becomes unusable at some point.22 -
I'm an idealist. I'm an optimist.
So of course I get enormously stressed out and depressed when the world just keeps fucking me over.
I have been at my current job for 2.5+ years. Been on the same project for the past 2+. And I am now on my 4th manager (not including the guy who hired me and got fired before I started).
It's just been one thing after the other. So many problems on this project with only one other dev on it until recently. Management has been avoiding taking proper actions.
I have done as much as I can and it has been a burden on my health. Last year I got passed over for a pay raise because of a bad manager, who since left for greener pastures. This year I got a small pay raise (below inflation) and a surprise bonus of such minuscule proportions that it's fucking laughable. I am being grossly underpaid for the weight that I'm pulling.
We just had a reorg that actually is a huge step in the right direction, and my new manager seems to actually want to give the project some proper attention.
So I asked him for a talk about my title and salary, so we can set things right.
We have now had two talks in a little over a week, in which he has emphatically stated over and over again how he just doesn't have the information or the power to give me anything at all.
And the thing is. I don't want to find another job. Of course I could easily do so, and for a lot more money too. But the problem is, I'm an idealist. I actually believe that what I'm working on, and what I will be working on in the future, at this place, is really important.
I should just get the hell out, as many of my colleagues have. It's actually quite incredible how many people have left my team over the past 6 months.
But I'm an optimist. I cannot see how management can possibly continue on this path without realising the consequences and taking action.
So now I've scheduled a meeting with the CEO to give him my two cents. I've done it before, which may actually have played a part in putting the reorg in motion.
I have to believe I can appeal to reason.
Otherwise, what's the point of anything?
I know. I'm the fucking clown meme.
Peace out.2 -
!dev
So last week I sort of unfriended a friend from college that i guess is more like a "chat buddy". After college we've never hung out. Part of it maybe because I'm deaf so there's a communication barrier, I lost most college "friends" after that... but then are they really friends?
The reason was though, he talks to me every night (usually 1-2 hrs online chatting on and off), we do have some laughs but recently he's been complaining about his year end bonus, how it's not enough. And also about how he deserves to match with better girls than the ones he's getting now. He's on those online dating sites and went out with a few. And he's been on a few dates but with my looks and health issues, online dating is pretty much useless. He was the only reason I even tried
He makes twice as much as me already but "he comes from a poor background" so he needs more. Honestly I make enough, but the job isn''t great (not really learning anything new, lot's of things that could be better... obviously) but it's very flexible and near where I now live... should I even choose to go into the office (I sort of work remotely from the rest of the team).
I probably haven't spoken too him for a week now and I don't feel problems, frees up more time but wondering if I sort of withdrawing/unanchored from reality and ignoring problems, settling for less.
Nowadays it really feels like, when I'm in my own apartment or just alone, I'm in my own world, I can do whatever I want... thought most of the time is spent with my devices... so I'm not sure though if that's good or not... Am I a Bachelor or a hermit?
Now i've been rambling for the last 1hr and have no idea what I wanted to say.... guess I just needed to rant...
Ah I remember now sorta... Is this relationship worth keeping or should I find new friends that are more similar to me?
Maybe I've been moving in the wrong direction in life... I shouldn't do things the normal way... Think about what's actually important to me/people like me... not what what everyone normally does...1 -
So I'm now experiencing the worst case of "pacman -Syu breaks everything" I've ever had. For whatever reason, when I updated mesa, my entire GUI decided to go to shit. As I'm typing this, lightdm is crashing over and over again. My Xorg log file has no errors at all. Honestly have no fucking clue what's going on.5
-
So I have a friend. One of few who I can freely speak with using my natural language (so that means, narrow down topics to IT, mix some of my native language, mix in lot of english and mixture of our favourite languages terms (don't ask me how it works, but it works brilantly and its actually easier to communicate)). And its true friend, seriously.
But when we meet, 80% of time we spent together, every, single, fucking time we argue (in cultural maner, its more of discussion) about what enviroment and what languages have advantages against others. And it pisses the fucking hell out of me, when he takes his enviroment, takes his problems with exac his enviroment, and applies his favourite solutions to it, and goes on how they are fucking awesome and brilliant, and than I reply, sure in my enviroment if I ever had XYZ problem, I wouldn't say use mongo DB becouse I can do it my way, and it would work well too, but it's not really the way I really should solve XYZ problem, becouse in my enviroment you dont have it in the first place. And he will fucking go on, but at least he understands my solutions and finds various details where HIS solution works better. His solution to his problem vs my solution to non-existant problem.
But that's actually an example of much grander thing that I want to rant about. You see, that's not all that bad, we keep it civil and we somewhat enjoy these discussions even if often times, they are pointless. It's like playing games and shit like that, so it's not the point, I just used the example to make it clear what I mean later down the line.
So, to the actual point. What the living fucking fuck is wrong with people, for living fucks sake they cannot physically, mentaly, virtually or otherwise change mindset and point of view if they are telling YOU what to fucking do, what's better to do, etc.
What the fuck! You have around 0.1% of context that is in my head, and my solution works with most of it and your bearly manages to deal with your given 0.1%, so kindly please for living hell, fuck off telling me what to do, what is better in my fucking situation etc. You don't know most of shit I know about my own situation (dosent apply to people with coma and heavy mental issues, sorry its not 100% universal) that I know, yet you have something in your brain that fucking allows you (dosent tell you "its no-go lol") to try push thru your shit to me like it was your fucking life. It's not.
And to be clear, before someone gets sad becouse I was to broad and generic. If you giving advice you can do it properly. And there are people who legit have mindset "well, if I was you and known what you told me, I would do XYZ", but for what the living fuck reason most of people I know have more mindset of "Do XYZ coz fuck you if you dont, coz dat is my opinion and shit and I dont give a living fuck if it does what you want"2 -
At my school we use iPads (I don't know why) and the teachers can see what's on your screen, lock you inside an app, block apps/basically everything, lock/shut down your iPad, uninstall apps and they can even see what's your location. It sucks ass, but with my "professional" hacking skills I figured out a way to hack the system. If I use a VPN, for some reason they can't do anything to my iPad. I'm still waiting for the day my school is going to ditch iPad's an buy us laptops, but at least I can sleep good at night without having my teacher doing stuff to my iPad.
(I have a ton of other things I don't like about my school, and would love to rant about, but I don't want this rant to be 5000 pages long)5 -
What the fucking shit, Arch. In what universe/reality is a user expected to easily/quickly address GPG/PGP bullshit when they install Arch. It's already hilarious enough as it is for the user to input every single command in order to install the thing. -- That's actually what's great about Arch; you get return and assurance from each command. -- I understood the fact that you need the latest ISO release in order to even install Arch, but now, if you decide to pacstrap linux-hardened, or god forbid, a package that is who knows what, less maintained?... fuck knows what will happen.
The fantastic part, is that you can't do shit when you're in an arch ISO install. All of the simple and possible solutions that involve GPG DBs/keyrings/etc require you to have the all of the shit installed already; which is fucking impossible if the package manager is bitching about keys not being imported. The most fantastic part, is that there is probably some complete bullshit, ultra-exclusive command or simple solution that will fix this crap. - And if you even dare ask the Arch forums, you'll be branded as a "newbie" and sentenced to read the fucking wiki. - ??? -- That's not a fucking good thing. -- The majority of people who are installing Arch right now, are people who are installing it for the first time, and chances are, most of those people have no fucking clue what is happening; they're learning what is happening. Furthermore, they're probably the kind of people who aren't inclined (or they don't know how) to scour Google or the Arch forums for answers to vague, lazy-ass error messages. The whole point of this thing is show and confront the user about what they're installing and what they want on their computer. Holy shit. This is all the more reason to ensure that total, stupid, ambiguous bullshit errors do not occur. -- "error: key "dogshit master <dogshitmaster@dogshit.org>?" could not could not be imported". -- That's it. That's the error in it's entirety. For a fucking OS install. What the fuck.16 -
Some humans are calm and thoughtful, some annoyingly complicated, while others with behaviours too difficult to comprehend.
I got a call from the office (former from 6 months ago) and it's from the G.M herself.
** Phone rings **
Hmm see who's calling...
Me: * Picks up phone and set it on loud speaker, so my partner can also listen *
Me: Hello Ma
G.M: Hey (calls me by my full name)
Me: It's really nice to he...
G.M: Why would you move the YETI server hosted on AWS to Azure! We have been faced with lots of challenges ever since and that has cost the company a lot.
Me: Pardon me Ma, but that...
G.M: That is a very bad and unacceptable behaviour from you and I can have the company sue you for this.
Me: Excuse me Ma, but...
G.M: I have spoken with the director of C.M.D quaters (A sister company) and explained the situation on ground about what you did before leaving without having any prior permission. What nonsense!
** At this point my partner let's call her "CC"... was more confused than me**
CC : **Panicking** Who's that? What did you do? I thought you said you no longer work at that firm, what's going on?
Now I'm confused cus I don't even know who to reply.
Me: **Signals CC to calm the fuck down**
G.M: ** Still talking and spitting out millions of threats to the guy who left the company with evil deeds in mind...**
CC who literally hates suspense and also a half cool and half crackhead kind of person... Tries stealing the phone from me so she could pour out whatever is on her mind to the caller because of how disgusted she felt, mostly for reasons I quite understood but nevertheless i kept the phone far from her reach while we both enjoyed the suiting voice of *a threat giver*
Honestly at this point my closest guess was "Joe, who must have fucked up big time" because Joe is the company's SysAdmin and has a lot of fucked up records (One time Joe tried to convert all system OSes to Linux even with our hydra servers with pre-installed windows running smoothly, his action caused a noticeable server down-time all for the reason of Joe being a Linux freak). He and only he has the power to transfer/switch/off/on servers at will. I really don't know what Joe must have done but sure thing is there is a fuck up somewhere.
Talking about me, I was only a developer enthroned only within his desk and secondly I no longer worked there. Who fucking calls a retired soldier about a lost battle after six freaking months later! Just fucking sink with your ship captain!
But how can I explain all of this to G.M without implicating Joe and also not look like snitch, I thought to myself.
While I was pondering within myself and the call which has long been disconnected, CC broke the silence.
CC: Giddy, Can you honestly explain me why your old company is calling talking about lawyers and suing you? Have you been lying to me about your work?
Me: *Explained the situation to CC*
CC: But why was she that saucy and acting a bitch? You should have spare me a minute with her.
Me: She wouldn't let me speak but we good CC. We good.
The woman that just called is the G.M. of the firm I had formerly worked with and she's also the wife to the M.D of the same firm which was my former direct Boss whom I respect a lot. Having a disjunct with the wife can also affect the relationship with the husband, which I don't want to lose. So we cool!
Maybe I should text her or maybe not... But before then
** Another call comes in **
It's her again.
GM: Hello Giddy (Sounding calm)
Me: (WTF. She called me by my first name and also sounds cool... More confused than a stray dog) ...Yeah Hello
GM: I just called to let you know that my accusation was wrong because I was misinformed. Joe Nosa was in charge on Systems but why didn't you correct me on that during our last conversation?
Me: ... 😲
CC: (Drags the phone) Hello and Good morning whosoever...
G.M: Sorry who am I speaking with?
CC: (Introduced herself) I overheard your last conversation with Giddy, and I demand you appogise to him both in written and in verbal because not only did you accused him falsely, you also almost bridge the trust between us which may have cost the relationship.
Me: ...
** Long awkward silence **
G.M: Hey Giddy, I'm sorry. Just angry about what went down recently.
Me: All good ma'am
CC: ** Hangs up **1 -
android development is shitty af, it will make you super zombie computer nerd that sit on his chair for fking several hours just to find the where the fk is null pointer exception is coming from not only this but for all kind of errors,logcat looks like someone just hacking nasa, you know what im the one who is shitty af i would have opt web dev instead of android dev , this retarded studio and emulator takes too much time to just load a simple fking thing & if i make some change in it i've to install that application again ,it's so pathetic and horse shit thing i've ever encountered , kotlin is fun it's actually great language most of the features are so helpful in it,but the google codelabs,it's all documentation , adding dependencies whole concepts are trash imo, why can't we install the dependencies using terminal what's problem in that ,but no they chose the hard way for no fuking reason, i've successfully wasted a year learning this shitty tech stack, hopefully this NY i will choose different stack , will work till ass off .gonna build some cool projects and will eventually try for internships and all. done with android dev, idk how senior dev's are alive in this field6
-
What's wrong with Stack Overflow? Honestly, somebody asked how to do something that should in most practical cases be avoided. I provided an answer and here comes the downvote army for no reason. I explicitly said it should be avoided but for the sake of experiment I posted the solution because I think people should explore what they can do with the language instead of feeling constricted to a set of standard recipes.
I don't buy into claims that this irrational elitist moderation is necessary for SO to be useful.
In the end, even their search sucks and most of us find it easier to search SO using Google instead of their native search.
I remember when I was a student at a programme which admitted both people with linguistic and computational background how hard it was for the linguists to even start writing code and I would always try to help them and relieve the frustration.
For me, it took years to start writing a high quality code and more than 6 years to become productive while writing quality code.
Do we forget we all began somewhere? I honestly don't care about building an immense "objective" problem solving tool for someone else to earn money at the expense of treating people the way SO community does.
I think it would be way better if SO managed to distribute questions in a more relevant manner and stopped holding onto their "objectivism", which is in itself a questionable concept.
Even simply separating questions into how popular they are could move the useful ones forward without radically cancelling and hurting new people.
I like to see people thinking differently and see their questions reveal what they know and what they don't. There's nothing wrong with pointing people to already answered questions, correcting them etc. And I get that there are many people being annoying when asking, but I never forget there is a person on the other side and I would never want to destroy their potential just to massage my ego and "reputation". And heck who cares about their reputation? Show your Github, CV, talk smart in an interview and you'll get the job. And in the end, wouldn't you feel greater inner joy from helping a person grow instead of seeing only your reputation?4 -
Newbie frontend guy joined last month right after college. He's my age but never worked before. Wants to "fix" the entire codebase with cool new hippy react features without providing a valid reason to do so. Also, "hey, I don't understand what someone wrote, so let's just change the entire fucking thing so I don't have to put in the effort of understanding real, working code"
What's more annoying is that he won't settle even when being asked to do so by the senior guys.2 -
So I'm not much for Linux, but I'll admit. It's a pretty damn solid environment, especially for programmers.
Since my main computer can't afford to have Linux on it, I decided to start working on making the Raspberry Pi handheld notebook. But after I added up the price for all of the components, it's almost three hundred dollars.
Personally, I would love to have a mini computer everywhere I go. A Chromebook is ok. But I guess you need to take into consideration that it is NOT ment for programming. I have found several IDE's and found none of them have a debugger or a way to execute my code.
I did some thinking and I'm starting to wonder if it is worth it.
It's a hand held computer with ubuntu on it. What's the worse that can happen? I don't solder the battery correctly and the whole thing explodes in my hands? Yeah that's pretty likely. Another reason I look at getting it is because there is so much fucking theft at my school it's hard to believe we don't have armed gunmen at every corner since everyone is always sober or high as shit.
Having an 11.6 inch Chromebook also puts me at risk of getting mugged, because who the fuck wouldn't want to try and pawn a laptop for drug money? At least with a handheld I could keep it in my pocket where I know it'll be safe.
What do you guys think?
Should I build this little thing or keep my current Chromebook but try to keep it safe?4 -
Yesterday I asked a question on stack overflow about what algorithm I should use in order to parse command line strings like in gnu getopt for example.. And I've got downvoted for no GOOD FUCKING REASON. On top of that, my question is on hold. WTF?! For some time now stack overflow is becoming more and more a community of fucking cunts, arse-holes and toxic people.
Title:
" What parser algorithm is best suited for command line parsing? [on hold] "
My question:
"I want to write my own command line library from scratch. What algorithm should I use in order to parse gnu style args like in getopt for example ? I mean what's the best way other than tokenizing and parse them in a naive way? Should I try to look at LR, LL algorithms or this is way too overkill?"
Their response:
"Your question sounds like "I want to do X. What's the best way to do it?". Too broad, you need to be more specific about what problem you're having. (And keep your question clean. No meta-stuff in there.)"
I mean, what more context-specific reason should I add you dense motherfucker!? I want an algorithm to parse your momma's cunt so hard 'till it blows the fuck up. This what you want? You fucking senseless piece of garbage. God, give me a car to run over their fucking internet cable and over their head, too.8 -
How do you feel about using TypeScript with React? I appreciate the benefits, but, as every snippet of React code everywhere on the web is vanilla JS,I just don't want the cognitive overhead.
Yes, I know TS is JS, but, if I'm not going to use the features, why bother? I'd want to strongly type props, state, etc.
What's the status of TypeScript support in the React ecosystem (eg Router, MUI, etc.)?
I'm kinda hoping Reason will get some traction as the type inference is much better, but, will that happen? Or is that going to fizzle so it's a choice between TS and JS?
Appreciate any thoughts on this---including those from anyone who's in the same boat.
Looking for views on TS in React ecosystem---no need to sell me on TS in general.6 -
Our owner's other company sells products online (or has the ability to anyways). Their current site is 7+ years old WordPress/Woocommerce and is seriously outdated because the site breaks if you update anything so we've been told to make a new site (finally). They also said they were going to release a whole new line up of products. So the first thing I tried to do was get them to nail down their product line and how shipping was going to be configured. I was told to just use the shipping from the previous site.
Turns out those shipping rates don't use any sort of math or automation at all, there is literally a manually set shipping value for every single product for every single shipping location (30*60) and even values for different quantities. And there's no way to export these rates into a readable table because the plugins they use shove all the data into the postmeta table, I'm forced to go through and put the data into a spreadsheet so that I can attempt to organize it and hopefully find someone way to automate it. Owner claims at one point that he has a similar spreadsheet that's more up to date but for some reason refuses to send it over or put me in touch with the right people in the shipping department.
I've gone through the shipping rates with the old products and the new products and organized them as best I can and each time I've gotten done and shown them the spreadsheet with their products and shipping, they add or change something which requires me to basically wipe the slate clean and start over eating another 50 or so hours of my time, which with everything else really means another month+ to find time to work on it between other projects.
After about a year they finished their products and I finally finished the planning and got approval to build it out for the site. Small victory!!
After about 60 hours plugging these values into the database (only about 1/3 done) I get an email from their head of shipping who tells me the values in my spreadsheet are "terribly inaccurate, in some areas by $100+" and that the data should not be used anywhere.
So after something like a year and a half and 200+ hours of work, the data I've been using to plan all this isn't even accurate. I'm trying not to go crazy here but this kind of shit is unacceptable. When we're done with this I'm going to send the owner an invoice to show him how much money he wasted on this because nothing was planned and he just wanted it built. There's a fucking process for a reason, when you don't follow the process you fuck everything up. If a client had pulled this shit and turned their simple site into this much work they would have been dropped. I get constant emails asking when the new site will be done and every time my answer is "I'm still waiting for x items that I asked for last time you asked where we were." He gets a couple things on the list and sends them back and then goes unresponsive for weeks at a time.
Management has been telling me that I seem more stressed lately but only one of them understands what's going on here when I explain it. The rest say stupid shit like "why don't you automate it" or "make an intern do it." You won't let me hire an intern and even if I did, I'm not sure I could explain how the shipping works now to even trust someone else to do it. I'm hoping when the shipping guy gives me the new sheet that maybe there's some easier solution here because I'm ready to start shooting people.2 -
Best debug ever?
Some years ago we had to do a web project as group. It was a cinema like website with backend and front-end.
So in the end we arrived at the presentation and while scrolling the code I found commented out some authentication controls 😅😆 (probably for debug reason lol)
Whatever, meanwhile, while I was talking with the professor two of my mates were whispering... Turns out they found what he mail service wasn't working. And what's best than fix it, push it to the Heroku server and restart all? XD
The professor noticed some little lag in a button and asked "what's happening?"
"oh, nothing we just restarted the server " -
holy shit I swear taxes are like the government trying to tell you you're a peasant to them
my medicare card is about to expire and FOR SOME REASON now the process to renew is a fucking interrogation about various documentation the government has given you. before it was just your damned name, date of birth, and a new photo for the card.
evidently they were supposed to send you snail mail 3 months before expiration. evidently also the only way to renew is get this said snail mail.
and evidently I have to go through this "catchall" change your address with everything in the government process
which is a little ironic
because
to use this service you need to give them something called a notice of assessment, which is when the government accepts your taxes they send you back one of those
well I haven't had access to my tax portal for years. I keep filing them and getting excess money back but I can't actually see any of my returns.
so I tried this time
12 pages of verification and more verification... you do one step, it says wrong info because if you have to write in 2,474 well turns out the , fucks it up and your info doesn't match what's on file and if you fail more than 3 times you'll be locked out. repeat. page after page. how many fucking pages are there? what format are they expecting? nobody fucking knows. you'll get to find out if you pass just this one more!
after about 4 hours of this shit
and they have 2 factor authorization now?! wtf.
then this next step is id verification or we snail mail you a code (WHICH AGAIN IS IRONIC)
I chose id. health card doesn't count, it notifies me later. thankfully I have a passport. bad news, passport expires this September so guess who is gonna be having more fun later
the app of course can't use my camera in the browser I have, so I start downloading fucking other browsers and finally hit one that works
also they lied. they also want a selfie. then it tells me I failed to look like myself. if you fail to look like yourself 3 times you are denied.
ok. so I try snail mail. the page says if I revoke consent to id I can go do the snail mailed code. they lied. if you revoke consent it exits the whole wizard. you enter all the verification steps again.
I try to get them to snail mail me the code. they want some basic info they asked me like 16 times now, and a postal code. ironic. well this is the tax people, so by this point I found all my previous sent in tax returns (though I can't access the government's replies). checked. yep. address all the same. put in the postal code. nope. somehow it's wrong. 3 times I put all this random info in in different ways. 5 times and I'm locked out.
now fucking what.
THE FUCKING IRONY OF
I NEED TO CHANGE WHERE I LIVE SO YOU CAN SNAIL MAIL ME SOMETHING
AND TO CHANGE WHERE I LIVE I HAVE TO CONFIRM WHERE I LIVE SO YOU CAN SNAIL MAIL ME SOMETHING FUCKING ELSE
the government just fucking dunks on you
guess we're all not having fucking medical cards anymore. all we do is pay taxes, and can't even see the paperwork to those taxes we pay.16 -
Like 4 years ago I worked in a company as IT that used a windows desktop app with SQL Server 2008 (yep that old) to manage their sales, this app was written in WPF, the app was good because it was customizable with reports
One day the boss wanted to keep extra some data in the customer invoice, so they contacted the app developers to add this data to the invoice, so they they did it, but it in their own way, because the didn't modify the app itself(even if it was an useful idea for the app and companies that use it) they just used other unused fields in the invoice to keep this data and one of the field that the boss was interested was currency rate, later I verified in the DB this rate was saved as string in the database
The boss was not interested in reports because he just wanted to test it first and let time to know what the boss will need in the reports, so at the of the year they will contact again the devs to talk about the reports
So is the end of that year and the boss contacted the devs to talk about the reports of the invoices using the currency rate, this rate was just printed in the invoice nothing more, that's what the boss wanted that's what's the devs did, but when asked to do the reports they said they could'nt because the data was saved as string in the DB o_O
Well, that was one the most stupid excuses I ever heard...
So I started to digging on it and I found why... and the reason is that they were just lazy, at the end I did it but it took some work and the main the problem was that the rate was saved like this 1,01 here we use comma for decimal separator but in SQL you must use the dot (.) as decimal separator like this 1.01, also there was a problem with exact numbers, for example if the rate was exactly 1, that data must be saved just 1 in the field, but it was saved as 1,00 so not just replace all the commas with dots, it's also delete all ,00 and with all that I did the reports for my boss and everyone was happy
Some programmers just want to do easy things... -
How many of you want to live in a world where there's no a standard way to convert numbers to strings among systems?1
-
What's a good IDE for Java? I have used Eclipse and NetBeans in the past, but for whatever reason Eclipse won't set up right on my machine and I am not a fan of NetBeans' console display thingy. (OR at least I wasn't in 2009)
I am applying for a teaching gig but they teach in Java so I want to knock the rust off.12 -
Okay, so I'm developing a system for a global rent-a-car broker. Basically website + a bunch of third party APIs + analytics, it's been running in production for over 4 years now.
Anyway, we had to connect our system to an external rental insurance API, nothing too complicated, got it to production in a month and it seemed to work okay, except the insurance provider claimed they're not getting any analytics data, which was weird, because there were no errors with API calls, and customers had no problem with the insurance.
After going back and forth for a month, we finally figured what's going on: after each API request, the insurance provider expected us to send the exact same data to their analytics API, because for whatever dumb reason they were unable to internally log requests in their analytics database.
tl;dr: we're doing 2 API calls with the exact same data to different endpoints, because a large rent-a-car insurance provider can't log their own analytics data.1 -
Probably a photographer.
I would've been way under at this point in time if photography was my main gig. Before the pandemic hit, concerts were my favourite thing to shoot, but even then it was mostly for my own enjoyment rather than something I could rely on financially. If I had to do it for a living, I would've probably had to resort to weddings/graduations/portraiture, and it would've been terrible since I suck at directing people to pose (part of the reason why I enjoy shooting concerts - because I shoot what's happening without the need for my intervention). Selling prints would kind of make sense if I had the market, but where I am, people are rather cheap (so selling locally wouldn't really work), and I'm rather reluctant to delegate things to an online service. -
tools people REALLY wanna use are written like garbage
and also very active, in terms of tickets and pull requests
but the code is overly complex for no reason and a mess, turns out
I looked at the codebase and I have no clue what's going on
then found the API it's calling and I'm sitting here going "Jesus fuck I could've just wrote my own"
it's actually really strange, I see this pattern often of tools tons of people rely on and want to use but they're coded horribly, tons of bugs, and the code is entirely incomprehensible. though all the low effort pull requests is a new one I guess, generally there's no activity or the maintainer is just gone (maybe it's AI?)
anyway then I looked at the API it's wrapping and I'm confused why this library has such shit usability, and furthermore why the hell the code was like that cuz I read that first for about an hour and just kept going in circles. bruh what
guess I'll find out tomorrow if I'm signing up for unanticipated complexity or these people really did mess this up2 -
Since the last rant is talking about brains, I feel like this summer heat is frying my brain. It's been some of the weirdest days for me these last couple of days. I cannot focus on anything. Cannot make sane decisions or conclusions. I'm more depressed/sad. More disorganized. I don't want to eat anything. I'm sky-high anxious. I'm more shy than ever in public. I have no reason for that but I don't what's happening.3
-
Rant! The reason. Software engineers have to take test just to get a job. Is cause there are to many hacks out there.
Me. Did you read the schematic did you see the gpio that enables the JTAG needs to be asserted to debug.
THING 1: What's JTAG debugging
THING 2: No just debug using the software.
Me: enable the JTAG or it won't work
Face palm I am so tired of helping people. We just hired who where supposedly real engineers
In every other profession there are standards. You don't see any self taught surgeons.13 -
Ok I don't know what ticks managers off about working from home.
I live an hour away from the office and my team (i.e. The whole company) consists of 3 people, INCLUDING ME. And we all work on different projects. So what's the point of even going to the small room with cubicles AKA the office? No, there aren't really any "learning from my colleagues" crap; we work on different stacks. Plus we're all juniors. Oh yeah, haven't I mentioned that? WE HAVE NO TEAM LEAD OR EVEN SENIORS. The CEO has a tech background and he communicates with us directly and discuss the requirements etc. BUT HE LIVES IN ANOTHER FUCKING CONTINENT. So, again, what's so bad about working from home in my case? My manager doesn't like it for some reason. -
context: Python Sanic Backend, Bulma Frontend
*this is a direct repost of my rant on my discord*
UGH WHY IS EVERYTHING TOO COMPLICATED FOR NO FUCKING REASON
I JUST NEED AN INTERACTIVE UI WITHOUT EXPLICITLY DOING IT MYSELF WITH TONS OF BOILERPLATE CODE
React - uses JSX
Angular - uses TypeScript
what's next? some weird fucking thing that's not even necessary for basic needs
And why the fuck does react need node.js or some JSX compiler to make things easier?
None of this makes any fucking sense
Why not just declare actual javascript objects and functions and that's fuckin it
I just need regex validation and sometimes, custom validation based on other things
Then when the user changes something a small modal shows up asking to save changes
None of this bullshit
It's deadass simple
I don't need routing
No need for your JSX fuckery
No need for your TypeScript shit
I barely would even fucking use those
REEE
Fuck react, Fuck angular
React would've been the perfect thing for this shit
but NO
they had to make things 100x worse
Fucking bitch
because react has event hooks
I can just listen to the changes
then display the modal and get done with it
All other processing is done in the backend
IT'S THAT SIMPLE REACT
Validation is provided by the backend, Just fucking use regex in the frontend and that's it
IT JUST NEEDS TO DO SIMPLE THINGS
IT DOESN'T TAKE ROCKET SCIENCE TO DO MINIMAL WORK9 -
I need some advice to avoid stressing myself out. I'm in a situation where I feel stuck between a rock and a hard place at work, and it feels like there's no one to turn to. This is a long one, because context is needed.
I've been working on a fairly big CMS based website for a few years that's turned into multiple solutions that I'm more or less responsible for. During that time I've been optimizing the code base with proper design patterns, setting up continuous delivery, updating packaging etc. because I care that the next developer can quickly grasp what's going on, should they take over the project in the future. During that time I've been accused of over-engineering, which to an extent is true. It's something I've gotten a lot better at over the years, but I'm only human and error prone, so sometimes that's just how it is.
Anyways, after a few years of working on the project I get a new colleague that's going to help me on my CMS projects. It doesn't take long for me to realize that their code style is a mess. Inconsistent line breaks and naming conventions, really god awful anti-pattern code. There's no attempt to mimic the code style I've been using throughout the project, it's just complete chaos. The code "works", although it's not something I'd call production code. But they're new and learning, so I just sort of deal with it and remain patient, pointing out where they could optimize their code, teaching them basic object oriented design patterns like... just using freaking objects once in a while.
Fast forward a few years until now. They've learned nothing. Every time I read their code it's the same mess it's always been.
Concrete example: a part of the project uses Vue to render some common components in the frontend. Looking through the code, there is currently *no* attempt to include any air between functions, or any part of the code for that matter. Everything gets transpiled and minified so there's absolutely NO REASON to "compress" the code like this. Furthermore, they have often directly manipulated the DOM from the JavaScript code rather than rendering the component based on the model state. Completely rendering the use of Vue pointless.
And this is just the frontend part of the code. The backend is often orders of magnitude worse. They will - COMPLETELY RANDOMLY - sometimes leave in 5-10 lines of whitespace for no discernable reason. It frustrates me to no end. I keep asking them to verify their staged changes before every commit, but nothing changes. They also blatantly copy/paste bits of my code to other components without thinking about what they do. So I'll have this random bit of backend code that injects 3-5 dependencies there's simply no reason for and aren't being used. When I ask why they put them there I simply get a “I don't know, I just did it like you did it”.
I simply cannot trust this person to write production code, and the more I let them take over things, the more the technical debt we accumulate. I have talked to my boss about this, and things have improved, but nowhere near where I need it to be.
On the other side of this are my project manager and my boss. They, of course, both want me to implement solutions with low estimates, and as fast and simply as possible. Which would be fine if I wasn't the only person fighting against this technical debt on my team. Add in the fact that specs are oftentimes VERY implicit, so I'm stuck guessing what we actually need and having to constantly ask if this or that feature should exist.
And then, out of nowhere, I get assigned a another project after some colleague quits, during a time I’m already overbooked. The project is very complex and I'm expected to give estimates on tasks that would take me several hours just to research.
I'm super stressed and have no one I can turn to for help, hence this post. I haven't put the people in this post in the best light, but they're honestly good people that I genuinely like. I just want to write good code, but it's like I have to fight for my right to do it.1 -
So I'm a full time student. Yesterday I wasn't able to make it to work because i had a very important test the next day. I was told when I started this job I could come and go as I felt needed and never had a set schedule. I just go in when I can. So yesterday I emailed the HR lady ( who might I add is not who I report to and is not my boss) when I hit send, the email failed and it didn't go through and I didn't realize it. I get an email today and it's the HR lady telling me that I need to tell her wjen I wont be there and blah blah blah if this happens again I'll write you up. And so I emailed her back saying that I was sorry and had no idea the email did not send and shit and she was just an asshole about the whole situation. This lady is always on my ass every time I'm in there and for no reason other than to be a bitch. And what's even better is no one else will hire me and I can't find another job even though I am very qualified to what I am applying to. So fed up with this place2
-
I finally got the clarity on my relationship.
Atleast I think I did.
I am officially done with Microsoft. I mean the only useful and sensible products left are Outlook and Excel.
Funnily both the products have hit their maturity stage and now MS is trying to bloat them. But still to a reasonable extent.
What other MS products are worth touching? Wait.. I legit can't think of any now.
Next on tagret, Google and Apple. Lol
Perhaps only Apple product I ever want to interact with will be (future tense) Apple Music (well because lossless and the fact that that the product is the reason for existence of the company).
NGL Steve had the right vision on Music. They tagged things right in their iTunes catalogue. But then MTV happened.
And now Spotify is the new MTV. Fuck me in ass someone.
So only Google? Well I have already sold my soul to them. What's more remaining?8 -
What's your opinion on Ruby on Rails vs Java?
I'm honestly leaning towards Java for no other reason than look of the code and the fact that it's what my school teaches for comp sci.7 -
What's really the matter with meetings?
I mean, we've all been annoyed at some point by some management person scheduling meetings we think of as pointless but I've actually found myself enjoying going to one where people can discuss and share ideas (dev related, mostly).
Sure, it's not great when you are focused and you have to stop to talk to some assholes sometimes but other times it didn't bother me to think they value my input/opinion somehow.
Surely the reason for their existence is not to make you waste time, right? 🤔1 -
Non "dev"-rant, more of a social/relationship/life rant..
Just,, fuck,, my,, life..
Backstory; I have some issues, I'm not normal, socialy, so I finally gave up on life, do just enough to continue providing for my daughter (cause her mother is more fucked up than me), that means letting go of any chance of happiness, dating, the few friends I had and so forth.
The latter simply means that I stop trying to keep em around, because that's how it's always been, and they're all gone, all except one. THE one, the one I work with, the one I fell totally in love with a year ago, the one that is the first and last thing of the day on my mind, the one I had to tell my feelings for, the one that I really need some distance from.. But no. She's the one that won't let me go..
I'm on my way to a concert right now, a concert I tried inviting her to a few months ago, she wasn't interested,, For some reason I opened Instagram right now,, bam, right in my face. Her,, in full makeup, which she never wares, posting a selfie, which she never does..
Whish I could say why life is so fucked, but take my word for it, it just is.. And guess what, After the Christmas holiday, one day in, she probably noticed that something was "off".. and she immediately suggest that we take one of our "dinner dates" next week, and I'd bet that the first question is "you're beeing wierd, what's up?", and all I can say, again, is "can't talk about it".. cause I really can't, anything I say is that much to much..
Fuck!
Yes, this rant is mostly focused on "her", but to get a hold of my state of mind, I've given up, and just accepted that I should never have any kind of social life, cause that's simply best for everyone.
And if you wonder why I'm posting this here, I don't have time for a therapist, and "she" is my PM at work, where I'm THE senior developer.. Every issue that anyone else haven't been able to solve, ends up in my lap. She calls me magic on a daily basis..
Yes, I'm drunk as fuck right now..1