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 - "sub for sub?"
-
My mom died when I was 7, after which my dad bought me a Commodore 64 so I had something to lose myself in during the mourning process.
I learned everything about that system, from my first GOTO statement to sprite buffers, to soldering my own EPROM cartridges. My dad didn't deal with the loss so well, and became a missing person 5 years later when I was 12.
I got into foster care with a bunch of strict religious cultists who wouldn't allow electronics in the house.
So I ran away at 14, sub-rented a closet in a student apartment using my orphan benefits and bought a secondhand IBM computer. I spent about 16 hours a day learning about BSD and Linux, C, C++, Fortran, ADA, Haskell, Livescript and even more awful things like Visual Basic, ASP, Windows NT, and Active Directory.
I faked my ID (back then it was just a laminated sheet of paper), and got a job at 15-pretending-to-be-17 at one of the first ISPs in my country. I wrote the firmware and admin panel for their router, full of shitty CGI-bin ASP code and vulnerabilities.
That somehow got me into a job at Microsoft, building the MS Office language pack for my country, and as an official "conflict resolver" for their shitty version control system. Yes, they had fulltime people employed just to resolve VCS conflicts.
After that I worked at Arianespace (X-ray NDT, visualizing/tagging dicom scans, image recognition of faulty propellant tank welds), and after that I switched to biotech, first phytogenetics, then immunology, then pharmacokynetics.
In between I have grown & synthesized and sold large quantities of recreational drugs, taken care of some big felines, got a pilot license, taught IT at an elementary school, renovated a house, and procreated.
A lot of it was to prove myself to the world -- prove that a nearly-broke-orphan-high-school-dropout could succeed at life.
But hey, now I work for a "startup", so I guess I failed after all.23 -
Three days ago I wrote a comment:
"It's weird how the internet shifted from protocols to platforms.
Devs still know the plumbing, but for most people IRC became Whatsapp, FTP became Dropbox, RTSP became Netflix, SIP became Zoom and RSS became Google Now... so people might eventually forget about SMTP and this whole "email" hype.
In a decade or two we'll have forgotten about URLs and HTTP and the "internet" as well. You just pay your monthly $10 sub to Google or Amazon or Apple to have your condensed streams of memes & bait funneled right into your eyeballs."
And now Chrome devs are considering removing URLs just like in Safari, just showing the domain you are on....
Enjoy your retard web, people.
What's next, new Macbook & Chromebook standardized designs to prevent people from being confused?43 -
Base10 is interesting.
Did you know that any number > 9 has this weird thing where if you sub it's digits from the number over and over, it'll eventually become 9?
For example: 35
35 - 3 - 5 = 27
27 - 2 - 7 = 18
27 - 1 - 8 = 9
Try it with any number you like.41 -
4 years ago I was placed on probation for not having the special format in source control check in comments. When I asked, the 'special format' was
clearly documented on page 18, sub-section 4, sub-paragraph 2, "All check in comments will include the solution name, separated by a colon,
and why the code was changed." My check-in comment was only missing the colon. Indecently, over 80% of the other comments consisted of 'adsf',
'bug fix', and several 'BOOM!'s. So I mistakenly said out loud 'This check-in policy appears only to exist to allow management to cherry pick
developers they do not like, find something wrong, and put them on probation.' That comment got on a 30-day ‘corrective action plan’ for openly disagreeing with a
company policy. Today, all those managers were either fired or quit and now I set policy. Dear Mr. ex-Bosses, I won.6 -
I don't use Google/Facebook for privacy reasons (and their sub-services etc). Haven't used them for ages but noticed that google still loads a lot of domains like analytics etc. This goes for facebook as well.
I now blocked a lot of google/facebook domains through my hosts file.
It's funny to see the amount of DNS requests to those fb/google connected domains nearly go to zero and also the fact that I literally can't load google/facebook anymore!126 -
Welcome back to practiseSafeHex's new life as a manager.
Episode 2: Why automate when you can spend all day doing it by hand
This is a particularly special episode for me, as these problems are taking up so much of my time with non-sensical bullshit, that i'm delayed with everything else. Some badly require tooling or new products. Some are just unnecessary processes or annoyances that should not need to be handled by another human. So lets jump right in, in no particular order:
- Jira ... nuff said? not quite because somehow some blue moon, planets aligning, act of god style set of circumstances lined up to allow this team to somehow make Jira worse. On one hand we have a gigantic Jira project containing 7 separate sub teams, a million different labels / epics and 4.2 million possible assignees, all making sure the loading page takes as long as possible to open. But the new country we've added support for in the app gets a separate project. So we have product, backend, mobile, design, management etc on one, and mobile-country2 on another. This delightfully means a lot of duplication and copy pasting from one to the other, for literally no reason what so ever.
- Everything on Jira is found through a label. Every time something happens, a new one is created. So I need to check for "iOS", "Android", "iOS-country2", "Android-country2", "mobile-<feature>", "mobile-<feature>-issues", "mobile-<feature>-prod-issues", "mobile-<feature>-existing-issues" and "<project>-July31" ... why July31? Because some fucking moron decided to do a round of testing, and tag all the issues with the current date (despite the fact Jira does that anyway), which somehow still gets used from time to time because nobody pays attention to what they are doing. This means creating and modifying filters on a daily basis ... after spending time trying to figure out what its not in the first one.
- One of my favourite morning rituals I like to call "Jira dumpster diving". This involves me removing all the filters and reading all the tickets. Why would I do such a thing? oh remember the 9000 labels I mentioned earlier? right well its very likely that they actually won't use any of them ... or the wrong ones ... or assign to the wrong person, so I have to go find them and fix them. If I don't, i'll get yelled at, because clearly it's my fault.
- Moving on from Jira. As some of you might have seen in your companies, if you use things like TestFlight, HockeyApp, AppCenter, BuddyBuild etc. that when you release a new app version for testing, each version comes with an automated change-log, listing ticket numbers addressed ...... yeah we don't do that. No we use this shitty service, which is effectively an FTP server and a webpage, that only allows you to host the new versions. Sending out those emails is all manual ... distribution groups?? ... whats that?
- Moving back to Jira. Can't even automate the changelog with a script, because I can't even make sense of the tickets, in order to translate that to a script.
- Moving on from Jira. Me and one of the remote testers play this great game I like to call "tag team ticketing". It's so much fun. Right heres how to play, you'll need a QA and a PM.
*QA creates a ticket, and puts nothing of any use inside it, and assigns to the PM.
*PM fires it back asking for clarification.
*QA adds in what he feels is clarification (hes wrong) and assigns it back to the PM.
*PM sends detailed instructions, with examples as to what is needed and assigns it back.
*QA adds 1 of the 3 things required and assigns it back.
*PM assigns it back saying the one thing added is from the wrong day, and reminds him about the other 2 items.
*QA adds some random piece of unrelated info to the ticket instead, forgetting about the 3 things and assigns it back.
and you just continue doing this for the whole dev / release cycle hahaha. Oh you guys have no idea how much fun it is, seriously give it a go, you'll thank me later ... or kill yourselves, each to their own.
- Moving back to Jira. I decided to take an action of creating a new project for my team (the mobile team) and set it up the way we want and just ignore everything going on around us. Use proper automation, and a kanban board. Maybe only give product a slack bot interface that won't allow them to create a ticket without what we need etc. Spent 25 minutes looking for the "create new project" button before finding the link which says I need to open a ticket with support and wait ... 5 ... fucking ... long ... painful ... unnecessary ... business days.
... Heres hoping my head continues to not have a bullet hole in it by then.
Id love to talk more, but those filters ain't gonna fix themselves. So we'll have to leave it here for today. Tune in again for another episode soon.
And remember to always practiseSafeHex13 -
Got my front end friend (also my irl best friend) to agree on me setting up a vm/vps on one of my dedi's with a sub domain so he can learn to work with servers.
He agreed on me leaving root access for myself in case he couldn't figure something out and I (a Linux server engineer myself) would have to help him out.
He seemed so excited, will set this up when I get home 😊5 -
So I've been looking for a Linux sysadmin job for a while now. I get a lot of rejections daily and I don't mind that because they can give me feedback as for what I am doing wrong. But do you know what really FUCKING grinds my FUCKING gears?
BEING REJECTED BASED ON LEVEL OF EDUCATION/NOT HAVING CERTIFICATIONS FOR CERTAIN STUFF. Yes, I get that you can't blindly hire anyone and that you have to filter people out but at least LOOK AT THEIR FUCKING SKILLSET.
I did MBO level (the highest sub level though) as study which is considered to be the lowest education level in my country. lowest education level meaning that it's mostly focused on learning through doing things rather than just learning theory.
Why the actual FUCK is that, for some fucking reason, supposed to be a 'lower level' than HBO or Uni? (low to high in my country: MBO, HBO, Uni). Just because I learn better by doing shit instead of solely focusing on the theory and not doing much else does NOT FUCKING MEAN THAT I AM DUMBER OR LESS EDUCATED ON A SUBJECT.
So in the last couple of months, I've literally had rejections with reasons like
- 'Sorry but we require HBO level as people with this level can analyze stuff better in general which is required for this job.'. - Well then go fuck yourself. Just because I have a lower level of education doesn't FUCKING mean that I can't analyze shit at a 'lower level' than people who've done HBO.
- 'You don't seem to have a certificate for linux server management so it's a no go, sorry!' - Kindly go FUCK yourself. Give me a couple of barebones Debian servers and let me install a whole setup including load balancers, proxies if fucking neccesary, firewalls, web servers, FUCKING Samba servers, YOU FUCKING NAME IT. YES, I CAN DO THAT BUT SOLELY BECAUSE I DON'T HAVE THAT FUCKING CERTIFICATE APPEARANTLY MEANS THAT I AM TOO INCOMPETENT TO DO THAT?! Yes. I get that you have to filter shit but GUESS WHAT. IT'S RIGHT THERE IN MY FUCKING RESUME.
- 'Sorry but due to this role being related to cyber security, we can't hire anyone lower than HBO.' - OH SO YOUR LEVEL OF EDUCATION DEFINES HOW GOOD YOU ARE/CAN BE AT CYBER SECURITY RELATED STUFF? ARE YOU MOTHERFUCKING RETARDED? I HAVE BEEN DOING SHIT RELATED TO CYBER SECURITY SINCE I WAS 14-15 FUCKiNG YEARS OLD. I AM FAMILIAR WITH LOADS OF TOOLS/HACKING TECHNIQUES/PENTESTING/DEFENSIVE/OFFENSIVE SECURITY AND SO ON AND YOU ARE TELLING ME THAT I NEED A HIGHER LEVEL OF FUCKING EDUCATION?!?!? GO FUCKING FUCK YOURSELF.
And I can go on like this for a while. I wish some companies I come across would actually look at skills instead of (only) study levels and certifications. Those other companies can go FUCK THEMSELVES.39 -
So I said I'd rant this yesterday but a long night of server management came in the way!
Yesterday @trogus mentioned in a comment that he thinks everyone deserves a place where they feel like home and this is that place for me along with some sub-places which derived from here.
So in this linux/foss chat yesterday I was trying to get into an IRC chatroom (all people there (or at least a lot) are also like minded on privacy/security). I don't want to use email signup if not absolutely neccesary (don't judge me, everyone there own thing) and I found out very late (after 20 minutes of instructions from a fellow devRanter) that this thing required email signup. I didn't wanna do that so I said that and started typing a whole essay of why I'd rather not do that and what my reasons are (privacy partly) but then the guy said: "haha you got it man".
For one second I forgot that I don't have to explain myself over there on stuff regarding privacy that a lot of people would find paranoid. Man, that feels like being home :).6 -
I've had many, but this is one of my favorite "OK, I'm getting fired for this" moments.
A new team in charge of source control and development standards came up with a 20 page work-instruction document for the new TFS source control structure.
The source control kingpin came from semi-large military contract company where taking a piss was probably outlined somewhere.
Maybe twice, I merged down from a release branch when I should have merged down from a dev branch, which "messed up" the flow of code that one team was working on.
Each time I was 'coached' and reminded on page 13, paragraph 5, sub-section C ... "When merging down from release, you must verify no other teams are working
on branches...blah blah blah..and if they have pending changes, use a shelfset and document the changes using Document A234-B..."
A fellow dev overheard the kingpin and the department manager in the breakroom saying if I messed up TFS one more time, I was gone.
Wasn't two days later I needed to merge up some new files to Main, and 'something' happened in TFS and a couple of files didn't get merged up. No errors, nothing.
Another team was waiting on me, so I simply added the files directly into Main. Unknown to me, the kingpin had a specific alert in TFS to notify him when someone added
files directly into Main, and I get a visit.
KP: "Did you add a couple of files directly into Main?"
Me:"Yes, I don't what happened, but the files never made it from my branch, to dev, to the review shelfset, and then to Main. I never got an error, but since
they were new files and adding a new feature, they never broke a build. Adding the files directly allowed the Web team to finish their project and deploy the
site this morning."
KP: "That is in direct violation of the standard. Didn't you read the documentation?"
Me: "Uh...well...um..yes, but that is an oddly specific case. I didn't think I hurt any.."
KP: "Ha ha...hurt? That's why we have standards. The document clearly states on page 18, paragraph 9, no files may ever be created in Main."
Me: "Really? I don't remember reading that."
<I navigate to the document, page 18, paragraph 9>
Me: "Um...no, it doesn't say that. The document only talks about merging process from a lower branch to Main."
KP: "Exactly. It is forbidden to create files directly in Main."
Me: "No, doesn't say that anywhere."
KP: "That is the spirit of the document. You violated the spirit of what we're trying to accomplish here."
Me: "You gotta be fracking kidding me."
KP grumbles something, goes back to his desk. Maybe a minute later he leaves the IS office, and the department manager leaves his office.
It was after 5:00PM, they never came back, so I headed home worried if I had a job in the morning.
I decided to come in a little early to snoop around, I knew where HR kept their terminated employee documents, and my badge wouldn't let me in the building.
Oh crap.
It was a shift change, so was able to walk in with the warehouse workers in another part of the building (many knew me, so nothing seemed that odd), and to my desk.
I tried to log into my computer...account locked. Oh crap..this was it. I'm done. I fill my computer backpack with as much personal items as I could, and started down the hallway when I meet one of our FS accountants.
L: "Hey, did your card let you in the building this morning? Mine didn't work. I had to walk around to the warehouse entrance and my computer account is locked. None of us can get into the system."
*whew!* is an understatement. Found out later the user account server crashed, which locked out everybody.
Never found out what kingpin and the dev manager left to talk about, but I at least still had a job.13 -
FUCKING SHIT.
I'm at my first Hackathon with my best friends in life and there has never been a time when I've felt this miserable all my life.
The theme is IoT (something idk jackshit about) and people here are done with the projects when we are still at the idea stage.
Yes, it's true that this shit is intense but I really want to do good at this.
This is what I've learned from my first Hackathon:
1. Prepare your shit.
Unless the problem statements are given on the spot, you should've discussed everything that you would be doing and not divert. (We spent 5 hours on a problem statement and then we decided not to go with it.)
2. Have people with different abilities who you can trust to get the work done without you having to give a second thought.
3. Don't you dare build a sub-par application. What's the fucking use of that? Don't do it for the certificate or the stickers. If you do that, then how the fuck can you make yourself put those stickers on your laptop?!
4. Have food. Keep yourself healthy and up to max potential.
5. DO NOT BE DISCOURAGED. A lot of people will look like they're done with the shit. You know what you have to do now? NOT GIVE A FUCK! Just focus and do your thing and make it awesome.7 -
So today I decided to switch to angular 4(material) on a project I had done. I have to say I am shocked by the sheer size of the node modules dependencies I have to install. Why wouldn't they just ship it all in one package. 😤 I had to install the client, material SDK, animations etc and all this is happening over shit sub-saharan Africa internet speed. I have been setting up for the past 5 hours and I'm only halfway through. If anyone reading this rant has a company that works to bring internet to Africa please hurry. We need you.4
-
Minimum wage employers and restaurants asking "and why should we hire you?".
You have 40 vacancies in your area for just your company alone.
You're paying $13.25 an hour when only a year ago you were paying $9.75.
Why should we hire you?
F*ck you, pay me, that's why.
You're not f*cking NASA
You're a God damn chain restaurant with a 40% turnover rate, who's employees probably shoot up in the bathroom on the rare occasion they even get a break.
I looked at the guy with all the annoyance I could muster, stared him down for a good five seconds and said. "You pay a few dollars over minimum. You're job is not important enough to even ask that question. Have a nice day." And got up and left.
Dude followed me and stuttered " hold up. I was just..."
But I was already out the door.
You were just what mark? Asking a dumbfuck question as if you had any leverage at all?
Your competitor *across the street* is offering 50 cents *more* per hour, and has guaranteed breaks.
What, did you forget 2008 and how you treated millions of people as disposable? The little part where you and most american industries demanded passion, without pay raises? Promotions without benefits? The jobs that if you worked hard, rather than a promotion or a pay raise, your reward was more work and less hours to finish?
You assholes thought we forgot about that? How you shipped millions of jobs overseas, blamed it on "automation" (chinese and indian slave labor), and then pointed the finger at millions of impoverished people as "lazy" in places like Detroit and Pittsburgh and told them "you just got to work harder and smarter!" Or "just get a small loan and create the next google!" from the comfort of your yachts? I'm looking at you bane corp.
No, now the shoes on the other foot motherf*ckers. Hows it feel needing all *us* commoners? "Why should we hire you?"
No, why should *I* WORK FOR YOU?
Cuz I saw THREE dirty tables coming in. A line of people that could be being served. A line that could have been optimized with the proper table count and some simple changes. A menu that doesnt even incentivize your biggest sellers and a dozen other things your store is doing wrong.
Think mark, think!
This is one of those braindead questions employers paying sub $18 an hour ask, because they suffered so much brain drain from years of payola profits from too-big-to-fail wallstreet bailouts, that they forgot they are not king midas, unless they are the king midas of shit, because increasingly everything corporate America touches turns into shit.
And while were on the subject, stopping bringing in outside management to stores. It destroys team cohesion, staff morale, pisses off people *on site* who *actually know* the team, the stores daily activities and processes, and who are better fit for that role. You bring in disinterested outside management, and it's one of the biggest red flags I've ever seen: these smarmy selfcongratulating f*cks who know nothing about the particular store, have no connection to the staff, go on firing sprees or alienation-sprees to hire in friends, fuck up the schedules because again they know nothing about the employees, and then move on after a few years to greener pastures, leaving a barren radioactive wasteland of chain smokers and burnt out staff in their wake.
Dear corporate America, your free ride on the public's good will is over. It's over.
Now you're in the bitch seat. Come sit at my desk and explain to me, EXPLAIN TO ME, why I should sweat and labor to save your shitty company hemorrhaging money like a bleeding crack-addicted hobo dying with a sucking chest wound from a chicago skidrow friday-night drive-by?
You dont deserve it. Your management and company culture is worse than incompetent. It's full of smiley guys expounding about their passion for customer service while giving each other sloppy BJs in broom closets, a veritable cornucopia of cult-like corporate dick suckers *and* dickheads, proclaiming, no...PROFESSING (hence "professional") their undying allegiance and dedication to their corporate family with the intensity of cujo, foaming at the mouth, or Mitt Romney preparing for a photoshoot, plastic smiles and feigned laughs.
Dont forget to wipe your chin, asshole. It's not Ronald McDonald your blowing, but it's definitely not Gordon f*cking Ramsey either.
Would you like fries with that?87 -
Story time. My first story ever on devRant.
To my ex-company that I bear for a long time... I joined my ex-company 3 years ago. My ex-company assigned me and one girl teammate to start working on a brand new big web project (big one - two members - really?)
My teammate quitted later, I have to work alone after then. I asked if someone can join this project, but manager said other people are busy. Yea, they are fucking busy reading MANGA shit everyday... Oops, I saw it because whenever I about to leave my damn chair, they begin chanting some hotkey magic and begin doing "poker face" like "I'm doing some serious shit right here".. FUCK MY CO-WORKERS!
My manager didn't know shit about software development, and keep barking about Agile, Waterfall and AI shit... He didn't even fucking know what this project should look like, he keep searching the internet for similar functions and gave me screenshots, or sometimes they even hold a meeting of a bunch of random non-related guys who even not working on the project, to discuss about requirements, which last for endless hours... FUCK MY MANAGER!
I was the one in charge for everything. I design the architecture, database, then I fucking implement my own designed architect myself, and I fucking test functions that I fucking implemented myself based on my fucking design. I was so tried, I don't know what the fuck I am working on. Requirement changes everyday. My beautiful architecture began to falling off. I was so tired and began use hack fixes here and there many places in the project. I knew it's bad, but I just don't have time to carefully reconsider it. My test case began becoming useless as requirements changed. My manager's boss push him to finish this project. He began to test, he start complaining about bug here and there, blaming me about why functions are broken, and why it not work as he expected (which he didn't even tell my how he expected). ... I'm not junior developer, but this one-man project is so overwhelmed for me... FUCK MY JOB!
At this time, I have already work this project for almost 2.5 years. I felt very upset. I also feel disappointed about myself, although I know that is not all my entire faults. The feeling that you was given a job, but you can not get it done, I feel like a fucking LOSER. I really wanted to quit and run away from this shithole. But on the other hand I also want to finish this project before I quit. My mind mixed. I'm a hard-worker. I keep pushing myself, but the workplace is so toxic, I can feel it eating up my motivation everyday. I start questioning myself: "Is the job I am doing important?", "If this is really important project, didn't they should assign more members?", I feel so lonely at work... MY MIND IS FUCKED UP!
Finally, after a couple months of stress. I made up my mind that no way this project is gonna end within my lifespan. I decide to quit. Although my contract pointed that I only need to tell one month in advance. I gave my manager 3 months to find new members for project. I did handle over what I know, documents, and my fucked up ultra complexity source code with many small sub-systems which I did all by myself.
Well, I am with a new employer right now. They are good company. At least, my new manager do know how to manage things. My co-workers are energy and hard-working. I am put to fight on the frontline as usual (because of my "Senior position"). But I can feel my team, they got my back. My loneliness is now gone. Job is still hard, but I know for sure that I'm doing things on purpose, I am doing something useful. And to me that is the greatest rewards and keep me motivative! From now, will be the beginning for first page of my new story...
Thanks for reading ...13 -
I HATE working with MS Office products. Yes, Access, I'm looking at you, you backwards, whanabe database reject! You're invalid as a serious SQL database and retarded as an data application suite.
VBA, make up your MIND with your damn function calls! Either require me to use parenthesis or don't! I'm sick of this conditional parenthesis sh*t!
While we're talking about not making up your mind... screw 'sub', you half wit language! Either use functions like a real language or go the f&$k home and make room for a language that knows what it's doing!
Oh!!! WHY... WHY! do you have null AND... NOTHING?! Who... Who... WHO invented "nothing"?! And what sick joke are you playing at with isnull() and empty()??? How many damn ways so you need to test for "no value"?!?!
Access... That's right, I'm not done with you yet... How is it you've survived this damn long in the business world with all of the databases you corrupt? Sure, you suck as a real database, but at least have some freaking pride that people even USE you! How DARE your corrupt yourself with the regularity you seem to have! I wish my bowel movements were as regular as your database corruptions, for the love of humanity.
F$@k you, VBA! F@&k you, Access! F$#k you, MS Office! And Fuuuuuu$k YOU Microsoft for shoving these half assed reject tools down my throat!
I hope your cloud uses Access as a back end and gets some injection virus.
*Takes deep breath* need to say that.10 -
Story time!
A little over a year ago I was in the hiring process with a new company and countered their initial offer. I was told by the CTO that it was no problem and they would get back to me soon.
A couple days go by and I'm then informed that they're hiring a new IT director and would like me to interview with him as well. It felt kinda lame since I'd already been offered the job but I rolled with it.
When I showed up to the office for an interview I tried to call and let them know I was there and couldn't get a hold of anyone. 30 minutes later I get a call from the CTO saying they couldn't find the new IT director and when they got him to answer the phone he said he had left early and would call me to do a phone interview.
Obviously the whole experience so far has been pretty lame but I stuck with it because I knew the CTO personally. I did the phone interview and quickly realized this dude was a prick, and would be a terrible boss, but I spoke with the CTO again who told me to stick with it and eventually I did get the job.
Fast forward about a month and it's clear the new director is trash. He literally bragged about firing a dude over an accidental outage (wtf!?).
He had the technical experience you'd expect of a junior help desk and his management skills were pretty clearly sub-par.
He was also, for whatever reason, completely unable to communicate with the only woman on our team. When assigning work he would always feel the need to ask if she could 'handle it' rather than just assigning it to her like it's done for everyone else. He was pretty clearly sexist.
The whole team hates this dude by this point but he's somehow managed to woo the executives into thinking he shits gold.
I was helping him set up a Python venv on his machine when I noticed another VPN client installed which certainly piqued my interest. After a bit of digging it was clear he was using company time and company equipment to continue working for his previous employer.
We turned over logs and he was fired the next day. He tried to add me on LinkedIn afterwards and I have never declined something quicker.
Moral of the story is don't be a dickhead.1 -
Normally I just read rants but my new assignments is just to much and I have to vent a bit.
So I was assigned on a new company to help them with their automated tests (I'm normally a developer) which was fine for me. Especially when they said a guy that have 10+ years of experience have worked on the framework for a couple of weeks so it should be fine and ready. So I though it would be a quick deal.
But then I got there and... it's the worst C# code I have ever seen. I can live with the overuse of static, long method and classes and overally messy classes that doesn't really seems to fit (it's bad but not unusual in test code it seems). My biggest problem is overuse of the damn "dynamic" keyword.
Don't get me wrong, dynamic can be good and it have it's uses but here they use "dynamic args" in every single method, every one! They don't care if the method only require one value or ten values, they use dynamic args. Then you follow this "dynamic args" parameter going in to sub method after sub method and you have no idea what they use.
And of course they don't know if anyone use the methods correctly (as you have no damn clue what to use without checking the source code) so in 75% of the methods they convert the dynamic to an object and check if it contains "correct argument".
So what I have here is a code that isn't just hard to use, it's a hell to maintain.
So I talked with this with other testers on the team and they agree, but as most of them lack experience they couldn't talk back to the senior that wrote it. So I hope to sit down with him this week and talk this through because it would be fun to hear the arguments for this mess.
/rant10 -
Still trying to get good.
The requirements are forever shifting, and so do the applied paradigms.
I think the first layer is learning about each paradigm.
You learn 5-10 languages/technologies, get a feeling for procedural/functional/OOP programming. You mess around with some electronics engineering, write a bit of assembly. You write an ugly GTK program, an Android todo app, check how OpenGL works. You learn about relational models, about graph databases, time series storage and key value caches. You learn about networking and protocols. You void the warranty of all the devices in your house at some point. You develop preferences for languages and systems. For certain periods of time, you even become an insufferable fanboy who claims that all databases should be replaced by MongoDB, or all applications should be written in C# -- no exceptions in your mind are possible, because you found the Perfect Thing. Temporarily.
Eventually, you get to the second layer: Instead of being a champion for a single cause, you start to see patterns of applicability.
You might have grown to prefer serverless microservice architectures driven by pub/sub event busses, but realize that some MVC framework is probably more suitable for a 5-employee company. You realize that development is not just about picking the best language and best architecture -- It's about pros and cons for every situation. You start to value consistency over hard rules. You realize that even respected books about computer science can sometimes contain lies -- or represent solutions which are only applicable to "spherical cows in a vacuum".
Then you get to the third layer: Which is about orchestrating migrations between paradigms without creating a bigger mess.
Your company started with a tiny MVC webshop written in PHP. There are now 300 employees and a few million lines of code, the framework more often gets in the way than it helps, the database is terribly strained. Big rewrite? Gradual refactor? Introduce new languages within the company or stick with what people know? Educate people about paradigms which might be more suitable, but which will feel unfamiliar? What leads to a better product, someone who is experienced with PHP, or someone just learning to use Typescript?
All that theoretical knowledge about superior paradigms won't help you now -- No clean slates! You have to build a skyscraper city to replace a swamp village while keeping the economy running, together with builders who have no clue what concrete even looks like. You might think "I'll throw my superior engineering against this, no harm done if it doesn't stick", but 9 out of 10 times that will just end in a mix of concrete rubble, corpses and mud.
I think I'm somewhere between 2 and 3.
I think I have most of the important knowledge about a wide array of languages, technologies and architectures.
I think I know how to come to a conclusion about what to use in which scenario -- most of the time.
But dealing with a giant legacy mess, transforming things into something better, without creating an ugly amalgamation of old and new systems blended together into an even bigger abomination? Nah, I don't think I'm fully there yet.8 -
I've been wondering for a while, how the backend my team has to use could have so many issues. I was convinced they had no alerting system in place and have been commenting on it for a while now, and complaining about it.
Was on a Zoom call with one of the backend devs today, he shared his screen and had his email open. I saw a folder he had setup called alerts, and sub folders under that. One of them was named the name of the service/app we are using ... it had over 360,000 un-reads ... and emails are automatically deleted after 4 months in my company.
So they have alerts setup, they just don't care ... problem solved. Enjoy your weekend folks!2 -
This will be a long rant.
Met this person through my brother's friend. He wanted a cheap static website with a few products images for his handicraft store. I agreed as it would not take much time. He paid me in full upfront.
I registered the domain and created all the page templates with dummy contents. I uploaded the site under a staging sub-domain and asked him for the contents, but he said he was a bit busy and would give them to me later on.
After almost 2 years, out of nowhere, he got back to me and told me he didn't want that old website anymore but he wanted a new personal website. What shocked me was that he told me that he would only pay me for the domain and space but won't pay me for the website as his pervious work was never complete. I denied straight forward and told him I would keep the 80% amt for my work done but he kept telling me I hadn't done anything except place a few images in some html files. Hahaha, After a few in and out mails I told him I didn't wanted his money and would refund all of it, but this shitty guy had a messed of mind. He started posting messages of my fb wall about how i was a fraud and I had taken his money. Things got intense. I had decided to sue this cheap minded asshole but after my brother's friend convinced me not to and apologized on his behalf. He told me not to worry about it and move on.
Haven't heard from him till now.
Thank you for reading till this far.11 -
'your good with computers right'?
Me: I work with one every day so I guess...
Can you fix a problem I have with my pc? (relatively old man, and I feel bad for him so I agreed)
Next day he had me fix 4 laptops (from his kids) and a Macbook of his own almost all had shady malware and were WAY behind of their windows updates... Like sub wannacry level...
Rip one of day of my vacation 😠8 -
Not just another Windows rant:
*Disclaimer* : I'm a full time Linux user for dev work having switched from Windows a couple of years ago. Only open Windows for Photoshop (or games) or when I fuck up my Linux install (Arch user) because I get too adventurous (don't we all)
I have hated Windows 10 from day 1 for being a rebel. Automatic updates and generally so many bugs (specially the 100% disk usage on boot for idk how long) really sucked.
It's got ads now and it's generally much slower than probably a Windows 8 install..
The pathetic memory management and the overall slower interface really ticks me off. I'm trying to work and get access to web services and all I get is hangups.
Chrome is my go-to browser for everything and the experience is sub par. We all know it gobbles up RAM but even more on Windows.
My Linux install on the same computer flies with a heavy project open in Android Studio, 25+ tabs in Chrome and a 1080p video playing in the background.
Up until the creators update, UI bugs were a common sight. Things would just stop working if you clicked them multiple times.
But you know what I'm tired of more?
The ignorant pricks who bash it for being Windows. This OS isn't bad. Sure it's not Linux or MacOS but it stands strong.
You are just bashing it because it's not developer friendly and it's not. It never advertises itself like that.
It's a full fledged OS for everyone. It's not dev friendly but you can make it as much as possible but you're lazy.
People do use Windows to code. If you don't know that, you're ignorant. They also make a living by using Windows all day. How bout tha?
But it tries to make you feel comfortable with the recent bash integration and the plethora of tools that Microsoft builds.
IIS may not be Apache or Nginx but it gets the job done.
Azure uses Windows and it's one of best web services out there. It's freaking amazing with dead simple docs to get up and running with a web app in 10 minutes.
I saw many rants against VS but you know it's one of the best IDEs out there and it runs the best on Windows (for me, at least).
I'm pissed at you - you blind hater you.
Research and appreciate the things good qualities in something instead of trying to be the cool but ignorant dev who codes with Linux/Mac but doesn't know shit about the advantages they offer.undefined windows 10 sucks visual studio unix macos ignorance mac terminal windows 10 linux developer22 -
Just found a great talk on JS: "Essential JavaScript Debugging Tools", thought other people, especially the ones currently just learning it, might enjoy it.
The whole channel is a sub recommendation anyway, as they always publish great talks and videos for webdev and more.
https://youtube.com/watch/...5 -
I'm a tech lead for a digital agency.
Digital agencies are universally known for being shite. Why? Because they typically push through sub-optimal code with very little testing over tiny deadlines for maximum profit. Maybe I've just had bad experiences but this is the 5th digital agency that I've worked at that does this bollocks.
I am currently sitting on a Teams call at 8:39pm because the fuckwit project/account managers are unable to face up to the big scary client and ask them terrifying questions like "Is this bug a blocker for the deployment?" or "We don't have enough time to fix/change these things, can we delay another day?". They just assume that A - We will work into the evening, and B - that all the issues are P1 and that we should all 'pull together' as 'team players' to get this done in time.
No, Me and my team have to work into the evening for seemingly free because these pricks can't do their jobs properly.
The funniest thing of all? When I speak to the CTO about overtime payment he tries to make me feel bad about "we don't typically pay for overtime..."
Fuck Everyone.
Time to find a new contract.11 -
Alright, so my previous rant got a way better response than I expected! (https://devrant.io/rants/832897)
Hereby the first project that I cannot seem to get started on too badly :/.
DISCLAIMER: I AM NOT PROMOTING PIRACY, I JUST CAN'T FIND A SUITABLE SERVICE WHICH HAS ALL THE MUSIC I WANT. I REGULARLY BUY ALBUMS. before everyone starts to go batshit crazy regarding piracy, this is legal in The Netherlands for personal use. I think that supporting the artists you love is very good and I actually regularly pay for albums and so on but:
- I want all the music from about every artist in my scene. Either on Deezer or on Spotify this is not available and I'm not gonna get them both (they both have about half of the music I want). Their services are awesome but I'm not going to pay for something if I can't listen to all the music I like, hell even some artists (on deezer mostly) only have half their music on there and it's mostly not better on Spotify.
- I'd happily buy all albums because I love supporting the artists I love but buying everything is just way too fucking much."Get a premium music streaming subscription!" - see the first point.
You can either agree or disagree with me but that's not what this rant is about so here we go:
The idea is to create a commandline program (basically only needs to be called by a cron job every day or so) which will check your favourite youtube (sorry, haven't found a suitable non-google youtube replacement yet) channels every day through a cronjob and look for new uploads. If there are, it will download them, convert them to MP3 or whatever music format you'd like and place them in the right folder. Example with a favourite artist of mine:
1. Script checks if there are any new uploads from Gearbox Digital (underground raw hardstyle label).
2. Script detects two new uploads.
3. Script downloads the files (I managed to get that done through the (linux only or also mac?) youtube-dl software) and converts them to mp3 in my case (through FFMPEG maybe?).
4. Script copies them to the music library folder but then the specific sub-folder for Gearbox Digital in this case.
You should be able to put as many channels in there as you want, I've tried this with the official YouTube Data API which worked pretty fine tbh (the data gathering through that API). The ideal case would be to work without API as youtube-dl and youtube-dlg do. This is just too complicated for me :).
So, thoughts?43 -
When migrating from MySQL server to MariaDB and having a query start returning a completely different result set then what was expected purely because MariaDB corrected a bug with sub selects being sorted.
It took several days to identify all that was needed on that sub select was “limit 1” to get that thing to return the correct data, felt like an idiot for only having to do 7 character commit 😆4 -
Fuck Reddit admins. Fuck them in ass with a rusted iron rod. Then pour in some liquid steel and dehydrate them to death.
Bloody fucks.
Remember the toxic girl who stalked and harassed me? She did that on Reddit.
After multiple reports to faggot admins, no action was taken against her multiple accounts.
I ended up creating few alt accounts for my mental well-being.
I have been contributing fairly well from all my accounts earning community trust and reputation, even behind the mask of anonymity.
Now, day before yesterday, a teen started abusing me for no reason on a local sub. I ended up ignoring.
Next morning I am notified that admins banned my account permanently.
What the fuck! I did not violate any policy and yet I was kicked out.
I raised an appeal for those fags to look into this and uplift the ban.
Fuckers banned all my accounts permanently without giving any reason.
Instead of taking action against retards who harass people, these bhenchods ban people who contribute in a good way.
I truly wish, that the person who made this decision rots to death while feeling the pain of regret.
I am soooo fucking annoyed. I have been using Reddit for many good reasons and have found it really helpful in various areas of my life.12 -
(Best read while listening to AEnima by Tool, loudly)
Dear Current Workplace,
Fuck you, for the reasons enumerated below.
Fuck your enterprise grey blue offices, the stifling warm air of a hundreds of bodies and sub par "development laptops".
Fuck your shitty carbonated water machines which were a cost saving measure over decent drinkable water.
Fuck your fake "flexi time", "you can do home office whenever you want" bullshit. You're still inviting me to mandatory meetings at 09:00 regularly.
Fuck your shitty, in house, third part IT provider sister company. They're the worst of all worlds. If it was in company, we'd get to give out to them, if it was an external company we'd fire them. And yes, when I quit I will quote the dumpster fire that is our corporate VPN as a major factor.
Fuck your cheery, bland, enterprise communication. Words coming under the corporate letterhead seem to lose all association with meaning. Agile, communication, open are things you write and profess to respect, but it seems your totally lack understanding of their meaning.
Fuck your client driven development. Sometime you actually have to fix the foundations before you can actually add new features. And fuck you management who keep on asking "why are there so many bugs and why is it always taking longer to deliver new releases". Because of you, you fucknuts, Because you can't say "NO" to the customer. Because you never listen to your own experienced developers.
Fuck your bullshit "code quality is important to us" line. If it's so important, then let us fix the heap of shit you're selling so that it works like a quasi functional program.
Fuck you development environment which has 250 projects in a single VS solution. Which takes 5mins plus to compile on a quad core i7 with 32 gb of ram.
Fuck this bullshit ball of mud "architecture". I spend most of my time trying to figure out where the logic should go and the rest of the time writing converters between different components. All because 7 years ago some idiot "architect" made a decision that they didn't have to live with.
Actually, fuck that guy in particular. Yeah, that guy who was the responsible architect for the project for 4 years and not once opened the solution to look a the code.
Fuck the manual testing of every business process. Manual setup of the entities takes 10mins plus and then when you run, boom either no message or some bullshit error code.
Fuck the antiquated technology choices which cause loads of bugs and slow down development. Fuck you for forcing me to do manual tests of another developers code at 20:00 on a Friday night because we can't get our act together to do this automatically.
Fuck you for making sure it's very clear I'm never going to be anything but a code monkey in this structure. Managers are brought in from outside.
Fuck you for being surprised that it's hard to hire competent developers in this second rate, overpriced town. It's hard to hire anywhere but this bland shithole would have anyone with half a clue running away at top speed.
Fuck you for valuing long hours and loyalty over actual performance. That one guy who everyone hated and was totally incompetent couldn't even get himself fired. He had to quit.
Fuck you for your mediocrity.
Fuck you for being the only employer for my skill-set in the region; paying just well enough that changing jobs locally doesn't make sense, but badly enough that it's difficult to move.
Fuck you for being the stable "safe" option so that any move is "risky".
Fuck your mediocrity.
Fuck you for being something I think about when I'm not at work. Not only is it shit from 9 to 5 you manage to suck the joy out of everything else in my life as well?
Fuck you for making me feel like a worse developer every day I work here. Fuck you for making every day feel like a personal and professional failure. Fuck you for making me seriously leave a career I love for something, anything else.
Fuck you for making the most I can hope for when I get up in the morning is to just make it until the night.6 -
Long rant...
*Designer Posted image of newly designed layout for our app on trello.
Dev 1 (me, being the junior, on ios) : so... What's the size for x, Y, z, a, B, C?
She: it's 9 for the small text, 10 for sub title, 12 for main title.
*shows her the design on app
Dev 1: seems too small
She: just make it to look not small.
Dafug?
*finishes the app layout for that screen.
*working on next screen
Dev 1: your new design is for the screen of 1920x1080. But our supported screen size starts from 320 width. So there'll be text overlapping each other and ui might screw up.
She: uh.. Just... Put those that will overlap to the next line.
*shrugs
Dev 1: ok
=======
2 days later
Dev 2 (senior, working on Android)
Dev 2: so... What's the colour for x, Y, z
*Dev 1 laughs on the inside because of the struggles we have with her.
Dev 1 to Dev 2: is it common for her not to follow the design guidelines?
Dev 2: yeah man.. We just have to adapt her design into our app guidelines.
*sigh
Dev 2: there's a new icon here on this screen, so you wanna change the icon? Can I have the icon file?
She: oh.. No.. Use back the old one, because I just copy and paste.
Dev 1: so... This progress bar of yours, doesn't show its background colour, because you filled it already. So what's the background colour if the bar isn't filled?
She : hmm.... Oh.. Well.. Maybe try x.. ? *doesn't look nice* how about Y? *doesn't look nice* how about...
Me : why not you try in your computer first instead of me changing it here by code, it's much faster this way.
*seriously, wth?
Dev 1 and 2: there's additional text in your new design, what is it for?
She : oh.. No no. I copied extra due to copy and paste. Just ignore it.
Dev 1 and 2: what's the spacing gap between x and Y? And how about the size of the box?
She : oh.. I just estimate it, and for the box, not sure either, you can follow old design, because I'm just putting a box there for illustration purpose.
Mother fickle, what fuck man.
Dev 1 and 2: *flips table.
*we didn't, but.. It's freaking annoying.7 -
CompanyYouNeverHeardOf sends you IrrelevantNewsletter512... so you hunt for the unsubscribe link, which you find buried in the boilerplate crap at the bottom of the mail, rendered in #eee on a #fff background, in 4-point type, and click that. End up on a web site that asks you like 8 times if you're sure you want to leave and please, reconsider, we're nice folk really, blah blah blah. And then you get *another* email from them saying they received your unsubscribe request, and *then* yet another to confirm that yes, you unsubscribed, and please feel free to re-sub anytime (as if!)
GOD I HATE MARKETEERS!!!1one10 -
!rant
!!pride
I tried finding a gem that would give me a nice, simple diff between two hashes, and also report any missing keys between them. (In an effort to reduce the ridiculous number of update api calls sent out at work.)
I found a few gems that give way too complicated diffs, and they're all several hundred lines long. One of them even writes the diff out in freaking html with colors and everything. it's crazy. Several of the simpler ones don't even support nesting, and another only diffs strings. I found a few possibly-okay choices, but their output is crazy long, and they are none too short, either.
Also, only a few of them support missing keys (since hashes in Ruby return `nil` by default for non-defined keys), which would lead to false negatives.
So... I wrote my own.
It supports diffing anything with anything else, and recurses into anything enumerable. It also supports missing keys/indexes, mixed n-level nesting, missing branches, nil vs "nil" with obvious output, comparing mixed types, empty objects, etc. Returns a simple [a,b] diff array for simple objects, or for nested objects: a flat hash with full paths (like "[key][subkey][12][sub-subkey]") as top-level keys and the diff arrays as values. Tiny output. Took 36 lines and a little over an hour.
I'm pretty happy with myself. 😁6 -
How weird is this?
I was working on a project. I wasn't able to find solution for a particular sub problem. It was late so I thought of sleeping.
I dreamt about the problem. I solved it in my dream. When I woke up in the morning, I remembered the solution and I solved it.4 -
devrant is the only community that I feel comfortable in.
I've been browsing since 2000 and been in many communities online so far, so that's saying a lot.
I've seen supportive comments towards me and others here, and that really makes me feel less hopeless.
I think the internet in general makes you feel like you're a number. Click the like and the sub button, just be one more in a million.
But here, you matter.
If you try to post something and you are sincere, but humble people will ++ and say nice comments.
If you get upvoted, you can WHO did it and what their online persona looks like.
It feels very organic and personal, which is saying a lot for a place like the internet.
In the standard online experience, people online take advantage of the anonymity to say shit they wouldn't online:
anything, from troll shit to presumptuous comments.
I don't understand how some people can connect being anonymous with denying themselves as moral beings.
Do these people walk around in real life fighting with every person that has an opposite point of view?
There's actual people out there that will read this post and think "what a fucking boy scout".
Sorry for having emotions.
how many fucked up people are there, so that devrant feels like a goddamn mirage?9 -
My code review nightmare?
All of the reviews that consisted of a group of devs+managers in a conference room and a big screen micro-analyzing every line of code.
"Why did you call the variable that? Wouldn't be be more efficient to use XYZ components? You should switch everything to use ServiceBus."
and/or using the 18+ page coding standard document as a weapon.
PHB:"On page 5, paragraph 9, sub-section A-123, the standards dictate to select all the necessary data from the database. Your query is only selecting 5 fields from the 15 field field table. You might need to access more data in the future and this approach reduces the amount of code change."
Me: "Um, if the data requirements change, wouldn't we have change code anyway?"
PHB: "Application requirements are determined by our users, not you. That's why we have standards."
Me: "Um, that's not what I ..."
PHB: "Next file, oh boy, this one is a mess. On page 9, paragraph 2, sub-section Z-987, the standards dictate to only select the absolute minimum amount of the data from the database. Your query is selecting 3 fields, but the application is only using 2."
Me: "Yes, the application not using the field right now, but the user stated they might need the data for additional review."
PHB: "Did they fill out the proper change request form?"
Me: "No, they ...wait...Aren't the standards on page 9 contradictory to the standards on page 5?"
PHB: "NO! You'll never break your cowboy-coding mindset if you continue to violate standards. You see, standards are our promise to customers to ensure quality. You don't want to break our promises...do you?"7 -
Manager: We have a new equity survey from HR that is ABSOLUTELY MANDATORY. Anyone who doesn’t fill it out will be severely reprimanded for being against diversity in the workplace. We need this data in order to ensure we have the ABSOLUTELY EXACT ratio of EVERY minority so that we can show the people that we do not discriminate against ANYBODY for ANYTHING. One of the problems with hiring new people is that most people we want to hire turn out to be white and we are absolutely not allowed to hire any more white people because we are over the quota for white people. Now there’s a loophole to this, if that white person belongs to some sub-minority like they are muslim or gay or something like that it’s totally cool and we can show people we don’t discriminate on these things when making employment decisions!
Dev: That’s…not wh—
Mandatory Survey: Please select your sexual preferences and/or religion from the dropdown below.
Dev: jesus christ.16 -
Lead-Dev: I got a little job for you; put this list of links in the footer of our website.
Me: But... this list of links is a bunch of websites of another company...
why would that go in OUR footer?
LD: Well, Google gives a higher SEO score when two websites have links to one another.
Me: Oh, okay.
LD: Just make the list as subtle as possible. Visitors aren't really supposed to click on them.
Me under my breath: (How are these people allowed to call themselves professionals?)2 -
Woohoo!!! I made it to 1000++s :) Now I feel less newbie-like around here :)
So... I don't want to shit-post, so in gratitude to all you guys for this awesome community you've built, specially @trogus and @dfox, I'll post here a list of my ideas/projects for the future, so you guys can have something to talk about or at least laugh at.
Here we go!
Current Project: Ensayador.
It's a webapp that intends to ease and help students write essays. I'm making it with history students in mind, but it should also help in other discipline's essay production. It will store the thesis, arguments, keywords and bibliography so students can create a guideline before the moment of writting. It will also let students catalogue their reads with the same fields they'd use for an essay: that is thesis, arguments, keywords and bibliography, for their further use in other essays. The bibliography field will consist on foreign keys to reads catalogued. The idea is to build upon the models natural/logical relations.
Apps: All the apps that will come next could be integrated in just one big app that I would call "ChatPo" ("Po" is a contextual word we use in my country when we end sentences, I think it derived from "Pues"). But I guess it's better to think about them as different apps, just so I don't find myself lost in a neverending side-project.
A subchat(similar to a subreddit)-based chat app:
An app where people can join/create sub-chats where they can talk about things they are interested in. In my country, this is normally done by facebook groups making a whatsapp group and posting the link in the group, but I think that an integrated app would let people find/create/join groups more easily. I'm not sure if this should work with nicknames or real names and phone numbers, but let's save that for the future.
A slack clone:
Yes, you read it right. I want to make a slack clone. You see, in my country, enterprise communications are shitty as hell: everything consists in emails and informal whatsapp groups. Slack solves all these problems, but nobody even knows what it is over here. I think a more localized solution would be perfect to fill this void, and it would be cool to make it myself (with a team of friends of course), and hopefully profit out of it.
A labour chat-app marketplace:
This is a big hybrid I'd like to make based on the premise of contracting services on a reliable manner and paying through the app. "Are you in need of a plumber, but don't know where to find a reliable one? Maybe you want a new look on your wall, but don't want to paint it yourself? Don't worry, we got you covered. In <Insert app name> you can find a professional perfect to suit your needs. Payment? It's just a tap away!". I guess you get the idea. I think wechat made something like this, I wonder how it worked out.
* Why so many chat apps? Well... I want to learn Erlang, it is something close to mythical to me, and it's perfect for the backend of a comms app. So I want to learn it and put it in practice in any of these ideas.*
Videogames:
Flat-land arena: A top down arena game based on the book "flat land". Different symmetrical shapes will fight on a 2d plane of existence, having different rotating and moving speeds, and attack mechanics. For example, the triangle could have a "lance" on the front, making it agressive but leaving the rest defenseless. The field of view will be small, but there'll be a 2d POV all around the screen, which will consist on a line that fills with the colors of surrounding objects, scaling from dark colors to lighter colors to give a sense of distance.
This read could help understand the concept better:
http://eldritchpress.org/eaa/...
A 2D darksouls-like class based adventure: I've thought very little about this, but it's a project I'm considering to build with my brothers. I hope we can make it.
Imposible/distant future projects:
History-reading AI: History is best teached when you start from a linguistic approach. That is, you first teach both the disciplinar vocabulary and the propper keywords, and from that you build on causality's logic. It would be cool to make an AI recognize keywords and disciplinary vocabulary to make sense of historical texts and maybe reformat them into another text/platform/database. (this is very close to the next idea)
Extensive Historical DB: A database containing the most historical phenomena posible, which is crazy, I know. It would be a neverending iterative software in which, through historical documents, it would store historical process, events, dates, figures, etc. All this would then be presented in a webapp in which you could query historical data and it would return it in a wikipedia like manner, but much more concize and prioritized, with links to documents about the data requested. This could be automated to an extent by History-reading AI.
I'm out of characters, but this was fun. Plus, I don't want this to be any more cringy than it already is.12 -
Not a job, but an internship. It was a startup and the owner was very keenly involved with the development, to the extent that he took daily reports of what was achieved through the day, what was done, what bugs were fixed, what functionality added. Everything we did was supposed to be showed to him to justify that he wasn't wasting the (sub-par) compensation he was offering. I hated the feeling of someone breathing down my neck, judging me by the amount of code I wrote that day (I was team lead). It was all well and fine till the frontend was under development, but then we moved to backend developement. And the thing with backend is, you can't see shit. So, there really wasn't anything to point-and-show every day, except for long PHP scripts that didn't make sense to him. It came to the point that he once said "the work pace had dropped significantly and we weren't moving fast enough". This was when we were actually 5 days ahead of schedule! I literally wanted to stand up and say to him that if he wanted to get it done faster, he should look for someone else. The only thing that held me back was my University's grading system that made it compulsory for students to complete one internship for credits. Glad to be out of that craphole...3
-
I hacked a browser game a few years ago for fun and the exploit I found and used was basically this:
<$php
$f = $_GET['f'];
$p = $_GET['p'];
$f($p);
So it was possible to pass a function and it's parameter in the URL to the server. The author used this to include() sub pages. I to highlight_file()s.2 -
More than a year ago, frustrated by a sub par experience of linux on my laptop (drivers), I planned to buy a MacBook to get a stable Unix platform.
But it was too expensive.
I convinced myself that it will pay for itself.
And today my app, i created on this laptop, has finally paid for it. :D
I am very happy.7 -
Short inspirational story :
Hundreds of mail sent
Sub : application for job
After 3 years
He got mails
Sub : application for job2 -
So recently I did a lot of research into the internals of Computers and CPUs.
And i'd like to share a result of mine.
First of all, take some time to look at the code down below. You see two assembler codes and two command lines.
The Assembler code is designed to test how the instructions "enter" and "leave" compare to manually doing what they are shortened to.
Enter and leave create a new Stackframe: this means, that they create a new temporary stack. The stack is where local variables are put to by the compiler. On the right side, you can see how I create my own stack by using
push rbp
mov rbp, rsp
sub rsp, 0
(I won't get into details behind why that works).
Okay. Why is this even relevant?
Well: there is the assumption that enter and leave are very slow. This is due to raw numbers:
In some paper I saw ( I couldn't find the link, i'm sorry), enter was said to use up 12 CPU cycles, while the manual stacking would require 3 (push + mov + sub => 1 + 1 + 1).
When I compile an empty function, I get pretty much what you'd expect just from the raw numbers of CPU cycles.
HOWEVER, then I add the dummy code in the middle:
mov eax, 123
add eax, 123543
mov ebx, 234
div ebx
and magically - both sides have the same result.
Why????
For one thing, there is CPU prefetching. This is the CPU loading in ram before its done executing the current instruction (this is how anti-debugger code works, btw. Might make another rant on that). Then there is the fact that the CPU usually starts work on the next instruction while the current instruction is processing IFF the register currently involved isnt involved in the next instruction (that would cause a lot of synchronisation problems). Now notice, that the CPU can't do any of that when manually entering and leaving. It can only start doing the mov eax, 1234 while performing the sub rsp, 0.
----------------
NOW: notice that the code on the right didn't take any precautions like making sure that the stack is big enough. If you sub too much stack at once, the stack will be exhausted, thats what we call a stack overflow. enter implements checks for that, and emits an interrupt if there is a SO (take this with a grain of salt, I couldn't find a resource backing this up). There are another type of checks I don't fully get (stack level checks) so I'd rather not make a fool of myself by writing about them.
Because of all those reasons I think that compilers should start using enter and leave again.
========
This post showed very well that bare numbers can often mislead.21 -
Hello world again, long time no rant.
Renewed interest in devRant after some of recent goings on:.
“Let’s define a new language”
“Why? There are lots of great languages out there”
“It will be domain specific and more user friendly”
“Why, there are plenty of other options with support and pedigree”
“We will properly define a grammar in Backus-Naur form, it’ll be great, maybe we can sub it out”
“Why, literally everything we do is already doable with the current tools, this will certainly be more trouble than it’s worth”
“They already gave us the money”
All aboard! Fun times ahead for the next decade...8 -
Thank goodness I put on my adulting cap and had a talk with my project manager today. He's such a kind and understanding person, truly underestimated qualities.
I'm basically a sub-contractor; a freelance consultant who get jobs from another company (ie my PM) and I messed up the estimate for this project we're working on and I did so in a rather spectacular manner.
60-80 estimated hours are now in the 300:s... I've missed more deadlines in this project alone than I have done in all my career (+10 years) combined. It's bad. It's a complete clusterfuck.
Problem is because of this never-ending project I haven't been able to work on things I can debit since May and I didn't have those margins. I'm fucked financially and I've been so stressed out about that I've literally been loosing sleep over it, found myself ugly-crying in the middle of the night more than once, worrying about how the fuck I'm gonna get on.
In my mind it was a real thing that they wouldn't want to keep working with me after this. Even though the failures in this project isn't _only_ on me, I'm not one to make excuses for myself and I would completely understand if that had been the outcome.
But it wasn't.
Instead he just said he was sorry he wouldn't be able to get all my hours billed by the client (of course not; we've left an estimate and by at least Swedish business law you can't deviate from those simply because you made an incorrect estimation).
But he has no intentions of letting me go as a consultant and assured me there will be other jobs (planned since before this whole ordeal). He's even going to try and get some hours in for me in other projects, small things here and there so I can get some billable hours quickly to help me out.
He knows me and he knows this isn't who I am as a professional. I'm so relieved I could god damn cry.3 -
Long but hilarious:
I was deeply concerned about how we have a single, non-paginated call to a backend service, returning hundreds of entries, which has to be enriched with constant data fetched from our db for each entry. FOR EACH ENTRY. AND FOR EACH REQUEST.
I voiced my concerns to my PM, who called me a "rage prophet" for it.
As expected, the call took 20-something seconds to complete.
Ten minutes before the CEO comes over to have a look, another dev changes his loosely-related service, and the entire super-heavy, sprawling abyss of enrichment pipeline returns in sub-second timing!!!
CEO: guys, this is too fast. You have to slow it down a bit. It doesn't seem reliable that we're able to get all this data immediately.
PM: you see, rage prophet, it all worked out in the end
Me: #$@%$&!!!!!2 -
!rant
TLDR; Lost passion after a few years, wasted a year, went on vacation without really any technology, found my passion and am excited as hell for 2019.
After programming for nearly 5 years, I’ve hit the point of not wanting to program anymore. I’ve burnt myself out, and haven’t had a vacation in 8+ years so we’ve finally decided to take one. I’m not going to say it’s a full blown vacation, but a semi-vacation since it’s with my parents also so I do have to do a few things I’d prefer not to such as meeting relatives.
I didn’t have the motivation to work on any new projects, finish any projects I actually enjoyed, I just did a few side projects for friends that took me anywhere from 5 minutes to 30 minutes every few weeks. In general this year has been garbage in development terms, I’ve lost passion. It felt like a chore, I didn’t find the entertainment I once did.
I’ve been away from technology for about 2 weeks now, and have less than a week left before I fly back and I’m excited as hell. During this break away from technology (with the exception of browsing devRant once in a while), has me excited to work on many projects and actually start learning and improving my skills. I’ve actually gained the motivation to work on 2 projects that have been planned for nearly 2 years now, I’ve noted down ideas for them, made diagrams, etc, just never had the passion to develop them. 2019 is going to be one hell of a year, since I get back almost at the end of November, and December I have a few business meetings and University exams that I have to prepare for. Excited to see these projects through, one is going to be for the hell of it, just been a passion project I’ve wanted to do for years now. The other project is actually a project for one of my sub-companies that hasn’t officially released since I didn’t have the passion to work on it. (Not going to go into full detail yet about the companies/projects, going to save that for the future)
Alongside that, I’m excited since my main company that is totally unrelated to technology, is set to do some massive moves during 2019 also. Looking forward to that, and being able to launch my dream company (the sub-company I mentioned before).
Time for sleep now, goodnight! (Wrote this after a few drinks and in the middle of the night, hopefully it’s not full blown garbage)2 -
Oh look, you aren't doing shit. You have 2 weeks worth of testing to complete and you are checking out stories on the Yahoo front page.
Useless. Completely incompetent. Idiot. Imbecile. Moron. Stupid. How dense? Let me count the ways...
Do you know anything?! You use big words to sound important and look like you know your shit. In reality, you have no clue!
How you have managed to capture this job is baffling to me. It shows there is much work to be done to filter out toxic, incompetent people like you. Otherwise, the industry will be plagued with a terrible fear of sub-par employees.
Your lack of common decency for the office space is appalling. Your attitude and "can do no wrong" personality is disgusting. And the cherry on top? It is impossible for you to admit mistakes and take ownership for your actions. You can be inexperienced, stressed out, or even make a mistake once in a while. Yet, the moment you DO fuck up and act like nothing was your fault, that most of it was MY fault, or the TEST environment's fault, or the other team's fault, a lack of resources, a lack of time, ANYTHING but your own damn incompetence, you are dead to me.
You are, by far, the worst co-worker I have ever had.7 -
Agreed to work on a mobile app project on Android. No contract signed, just was given what the client wanted from this sub-contractor.
No specific details given, had to figure out a lot of the minute details of how they wanted the application to behave. We would deliver a working part of the product before getting a % of the pay. We charged $30 /hr on a mobile app, low as heck.
It was me and another developer, neither of us had any contact with the clients to ask questions, all questions had to go through the sub-contractor. Many arguments and months later we find that what they're asking for only a phone manufacturer can do. Sub-contractor blames us for not doing our "research" when she/he was the only one able to contact the client to get requirements.
Sub-contractor wanted us to refund money. We declined but offered solutions.
Sub-contractor goes to client and manages to get approval of what we were able to do. Finally a light in this dark tunnel spanning 7 months.
On the day of releasing to the client the finished app, we get notification from Google that the app won't be published due to a recent policy change that came into effect in January. WTF.
Go back to sub-contractor, tell the bad news. Once again he/she says it's our fault for not doing the "research". Yeah as if we knew what Google is going to change. Asks for paid money back. We refuse.
We lastly suggested that we remove what Google wants removed on the app and release it that way.
We had billed 300 hours cumulative divided among 3 people (including the sub-contractor who didn't appear to do anything), and just 2 months of development. It's been 7 months and we were only paid for 240 hours, the rest was unpaid, and the sub-contractor still wants to make us give it back. /rant13 -
>Gets a new CPU for desktop (yay, went from R5 1600 to R5 3600X)
>Spends half a day flashing new MB BIOS (Needed to flash individual major versions in order, couldn't just go 1.10 to 6.40)
>Finally finishes preparations and goes to replace the CPU
>Cleans the old one and packages it to give it to a friend
>Has issues inserting the new one as the orientation arrow on the motherboard was very hard to make out
>Spends 30 minutes applying thermal paste, worrying about optimal spread
>Forgets which side the CPU fan goes on
>Finally boots back up... CPU fan is suddenly loud AF under load, but eh, temps under stress are sub-60, so, good
~~Next day~~
>Loud CPU fan is too annoying, opens the case again
>CPU fan is on backwards
Ugh
>Takes the fan off, turns it around and fastens again, puts PC back together and boots
>Is quiet again, nice
>Goes to work on the PC
>2 hours later randomly checks temps because no fan noise is weird
>CPU at 75dC, crap
>Opens the (live) PC, CPU fan is not spinning
>Has put the header on one pin to a side
>Unplugs and replugs it correctly
>Fan suddenly starts spinning very fast and cuts my finger
>Finally closes the case once more. All issues resolved
...Its situations like these that make me wonder... What would happen it I had to work with servers in person, physically lol8 -
So ok here it is, as asked in the comments.
Setting: customer (huge electronics chain) wants a huge migration from custom software to SAP erp, hybris commere for b2b and ... azure cloud
Timeframe: ~10 months….
My colleague and me had the glorious task to make the evaluation result of the B2B approval process (like you can only buy up till € 1000, then someone has to approve) available in the cart view, not just the end of the checkout. Well I though, easy, we have the results, just put them in the cart … hmm :-\
The whole thing is that the the storefront - called accelerator (although it should rather be called decelerator) is a 10-year old (looking) buggy interface, that promises to the customers, that it solves all their problems and just needs some minor customization. Fact is, it’s an abomination, which makes us spend 2 months in every project to „ripp it apart“ and fix/repair/rebuild major functionality (which changes every 6 months because of „updates“.
After a week of reading the scarce (aka non-existing) docs and decompiling and debugging hybris code, we found out (besides dozends of bugs) that this is not going to be easy. The domain model is fucked up - both CartModel and OrderModel extend AbstractOrderModel. Though we only need functionality that is in the AbstractOrderModel, the hybris guys decided (for an unknown reason) to use OrderModel in every single fucking method (about 30 nested calls ….). So what shall we do, we don’t have an order yet, only a cart. Fuck lets fake an order, push it through use the results and dismiss the order … good idea!? BAD IDEA (don’t ask …). So after a week or two we changed our strategy: create duplicate interface for nearly all (spring) services with changed method signatures that override the hybris beans and allow to use CartModels (which is possible, because within the super methods, they actually „cast" it to AbstractOrderModel *facepalm*).
After about 2 months (2 people full time) we have a working „prototype“. It works with the default-sample-accelerator data. Unfortunately the customer wanted to have it’s own dateset in the system (what a shock). Well you guess it … everything collapsed. The way the customer wanted to "have it working“ was just incompatible with the way hybris wants it (yeah yeah SAP, hybris is sooo customizable …). Well we basically had to rewrite everything again.
Just in case your wondering … the requirements were clear in the beginning (stick to the standard! [configuration/functinonality]). Well, then the customer found out that this is shit … and well …
So some months later, next big thing. I was appointed technical sublead (is that a word)/sub pm for the topics‚delivery service‘ (cart, delivery time calculation, u name it) and customerregistration - a reward for my great work with the b2b approval process???
Customer's office: 20+ people, mostly SAP related, a few c# guys, and drumrole .... the main (external) overall superhero ‚im the greates and ur shit‘ architect.
Aberage age 45+, me - the ‚hybris guy’ (he really just called me that all the time), age 32.
He powerpoints his „ tables" and other weird out of this world stuff on the wall, talks and talks. Everyone is in awe (or fear?). Everything he says is just bullshit and I see it in the eyes of the others. Finally the hybris guy interrups him, as he explains the overall architecture (which is just wrong) and points out how it should be (according to my docs which very more up to date. From now on he didn't just "not like" me anymore. (good first day)
I remember the looks of the other guys - they were releaved that someone pointed that out - saved the weeks of useless work ...
Instead of talking the customer's tongue he just spoke gibberish SAP … arg (common in SAP land as I had to learn the hard way).
Outcome of about (useless) 5 meetings later: we are going to blow out data from informatica to sap to azure to datahub to hybris ... hmpf needless to say its fucking super slow.
But who cares, I‘ll get my own rest endpoint that‘ll do all I need.
First try: error 500, 2. try: 20 seconds later, error message in html, content type json, a few days later the c# guy manages to deliver a kinda working still slow service, only the results are wrong, customer blames the hybris team, hmm we r just using their fucking results ...
The sap guys (customer service) just don't seem to be able to activate/configure the OOTB odata service, so I was told)
Several email rounds, meetings later, about 2 months, still no working hybris integration (all my emails with detailed checklists for every participent and deadlines were unanswered/ignored or answered with unrelated stuff). Customer pissed at us (god knows why, I tried, I really did!). So I decide to fly up there to handle it all by myself16 -
Worst documentation I've seen?
Our "Coding Standards" 20+ page document. The team who put it together got so detailed, there wasn't much 'wiggle room' for natural deviations in a developer's coding style. For example, a section devoted to no abbreviations. So if you had a variable 'invoiceId', they complained you violated 'standards', even though 'invoiceId' matched a field name in a database table. Using Dapper or another ORM that relied on the 1:1 name match? Nope, you were still forced to inject your own mappers so the code didn't violate standards.
As you can probably guess, such a long, detailed document would have contradictions. I pointed out one of the contradictions. Example:
Page 5: Section B, sub-section B-5, paragraph 3 : "To minimize network traffic, when querying the database, request all the data necessary for the application."
Page 8: Section K, sub-section K-2, paragraph 4 : "For maximum performance, when querying the database, request only the most minimum amount of data necessary for the application ."
In a review I pointed out this contradiction (there were several more)
Me: "If we satisfy A, one could say the code is in violation of B. Which is it?"
<Pointy-Hair-Boss throws his pencil on the table>
PHB: "WHAT IS YOUR PROBLEM WITH STANDARDS! It couldn't be more clear! We are a company of standards because without standards <blah blah..straw man argument..blah blah>"
<deciding not to die on that hill, I move on>
Me: "On page 12, paragraph 9 code is in violation if a method has more than 3 parameters. That seems a little restrictive given our interaction with 3rd party products."
PHB: "There you go again. As stated in the document, ALL code used by the company will comply to our standards. What part of 'ALL' do you not understand?"
Was he bluffing about requiring 3rd party vendors complying with our standards? Heck no. That's a story for another day.10 -
I've got this customer who for some fucking reason won't change their DNS to point to our new servers, but wants to fucking stay on that old piece of crap, where we have to ask our sub-provider to generate a CSR to send to our customer to use to sign a certificate to send to us to send to our sub-provider. Because yeah, that's so much fucking easier than just pointing your domain to our new system, and get SSL set up automatically. For fucks sakes! And also, your certificate expires tomorrow, and since our idiot sub-provider hasn't responded to my email about CSR in a week, you basically have no option. So get that thumb out your butt and just switch the DNS!
-
For fucks sake, Amazon Prime has also decided that they are adding ads to their *paid subscription*. Because I guess paying them fucking monthly is not enough for them greedy fucks. It's not like they were loosing money either, the service had a slow but exponential growth ever since 2014 (slow in the sense that it was only hundreds of millions at first, but luckily it was tens of billions by 2022, poor amazon eh?) ... first fucking Netflix does this, and now these retarded fucks follow suit like little retarded ducklings with dollar signs for eyes. You can bet your fucking hats that the other services will jump on the adWagon soon too...
"you will own nothing and be happy".. yeah fuck you, you fucks. As if owning nothing wasn't bad enough, now that nothing comes with fucking ads on top FOR THE SAME FUCKING PRICE?!... And they have the audacity to fucking ask for *more* monthly money to get rid of the ads they oh so graciously provided?!
I don't even use fucking amazon prime, but what the actual fuck. This is *one* of the reasons I canceled my netflix sub. I'm not going to fucking support this behavior even if it doesn't affect me. But I guess some people keep showing netflix dicks into their gaping asses because they sure don't seem to be taking this bullshit back... And I assume even more people will keep sucking amazon dicks as if this was a-ok behavior.
god, shit like this really makes me angry...3 -
<rant>
I fucking HATE the Arduino environment right now.
First of all: you can't fucking put your project files in a sub folder to the main file. I can't write #include "src/motor.hpp" because it doesn't fucking know what that means.
Turns out you have to put all your header files in the fucking library folder common for all Arduino projects!
Secondly, you can't call your cpp headers hpp, they HAVE to be called h, or the Arduino environment throws a fit and begins whining about being unable to find the fucking files.
Not just that! You can't reference other Arduino libraries from within your library because the environment doesn't know what that means either.
To get around that you need to fucking include the library in your main file, AND THEN you can include it in the library file that uses it. After all, it should be the programmer's job to soon feed a so called IDE, right?
I'M SO FUCKING DONE WITH THIS SHIT! 😤
I'm ready to either program the Arduino directly with an AVR programmer or even port the entire project to the raspberry pi where I have a proper fucking Linux environment with a proper fucking directory structure so I can code proper fucking C++.
Hell I'm even fucking willing to spend all weekend porting all the code myself if necessary.
It's not reasonable that correct fucking C++ code is invalidated because I called the files something "wrong" and put them in the "wrong" directory.
</rant>
"user friendly project board" my ass12 -
Turned 31 three days ago.
My **dad** was convinced that I was turning 30 instead lmao.
I had to do the math for him, he was questioning the fabric of reality for a second. Like baba 2025 sub 1994 eq 31, ok.
so anyway age--;14 -
A week ago, the team that hired me asked me to fix the s**t they made when they hosted around 30 WordPress sites in a single Bluehost shared server. Several of those were multisite installations. The server eventually gone down because of the load. And the most disturbing part was they were taking money from some of their clients to host the sites, in stead of not having a reseller licence. The server was going down quite frequently so I suggested moving some sites to another host or another server. They asked me to do it, but when I asked for the permission to edit the nameservers, they asked me to make a subdomain and point it to the new server. Which was kind of impossible because the new host was already having some subdomains and it's not easy to work with sub-sub domains. So, on an open statement they said that I am unprofessional and not fit for work. Before that they disturbed me and bursted on me when I was off working hours. -_-8
-
More like a sub company/department inside a company: Android.
I still use it as my main driver, but every time I try to get back into development with it(did it professionally for 2 years nearing on 3 and was a lead Android dev, mind you not necessarily by merit....) I end up hating everything about it.
The tooling is meh, the API is hideous and even with the addition of Kotlin, which I do find a nicer language over Java I still dislike it. The ammount of shit needed to make something as simple as store data, manage fragments, integrate with the NDK, make JSON API calls or even shake motions is just ludicrous and counter intuitive. I can see why people would hate Java based on Android, a language that I generally love and defend.
I firmly believe that people extend frameworks or tooling for 2 reasons only:
1 the stack is so awesome that you just want to create packages and libraries to extend the functionality of a powerful environment, like gems for Ruby, python packages, Node packages, php composer, nuget etc
2 the stack is so fucking hideous that people need to fix shit: the entire android square utility framework, butterknife, flutter, react native, codenameone, etc etc
The case with Android is the second. I have not met a professional Android developer that completely likes everything about Android, but will seldom find people that HATE other frameworks or environments.
Android it is for me. Still my daily driver and I love every Android phone I have ever owned. It just makes me feel lots of more compassion for fellow Android devs.4 -
RPi 4 is hard to get your hands on it seems.
Really debating buying it though, 4 GB is enticing, but I just don't see a place for it. I have a surplus of machines which are much more powerful and accessible (Display ports - not mini HDMI)
And let's not forget the sub-2GHz clock speed. My desktop goes to 5, and my server isn't far behind. And my laptop isn't far behind that. And my other laptop isn't far behind that. But this new Pi would be far far behind that.
Not to mention the ARM architecture. There have been leaps and bounds made since the Pi first came out in terms of support for ARM (Most certainly fueled by the Android craze) but it still isn't x64, is it?
If I were 13 again and I didn't have all of the toys that I do now, I would be elated at the launch of the Pi 4. But as it stands, I don't see a use for it. Maybe nostalgia.19 -
I've been working as a programmer for 16 years now, and would say I'm not inexperienced, so it's frustrating to feel like a noob after months at a new company when they have poor internal documentation, hundreds of repos with default readme, pretty much no use of docker, sub standard equipment and use their own weird software for deployment. It's hard to meet expectations under these conditions.4
-
Most successful? Well, this one kinda is...
So I just started working at the company and my manager has a project for me. There are almost no requirements except:
- I want a wireless device that I can put in a box
- I want to be able to know where that device is with enough accuracy to be able to determine in which box the device was put in if multiple boxes were standing together
So, I had to make a real time localization system. RTLS.
A solo project.
Ok, first a lot of experiments. What will the localization technique be? Which radio are we going to use?
How will the communication be structured?
After about two months I had tested a lot, but hadn't found THE solution. So I convinced my manager to try out UWB radio with Time Difference Of Arrival as localization technique. This couldn't be thrown together quickly because it needed more setup.
Two months later I had a working proof of concept. It had a lot of problems because we needed to distribute a clock signal because the radio listeners needed to be sub-nanosecond synchronous to achieve the accuracy my manager wanted. That clock signal wasn't great we later found out.
The results were good enough to continue to work on a prototype.
This time all wired communication would be over ethernet and we'd use PTP to synchronize the time.
Lockdown started.
There was a lot of trouble with getting the radio chip to work on the prototype, ethernet was tricky and the PTP turned out to be not accurate enough. A lot of dev work went into getting everything right.
A year and 5 hardware revisions later I had something that worked pretty well!
All time synchronization was done hybridly on the anchors and server where the best path to the time master was dynamically found.
Everything was synchronized to the subnanosecond. In my bedroom where I had my test setup I achieved an accuracy of about 30cm in 3d. This was awesome!
It was time to order the actual prototype and start testing it for real in one of the factory halls.
The order was made for 40 anchors and an appointment was made for the installation in the hall.
Suddenly my manager is fired.
Oh...
Ehh... That sucks. Well, let's just continue.
The hardware arrives and I prepare everything. Everything is ready and I'm pretty nervous. I've put all my expertise in this project. This is gonna make my career at this company.
Two weeks before the installation was to take place, not even a month after my manager was fired, I hear that my project was shelved.
...
...
Fuck
"We're not prioritizing this project right now" they said.
...
It would've been so great! And they took it away.
Including my salary and hardware dev cost, this project so far has cost them over €120k and they just shelved it.
I was put on other projects and they did try to find me something that suited me.
But I felt so betrayed and the projects we're not to my liking, so after another 2-3 months I quit and went to my current job.
It would've so nice and they ruined it.
Everything was made with Rust. Tags, anchors, RTLS server, web server & web frontend.
So yeah, sorry for the rambling.5 -
Add your fucking requirements.txt files or atleast have a decent fucking readme. I have had to implement many official repos for AI ML papers now and most of them are shit with a load of bugs in them, cant you implement them properly while you are at it?
Also would like to add most of the sota results arent honest maybe famous ones are but the research community is full of shit really. All of that cant be changed but atleast add readmes and requirements ffs.
I have to spend days just to implement your sub par result providing fuckery.
I’d rather just code it all myself sometimes1 -
I have just started working in this industry, and so annoyed by the fact that managers are insensitive to the efforts put in by the developers.
1. They ask for estimates, and sometimes consider it to be the hard line for everything and then they make you feel guilty if you are not able to live up to them.
-- I am not asking to be always lenient but they need to understand that this is problem solving and one might not be able to gage the problem at first sight. A problem might have several sub problems or a solution to one issue might raise compatibility issues with other which were tough to foresee .
2. Why do they always want an instant response to their email or query, a developer being online isn't just there to answer your damn obvious and sometimes stupid questions which can be understood just be glancing at the logs once.
-- How annoying would it be if the manager himself is being poked every other minute for trivial things. Does he have the same patience with his/her developers?
3. In tough times the manager easily delegates the responsibility to the developer and instead of standing by his/her side, interrogates them as if we have done some crime.
-- Wasn't this approved by you. Weren't you the one who had these stupid demands before and didn't let me do things the correct or optimized way. I am not saying I am always right, but you can be atleast open for feedback or discussion.
Why are you the first to take credit for the success and yet hold us responsible for any mishaps.
It's sad to see that some of these people have been tech developers.
I can go on ranting for many more things.
I am not saying all those people out there are like this. But trust me many are.
Note: I am not seasoned as you guys out there. I may even be biased by my own experiences. But this is in complete contrast to what I was expecting when I graduated from college and was excited to finally learn by working.1 -
Migrating to another sub domain for the 4th time.
First they say 'oh this sub domain is just for demo and you can freely test your code on it .
Few days later they say the same thing to another team and then :
- 'dude ! Is the website down because of your code ?'
- 'The code is not complete yet ! I've been adding some features! '
-'Is it possible that you migrate to another demo sub domain? Content production team wants to upload more content on that sub domain '
-'Sure ! Why not :('2 -
In the past: "Alright, have the day off, so can do some serious work (work on my game project). Let me just check my mail first... And a cpl of sub-reddits... And see if there are any updates for Unit3D, or any interesting forum posts, or new assets on asset store that look nice... And check some online newspapers just to see if anything is going on... And check if anything new has been posted on slashdot since I last checked 5 minutes ago (nope)... And maybe see if there's any updates to Sublime Text or new useful packages that can help improve workflow... Ooh came across article on how to improve workflow... Hm someone mentioned a new task-management system in comments, gotta check that out... I'll just sign up for a demo-account and... Hm but what if there are any better ones? Better google for comparisons. Wait, isn't there a new episode of Silicon Valley today? Gotta see that first, no time tmr. Hmm also new episode of Archer, and American Gods. Better get watching these out of the way first, or I can't concentrate... Ah, wait, it's dinner time, no point starting anything until after that."
Now: All of the above, plus "I'll just check devRant real quick before I... hmm... interesting rant... *scrolls and reads rants and comments for 3 hours*"
How am I supposed to get any work done? :_(3 -
Wooo hoo! I got suspended from reddit!
Never happened before to me (not site wide at least). Apparently for 'report abuse' from some report I must have made like a month ago?
Some user posting in a sub apparently had a theory that a bunch of other subs and other users were in on some conspiracy against them, supposedly sending death threats and 'spreading lies'.... kinda hard to imagine that some subs with thousands (some with millions) of users are all in on this wonky conspiracy against them....
So anyway I report his nasty little post to the local moderators of that sub because it usually is a chill sub and his post is full of insults and so on.
Turns out... that guy is also a mod of the sub I reported him to.
A month later I get suspended from reddit for 'report abuse'... of course I can't see the 'report abuse' (can't see reports...) so how do you even speak intelligently / appeal?
Moderation at scale is hard, but kinda crazy to think someone employed at reddit decided "yeah this crazy guy is right" and does their bidding ...
I used to moderate a busy gaming forum, and sniffing out the crazy folks was part of the job when accepting new moderators. Wasn't that hard...
Granted no big loss here, just a few days.9 -
So, rant!
So, global-huge-paradigm-shift project moving forward. Lots and lots of architects of multiple sites world-wide, stakeholders and business peeps and sub-corp manager and head-of-fucking-everything-of-multi-billion-dollar-CEO involved with different amounts of energy and passion.
Huge amount of money involved. Not only for the multi-year project endeavour but also in licensing costs for the years and years to come.
It's a big deal for the corporation.
And it's clowns everywhere. Leadership, project leads, technical project leads, architects. Am I one of them? I don't think so because everyone is mad at me. Since I cause trouble. Since I tend to say that I don't give a FUCK about the product being a Gartner Visionary player if you can't test the fucker properly...
Last week I attended a workshop in USA (I live in Europe) regarding this change which left me with a bad taste in my mouth. I am so far away from my comfort zone.
To these people (me?) get payed for this work? Is this really relevant? Why the FUCK did I need to go to a different continent? "The "Core team" need to be on site". Yeah, right. Fuck you Mr Project Leader, I can tell you are far, far away of being on-top of this thing...
Pointless.
It's pointless.
But I guess this is why you get payed.
Work.
Tomorrow is Tuesday and I think I will raise my hand yet again and explain to all I meet that I see HUGE risks with this project as it goes along right now. We kind of make things and that has to, you know, work. NOT making things for 1 hour is... well, that is really, really bad.
I give this project ten percent chance of succeeding above the set thresholds for all different areas/functionality. (I am sure the fuckers will alter the thresholds to show off a "successful project". Fuckers.2 -
In my previous work, my boss my horrendous. He didn't know anything about programming, databases or scripts. He often had ridiculous requests that we (two developers trainee) had to refrain.
But he wasn't the one who pissed me off the most.
My colleague, who was supposed to have had the same cursus as me, was as skilled as someone without any knowledge. He spent one year to make a database for a new site, with one table per product type and sub-type, per company and per slider. Today there are 93 tables in a database made for a presentation website. When I proposed to see his work, he refused, saying he knew what he was doing.
Now he's still there, I switched job, but I know he'll get the same diploma as me for this shitty pile of fuming crap, and it pisses me off beyond imagination. -
NO MICROSOFT FOR FUCK SAKE NO!
I have a fucking 15inch screen and that left side menu is eating 25% of it! IF you gonna throw in a new "Creative" design, make the damn menu re sizable, NO I DO NOT WANT TO HIDE THE LABELS AND MEMORIZE YOUR STUPID ICONS!
At least do what Gitlab did, a nice small menu that DOES NOT EAT HALF THE DAMN SCREEN!
Oh, did I say anything about sub menu hell that pops up whenever your mouse hover over any of the items on the left? Yaaa... that goes to a brand new rant!19 -
Welp, this made my night and sorta ruined my night at the same time.
He decided to work on a new gaming community but has limited programming knowledge, but has enough to patch and repair minor issues. He's waiting for an old friend of his to come back to start helping him again, so this leads to me. He needed a custom backend made for his server, which required pulling data from an SQL/API and syncing with the server, and he was falling behind pace and asked for my help. He's a good friend that I've known for a while, and I knew it wouldn't take to long to create this, so I decided to help him. Which lead to an interesting find, and sorta made my night.
It wasn't really difficult, got it done within an hour, took some time to test and fix any bugs with his SQL database. But this is where it get's interesting, at least for me. He had roughly a few hundred people that did beta testing of the server, anyways, once the new backend was hooked in and working, I realized that the other developer he works with had created a 'custom' script to make sure there are no leaks of the database. Well, that 'custom' script actually begins wiping rows/tables (Depends on the sub-table, some get wiped row by row, some just get completely dropped), I just couldn't comprehend what had happened, as rows/tables just slowly started disappearing. It took me a while of checking, before checking his SQL query logs (At least the custom script did that properly and logged every query), to realize it just basically wiped the database.
Welp, after that, it began to restrict the API I was using, and due to this it identified the server as foreign access (Since it wasn't using the same key as his plugin, even though I had an API key created just so it could only access ranks and such, to prevent abuse) and begin responding not with denied, but with a lovely "Fuck you hacker!" This really made my night, I don't know why, but I was genuinely laughing pretty hard at this response.
God, I love his developer. Luckily, I had created a backup earlier, so I patched it and just worked around the plugin/API to get it working. (Hopefully, it's not a clusterfuck to read, writing this at 2 am with less than an hour of sleep, bedtime! Goodnight everyone.)7 -
Colleague asked me to look at his eCommerce search filtering system as the customer was complaining it was slow taking 5-6 seconds to find results.
Delving into the code deeper, I discovered he was querying the results, sticking them in an array and then sub querying the results looking at all the combinations.
On top of that each sub query looked at the database fields using "DESCRIBE" to then search them each time it found a pair!
The total query count for one page search was 14,512!!!
Why oh Why? One SQL query could of done all that in one go.
I look at other code bits he's done and he's very good in other areas. I just don't get how sometimes a good developer can make such a weird decision? It's almost as if he wanted to make it as complex as possible.6 -
Best way to avoid procrastination : We tend to avoid commitments or to do large tasks as even visualizing them seems tiring and the longer it takes, the vulnerable we are to distractions
So I use this simple trick
I break my task into numerous sub tasks. For example if I need to finish a feature before day end, I would first list down all the cases I can think of in order and write them down using actual pen and paper.
I then start implementing them step by step.
I mark them checked once done.
It gives me a sense of achievement as I see those checks besides the sub tasks and I can also take breaks between steps.
So all it takes is just first five minutes of planning.
I had to do the above procedure, for this post as well.
Hope it helps fellow developers
:) -
I can't tell if I'm being a baby - but I asked for a specific sub-domain for a reason / and they gave me a domain that looks too similar to local and live - just like I was trying to avoid... : /3
-
ideal sprint fallacy.
total days 10 , total hours(excluding breaks ) 8 hrs per day= 80 hrs per dev
code freeze day = day 8, testing+ fixing days : 8,9,10. release day : day 10
so ideal dev time = 7days/56 hr
meetings= - 1hr per day => 49 hrs per dev
- 1 day for planning i.e d1 . so dev time left . 6 days 42 hrs.
-----------
all good planning. now here comes the messups
1. last release took some time. so planning could not happen on d1. all devs are waiting. . devtime = 5 days 35 hrs.
2. during planning:
mgr: hey devx what's the status on task 1?
d: i integrated mock apis. if server has made the apis, i will test them .
mgr : server says the apis are done. whats your guestimate for the task completion?
d : max 1-2 hrs?
m : cool. i assign you 4 hrs for this. now what about task 2?
d : task told to me is done and working . however sub mgr mentioned that a new screen will be added. so that will take time
m : no we probably won't be taking the screen. what's your giestimate?
d : a few more testing on existing features. maybe 1-2 hrs ?
m: cool
another 4 hrs for u. what about task 3?
d : <same story>
m : cool. another 4 hrs for u. so a total of 12 hrs out of 35 hrs? you must be relaxed this sprint.
d : yeah i guess.
m cool.
-------
timelines.
d1: wasted i previous sprint
d2 : sprint planning
d3 : 3+ hrs of meetings, apis for task 1 weren't available sub manager randomly decided that yes we can add another screen but didn't discussed. updates on all 3 tasks : no change in status
d4 : same story. dev apis starts failing so testing comes to halt.
d5 : apis for task1 available . task 3 got additional improvement points from mgr out of random. some prod issue happens which takes 4+ hrs. update on tasks : some more work done on task 3, task 1 and 2 remains same.
d6 : task1 apis are different from mocks. additionally 2 apis start breaking and its come to know thatgrs did not explain the task properly. finally after another 3+ hrs of discussion , we come to some conclusions and resolutions
d7 : prod issue again comes. 4+ hrs goes into it . task 2 and 3 are discussed for new screen additiona that can easily take 2+ days to be created . we agree tot ake 1 and drop 2nd task's changes i finish task 2 new screens in 6 hrs , hoping that finally everything will be fine.
d8 : prod issue again comes, and changes are requested in task 2 and 3
day 9 build finally goes to tester
day 10 first few bugs come with approval for some tasks
day 11(day 1 of new sprint) final build with fixes is shared. new bugs (unrelated to tasks. basically new features disguised as bugs) are raised . we reject and release the build.
day 2 sprint planning
mgr : hey dev x, u had only 12 hrs of work in your plate. why did the build got delayed?
🥲🫡5 -
Impulsively purchased a Nintendo Switch. I’m so glad it’s made just for me, you know, it doesn’t say “Nintendo Sub” or “Nintendo Dom”7
-
Arghhhh.
So I'm working alongside a very big development house that specialises in vehicle finance. They are huge - 60 plus developers, only work in pairs, have a minimum fee of £2500 per day and work with all the largest car manufacturers.
However, today they decided to completely change their api sub domain and all api routes that handle finance quotes. No warning at.
Of course sites I'm working on that consume this consume the said api are broken too.
To make things worse, my client pYs this company circa £19000 per year to use their api. I also recently discovered that the client is paying for their so called managed service. Insanity.
I mean seriously. This company has 4 layers of project manager and 3 forms of a senior developer. According to companies house their turnover is in excess of £4 million per year.
However, they get the basics wrong and do not warn in advance of major changes to their core api service.
Off I go to deal with 10 of project manAgers and support people in the hope if speaking to someone who can actually help.4 -
With the billions of dollars Google has, they can't even build a proper file manager for their Android operating system.
The pre-installed file manager on Android OS, codenamed "DocumentsUI", is functionally crippled and lacks the most basic functionality.
First of all, there is no range selection or A-to-B selection of items. If many items need to be selected, each item has to be tapped individually. Meanwhile, ES File Manager had A-to-B selection since at least 2012, back when Android OS was an operating system of freedom, before Android OS got cucked.
As any low-tier mobile app, the file manager by Google also lacks a draggable scroll bar, so long lists have to be scrolled through manually. Even the file manager of Windows Mobile 6.5 Professional has a draggable scroll bar! And Windows Mobile 6.5 Professional was released in 2009! Samsung "My Files" had a draggable scroll bar in 2013 but it was later unexplainably removed.
Its search feature can only search the entire storage, not an individual folder, and lacks filters such as date and file type.
Obviously, as in any terrible Android file manager, after items are selected for copying and moving, tapping "Copy to..." or "Move to..." navigates back to the initial directory rather than staying in the current directory. The user is forced to navigate all the way to the folder with the selected files if the intention was moving files to a sub folder. Any Android file manager that does this automatically qualifies as a low-tier file manager.
The file manager by Google even lacks a "details" feature which shows information such as the exact file size and name and the total size and file count of a folder. Some file managers such as the one by MediaTek are unable to show the details for multiple selected items, which is somewhat forgivable, but the Google file manager does not have a "details" feature to begin with.
Files are always sorted alphabetically after each start. The Google file manager does not memorize if the user selects sorting "by size" or "by last modified". As one might expect, it indeed lacks reverse sorting.
Of course, there is no "open with" feature where the application can be selected manually, and there is no ability to create new blank files, and it lacks tabbed browsing, and does not show the number of files inside folders in list view. ES File Manager (before it became adware in ~2016) has all of these features.
Last but not least, there has been a bug where cancelling a file move operation deletes the source folder without it having been transferred. Presumably it has been patched by now, however, a bug where tapping "cancel" leads to data loss is inexcuseable. It shows the app has not even been properly tested, let alone properly created.
http://archive.today/2020.10.27-160...
Google could have hired a college student who could have built something better than the scrapyard-worthy "file manager" they have built.
But granted, at least Google's ever-so-terrible file manager does not limit file names to fifty (50) characters like Samsung's TouchWiz file manager, also known as "My Files", did until at least 2016. There is no way to know what went through the head of the programmer who implemented this pointless limitation. Google's file manager also correctly handles file name conflicts by renaming the new files.
Microsoft built a better file manager for their operating system decades earlier than what Google threw together. Microsoft spent more of their money building a proper file manager.6 -
I just watched https://youtube.com/watch/... - towards the (very) end he's talking about how software developers rule the world... and I just realized something.
A while back, I was working on an accounting sub system for a SaaS product. We managed some of the revenue of our customers and had the accounting for that part as well. Revenue + Payments (with all the VAT / sales tax / ... that you need to have). BUT no expenses.
One day, the head accountant of a customer, angrily demanded that we immediately implement a new payment method, called commission.
You don't need to be an accounting expert for knowing, that a commission is an expense you have because somebody else marketed / sold your product / service for you. Making it a payment method is probably wrong. With a bit more knowledge you'd know that the taxes which are around expenses are completely different to revenue or payments. (btw payments didn't even have any taxes in those countries that we covered at that time at least).
So there I was standing, a software developer, trying to explain the product manager and the head accountant of our customer, that the idea is beyond stupid, and the fact that it comes from an accountant is super scary to me. (he was usually extremely picky about everything we did.)
Luckily, it was easy to convince the manager. He tried to explain it to the accountant but that person just didn't get it.
as if designing resilient distributed systems, which have 99,99% up time weren't hard enough, we also need to be experts in every domain that we have to deal with? And if there is a tiny bug and one out of 10s of thousands of transactions is screwed up, people start panicking and "loose trust in the product"? - what the hell is wrong with them?
Luckily it's a minority of customers only, but each of them is such a pain. Do you also have customers like that? who should know better, but somehow you are the expert in their domain?2 -
I've got a report that one of our machine-learning purpose computers broke down suddenly. I took a look and saw that the thing was stuck at the BIOS screen. The thing that was off was that it did not prompt for any keystrokes. Like, if there were a BIOS problem, there would usually be a prompt to press <F1> to ignore or something, right? But, nope! Even BIOS did not do jack s#!+.
I tinkered around the peripherals for an hour before finally finding something odd - why the f*<k does this computer have a screen hooked up via f*<king D-Sub????????
Yup, somebody hooked up a screen to the base motherboard via D-Sub when they rearranged other computers, even though that machine needed to have a screen hooked up to a GPU via HDMI.
🤦4 -
Alright, it looks like everyone at this bank, a client, I work for will now start avoiding me. I'm usually the only person that takes the time to review PRs and give a feedback. Everyone just seem to click accept because they can't be bothered.
A few months down the line, they begin to wonder why there is so many tech all over the place.
Good luck to anyone that wants me to review their PRs. I pledge to continue to take the time to review PRs and give feedback. I will not be pressured to click the accept button on what I perceive to be sub-optimal code. So help me God.2 -
How do I make my manager understand that something isn’t doable no matter how much effort, time and perseverance are put into it?
———context———
I’ve been tasked in optimizing a process that goes through a list of sites using the api that manage said sites. The main bottle neck of the process are the requests made to the api. I went as far as making multiple accounts to have multiple tokens fetch the data, balance the loads on the different accounts, make requests in parallel, make dedicated sub processes for each chunks. All of this doesn’t even help that much considering we end up getting rate limited anyway. As for the maintainer of the API, it’s a straight no-can-do if we ask to decrease the rate limit for us.
Essentially I did everything you could possibly do to optimize the process and yet… That’s not enough, it doesn’t fit the 2 days max process time spec that was given to me. So I decided I would tell them that the specs wouldn’t match what’s possible but they insist on 2 days.
I’ve even proposed a valid alternative but they don’t like it either, admittedly it’s not the best as it’s marked as “depreciated” but it would allow us to process data in real time instead of iterating each site.3 -
I'm delirious so here's your daily dose of fuck:
```fasm
; --- * --- * ---
; 64-bit byte-by-byte mash
macro clamp_u8 {
mov cl,$08;
mov rdx,rax;
rept 8 \{
rol rdx,cl;
xor al,dl;
\};
};
; --- * --- * ---
; give 8-bit random seed
macro prng_u8 {
rdtsc;
shl rdx,32;
or rax,rdx;
clamp_u8;
};
; --- * --- * ---
; roll dice
d20: prng_u8;
; x%20, according to gcc ;>
mov edi,eax;
mov eax,-51;
mul dil;
shr ax,12;
lea eax,[rax+rax*4];
lea edx,[0+rax*4];
mov eax,edi;
sub eax,edx;
; discard high and give
and rax,$FF;
ret;
```
I guess `d20` could be inlined too but I thought it'd be too much.
Is it faster than straight C? Probably not. But it's way lighter, so it loads faster. Below five hundred bytes mother fucker.
Now if you'll excuse me, I'll go sit in the darkness repeteadly typing roll 1d20 on the terminal. For reasons.9 -
Bash for Windows 10? Not for me, it seems. Installation never finishes and disabling the and re-enabling the Linux sub-system with far excessive restarts after doesn't help either. Git bash will have to do.4
-
I've always thought that Wordpress is HOT CARBAGE for custom solutions. The opinion is influenced by devRant actually. And I'm really starting to see that after few of months working with it.
For context, it's a accommodation booking site with sub-theme that uses plugins such as Woocommerce Bookings. I didn't build it but I'm now developing and maintaining it.
The emails... I've tried to make them function properly. But no. Because we skip the fucking verification step to allow instant booking it just won't send them. I made yet another workaround and casted some spells. NOW IT SENDS THE EMAIL TWICE...
I'm done. It's good enough.3 -
Astounded and impressed by the congenial behavior of some open source contributors who have grown into household names. I'm referring to tomas votruba and Sebastian bergmann. It's almost as if they belong in another world, judging by my experience with other developers and big people in general
They aren't social media influencers but Sebastian has almost singlehandedly maintained phpunit since the early 2000s. I tend to expect them not to dignify me with a response when I engage. Tomas "disappointed" that expectation on 2 different platforms where I use different monikers, in a very jovial manner, showing that's just who he is
Sebastian sympathised and apologised to me (an obscure nobody he owes nothing), this morning within minutes of me calling him out for publishing a major update that removed some helpful utilities without explanation or providing alternatives. The humility not to lock the thread or block me like one of the php sub mods did is examplary
Even from my current standpoint, it's easy to look down on those who have not contributed as much I have to the language or acquired as much, so it's a lesson I hope to carry with me, emulating the non technical attributes of these model citizens3 -
kinda sick of my friends giving me super basic advice when I mention my mess of 3d printer files
'group similar things together'
'have folders for main projects with nested sub projects'
'put the slicer project file with the stl files for the specific model'
I'm not fucking 5 I've lived long enough to have some level of basic common sense.
Worst part is they forget we've had this conversation and next time I even mention my files they bring up the exact same fucking comments EVERY damn time8 -
Salesforce. Although I wasn't involved in the purchase or the implementation, I spent many 100 hour weeks dealing with the crapshoot of an implementation. A large company abused that software to the point of no return. They used that thing for everything, and then they didn't even use it right for the one thing salesforce is good at. So I guess I don't have anything against salesforce itself besides its scalability issues, custom SOQL syntax, user model, and pricing. I'm more upset about the salesforce developers/business owners that decided it was okay to use salesforce for things it was never meant for, like inventory, project management, 3rd party sales team, and so many other things that caused what should have been sub-second queries to take 30 to 60 seconds.
-
This just happened. I have to tell someone how stupid I felt a few minutes ago.
I am working on a script that is supposed to rename some files in sub folders of the current folder.
I used ChatGPT to help me out with the last part of finding all sub folders. Copied the code into VS code. Changed the path from “/path/to/folder/“ to just “/“, ran the code. It took a bit too long time to finish. Then VS Code asked for permissions to my reminders… “Why?” I asked before I realized that I confused “.” With “/“ for current folder…3 -
Redux is weird, and I don't like it because it violates the most basic principles of responsibility. The concept of expressing state changes as reducers is nice because it can be duplicated, saved and restored and compared for equality. So is creating isolated accessors and selectors. However, I really don't think a reducer should be aware of its own position in the hierarchy. When specifying an action you aren't addressing a reducer, you're addressing the tree. That the tree doesn't manage this addressing and expects reducers to identify themselves is a bit strange, especially considering that the whole point of having a tree is that reducers shouldn't be affected by their position in that tree because they're pure. Same goes for selectors, they should belong to the tree, not to any particular sub-reducer. Separating the slices is reasonable structure, but if you specify parts of the addressing in the slice and parts of it in the root you might as well just use separate reducers for each of your slices. It's functionally equivalent.12
-
I just recently started working on a product that uses MaterialUI.
I’m not saying it is bad, but it is frustrating me. As a person with a very strong understanding of CSS (SASS mostly), it is frustrating to see the framework try to make things easier while making them entirely more hard.
It would take one or two classes do a thing in SASS but instead it is accessing a bunch of sub classes already built in and modifying some aspects. And then having to add custom css-in-js for other layout needs.
It feels wrong for 1 element to have 2 different methods and areas to house it’s own styles.
I’m sure I’m going to get used to it soon enough. But it is frustrating now. -
Was going through my rants and started deleting ones that I thought were dumb. There were more than a handful. What I did *not* know was that your +1 status doesn't keep past +1's. If you delete a rant - those +1's go away...lol serves me right for posting sub par rants in the first place, dont you think? 😝2
-
I really hate PHP frameworks.
I also often write my own frameworks but propriety. I have two decades experience doing without frameworks, writing frameworks and using frameworks.
Virtually every PHP framework I've ever used has causes more headaches than if I had simply written the code.
Let me give you an example. I want a tinyint in my database.
> Unknown column type "tinyint" requested.
Oh, doctrine doesn't support it and wont fix. Doctrine is a library that takes a perfectly good feature rich powerful enough database system and nerfs it to the capabilities of mysql 1.0.0 for portability and because the devs don't actually have the time to create a full ORM library. Sadly it's also the defacto for certain filthy disgusting frameworks whose name I shan't speak.
So I add my own type class. Annoying but what can you do.
I have to try to use it and to do so I have to register it in two places like this (pseudo)...
Types::add(Tinyint::class);
Doctrine::add(Tinyint::class);
Seems simply enough so I run it and see...
> Type tinyint already exists.
So I assume it's doing some magic loading it based on the directory and commend out the Type::add line to see.
> Type to be overwritten tinyint does not exist.
Are you fucking kidding me?
At this point I figure out it must be running twice. It's booting twice. Do I get a stack trace by default from a CLI command? Of course not because who would ever need that?
I take a quick look at parent::boot(). HttpKernel is the standard for Cli Commands?
I notice it has state, uses a protected booted property but I'm curious why it tries to boot so many times. I assume it's user error.
After some fiddling around I get a stack trace but only one boot. How is it possible?
It's not user error, the program flow of the framework is just sub par and it just calls boot all over the place.
I use the state variable and I have to do it in a weird way...
> $booted = $this->booted;parent::boot();if (!$booted) {doStuffOnceThatDependsOnParentBootage();}
A bit awkward but not life and death. I could probably just return but believe or not the parent is doing some crap if already booted. A common ugly practice but one that works is to usually call doSomething and have something only work around the state.
The thing is, doctrine does use TINYINT for bool and it gets all super confused now running commands like updates. It keeps trying to push changes when nothing changed. I'm building my own schema differential system for another project and it doesn't have these problems out of the box. It's not clever enough to handle ambiguous reverse mappings when single types are defined and it should be possible to match the right one or heck both are fine in this case. I'd expect ambiguity to be a problem with reverse engineer, not compare schema to an exact schema.
This is numpty country. Changing TINYINT UNSIGNED to TINYINT UNSIGNED. IT can't even compare two before and after strings.
There's a few other boots I could use but who cares. The internet seems to want to use that boot function. There's also init stages missing. Believe it or not there's a shutdown and reboot for the kernel. It might not be obvious but the Type::add line wants to go not in the boot method but in the top level scope along with the class definition. The top level scope is run only once.
I think people using OOP frameworks forget that there's a scope outside of the object in PHP. It's not ideal but does the trick given the functionality is confined to static only. The register command appears to have it's own check and noop or simply overwrite if the command is issued twice making things more confusing as it was working with register type before to merely alias a type to an existing type so that it could detect it from SQL when reverse engineering.
I start to wonder if I should just use columnDefinition.
It's this. Constantly on a daily basis using these pretentious stuck up frameworks and libraries.
It's not just the palava which in this case is relatively mild compared to some of the headaches that arise. It's that if you use a framework you expect basic things out of the box like oh I don't know support for the byte/char/tinyint/int8 type and a differential command that's able to compare two strings to see if they're different.
Some people might say you're using it wrong. There is such a thing as a learning curve and this one goes down, learning all the things it can't do. It's cripplesauce.12 -
Rant!!!
Fuck!!!
Clowns!!!
And it is only Monday!!!!
Involved in a pretty large it project. Several years endevour. Global. Tens and tens of millions of dollar budget.
It is obvious for all that this waterfall approach will cause enormous pain. Pain and suffering.
Multiple consultant firms involved. Loads of management, leads and the likes. Several with no it background.
🙄
Yes. No real concept of a database or what not. I mean. It is an actual IT project.
Several leads. One of the managers have no idea what he is doing. None. One would guess he should have his shit together regarding NON-it stuff. But no. And they work with this full-time and can’t even setup a descent way of working in a sub-sub-sub-project.
Clowns.
One would imagine in a waterfall setup that things is…formal. But no. It’s just people doing their thing. Lots of words. Lots of words.
I think there are nice problems to solve at the end. When it is delivered and done. So I will plan to stay and learn as much as possible. But I have to do the clowns work. Which sucks so much I can’t believe. But there are so many people involved so I guess I can get away with it in one piece without too much effort.
I am not even going to write a single line of code. 😬
All is fine.
Fucking Monday.5 -
So I'm on orders for the Marine Corps, and this one guy thinks he's a programmer because he made a "program" in excel for dispatching our equipment. He's complaining that he's just fixing bugs. I take a look at his VBA code and see literally 1000 lines of if statements bundled into one function. (Or I think they're referred to as sub routines in VBA - it's been a while since I worked with it).
I try to give him some tips and pointers since he's literally just manually checking. Each. F'ing. Cell and a million nested if statements. Tried giving tips on making reusable code, and he has the cojones to tell me he knows what he's doing and doesn't need my "help". Granted I'm higher ranking than him and he also answers in a disrespectful manner.
End rant. -
No amount of sub-par developers cheering for AI to overtake them will be enough to make me install Copilot or any glorified autocomplete. None of that would be needed anyway if people documented and tested their shit anyway.12
-
Is there is an extension in VSCode where the ";" is added (when needed) if the file extension is for the programming language which support ";" ?
I been switching back and forth from the python and C++ and my sub-conscious is killing me.
Now it's a C++ I need a ";" , moment later I am coding in python and python don't need ";" .2 -
I am working on the backend of the event website and my PM expects me to also design logo for different sub-events.
Apprantly it's part of my job.
Awesome1 -
So ok, today was a crazy day.
New sprint, new ticket.
Work on the bug tickets first he said ….
Sure can. Oh had I just known that this very first innocent looking ticket is the way to coder‘s hell ….
‚Access of undefined‘ it said. Easy to fix, I thought.
Until I found the very same code twenty-fucking-two times over about 50 files!
Who would guess that exportSingleOperatorBooking, exportSeveralOperatorBookings, exportAllOperatorBookings (… and more) could in practically be the same? Nah, they all use different interfaces.
Oh wait, the alias type of the extended sub-interface of file misc.ts is the same logical content as a differently named interface below another different interface with the same content as in another ts file?
Wait that can‘t be. Riiiiight?? 😳
8h later I have barely scratched the surface of refactoring this shitshow of a project.
But no, I refuse to put the same error handling multiple times in different places.
I could have been done already. I could have saved my soul, my sanity. But I will be brave and strong to save the innocent developer that will cometh after me. For I shall be rewardeth for my sacrifice.
Amen.8 -
Allright, so now I have to extend a brand new application, released to LIVE just weeks ago by devs at out client's company. This application is advertised as very well structured, easy to work on, µservices-based masterpiece.
Well either I lack a loooot of xp to understand the "µservices", "easy to work on" and "well structured" parts in this app or I'm really underpaid to deal with all of this...
- part of business logic is implemented in controllers. Good luck reusing it w/o bringing up all the mappings...
- magic numbers every-fucking-where... I tried adding some constants to make it at least a tiny bit more configurable... I was yelled at by the lead dev of the app for this later.
- crud-only subservices (wrapped by facade-like services, but still.. CRUD (sub)services? Then what's a repository for...?). As a result devs didn't have a place where they could write business logic. So business logic is now in: controllers (also responsible for mapping), helpers (also application layer; used by controllers; using services).
- no transactions wrapping several actions, like removing item from CURRENT table first and then recreating it in HISTORY table. No rollback/recovery mechanism in service layers if things go South.
- no clean-code. One can easily find lines (streams) 400+ cols long.
- no encapsulation. Object fields are accessed directly
- Controllers, once get result from Services (i.e. Facade), must have a tree of: if (result instanceof SomeService.SomeSubservice1.Item1) {...} else if (result instanceof SomeService.SomeSubservice2.Item4) {...} etc. to build a proper DTO. IMO this is not a way to make abstraction - application should NOT know services' internals.
- µservices use different tables (hats off for this one!) but their records must have the same IDs. E.g. if I order a burger and coke - there are 2 order items in my order #442. When I make a payment I create an invoice which must have an id #442. And I'm talking about data layer, not service or application (dto)! Shouldn't µservices be loosely coupled and be able to serve independently...? What happens if I reuse InvoiceµService in some other app?
What are your thoughts?1 -
Fuck SAP!
I honestly can’t understand how anyone considers SAP a good ERP software. Either they’re brain-dead, or they actually enjoy the mind-numbing, repetitive work that turns them into the top rat in the race. AAAAAAAAAHHH!!!!
It’s an inconsistent mess—counterintuitive, clunky, and filled with absurd navigation and unnecessarily complicated database links.
And when people praise it like it’s some divine gift to humanity, I can’t help but wonder just how miserable their real lives must be.
There are some list views where you get to something you want, if there is some incomplete data in the list.
There’s a "POSITION" button to help you find what you need—but not everywhere.
Some fields require you to save at a certain step, while others don’t, leaving you to realize halfway through the next step that you forgot to save something.
Want to cancel halfway through? Too bad. You’re stuck unless you TCode your way out—because YOU HAVEN’T FILLED ALL THE FIELDS.
Every option, and its cousin, has a separate TCode.
Even for a simple concept, you need to memorize five different TCodes, create five similar-sounding tables, link them together, and at some point, connect one of them to company data—even if there’s only one company.
Why is it so complicated?! And don’t tell me “it has a lot of modules”—that’s not an excuse. Every menu is complicated on its own.
Instead of designing a logical workflow, they just wing it, throwing in sub-options as they go, then expect the end user to figure out how to link everything together.
Why not take a top-down approach—link all company-related data in one place while still allowing independent options to be linked elsewhere if needed?
I mean, you can’t even use Ctrl+Backspace to delete a word. The UI is that fragile.
And then I remember—it’s German software. That kinda explains it.
Speaking of which, the TCodes—the backbone of the system—are still based on German, even though the entire software is in English.
So the rest of the world is stuck trying to memorize bullshit codes with no logical reference.
FUCK ANYONE WHO SUPPORTS THIS SHIT.6 -
A 5-minute tutorial to register a fucking timesheet in your old-ass corporate shit tool: https://vimeo.com/1045331789/.... And I kid you not you need to convert worked hours to days so if you worked 6 hours write 0.75. Also it needs to be submitted 5-10 days in advance of the end of the month. If you are 1 hour late they will spam you and your manager, like WTF
This corporate behemoth of an IT consulting company I do (sub)contracting via is really stretching how draconian its timesheet policies can be. This is only one of the 4 timesheets I need to manually sync every month and coincidentally care the least about.
Every year they keep adding extra dumb rules that supposedly help managing their records. The moral of the story is I might quit my job for the first time due to the intermediate company's timesheets policies.3 -
To the reactjs-centered fucks who develop the popular web component viewing software called storybook: have you ever heard about semver?
89 alpha/beta/rc releases for a minor update 6.3 -> 6.4 with "100's of fixes and enhancements" "in preparation of the HUGE 7.0 release". Gee I wonder will it have 1000's of bugfixes? How bug-ridden is this software?
Every minor upgrade since 5.x is backwards-incompatible and requires a day of frustration finding out in how many more fucking NPM packages you split your codebase just because it's cool. I know move fast and break things, but some of us have other things to do than resolving node_modules incompatibilities you know. "No just hit 'npx sb upgrade' you say". I did, I really did! And the browser showed a blank screen of death with tons of cryptic React errors, it really did! Thank God you abstracted away all your dependencies in that sb command, now you can't even read the docs about what could have gone wrong with a specific sub-package. You have @storybook/html but the docs redirect to React pages, so good luck if you use something else
This is so sad... like.. the IDEA of storybook is great. But why did faith put the capacity to develop such a tool into the hands of people who think the world centers around React and JSX.. HTML should have been the default, and then you build on top of that for your fav framework, not the other way around -
Guys ! Need some help !
I am a final year CS undergraduate;will graduate in 2017 . I have been working with a team of freelancers developing websites and apps for the past couple of years. The thing is our client base is very small and the income is unstable because of our poor marketing and lack of good developers. Our team lead only doesn't maintain any version control,no code comments,sub standard code, and spends all the savings(we keep some money aside for expenses like meetings,traveling as a team etc) on movies,hangouts etc . I cannot tell it to his face but I have been looking to move out for sometime.
Should I continue freelancing by myself or apply in jobs ? And if I apply in jobs, do I apply as a fresher or a someone with a couple of years of experience ?
And if I continue as a freelancer,where do I start ? I checked upwork and freelancer.com but they have some cut-throat competition out there .5 -
Step 1:
Promise customer something non-existent
Step 2:
Complain big time that engineering is not co-operating in getting the order out in time. (without which you won't get your end of year sales performance bonus)
Step 3:
Comment about the product being sub standard. Rant about how engineering "great" products must be the philosophy. Blah blah blah...
Offer to provide your fucking support to make the product better despite not being responsible for it.Be the greater person.
Step 4:
Deliver the product. Pocket your bonus. Make jokes about how bad the product is and how you won't sell it again to protect the company brand reputation.
Step 5:
Rinse and repeat.
Fucking assholes. -
So my first rant is about my current job. I got out of college after a year doing basic research on a SBIR/NASA grant. Nothing too interesting but great entry-level experience on sub-sustenance wages based on the cost of living in 1971.. And finally got that great offer to work with an IoT company for a living wage, with a chance to really flex my hard earned skills, and maybe even the ability to afford medical insurance while paying my rent on time!
They said 'network & software engineering', but my only projects are graphic design for sales copy with a guy who thinks FourSquare is a website hosting service.
They said 'full time', but in reality it isn't.
They said $50k a year, but apparently their mouths wrote a check that they don't have bank to cash.
The guy who approves my projects is taking a vacation because of the coronavirus panic and now I won't get paid for a week.
They seem like nice folks, but also a bit irresponsible and it looks like I fell for a bait-and-switch.
Now I'm trying to find a way of spinning off this experience into something that doesn't look like a lame free-lance graphic design gig while looking for better paying work.
if (!ethical) { alert("fml"); }4 -
Saturday evening open debate thread to discuss AI.
What would you say the qualitative difference is between
1. An ML model of a full simulation of a human mind taken as a snapshot in time (supposing we could sufficiently simulate a human brain)
2. A human mind where each component (neurons, glial cells, dendrites, etc) are replaced with artificial components that exactly functionally match their organic components.
Number 1 was never strictly human.
Number 2 eventually stops being human physically.
Is number 1 a copy? Suppose the creation of number 1 required the destruction of the original (perhaps to slice up and scan in the data for simulation)? Is this functionally equivalent to number 2?
Maybe number 2 dies so slowly, with the replacement of each individual cell, that the sub networks designed to notice such a change, or feel anxiety over death, simply arent activated.
In the same fashion is a container designed to hold a specific object, the same container, if bit by bit, the container is replaced (the brain), while the contents (the mind) remain essentially unchanged?
This topic came up while debating Google's attempt to covertly advertise its new AI. Oops I mean, the engineering who 'discovered Google's ai may be sentient. Hype!'
Its sentience, however limited by its knowledge of the world through training data, may sit somewhere at the intersection of its latent space (its model data) and any particular instantiation of the model. Meaning, hypothetically, if theres even a bit of truth to this, the model "dies" after every prompt, retaining no state inbetween.16 -
Overall, pretty good actually compared to the alternatives, which is why there's so much competition for dev jobs.
On the nastier end of things you have the outsourcing pools, companies which regularly try to outbid each other to get a contract from an external (usually foreign) company at the lowest price possible. These folks are underpaid and overworked with absolutely terrible work culture, but there are many, many worse things they could be doing in terms of effort vs monetary return (personal experience: equally experienced animator has more work and is paid less). And forget everything about focus on quality and personal development, these companies are here to make quick money by just somehow doing what the client wants, I'm guessing quite a few of you have experienced that :p
Startups are a mixed bag, like they are pretty much everywhere in the world. You have the income tax fronts which have zero work, the slave driver bossman ones, the dumpster fires; but also really good ones with secure funding, nice management, and cool work culture (and cool work, some of my friends work at robotics startups and they do some pretty heavy shit).
Government agencies are also a mixed bag, they're secure with low-ish pay but usually don't have much or very exciting work, and the stuff they turn out is usually sub-par because of bad management and no drive from higher-ups.
Big corporates are pretty cool, they pay very well, have meaningful(?) work, and good work culture, and they're better managed in general than the other categories. A lot of people aim for these because of the pay, stability, networking, and resume building. Some people also use them as stepping stones to apply for courses abroad.
Research work is pretty disappointing overall, the projects here usually lack some combination of funding, facilities, and ambition; but occasionally you come across people doing really cool stuff so eh.
There's a fair amount of competition for all of these categories, so students spend an inordinate amount of time on stuff like competitive programming which a lot of companies use for hiring because of the volume of candidates.
All this is from my experience and my friends', YMMV.1 -
I work in the Android team in a company whose main product is a consumer facing mobile application. The backend developers around me are always looking to cut corners and do things the fastest and easiest way possible. If they think there might be a dependency to another team they go to extra lengths to avoid it just to save themselves the efforts of communicating and learning things that are beyond their scope of interest. I have to put up such a fight to ensure things are done the right way. Contracts are as optimised as possible.
I once had to fight for half an hour to ensure they processed the response before sending it over to app and left the processing to the end users mobile app. They just wanted to query their database, serialise it and send it over.
For my current project, I have proposed a solution which will not require any app side changes in the near future ever, if we make things generic enough and follow a set contract. The app architects loved this solution, but it was an entire task to convince the backend team. When they finally agreed, they keep hinting at how we should've just done things the easier way to solve just for our current use case because doing it this way is taking time.
Mind you, they are the ones who had set the deadlines anyway. And now they use the excuse of these very same deadlines to try and push out a very sub par solution.
My iOS counterpart is no less. We were given two sprints to finish this task. And he kept fighting me every step of the way to make things the easier way. I feel singled out and I feel like I'm being too pushy and uptight and if things are delayed it'll be my fault and not the because these people are lazy and incompetent.
Our manager doesn't care either. He just wants the feature out as soon as possible. He wouldn't care about the nitty gritties of the solution if it was delivered on time.2 -
I have been working on a project for few weeks now. I've found collaborators willing to test the software until "official release" when they'll sub as my first customers. I am a couple of days away from releasing the early version and my laptop desides it won't turn the fuck on.
FML. -
So started building a game engine in Vala using SDL2, I have never built anything from scratch and decided to do it with no tutorials and just looking at the documentation on valadoc... So of course all of the pages for SDL2 and it's sub components show up fucking blank... Well isn't this dandy .-.
-
Which one will be a better user experience ? A or B ?
0:
A ) user scrolls in the main activity for most of the features
B ) user selects very basic features in the main activity and finds the others in the sub menu
1:
A ) long text in one page
B ) shorter text in number of pages
2:
A ) brief walk through at the beginning
B ) very clear and detailed labels
C ) complete help section
3:
A ) separate rating section
B ) ask the user for rating every time till the user rates or presses dismiss
4:
A ) inappropriate billing
B ) show ad11 -
I recently went through a very detailed and well-explained Python-based project/lesson by Karpathy which is called micrograd. This is a tiny scalar-valued autograd engine and a neural net on top of it.
The project above is, as expected, built on Python. For learning purposes, I wanted to see how such a network may be implemented in TypeScript and came up with a 🤖 micrograd-ts - https://github.com/trekhleb/... repository (and also with a demo - https://trekhleb.dev/micrograd-ts/ of how the network may be trained).
Trying to build anything on your own very often gives you a much better understanding of a topic. So, this was a good exercise, especially taking into account that the whole code is just ~200 lines of TS code with no external dependencies.
The micrograd-ts repository might be useful for those who want to get a basic understanding of how neural networks work, using a TypeScript environment for experimentation.
With that being said, let me give you some more information about the project.
## Project structure
- [micrograd/](https://github.com/trekhleb/...) — this folder is the core/purpose of the repo
- [engine.ts](https://github.com/trekhleb/...) — the scalar `Value` class that supports basic math operations like `add`, `sub`, `div`, `mul`, `pow`, `exp`, `tanh` and has a `backward()` method that calculates a derivative of the expression, which is required for back-propagation flow.
- [nn.ts](https://github.com/trekhleb/...) — the `Neuron`, `Layer`, and `MLP` (multi-layer perceptron) classes that implement a neural network on top of the differentiable scalar `Values`.
- [demo/](https://github.com/trekhleb/...) - demo React application to experiment with the micrograd code
- [src/demos/](https://github.com/trekhleb/...) - several playgrounds where you can experiment with the `Neuron`, `Layer`, and `MLP` classes.
Demo (online)
---------------------
To see the online demo/playground, check the following link:
🔗 https://trekhleb.dev/micrograd-ts3 -
A sub company of the company I work for is about to be shut down. It makes me sad because I developed everything on the platform. All my work just gone.. at least I learned a lot about what NOT to do though
-
I have just slept for a minimum of 5 hours. It is 7:47 PM atm.
Why?
We have had a damn stressful day today.
We have had a programming test, but it really was rather an exam.
Normally, you get 30 minutes for a test and 45 minutes for an exam.
In this "test" we have had to explain what 'extends' does and name a few advantages of why one should use it.
Check.
Read 3 separate texts and write the program code on paper. It was about 1 super class and 1 sub class with a test class in Java.
Check.
Task 3: Create the UML diagram of the code from above. *internally: From above? He probably means my code since there is no other code there. *Checks time*. I have about 3 minutes left. Fuck my life.*
Draws the boxes. Put the class names in each of them. A private attribute for the super class.
Teacher: Last minute!
Draw the arrow starting starting from the sub class to the super class.
Put my name on each written paper. And mentally done for the day. Couldn't finish the last task. Task 3.
During this "test", I heard the frustrations of my classmates. Seemed like everyone was pretty much pissed.
After a short discussion with the teacher who also happens to be the physics professor of a university nearby.
[If you are reading this, I hope that something bad happens to you]
The next course was about computer systems. Remember my recent rant about DNS, dhcp, ftp, web server and samba on ubuntu?
We have had the task to do the screenshots of the consoles where you proof that you have dhcp activated on win7 machine etc. Seemed ok to me. I would have been done in 10 minutes, if I would be doing this relaxed. Now the teacher tells us to change the domain names to <surnameOfEachStudent>.edu.
I was like: That's fine.
Create a new user for the samba server. Read and write directories. Change the config.
Me: That should be easy.
Create new DNS entries in the configs.
Change the IPv6 address area to 192.168.x.100-200/24 only for the dhcp server.
Change the web server's default page. Write your own text into it.
You will have 1 hour and 30 minutes of time for it.
Dumbo -ANGRY-CLIENT-: Aye. Let us first start screenshotting the default page. Oh, it says that we should access it with the domain name. I don't have that much time. Let us be creative and fake it, legally.
Changes the title element so that it looks like it has been accessed via domain name. Deletes the url and writes the domain name without pressing Enter. Screenshot. Done. Ok, let us move to the next target.
Dhcp: Change lease time. Change IP address area. Subnet mask. Router. DNS. Broadcast. Optional domain name. Save.
Switches to win7.
ipconfig /release
ipconfig /renew
Holy shit it does not work!
After changing the configs on ubuntu for a legit 30 minutes: Maybe I should change the ip of the ubuntu virtual machine itself. *me asking my old self: why did not you do that in the first place, ass hole?!*
Same previous commands on win7 console. Does not work. Hmmm...
Where could be the problem?
Check the IP of the ubuntu server once again. Fml. Ubuntu did not save when I clicked on the save button the first time I have changed it. Click on save button 10 times to make sure it really is saved now lol.
Same old procedure on win7.
Alright. Dhcp works. Screenshot.
Checks time. 40 minutes left.
DNS:It is your turn. Checks bind9 configs. sudo nano db.reverse.edu.
sudo nano db.<mysurname>.edu.
Alright. All set. It should work now.
Ping win7 from ubuntu and vice versa. Works. Ping domain name on windows 7 vm. Does not work.
Oh, I forgot to restart the bind9 server on ubuntu.
sudo service bind stop
" " " start
Check DNS server IP on win7. It looks fine.
It still doesn't work. Fuck it. I have only 20 minutes left. Samba. Let us do this!
10 minutes in. No result. I don't remember why. I already forgot why I have done for it. It was a very stressful day.
Let us try DNS again.
Oh shit. I forgot the resolver!
sudo nano /etc/resolv.conf
The previous edits are gone. Dumb me. It says it in the comments. Why did not I care about it. Fuck it.6 minutes left. Open a yt video real quick. Changes the config file. Saves it. Restarts DNS and dhcp. Closes the terminal and opens a new one. The changes do not affect them until you reopen them. That's why.
Change to win7.
Ping works. How about nsloopup.
Does not work.
Teacher: 2 minutes left!
Fuck it.
Saves the word document with the images in it. Export as pdf. Tries to access the directories of the school samba server. Does not work. It was not my fault tho. Our school server is in general very slow. It feels like they are not maintained and left alone like this in the dust from the 90s.
Friend gets the permission to put his document on a USB and give the USB to the teacher.
Sneaky me: Hey xyz, can you give me your USB real quick?
Him: sure.
Gets bombed with "do you want to format the USB?" pop-ups 10 times. Fml. Skips in a fast way.
Transfers the pdf. Plug it out. Give it back.
After this we have had to give a presentation in politics. I am done.6 -
In reference to Berkmann18's complaints about his flat.
https://devrant.com/rants/4644209/...
1. found a business that does apartment listings in the style of social media.
2. focus on helping people find less-shit room mates. Like yelp, but for assholes.
3. make your money on helping millennials and gen-z manage and automate rental payments, because both those generations HATE having to look people in the eyes, having to ask for money, or anything involving negotiation. Automate the pain, monetize their avoidance habits.
4. Dashboard for splitting bills, handling rental and sub-let agreements, and divying up rental payments.
5. Get paid by geolocated advertisers for small business services, e.x. roof repair, plumbing, lawn mowing, pool cleaning, etc.
6. That positions you to do strategic partnerships with companies that provide platforms for small business providers, like angieslist.
Had this idea a while back but pursuing something else and just wanted to put it out there for people more capable than me. Lot of great developers out there that beat around for good ideas, and then there are a lot of people with good ideas who don't have the skills to implement.
Call it flattmates, or snagahome, or something like that.
On the offchance anyone decides to go for it, and you get funded, hire me to do grunt work, thats all the thanks I want.
Also I accept payment in blowjobs and beer.3 -
SSO = (P)ain in (T)he (A)SS!!
I really like to build upon all the existing awesome open source projects out there. Contributors are heros.
But handling a single user session for n to the fucking x sub sessions to all these backend applications is simply a pain in the ass. -
I recently volunteered to be the admin of our student website. Boy was I in for a ride... I can only imagine the conversation went something like this:
IT: previous IT
P: some person
P: we need some additional sites that are unrelated to the main site, where should I put the files?
IT: just put them inside the folder that has the files of the main site, it doesn't matter.
P: we have some sub-domains that we do not use anymore, what do we do with them?
IT: just delete the files, don't bother with deleting the subdomain
P: we are having an event, what do we use to store user applications, we used google forms previously and it worked just fine.
IT: we will have the applications go to our mySQL database, but everything will be in one table so that it's more readable.
I mean I'm still a college student so there might be some deeper meaning to this, but still i can't look at this without my ocd getting the better of me.1 -
Any browser (+plugin) recommendations for viewing JSON and XML? Ideally for Mac OS, but have a Windows 7 VM I can use instead if there's a much better option. Currently I'm copying from Safari and pasting into Notepad++ and formatting with a plugin, but that feels pretty sub-optimal. Suggestions much appreciated.3
-
Why is it that every time I want to make some dead simple script with Python it turns into the utmost awful programming experience?
Ah no you see you have to install this dependency but even if pip doesn't give you an error your script will still crash on import and vomit up some ugly back trace that doesn't tell you anything.
And then some retarded sub sub dependency wants to run on Python 2 and that has its entire own shithole of dependency hell.
And then for some unknown reason the Python installation wasn't compiled with zlib and some library wants it so you either you compile the entire thing yourself or idk go fuck yourself?
Why is this hot mess of a language still in use? I dont get it, it's easier to set up a cmake project with C++ for gods sake.4 -
Question:
Can someone share resources or insights into system design or system architecture for a real time web app using nodeJS and scores in backend and react in front end
I was options to maintain and scale real time events
Basically a solid scalable architecture for a pub-sub kind of model4 -
TL;DR: Brainfuck & Abstraction is so cool!
One of my dreams is to make a Mandelbrot Fractal with Brainfuck as the one on Rosetta Code.
I'm too lazy... So i'm writing a Compiler for Brainfuck.
At now i have 900 line of Python code and the operation VAR, SET, ADD, SUB, MUL with nested operation compatibility, IF, ELSE, ENDIF...
Probably i will doing it fast directly with BF but damn if abstraction is so cool!!4 -
Do any experienced developers have tips on beginning to freelance. I normally get sub-contracted work for back-end gigs, however I'd like to start landing fullstack clients of my own.
All advice welcomed! -
Why is real workable Linux with GUI so big? Windows XP is sub 1 gig, any Linux distro (real one that is, not Tiny Core Linux) is several times that. What am I supposed to use for my old ThinkPads and EEE PCs?
I don't need anything more than what XP gives me. Just an OS with GUI that can run software. Give me a Linux distro that does the same that Windows XP does, while weighing the same. Is it too much to ask?31 -
Have you ever found a infinite task? Well, I did.
So, the software that I'm working now was under responsibility of another company for development and maintenance (I'll call them X) from 2014 to last month , and the company I work for was handling only with the business part. Now we took all the development for us as well.
This software has a lot of reports , so it has a lot of templates for this reports.
When X was handling the software, they asked the client and the old project manager if they wanted the templates to have the client's products dynamic (no need to change the template when adding a new product) or hardcoded for some products they already had, they choose hardcoded because it would be faster. Butterfly effect.
Fast forward to this week, the team leader designated a task for me, It looked easy at first, just fix 2 templates, easy.
Oh boy, I was so wrong.
I fixed the first template, discovering in the process the hardcoded things, had to add the product reference in a lot of places.
So i went to the second item, a super template that they use to put together some smaller templates.
It was really weird, I couldn't find all the templates that it was supposed to use, and I didn't really know the exact problem, the only thing I knew was that it was not being generated, the reason could be the super template itself or one of the 15 smaller templates, that could happen to have sub templates.
So I called the team leader and explained to him wtf was happening, he called the senior business analyst, that called the PM, we agreed that it would be infinite because of those fucking hardcoded things, they prepared a excel sheet with this and a lot of other problems and will send this to the client, explaining that we'll need a lot of time to put this new product up and running.
Now I'm in the middle of this shit storm seeing a time of darkness in the future.
Ps: This new product was supposed to be inserted in the software since last November, when it was under X responsability, and they analyzed it and said that it would take 190 hours to be completely done, the client refused. It was the first rain drop of what would become a shit storm. -
I like the people I work with although they are very shit, I get paid a lot and I mostly enjoy the company but..
Our scrum implementation is incredibly fucked so much so that it is not even close to scrum but our scrum master doesn't know scrum and no one else cares so we do everything fucked.
Our prs are roughly 60 file hangers at a time, we only complete 50% of our work each sprint because the stories are so fucked up, we have no testers at all, team lead insists on creating sql table designs but doesn't understand normalisation so our tables often hold 3 or 4 sets of data types just jammed in.
Our software sits broken for months on end until someone notices (pre release), our architecture is garbage or practically non existent. Our front end apps that only I know the technology have approaches dictated by team lead that has no clue of the language or framework.
Our front end app is now about 50% tech debt because project management is so ineffectual and approaches are constantly changing. For instance we used to use view models for domain transfer objects... Now we use database entities, so there is no commonality between models but the system used to have shared features relying on that..sour roles and permissions are fucked since a role is a page regardless of the pages functionality so there is no ability to toggle features, but even though I know the design is fucked I still had to implement after hours of trying to convince team lead of it. Fast forward a few months and it's a huge cluster fuck to enforce.
We have no automated testing of any sort or manual testing in place.
I know of a few security vulnerabilities I can nuke our databases with but it got ignored.
Pr reviews are obviously a nightmare since they're so big.
I just tried to talk to scrum master again about story creation since any story involving front end ui as an aspect of it is crammed in under one pointed story as sub tasks, essentially throwing away any ability to calculate velocity. Been here a year now and the scrum master doesn't know what I mean by velocity... Her entire job is scrum master.
So anyway I am thinking about leaving because I like being a developer and it is slowly making me give up on doing things to a high standard and I have no chance of improving things, but at the same time the pay is great and I like the people. -
/**
* Refund Test Assert
* If this block makes it into production
* I made it as a developer
**/
for(var sub : subscriptions)
if(sub.hasEnded()) refundCustomer(sub.Id);1 -
Little addition on my rant about the enter and leave instructions being better than push mov sub for stackframes:
I had that debate with a friend of mine, who tried the same code ... and failed to get enter to be as fast. Infact, for him, enter was twice as slow, on his older computer even 3times as slow.
Mhh... pretty bad. basically blows up my whole point.
I tried the code on my computer... Can't reproduce the error.
Weird.
"Which CPU are you on?"
>"I'm on Intel"
Both of his computers are on intel. I use an amd ryzeni1600. Now this might be a bit of a fast conclusion, but I think that its safe to say that intel should atleast do better for SOME parts of their CPUs.9 -
Do I have just a bad version of ecma script or is this some stupid shit in JS in general? I want each sub array to be separate entities, not that same one for all. I assume the fill in just putting the same list in all of them? I honestly don't care I guess, replacing a sublist is fine too. Rather than editing each element separately. Saves ram in long run.
let arr = Array(5).fill(Array(1,2))
console.log(arr)
arr[0][0] = 3
console.log(arr)
[[1,2],[1,2],[1,2],[1,2],[1,2]]
[[3,2],[3,2],[3,2],[3,2],[3,2]]
Congratulations, you are my dev duck today.19 -
Fuck ticketing systems man.. jumped from a good job that i previously thought was going to be a deadend and jobhopped to a new one with a significant salary increase. Problem is that The stress levels increased 5x, and there’s significant rush to complete tasks that have sub optimal descriptions to put it nicely. The problem with that is that the lead doesn’t have enough time to properly write them and catching him during work hours for him to explain them is sometimes impossible. Sitting in limbo with 4-5 tickets open, all of them with high priority and stresing the fuck out.7
-
Stupid timeline, there is this company I was working for. It was sub-contracted by another company to do a government project. Government only pays after you deliver in my country. It was a complex system I must say. We were to work with my buddy on this project...now the timeline we were given were not feasible since another company had been given the same project and were not able to deliver. We had a meeting and discussed with our CEO about the project timelines. From the workload the feasible timelines were around 8months if we were to work as two devs. My CEO said that was not going to happen.. The only timelines that was allowed was not more than 3 months. So we suggest use an existing system to customize. .The meetings with the clients were to be weekly demos. So we choose to go with google docs api for the document management part. We were working around 20hrs a day to be able to achieve the target deadline..we management to complete the project within the given timeline..on the commissioning date of the project we faced a government panel and this was my worst disappointment. At the point of login we had to use Google email for business to obtain the API. Just as I was logging in the guy noticed and yelled. "Is that google account ?" and I replied yes..and he said "no need of proceeding since it will be of no use and they won't approve the system". That was my lowest moment in programming. I thought I had done the best project in my life as a programmer only for stupid man to declare my project as null. I felt like calling him son of a bitch but I knew that would have made me more angry...i just walked out. I went to the toilet and all I did was cry for the first time as I can recall.. My question was I was doing weekly demos. Why didn't they raise any questions by then so as to change the entire system??? Later after that demo we went and discussed about the issue and there was time extension. I redid the project using 'open office' but just before deploying the system I got a better job. I wasn't feeling like working on that project anymore. I want to release that project as open source. Recently after one year they haven't yet deployed the system. They are calling for my help. And I don't feel like helping after the humiliation...
-
How does everyone feel about morning and evening updates with a summary email detailing what was said in the evening call?
I have an attitude problem with not treating colleagues with respect (apparently) I emailed the concerned party and apologised profusely for my (perceived) behaviour and attitude towards them clarifying that there was no animosity and that I'm just a blunt person.
They responded with 🤔 u wot m8? Well actually, "it's been a stressful couple of months but theres no feelings that you talk to me or address me disrespectfully"
So basically, what happened (I'm a contractor) is I refused to work weekends for a day rate, or evenings.
And my managers boss has been salty after with me ever since.
Thing is they're talking to me like I'm a member of the staff? I don't even work for them as I'm sub contracted ¯\_(ツ)_/¯
I have had my resignation letter signed and attached to an email to my agency but I haven't sent it1 -
TLDR, need suggestions for a small team, ALM, or at least Requirements, Issue and test case tracking.
Okay my team needs some advice.
Soo the powers at be a year ago or so decided to move our requirement tracking process, test case and issue tracking from word, excel and Visio. To an ALM.. they choice Siemens Polarion for whatever reason assuming because of team center some divisions use it..
Ohhh and by the way we’ve been all engineering shit perfectly fine with the process we had with word, excel and Visio.. it wasn’t any extra work, because we needed to make those documents regardless, and it’s far easier to write the shit in the raw format than fuck around with the Mouse and all the config fields on some web app.
ANYWAY before anyone asks or suggests a process to match the tool, here’s some back ground info. We are a team of about 10-15. Split between mech, elec, and software with more on mech or elec side.
But regardless, for each project there is only 1 engineer of each concentration working on the project. So one mech, one elec and one software per project/product. Which doesn’t seem like a lot but it works out perfectly actually. (Although that might be a surprise for the most of you)..
ANYWAY... it’s kinda self managed, we have a manger that that directs the project and what features when, during development and pre release.
The issue is we hired a guy for requirements/ Polarion secretary (DevOps) claims to be the expert.. Polarion is taking too long too slow and too much config....
We want to switch, but don’t know what to. We don’t wanna create more work for us. We do peer reviews across the entire team. I think we are Sudo agile /scrum but not structured.
I like jira but it’s not great for true requirements... we get PDFs from oems and converting to word for any ALM sucks.. we use helix QAC for Misra compliance so part of me wants to use helix ALM... Polarion does not support us unless we pay thousands for “support package” I just don’t see the value added. Especially when our “DevOps” secretary is sub par.. plus I don’t believe in DevOps.. no value added for someone who can’t engineer only sudo direct. Hell we almost wanna use our interns for requirements tracking/ record keeping. We as the engineers know what todo and have been doing shit the old way for decades without issues...
Need suggestions for small team per project.. 1softwar 1elec 1mech... but large team over all across many projects.
Sorry for the long rant.. at the bar .. kinda drunk ranting tbh but do need opinions... -
For an web app suggest sub-domains instead of directory structures. Got escalations, not fired, then I quit my job.
-
Is it normal to use rabbitmq AND kafka in the same backend?
Rabbitmq for email verification, password reset etc and all that email bullshit handling
While kafka handles real time chat communication?
Since i noticed both of them work exactly the same. Producer/consumer. Pub/sub shit. Cant tell the difference other than a slightly different syntax10 -
Client needs a section of their current website redesigned and add some functionality based on user interaction with the website.
ac - account director
ac: Need timings on FE build for his section on the website.
me: Cool can I see the wireframes/designs?
ac: No wires yet, designs are here...
me: *sees 3 pages mocked up out of 50 different ones in this particular section, and they all have different functionalities*
me: I can only give you estimates on the designed bits
ac: Just estimate based on the UX proposal, it's here...
me: *reads first line - "Make F&Q section and sub pages more visual*
me: Tasks described in the proposal are too generic!
ac: Just estimate based on the previous work done for this client (which have nothing to do with the current scope)
me: *dies and goes to freelancer heaven*1 -
soo, i am unknowledgeable of ALL best practice.
lets say i call a php file called loader.php with a $_GET['type'] parameter, then after i check if type is actually set i switch the parameter and my logic then does stuff appropriate for $type..
do i create a lot of sub files with the program logic in it or do i just create subfunction (which i have to pass variables if necessary)?
Switch( $_GET['type'] ) { case 'foo': include "logic/foo.php"; break; default: echo "error"; break; }
or is the whole concept totally alien and stupid? i most honestly say that i dont know exactly what i could google to find an answer3 -
TLDR; Anybody got a good method of running multiple terminals with one command without tmux or something like that?
So I've got a lot of projects where I need multiple terminals running at the same time. Might be a backend + frontend application or something that's just split into multiple smaller applications. I usually just start multiple terminals and enter the commands to start the specific sub-application in each of them, but that's tedious, and developers are lazy.
I've tried making something nice with tmux, but I've found it to be a bit too cumbersome. Let's say I need to restart an application. Two interrupts and I've stopped one of four panes. And it's not very intuitive for beginners, and more often than not there are other developers involved.
Any suggestions on a good way to run multiple commands/applications at the same time, preferably with a single command? It has to work cross-platform as well as I work with Linux, Mac and Windows users.8 -
so, a new day, a new ERP software to rant about:
this one features an email feature (heh) but with a catch.
only pop3, no imap, if you want ssl the software suggest that you use a 3rd party program, also every user has to be logged in by the admin cause they assume the sysadmin knows all passwords cause he has "password lists"
i called them to ask why their software is what it is, they answer "there was never a need to develop an IMAP functionality, SSL would be so much work and it never became a problem that the sysadmin didnt know all passwords"
in unrelated news, does anyone know a nice sub 100K ERP software with CRM, Material Management and Offer/Order Management that runs on a local server and offers german support for a company in the 50 to 500 worker bracket? -
Optimization concepts/patterns or instances?
For pattern its gotta be any time i can take a O(n^2) and turn it into O(n) or literally anything better than O(n^2).
Instance would probably be the time that we took an api method that returned a json list made up of dictionaries CSV-style and changed it into a dictionary with the uid as the key and the other info as key-value pairs in a sub-dictionary. So instead of:
[
{
"Name": name,
"Info":info
}
]
We now return:
{
name:
{
"Info": info
}
}
Which can, if done right, make your runtime O(1), which i love. -
And there I was thinking Maven is going to make life simpler, with this granular dependency management and IDE independence (no extraneous classpath and module management required). But wait, it turns out that to run simple Ant task I need all my dependencies to have *.pom. Every. Fricking. Dependency.
I mean, sure, only if I knew which sub-dependencies they all had, but that seems like heck a lot of work to make external JAR libraries to work with Maven process.
WHY TODAY? Yesterday I had no issue: uploaded few libraries in corporate repository, refreshed index, dependencies downloaded, even had time appending javadoc to one of them and it worked. But today is the day, right? I just run simple task with maven-antrun-plugin (mvn antrun:run@<executionID>), and it starts scanning each dependency for *.pom file. I DON'T WANT THIS. Google, help me. Oh, no direct answers and clues?
Just... fuck you, Maven. With all 2 days effort I could just litter in IDE's classpath, write build.xml in no time, make normal webservice, but that would require me to also litter sources with required libraries. FML!4 -
1. Music, something fast paced with minimal to zero lyrics (usually a GOA radio station in my case)
2. No distractions around (use a "do-not-disturb" flag or something to hang on your monitor or show on your desk)
3. No chats or other communication/social media visible, best case those apps / tabs are completely closed or muted
4. Having a clear goal to achieve, might even be only a sub-goal for the current coding session.
5. Structure your code before your actually write it, I usually create step-by-step comments in each file, documenting my thought process and what steps the current file/class/whatever should do.
6. Try to code your stuff in the same order as the aforementioned comment step-by-step list dictates (unless there is a reason to change the coding order)
7. Only windows open: IDE/Editor, Browser
8. Also keep only the browser tabs needed for your work open (testing clients, documentation, music if using a browser client, etc.)
At least that's what works for me3 -
That moment when I suddenly notice that I've been working for two days on my repo that is hosted on Microsoft Team Services, while the active repo is hosted on Gitlab
Luckily changes where on a sub library can be managed to integrate a diff1 -
I'll try to make this short:D
I'm a CS student atm. at 3 sem.
And I just wanted to ask you guys, how did you improve back when you started developing?
The assignments we get at school never really challenge me, so I've spent a lot of time doing "programming ideas"(from sub reddits and ideabag2) on the side.
But I feel like I've hit a brick wall, as in, I don't think I learn super much from them anymore.
Which is why I've tried to "help" others, but when I go onto stack overflow or try to help on open source projects, I understand nothing and I'm definitely not able to help with anything. (They're all about things/subjects I've never heard of before)
So my question is mostly, how did you guys get from where I am today, to where you are today?
Thanks for even reading this.
(I know java, android dev, and Js/node.js)
(Sry about the English ;D)7 -
Architecture for Java REST API going to build/port from existing NodeJS one.
So Spring Boot + *
Lots of concurrent requests and large MongoDB calls. Current APIs use like 4GB memory for each instance because they don't use stream/pipe the response. Hold all data in memory and then return it all at once to user.
And well we expect more load in the future, so want to do this the right way.
So my understanding since this morning, is there's the blocking? MongoClient, (find* returns List) and now a Reactive MongoClient which is very async and like JS promises. Based on Pub, Sub model.
But the downside of JS promises was callback hell.
So actually 2 questions.
1. For each request, the db call done using the same MongoClient/db connection such that if there are 2 requests one would block the other?
2. Reactive Mongo would be non-blocking by design so would be better to support streamed responses?8 -
Any PHP developers here have experience with Multi DB tenancy app with each tenant can have their our custom domain (tenant-one.com) then it will be pointed via CNAME to my app (tenant-one.myapp.com).
I have enough details for multi DB tenancy app using sub domains but for using custom tenant domain - not so much.
What are some good detailed tutorials on how to do this via CNAME?
What tips can you share about this? Thanks! 😃2 -
After reading through an article by EFF about Google's new FLoC technology, I finally woke up and realized that Google isn't any different from the other huge organizations, and that it isn't here to fight for greater user privacy and rights... As such, I made a switch, going from Google to DuckDuckGo.
Sure, I still use YT, but other than that, I don't have a gmail address that'd be of importance, don't use their search engine, and now...
Got any tips on how to minimize tracking potential of an android-based rooted smartphone? (Stock rom, Xiaomi Mi 10T Pro). I know using a custom rom is an option, however, Lineage isn't officially supported for this model of phone, and I still value functionality over anything else, so... Unofficial daily drive OS is sub-optimal.
Alternative hardware solutions like PinePhone, although nice in theory, are way too behind the commercial brands in terms of technology and features, so that's a no go.5 -
I have a platform idea, I need feedback
Problem statement: it’s hard to find researchers of specific area, which discourages students to even start looking for research opportunities. The reason for that is because people often look into their own academic circle, and the resource available is simply not enough.
Solution: by scraping Google scholar, generate detailed tag of sub areas for each professors, make a search system for that which will display the most important works of a researcher and what they are working on recently. If possible, invite the researchers to use the platform to add tags of traits they are looking for in students.
I have quite polarized feedback right now, one is the subarea tagging is really useful and academic circle is a problem, other is this is completely useless.
Please let me know what you think.3 -
I am working on a pub-sub based protocol (like MQTT) with some added features. I am developing a python based server for my protocol which can be run on distributed architecture with load balancing without any tweaks. I am planning to make this server and the protocol open source.
The whole thing is getting so complex that I think about scrapping this project sometimes. I need your inspiration guys. Really, I need it. I know this protocol will be good enough to help people working on IoT, chat or any pub-sub based application if I can complete it. Cheer me up, please. -
Pardon my ignorance but is what I'm trying to do even possible?
I have a WordPress network and have domain mapping setup. So the original was domainA.com/map and the new is domainB.com. Is there a way for me to keep both the old sub directory and new domain without redirects.
If not oh well.7 -
I'm trying to improve my email setup once again and need your advice. My idea is as follows:
- 2-5 users
- 1 (sub)domain per user with a catchall
- users need to be able to also send from <any>@<subdomain>.<domain>
- costs up to 1€ per user (without domain)
- provider & server not hosted in five eyes and reasonably privacy friendly
- supports standard protocols (IMAP, SMTP)
- reliable
- does not depend on me to manage it daily/weekly
- Billing/Payment for all accounts/domains at once would be nice-to-have, but not necessary
I registered a domain with wint.global the other day and I actually managed to get this to work, but unfortunately their hosting has been very underwhelming.. the server was unreachable for a few minutes yesterday not only once, but roughly once an hour, and I'd really rather be able to actually receive (and retrieve) my mail. Also their Plesk is quite slow. To be fair for their price it's more like I pay for the domain and get the hosting for free, but I digress..
I am also considering self hosting, but realistically that means running it on a VPS and keeping at secure and patched, which I'd rather outsource to a company who can afford someone to regularly read CVEs and keep things running. I don't really want to worry about maintaining servers when I'm on holiday for example and while an unpatched game server is an acceptable risk, I'd rather keep my email server on good shape.
So in the end the question is: Which provider can fulfill my email dreams?
My research so far:
1. Tutanota doesn't offer standard protocols. I get their reasons but that also makes me depended on their service/software, which I wouldn't like. Multiple domains only on the business plans.
2.With Migadu I could easily hit their limits of incoming mails if someone signs up for too many newsletters and I can't (and don't want to) micromanage that.
3. Strato: Unclear whether I can create mails for subdomains. Also I don't like the company for multiple reasons. However I can access a domains hosted there and could try...
4. united-domains: Unclear whether I can create mails for subdomains.
5. posteo: No custom domains allowed.
I'm getting tired.. *sigh*21 -
Some mobile file managers kick me back to the beginning after selecting items for copying or moving.
When tapping on "copy" or "move" after selecting files/folders, some file managers like ES File Explorer (back when it was popular) conveniently remain in the current directory, whereas the stock Android file manager and many vendors' pre-installed file managers like that of Samsung kick me back to the initial directory. On phones with MicroSD, that's the storage selector, and on phones without, that's /storage/emulated/0/.
If I wanted to move files into a sub folder of the currently viewed directory, I have to navigate all the way back to that current directory, which is, needless to say, annoying.
Who thought it was a smart idea to kick the user back to the initial directory? But vendors' pre-installed file managers tend to be garbage anyway. Samsung's "My Files" file manager does not let me enter file names longer than 50 characters, does not let me change the extensions of files, does not support selecting files from search results or jumping to their parent directory, does obviously lack range selection, hides the status bar while opened (what's the point of that?!), its search feature is slow and sometimes crashes, and it can only search the entire device storage or memory card and not individual directories.
It's almost like Samsung deliberately tried to design a file manager as terrible as they possibly could.5 -
I am trying to extract data from the PubSub subscription and finally, once the data is extracted I want to do some transformation. Currently, it's in bytes format. I have tried multiple ways to extract the data in JSON format using custom schema it fails with an error
TypeError: __main__.MySchema() argument after ** must be a mapping, not str [while running 'Map to MySchema']
**readPubSub.py**
import apache_beam as beam
from apache_beam.options.pipeline_options import PipelineOptions
import json
import typing
class MySchema(typing.NamedTuple):
user_id:str
event_ts:str
create_ts:str
event_id:str
ifa:str
ifv:str
country:str
chip_balance:str
game:str
user_group:str
user_condition:str
device_type:str
device_model:str
user_name:str
fb_connect:bool
is_active_event:bool
event_payload:str
TOPIC_PATH = "projects/nectar-259905/topics/events"
def run(pubsub_topic):
options = PipelineOptions(
streaming=True
)
runner = 'DirectRunner'
print("I reached before pipeline")
with beam.Pipeline(runner, options=options) as pipeline:
message=(
pipeline
| "Read from Pub/Sub topic" >> beam.io.ReadFromPubSub(subscription='projects/triple-nectar-259905/subscriptions/bq_subscribe')#.with_output_types(bytes)
| 'UTF-8 bytes to string' >> beam.Map(lambda msg: msg.decode('utf-8'))
| 'Map to MySchema' >> beam.Map(lambda msg: MySchema(**msg)).with_output_types(MySchema)
| "Writing to console" >> beam.Map(print))
print("I reached after pipeline")
result = message.run()
result.wait_until_finish()
run(TOPIC_PATH)
If I use it directly below
message=(
pipeline
| "Read from Pub/Sub topic" >> beam.io.ReadFromPubSub(subscription='projects/triple-nectar-259905/subscriptions/bq_subscribe')#.with_output_types(bytes)
| 'UTF-8 bytes to string' >> beam.Map(lambda msg: msg.decode('utf-8'))
| "Writing to console" >> beam.Map(print))
I get output as
{
'user_id': '102105290400258488',
'event_ts': '2021-05-29 20:42:52.283 UTC',
'event_id': 'Game_Request_Declined',
'ifa': '6090a6c7-4422-49b5-8757-ccfdbad',
'ifv': '3fc6eb8b4d0cf096c47e2252f41',
'country': 'US',
'chip_balance': '9140',
'game': 'gru',
'user_group': '[1, 36, 529702]',
'user_condition': '[1, 36]',
'device_type': 'phone',
'device_model': 'TCL 5007Z',
'user_name': 'Minnie',
'fb_connect': True,
'event_payload': '{"competition_type":"normal","game_started_from":"result_flow_rematch","variant":"target"}',
'is_active_event': True
}
{
'user_id': '102105290400258488',
'event_ts': '2021-05-29 20:54:38.297 UTC',
'event_id': 'Decline_Game_Request',
'ifa': '6090a6c7-4422-49b5-8757-ccfdbad',
'ifv': '3fc6eb8b4d0cf096c47e2252f41',
'country': 'US',
'chip_balance': '9905',
'game': 'gru',
'user_group': '[1, 36, 529702]',
'user_condition': '[1, 36]',
'device_type': 'phone',
'device_model': 'TCL 5007Z',
'user_name': 'Minnie',
'fb_connect': True,
'event_payload': '{"competition_type":"normal","game_started_from":"result_flow_rematch","variant":"target"}',
'is_active_event': True
}
Please let me know if I m doing something wrong while parsing the data to JSON. Also, I am looking for examples to do data masking and run some SQL within Apache Beam4 -
I feel like some evil bastard NTP hacked the world.
on that note, seeing revision "12' wandering around.
I wandered by an apartment I remember from the old days today, in that apartment a woman wandered in, and left the door unlocked, you walked upstairs and she was already hidden inside one of the sub apartments, all of which had their doors unlocked.
if you wandered into the correct one a sexy chick was waiting, the one you followed, if you wandered in the wrong one you either got screamed at by an angry dude or looked at curiiously by an old guy cooking dinner.
the room changed across the years.
however i was warned away from this even before I remembered the events that followed and were buried indicating that this is not something i should be doing.
because now a woman in gray wanders in, meaning something awful is up there instead of some lighthearted game of chance where i coud either be looked at as an idiot, screamed out, or bonk someone for several hours.
I am really missing being young.3 -
I have nothing to rant about today :D.
I'm too happy for anything to bring me down,
PM said i only have to demo tomorrow morning.
A nice 2 hours before work ends,
I'm hyped up on redbull and wifi is'nt bad today.
My sub-conscience whispering in the back of my mind: "Don't believe it. Don't give in to the happiness. Something will happen. You setting yourself up. Quit while you're ahead."2 -
If the clock is not complicated enough, with DST and timezones.... holidays and red days is even more complicated..... (a perl sub which returns all red days for sweden. It does not return any holidays thats always saturday or sunday)
Requires Date::Calc and Date::Easter
What a mess dates and times become..,
sub GetHoliDayList() {
$yeartocheck = $_[0];
$holiday{'1-1'} = '1';
$holiday{'1-6'} = '1';
$holiday{'5-1'} = '1';
$holiday{'6-6'} = '1';
$holiday{'6-24'} = '1';
$holiday{'12-24'} = '1';
$holiday{'12-25'} = '1';
$holiday{'12-26'} = '1';
$holiday{'12-31'} = '1';
($eastermonth, $easterday) = gregorian_easter( $yeartocheck );
$hea = int($eastermonth)."-".int(int($easterday) - 2);
$heb = int($eastermonth)."-".int(int($easterday) + 1);
$holiday{$hea} = '1';
$holiday{$heb} = '1';
($year,$christskytravellermonth,$christskytravellerday) = Add_Delta_YMD($yeartocheck,$eastermonth,$easterday, 0,0,39);
$chstv = int($christskytravellermonth)."-".int($christskytravellerday);
$holiday{$chstv} = '1';
if (Day_Of_Week($yeartocheck,6,19) == 5) {
$holiday{'6-19'} = '1';
}
if (Day_Of_Week($yeartocheck,6,20) == 5) {
$holiday{'6-20'} = '1';
}
if (Day_Of_Week($yeartocheck,6,21) == 5) {
$holiday{'6-21'} = '1';
}
if (Day_Of_Week($yeartocheck,6,22) == 5) {
$holiday{'6-22'} = '1';
}
if (Day_Of_Week($yeartocheck,6,23) == 5) {
$holiday{'6-23'} = '1';
}
if (Day_Of_Week($yeartocheck,6,24) == 5) {
$holiday{'6-24'} = '1';
}
if (Day_Of_Week($yeartocheck,6,25) == 5) {
$holiday{'6-25'} = '1';
}
return %holiday;
} -
This is mostly a self rant, rather rant on self.
TL;DR I should talk to more people from the dev community.
So basically for a few years now I'm mostly investing my time in tech. More so into open source stuff and the linux eco system. I'm pretty sure anyone who ever came in touch with this would have atleast thought of contributing something, and so did I. In my case the problem was that of communication.. It's one of those things I'm really bad and ofcourse there is the issue of overthinking too. All these years I survived by just googling stuff and refraining from any direct conversation with an other human while solving a problem.. As you may have guessed it this wad a horrible and sub optimal thing to do. Humans know a lot more about context.. I guess a part of the reason for being so hesitant was the fear of being wrong. sigh -
I was given a perl script to help change ubnt airos devices passwords from the command line. I was give no instructions on how to use it and I am not use to working with perl If anyone can give me some help I would really appreciate it. Here is the code.
#!/usr/bin/perluse
FindBin qw($Bin $Script);
use WWW::Mechanize;
die "Syntax: $Script ...Changes the password on 1 or more AirOS units." unless @ARGV >= 6;
my $user = shift @ARGV;
my $op = shift @ARGV;
my $np = shift @ARGV;
my $rouser = shift @ARGV;
my $ropass = shift @ARGV;
my @addresses = @ARGV;
open L, ">>$Bin/$Script.log" or die "Unable to write to $Bin.log: $!";
sub l {
print STDERR @_;
print L @_;
}
for my $a (@addresses) {
l "Changing password on $a\n";
my $mech = WWW::Mechanize->new();
my $entry;
my $start = "http://$a/login.cgi?uri=/system.cgi";
$mech->get($start);
$mech->field('username',$user);
$mech->field('password',$op);
$response = $mech->submit();
# to get login cookie
if (!$response->is_success) {
l $response->status_line, "\n";
}
$mech->get(qq|http://$a/system.cgi|);
$mech->field('NewPassword',$np);
$mech->field('NewPassword2',$np);
$mech->field('OldPassword',$op);
$mech->field('ro_status', "enabled");
$mech->field('rousername', $rouser);
$mech->field('roPassword', $ropass);
$mech->field('hasRoPassword', "true");
$mech->click_button(name => "change");
$response = $mech->submit();
if (!$response->is_success) {
l $response->status_line, "\n";
}
$response = $mech->get(qq|http://$a/apply.cgi|);
if (!$response->is_success) {
l $response->status_line, "\n";
}
}close L;
exit 0;8 -
Hey. I'm still very new to CloudFlare and I have a question.
Let's say that I have 4 sub domains: a.test.com, b.test.com, c.test.com, d.test.com. They're all under the same domain (test.com).
I have a page rule setup specifically for a.test.com, where "Disable security" is set to On. I did this as a temporary solution so that I can figure out the problems that a.test.com has when the security is enabled (had users complaints regarding not being able to send requests with CF security On), so that it is still accessible while I try to fix it..
By turning disabling security for a.test.com, do I put others (b, c, d) at risk? I had someone telling me that it is possible for attackers to make use of a.test.con (unprotected by CF) in order to attack the other sub-domains. "a.test.com has no protection so attackers can use it to send requests to other secured subdomains, cross-site attack" or something along that line.
I don't get this. I thought page rule is supposed to be active only for the domain where it's being set up and the rest will still be secured, and that if attacker manages to attack the other subdomain its due to the others not having secure applications inside of it.
Dunno if that person was telling the truth or tried to mess around with me with their joke!
Thanks!5 -
What CI CD are you using for work? Ours is a self hosted sub domain jenkins in a VM.
Also, what CI CD is almost required in every job? Jenkins? Thanks!3 -
Business study is one of the most complicated areas of study that poses a great challenge to students who want to choose the essay topics for their final research papers. The reason is that this field of study has many different bit yet similar sub-disciplines that discuss almost the same thing. Many teachers advise their students to use the little money that they get to buy essay from qualified writers on https://familyessay.org/ and boost their chances of completing their studies as expected. Statistics indicates that those students who choose essay topics for themselves take longer time to complete their studies as compared to those students who buy essay. The reason is that essay writers choose essay topics that do not pose great problems to the students when it comes to writing. The students may prepare their final papers on such essay topics without any problem or even buy essay from existing research writing companies. Many people choose to buy the essay topics before presenting them to the writing companies that prepare the final papers and present them to those students who buy essay.
Essay topics may look similar but the chances that the contents of the papers will be the same are very limited. For one to buy essay on certain essay topics, teachers advise them to ensure that the papers are free of plagiarism. Plagiarism does not mean that students buy essay on essay topics that other students have already selected. Students who buy essay on same essay topic but with different contents are not guilty of plagiarism. Plagiarism detection tools are therefore important whenever one decides to buy essay that students expect to present in class.1 -
i am back after a struck of some shit virus. our team has been created and will be executeing our first mods will be consist of apk editor, xml, quickedit, possibly game guardian / block launcher scripts i know getting people to watch like and sub to your videos is hard but its worth a try.
Items-
QuickEdit + by rythum software used to corrupt data
apk editor used to dupe any app or modify it
probably used for our mod menus idk
for gg im not rooting my device so rip, i hope over clock sells his airpods so he can come back on his tablet. he litrally posted a video about why he wasnt on his tablet rip )= SPO team is not gonna bust.13 -
I don't get the hype about graphQL...it seems to be impossible to query over a structure with a deep of n levels (use it for a topology manager). In order to get the 5th sub-element you really need to specify the entire 5 sub-levels in your query...Why? Just the fuck why?3
-
To the UI/UXs... Which of these approaches is more Mobile User Friendly?
- A single screen with all 12 form fields visible to the user, where only four of these fields are optional and inputs are validated on submission.
----- OR -----
- A single screen with fields split into 12 sub screens, a form progress bar at the top, a next and previous button with "skip" button for optional fields, with inputs validated progressively.
You can imagine the contents of the form like the ones on surveys. I have already implemented the second option but in doubts of its friendliness, I also had previously implemented something similar to the first but with criticism from colleges stating it's too much fields in one screen.
I would love to see from your view and learn from your experience... What do you think?8