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 - "long process."
-
As a long-time iPhone user, I am really sorry to say it but I think Apple has completed their transition to being a company that is incompetent when it comes to software development and software development processes.
I’ve grown tired of hearing some developers tell me about Apple’s scale and how software development is hard and how bugs should be expected. All of those are true, but like most rules of law, incompetence and gross negligence trumps all of that.
I’m writing this because of the telugu “bug”/massive, massive security issue in iOS 11.2.5. I personally think it’s one of the worst security issues in the history of modern devices/software in terms of its ease of exploitation, vast reach, and devastating impact if used strategically. But, as a software developer, I would have been able to see past all of that, but Apple has shown their true incompetence on this issue and this isn’t about a bug.
It’s about a company that has a catastrophic bug in their desktop and mobile platforms and haven’t been able to, or cared to, patch it in the 3 or so days it’s been known about. It’s about a company, who as of a view days ago, hasn’t followed the basic software development process of removing an update (11.2.5) that was found to be flawed and broken. Bugs happen, but that kind of incompetence is cultural and isn’t a mistake and it certainly isn’t something that people should try to justify.
This has also shown Apple’s gross incompetence in terms of software QA. This isn’t the first time a non-standard character has crashed iOS. Why would a competent software company implement a step in their QA, after the previous incident(s), to specifically test for issues like this? While Android has its issues too and I know some here don’t like Google, no one can deny that Google at least has a solid and far superior QA process compared to Apple.
Why am I writing this? Because I’m fed up. Apple has completely lost its way. devRant was inaccessible to iOS users a couple of times because of this bug and I know many, many other apps and websites that feature user-generated content experienced the same thing. It’s catastrophic. Many times we get sidetracked and really into security issues, like meltdown/spectre that are exponentially harder to take advantage of than this one. This issue can be exploited by a 3 year old. I bet no one can produce a case where a security issue was this exploitable yet this ignored on a whole.
Alas, here we are, days later, and the incompetent leadership at Apple has still not patched one of the worst security bugs the world has ever seen.81 -
I worked with a good dev at one of my previous jobs, but one of his faults was that he was a bit scattered and would sometimes forget things.
The story goes that one day we had this massive bug on our web app and we had a large portion of our dev team trying to figure it out. We thought we narrowed down the issue to a very specific part of the code, but something weird happened. No matter how often we looked at the piece of code where we all knew the problem had to be, no one could see any problem with it. And there want anything close to explaining how we could be seeing the issue we were in production.
We spent hours going through this. It was driving everyone crazy. All of a sudden, my co-worker (one referenced above) gasps “oh shit.” And we’re all like, what’s up? He proceeds to tell us that he thinks he might have been testing a line of code on one of our prod servers and left it in there by accident and never committed it into the actual codebase. Just to explain this - we had a great deploy process at this company but every so often a dev would need to test something quickly on a prod machine so we’d allow it as long as they did it and removed it quickly. It was meant for being for a select few tasks that required a prod server and was just going to be a single line to test something. Bad practice, but was fine because everyone had been extremely careful with it.
Until this guy came along. After he said he thought he might have left a line change in the code on a prod server, we had to manually go in to 12 web servers and check. Eventually, we found the one that had the change and finally, the issue at hand made sense. We never thought for a second that the committed code in the git repo that we were looking at would be inaccurate.
Needless to say, he was never allowed to touch code on a prod server ever again.8 -
Fucking someone has to fix the recruiting process.
Fucking who gives a shit about your experience, and what you did so long.
Here take this fucking shitty problem that I googled, so that I can judge you by this one fucking problem.
Oh, youve worked on variety of technologies? Fuck you.
Fuck these interviews. Fml.8 -
Does anyone else have this?
When you flash something onto your android phones and the boot process afterwards takes very long and you start to get veeeeeery nervous 😅28 -
A wild Darwin Award nominee appears.
Background: Admins report that a legacy nightly update process isn't working. Ticket actually states problem is obviously in "the codes."
Scene: Meeting with about 20 people to triage the issue (blamestorming)
"Senior" Admin: "update process not working, the file is not present"
Moi: "which file?"
SAdmin: "file that is in ticket, EPN-1003"
Moi: "..." *grumbles, plans murder, opens ticket*
...
Moi: "The config dotfile is missing?"
SAdmin: "Yes, file no there. Can you fix?"
Moi: "Engineers don't have access to the production system. Please share your screen"
SAdmin: "ok"
*time passes, screen appears*
Moi: "ls the configuration dir"
SAdmin: *fails in bash* > ls
*computer prints*
> ls
_.legacyjobrc
Moi: *sees issues, blood pressure rises* "Please run list all long"
SAdmin: *fails in bash, again* > ls ?
Moi: *shakes* "ls -la"
SAdmin: *shonorable mention* > ls -la
*computer prints*
> ls -la
total 1300
drwxrwxrwx- 18 SAdmin {Today} -- _.legacyjobrc
Moi: "Why did you rename the config file?"
SAdmin: "Nothing changed"
Moi: "... are you sure?"
SAdmin: "No, changed nothing."
Moi: "Is the job running as your account for some reason?"
SAdmin: "No, job is root"
Moi: *shares screenshot of previous ls* This suggests your account was likely used to rename the dotfile, did you share your account with anyone?
SAdmin: "No, I rename file because could not see"
Moi: *heavy seething* so, just to make sure I understand, you renamed a dotfile because you couldn't see it in the terminal with ls?
SAdmin: "No, I rename file because it was not visible, now is visible"
Moi: "and then you filed a ticket because the application stopped working after you renamed the configuration file? You didn't think there might be a correlation between those two things?"
SAdmin: "yes, it no work"
Interjecting Director: "How did no one catch this? Why were there no checks, and why is there no user interface to configure this application? When I was writing applications I cared about quality"
Moi: *heavy seething*
IDjit: "Well? Anyone? How are we going to fix this"
Moi: "The administrative team will need to rename the file back to its original name"
IDjit: "can't the engineering team do this?!"
Moi: "We could, but it's corporate policy that we have no access to those environments"
IDjit: "Ok, what caused this issue in the first place? How did it get this way?!"
TFW you think you've hit the bottom of idiocy barrel, and the director says, "hold my mango lassi."27 -
Manager: This button is too dark, you need to lighten it. Have you no sense of design?
Dev: …
Dev: Hows this for an adjustment?
Manager: Wayyyyy too light now, jesus you need glasses if you think that’s good.
Dev: …
Dev: How about now?
Manager: It’s close, make it just a little more dark. God why does this have to take so long, do I have to hold your hand through this entire process!
Dev: …
Dev: There that good?
Manager: Yes that’s perfect! Send me a PR immediately so I can approve, we need to get this out ASAP, it’s critical!!
Dev: I can’t.
Manager: ????
Dev: There’s no diff, you had me gradually adjust the colour back to exactly what it was originally.
Manager: THAT’S IMPOSSIBLE IT LOOKS COMPLETELY DIFFERENT. HOW DARE YOU INSULT ME LIKE THIS, I HAVE A MEETING I NEED TO GET OFF TO BUT WE WILL BE HAVING WORDS LATER ABOUT THIS INAPPROPRIATE BEHAVIOUR.
Dev: …16 -
When I was in the army I wasn't officially a dev. But one commander needed someone to develop a bunch of stuff and couldn't get a dev officially, so I ended up as his "assistant", which was an awesome job with about 60% time spent on software development.
Except I wasn't an official developer, so I wasn't afforded many of the privileges developers get, like a slightly more powerful machine, a copy of Visual Studio, or an internet connection. In this environment you couldn't even download files and transfer the to your computer without a long process, and I couldn't get development tools past that process anyway.
So I was stuck with whatever dev tools I had pre-installed with Windows. Thankfully, I had the brand new Windows XP, so I had the .Net framework installed, which comes with the command line compiler csc. I got to work with notepad and csc; my first order of business: write an editor that could open multiple files, and press F5 to compile and run my project.
Being a noob at the time, with almost no actual experience, and nobody supervising my work, I had a few brilliant ideas. For example, I one day realized I could map properties of an object to a field in a database table, and thus wrote a rudimentary OR/M. My database, I didn't mention, was Access, because that didn't need installation. I connected to it properly via ADO.NET, at least.
The most surprising thing though, in retrospect, is the stuff I wrote actually worked.14 -
Long rant ahead. Should take about 2-3 minutes to read. So feel free to refill your cup of coffee and take a seat :)
It turns out that the battery in my new Nexus 6P is almost dead. Well not that I didn't expect that, the seller even explicitly put that in the product page. But it got me thinking.. why? Lithium batteries are often good for some 10k charges, meaning that they could last almost 30 years when charged every day! They'd outlive an entire generation of people!
Then I took a look at the USB-C wall charger that Huawei delivered with this thing. A 5V 3A brick. When I saw that, I immediately realized.. aah, that's why this battery crapped out after a mere 2 years.
See, while batteries are often advertised as capable of several amps (like 7A with my LiitoKala 18650 batteries that I often use in projects), that's only the current that they can safely take or deliver without blowing up. The manufacturer doesn't make this current rating with longevity in mind. It's the absolute maximum in current that a given battery can safely handle.
The longevity on the other hand directly depends on the demand that's placed on the battery. 500mA which is standard USB 2.0 rating or 1A which is standard USB 3.0 rating, no sweat. The battery will live for at least a decade of daily charges and discharges like that no problem.
But when you start shoving 3A continuous into a battery, that's when it will suffer. Imagine that your current workload is 500mA and suddenly you get shoved 6 times that work upon you. How long would you last?
Oh and not only the current is a problem, I suspect that it also overvolts the battery to maintain a constant current all the way till the end. When I charged my lithium cells with my lab bench power supply, the battery would only take a few milliamps when it got close to the supply voltage. Quick bit of knowledge: lithium cells are charged at constant current first, then when the current drops below that, it continues at constant voltage - usually 4.2 or 4.35V depending on the battery. So you'd set your lab bench power supply at 4.2V 500mA. But in that constant voltage mode, as the battery's voltage and the supply's voltage equalize, the current drops because the voltage difference becomes lower. Remember, voltage is what causes current to flow. Overvolting at the supply to stay in constant current mode all the way till the end speeds this process up but can be dangerous and requires constant monitoring of the battery voltage.
So, why does Huawei and a bunch of other manufacturers make these 3A power chargers? Well first it's because consumer demands ever more, regardless of the fact that they can just charge at 500mA for the night (8h of sleep) and charge a 4000mAh battery from 0 to 100% no problem. Secondly it's because sometimes you need that little bit of extra juice fast, like when you forgot to plug the damn thing in and you've got only 30 minutes in the morning to pour some charge into it.
But people use those damn fucking things even when they go to bed, making that 3A torture a fucking standard process!! And then they complain that their batteries go to shit?!
Hopefully this now made you realize that the fast charger shouldn't be used as a regular charger ^^28 -
Around 2009 or earlier, I began the long grueling process of creating my own batch AI (yes batch as in Windows Batch , kill me for not knowing there were better languages around). Looking back at it, it is THE messiest thing I've ever created. Mostly because of how many unnecessary files were created to make the entire thing work. However, I’m still proud of it to this day because of the dedication I had put into creating the entire thing.
I would create diagrams on the mirrors in my room; of course I would be scolded for this. But I was mad with thought working through the entire thing.
I would scribble and type whenever I had the chance, trying to create the functions that would allow the thing to talk back to me. Finally, when it opened its eyes and spoke its first words I quickly started creating the functions that would allow it to learn new inputs. Over time and with some elbow grease I was able to polish it up to my liking.
The entire program branched off some of my more earlier programs in batch, they mostly ranged from the medial to the crazy; i.e. turning my computer on and off at certain times of the day, and multithreaded migration of files to new disks
It's not as sophisticated as other AI that were being built at the time, but at the age of 16 and with no experience in real programming at all, I'd say it was my first stepping stone towards more sophisticated programs, and ultimately, my decision in Computer Programming at all.22 -
*during my final job interview*
*holding the folder that contains my cv*
interviewer: Wait, before I open this I would like to guess which position you're applying to.
me: Hmm okay sir? Which position?
interviewer: I see you're applying as a back-end developer?
me: Yes sir, I am.
interviewer: Aha! That's because you have a long hair? Like it is a requirement for every devs to grow their hair?
me: *laughs* i think so?
interviewer: Well our devs here also has long hair. You'll meet 'em soon.
...
That sets the mood of my interviewing process that leads me the job offer. LOL.13 -
My dad turned off my laptop this morning, so tonight, before going to sleep I had to tell him, not to do this.
So I decided to do this....
PS: yeah that's my mom's hair clips.:D11 -
In my previous company, I used to work for a client company which had a terrible website. It was about financial data and people would have to wait too long before the page loaded because there was a freaking 1.2 megs of minified, compressed JS file that needed to load before you could do anything.
Everyone knew that was a pain in the ass and nobody wanted to touch spaghetti code and mess up something they didn't know.
I wanted to however take a shot at it. So an architect from client side and I discussed how we were gonna go about it and how we were gonna find the stuff that needed to load on page load and stuff that could be loaded later.
So we plan for it. We broke everything down from a globals polluting JS, found out the variables and functions that needed to run during first load by literally putting a console statement for each function and finally came up with two bundles.
The primary bundle was 120kb and would during first load and then every module would call it's own secondary bundle when the user interacted with it.
In the process, we removed half a meg of JS and the site became blazing fast.
I did it with a team of two members who, my manager thought were useless, learned a ton of stuff, setup proper process for the transition.
When the client didn't appreciate the amount of brain and effort we had put into it, these two members came forward to tell the client to acknowledge my effort and attributed the success of it to me.
I was totally moved. There was so much respect that I didnt care what anybody else thought. I was just so happy to work with those two humans.
When i left the company, i gifted them stuff they always talked about or wanted. :) Feels good.1 -
Requirements vs Delivery - Guide to Programming
This one is a killer and I've received it in multiple forwards in office email, and we always have a good laugh seeing this joke.
Client: “Our next requirement, and this is something big you know, we need an elephant”
IT Team: But why don’t you adjust with a buffalo, even it is big…. and black?”
Client: No, we need an elephant only, let me explain our current process……” (client explains for an hour)
IT Team: Fine, I understand your requirement. But our system supports only a buffalo…
Client:We need only an elephant!
IT Team: Ok, let me see if I can customize it for you”
Requirements are taken as follows:
Client wants a big black four legged animal, long tail, less hair. Having trunk is mandatory. The same was documented, signed off and sent to offshore for development!
At the Offshore Development Centre,
Design/Development – Based on requirement all features are supported in base product (as buffalo), for trunk alone a separate customization is done.
Finally the customization is shown to client:2 -
A couple of weeks ago I posted about me making my own reclaimed desk, after a long process of sanding and oiling constantly here is the finished product and I couldn't be happier10
-
So there it fucking goes.
Hi. I'm WillibertXXIV.
I'm not a programmer by trade; I have a more than fulltime job as a cook. As for the last year, I spent pretty much all my free time, overlapping my sleep time, to learn how to code.
All that so I can create a game that I started working on the same day I started my learning process. So far it's shit and it's going to stay that way for a long time. Only I can say this. It's my baby. It's fucking ugly and shit but it's mine.
Yesterday I broke it. I broke my baby. I don't know how it fucking happe. When I went to sleep I had a steady 175fps, nice realtime lightning and player / enemy that flowed like running water. I worked really hard to make that happened. Profiling, writing better code, profiling, etc. It's still not good, it's less shit.
I woke up, beautiful day. Not too warm, not too cold, that sweet spot right in the middle. Girlfriend already made the coffee. Perfect. Woke up, sat down to start my morning time work before going to my realjob and
BAM
Everything is shit, 20fps max. That one thing, gfx.waitforpresent, showing up in the profiler eating everything as the game run. Movements are now of stroboscopic nature. Light is still ok but what good does it do now fucking piece of shit. I'm not qualified enough for this shit.
Fuck,
Fuck this,
Fuck this shit,
Fuck this shit i'm out of here.26 -
It's funny, whenever the subject of facebook vs privacy comes up (mostly I don't even initiate those convo's), people always start to defend facebook when I say that I THINK that facebook is build to get people addicted to it and get them to stay on facebook as long as possible.
Haha, one of facebook's early investers/ex facebook presidents said the following in an interview:
“It’s a social-validation feedback loop, exactly the kind of thing that a hacker like myself would come up with, because you’re exploiting a vulnerability in human psychology.”
So even an ex president of facebook is admitting this.
I also found the folloing a good one:
The underlying thought process while creating platforms like Facebook or Instagram is something like “How do we consume as much of your time and conscious attention as possible?”
Last but not least, the part I found the most scary:
“God only knows what it’s doing to our children’s brains.”
Yes, I find this scary.
Oh yeah and for the people who are going to call bullshit on this one, I've got one source and if you search engine on the title of that article then you'll find loads of websites having that story:
https://fossbytes.com/facebook-was-...26 -
I’m a .NET desktop fullstack dev these days… Never worked web unless for my own small needs/personal projects.
I started using tech one way or the other by the time windows was version 3.1 and been through quite a bit ground-breaking changes in the industry of software development and the internet but if there’s one thing I cannot understand of it all, no matter how much thought I put into it is: How the fuck did we manage to make it so fucking complicated to develop anything these days?
I remember like it was yesterday that you could stand a website with HTML, CSS and JS, three fucking files and you’ve made yourself a single page site. Then came the word “Responsive”, “Responsive” written everywhere. Fair enough, grid system popped up. All of the sudden jQuery was summoned… and everything that happened after this point has been a fucking circus of high-pitched teens talking on conferences about fucking libraries and frameworks to make integration with real time, highly scalable, eco-friendly, serverless, data driven, genome aware, genderless, quantum technologies to interact with bio dynamically generated organisms, namely fucking users.
Every fucking bit of the process of building a mobile/web application seems to be stopped by yet another incredibly dumb attempt to suicide a developer. Can you go from starting an app and publishing an app without jumping through a thousand VERY specific hoops? No, fuck no.
I fucking hate it… It’s a bit hard to get Desktop dev jobs these days but for as long as I work on IT I will continue to stick to that area, until someone for the love of life comes up with a fucking solution to all this decadent circus of bureaucratic technocracy.
Fuck big industry, fuck tech giants, fuck javascript and webassembly, fuck kids putting ASCII art on console applications that I DON’T FUCKING NEED to install dependencies THAT I DON’T FUCKING NEED to extend functionality on frameworks that I DON’T FUCKING NEED… oh wait, I do need all this because YOU FUCKING MADE IT MANDATORY NOW! FUUUUUUUUUUUUUUUUUUUUUUUCK YOU!!!9 -
Have multiple and some server related but hereby:
I forcefully quit php on the server I use for devRant related stuffs because I wanted to quit the bakgrounded php process I had running for the dns proxy thingy since I somehow couldn't find the pid.
Two days later I noticed that none of my sites on that server where running anymore and started looking at nginx error logs.
It took me way too long to figure out that I had PHP-FPM installed which runs as a service and by forcefully quitting php the other day.... Yeah, you get it I think.
Started the process again and remembered that one 😅 -
so here's a little story:
yesterday i decided to buy a shiny new gtx 1070 since my pc is getting very old, i come back from the store and i realize that my case is slightly too small to fit the card.
'No bg deal' i think to myself, i run out to buy a saw and after some work i made some space to fit the card in by sawing off some hard drive bays i was not using. I plug in the card, i wire up the pc, and it does not boot: after some asking around (i have never really built a pc before), i relaize i need more power to the card and wire a second PCIE connector. low and behold, i power of the pc and it works! Once logged into windows tho, i realize none of my HHDs are detected...
To cut a long story short, i **did not think to unplug the hard drives before i started sawing off bits of the case and the vibrations killed both of them!** i lost ~1TB of data in the process: a lot of it was games and programs, but i have yet to tally up the damage.
I am completely bamboozled by what the fuck just happened, i think i'll go hand myself in to the nearest police station for crimes against technology... or maybe a mental clinic would be best?...
PS: my system drive was spared since its an SSD, but i may as well re-install windows at this point since i lost 90% of my software11 -
Things happened this year so far in chronological order:
Applied to PhD and got all rejected
Graduated without a job because I thought the last event wouldn’t happen
Decided to take more shots at universities in Europe and Canada
Paper got published and got best paper honorable mention
Interviewed by couple professors and the one in Canada seems to be interested in me
School in Canada, which rejected me before, reopened my case for review
Bank account got closed because my parents transferred me some money to support my unemployment ass and bank thought it was a fraud
The review process took so long I got hopeless and thought, if I end up writing webpages for other people, why not doing it now? And did two webpages which are in my previous rant, pretty good and highly recommended imo
Canada school promised a date but didn’t follow that date, depression attack
Finally sent them an email and got an answer saying the admission approved my application and they are working on paper work. But I still don’t believe it because I’m paranoid
Got an email from a professor today confirming they are doing paper work and I should receive official paper soon.
You can see the dramatic ups and downs, but in the end, guess I’m going to Toronto for phd12 -
The bossman asked if our signup service sends an automated email after we successfully process someone's payment or when we promote them to full customer.
That sounds like a simple query, yeah?
Well.
Here's some background:
We have four applications; one in React, three in Rails. I'll replace their names to retain some anonymity.
1) "IceSkate" is the React app, and it's a glorified signup form. (I wrote this one.)
2) "Bogan" is the main application, and is API-only; its frontend has been long since deprecated by the following two:
3) "Bum" is a fork of "Bogan" that has long since diverged. It now contains admin-only tools.
4) "Kulkuri" is also a fork of "Bogan" that has long since diverged. It now contains tools specifically for customers, which they can access.
All but IceSkate (obv) share a database.
Here's how signups happen:
Signups come in from IceSkate, which hits a backend API on Bogan. Bogan writes the data to the database, charges the card immediately, and leaves the signup for moderation.
And here's how promotion from signup to customer happens:
Bum has a view allowing admins to validate, modify, and "promote" a signup to a full customer. Upon successful promotion, Bum calls "ServerWrap", a module which calls actions on the other applications; in this case: Bogan.
Bogan routes execution through three separate models before calling "ServerWrap" again, this time calling KulKuri.
Finally, KulKuri actually creates the customer!
After KulKuri finishes creating the customer, execution resumes on Bogan, which then returns, causing execution to resume on Bum. Bum then runs through several other models, references the newly-created customer object (as all three share a database), and ... updates the customer with its current data, and then updates the signup object. After all of this, it finally shows the admin the "new customer" view.
It took me 25 minutes to follow the chain of calls, and I still don't know quite what's going on. I have no idea if any of it sends an email or not -- I didn't see any signs of this, but I very easily could have overlooked something.
So, to answer bossman's question... I asked the accounting people if they send the email manually. If they don't, it's automatic, which means I missed something and get to burrow through that mess all over again!
I really hope I missed something; otherwise I need to figure out how and where (and when!) to send the email...
just...
errrrgghh9 -
TFW your client's git policies are so draconian that the dev teams use "develop" as trunk, and completely ignore the release process.
I wrote up 50 pages of git standards, documentation and procedure for a client. Bad indian director 9000 decides the admin (also Indian) who specializes in Clearcase and has no git or development experience is more qualified to decide and let's him set the policy.
FF to today:
- documentation, mostly contradictory, is copy pasted from the atlassian wiki
- source tree is the standard
- no force pushing of any branches, including work branches
- no ff-merge
- no rebasing allowed
- no ssh, because he couldn't figure it out...errr it's "insecure"
- all repos have random abbreviated names that are unintelligible
- gitflow, but with pull requests and no trust
- only project managers can delete a branch
- long lived feature branches
- only projects managers can conduct code reviews
- hotfixes must be based off develop
- hotfixes must go in the normal release cycle
- releases involve creating a ticket to have an admin create a release branch from your branch, creating a second ticket to stage the PR, a third ticket to review the PR (because only admins can approve release PRs), and a fourth ticket to merge it in
- rollbacks require director signoff
- at the end of each project the repo must be handed to the admin on a burned CD for "archiving"
And so no one actually uses the official release process, and just does releases out of dev. If you're wondering if IBM sucks, the answer is more than you can possibly imagine.11 -
Shit just got legal
There's the lead dev, I'll call him John. John is not from the US, Europe, or any of those developed countries. The rest of management are from developed countries.
John found himself in the US for personal reasons, on a non-work visa, and his visa will expire soon. In the meantime, management found an opportunity to raise capital in the US, and they want John to be there because it'll look better in the presentation.
John: Oh but that's a month after my visa expires. You'll have to provide me a work visa.
Management was uncomfortable, because we're not registered in the US. and coz they don't wanna spend money.
The French: Don't worry, the US allows you to come in for 3 months without a visa.
The other management seemed to agree with the French. John had to explain that, no, only very few privileged countries have that right, and for the rest the US border is very, very hard to cross, and the visa process takes months. Most US embassies abroad have a year-long waitlist, though you can pay a (hefty) extra fee for it to be expedited. Fucking management was seriously surprised by this.
The Canadian: Don't worry, I own have an apartment in the East Coast. I could give you the keys and you could stay there for this month until the presentation.
So management wants John to stay in the US illegally for a month because they don't wanna pay for a work visa and the expedition fee.17 -
TL;DR I'm fucking sick and tired of Devs cutting corners on security! Things can't be simply hidden a bit; security needs to be integral to your entire process and solution. Please learn from my story and be one of the good guys!
As I mentioned before my company used plain text passwords in a legacy app (was not allowed to fix it) and that we finally moved away from it. A big win! However not the end of our issues.
Those Idiot still use hardcoded passwords in code. A practice that almost resulted in a leak of the DB admin password when we had to publish a repo for deployment purposes. Luckily I didn't search and there is something like BFG repo cleaner.
I have tried to remedy this by providing a nice library to handle all kinds of config (easy config injection) and a default json file that is always ignored by git. Although this helped a lot they still remain idiots.
The first project in another language and boom hardcoded password. Dev said I'll just remove before going live. First of all I don't believe him. Second of all I asked from history? "No a commit will be good enough..."
Last week we had to fix a leak of copyrighted contend.
How did this happen you ask? Well the secure upload field was not used because they thought that the normal one was good enough. "It's fine as long the URL to the file is not published. Besides now we can also use it to upload files that need to be published here"
This is so fucking stupid on so many levels. NEVER MIX SECURE AND INSECURE CONTENT it is confusing and hard to maintain. Hiding behind a URL that thousands of people have access to is also not going to work. We have the proof now...
Will they learn? Maybe for a short while but I remain sceptic. I hope a few DevrRanters do!7 -
Don’t you love when you put a lot of blood, sweat, and tears into a company and then you get fired because your wife got a flat tire and you had to go help fix it?
When I got to this company they were not using version control, had no tooling in place, and most of our day was spent merging projects by hand and going through a long process to deploy our applications (this company is a primarily Salesforce company).
I got everyone using git and built a node client to transpile JavaScript and SASS, lint code, package everything together, and deploy it to Salesforce. Productivity jumped and the amount of time all of us spent merging code by hand dropped significantly.
A few weeks after finishing this CLI I was moved to another team and subsequently let go because I had to leave early to help my wife fix a flat tire. Now I am freelancing and actually doing pretty damn well for myself. Bonus: I no longer have to work with the disaster that is Salesforce!2 -
Around 2009 or earlier, I began the long grueling process of creating my own batch AI (yes batch as in Windows Batch , kill me for not knowing there were better languages around). Looking back at it, it is THE messiest thing I've ever created. Mostly because of how many unnecessary files were created to make the entire thing work. However, I’m still proud of it to this day because of the dedication I had put into creating the entire thing.
I would create diagrams on the mirrors in my room; of course I would be scolded for this. But I really couldn't stop thinking about my program and working through the entire thing.
I would scribble and type whenever I had the chance, trying to create the functions that would allow the thing to talk back to me. Finally, when it opened its eyes and spoke its first words I quickly started creating the functions that would allow it to learn new inputs. Over time and with some elbow grease I was able to polish it up to my liking.
The entire program branched off some of my more earlier programs in batch, they mostly ranged from the medial to the crazy; i.e. turning my computer on and off at certain times of the day, and multithreaded migration of files to new disks
It's not as sophisticated as other AI progrmas that were being made at the time, but at the age of 16 and with no experience in real programming at all, I'd say it was my first stepping stone towards more sophisticated programs, and ultimately, my decision to enter into Computer Science at all.3 -
Me: "Team, we need to make a call. We have 2 options to deal with issue X: we either apply the mechanism A, sort the issue out right away, but risk creating another issue in the long run, or we take another path and try and change the process revolving around X to make it less painful if any."
Colleague: *calls me on Slack*
Me: "You, tsup?"
Colleague: "You said you wanted a call"
Me: *that's not the call I had in mind......*4 -
TL;DR
A "friend" is a tech fraud. Faking his resume as a software engineer! Only interested on the salary. This is unfair to all of us putting the hours of effort/practice just to improve our craft! 😠😤
I have a "friend" who is faking his resume, putting fake experiences and putting jargons not even related to tech just to make himself smart. He's using his customer service rep experience to talk confidently. His resume fcking long, 3 pages of fakery. I can't help, but to laugh when he sent it to me.
He has a tech degree, but worked in a BPO industry for 4 years, then recently, he quit. He got jealous with the lucrative software development industry and he wants to relearn coding, as a friend and I like sharing my knowledge, I agreed to guide him in the process.
After 3 moths, he got his first job, but unfortunately he got fired after two weeks because he commited sensitive data to the remote repo.
Then after a month, he got his second job and worked there for 6 months, he still don't know what his doing and always ask me solutions when he is stuck.
He got his 3rd job, remote work with high compensation. Fast forward after 3 months, he only got 1 month of salary, the other 2 wasn't given for unknown reason, my best guess is the company noticed his experience on paper does not match on real life.
Currently, he's working on another remote work with same compensation as before, and he still asks me super simple questions from time to time.
This is so unfair to all the devs who truly deserves the opportunity.20 -
Dear Product owners / Company Owners / Whoever requesting a feature:
Devs like to know they are adding value to whatever product they are working on. Every time you request a stupid no value added request, you kick the dev's soul.
After several hits the developer will stop caring about the software and eventually will get the job done, but oh boy, the amount of tech debt/trash code the dev is gonna leave behind will be horrendous.
Then the next developer, not only takes the hit from another stupid request, he/she will see the crappy code the past sad developer left and will take a double hit. Of course all of them start proactive and try to fix previous blood trails but sadness will catch them eventually.
If you want you're apps/products/reports to be good in a long run don't make stupid requests.
BAs, Stop being Expensive Email Forwarders and challenge a request, understand the process and then hand it to the developer.
Us developers are sensible cute ponies. Treat us well or expect poor quality projects8 -
Recently I got into contact with the supplier of that 500W power supply that I've been servicing earlier, as I lost my pictures of the disassembly process with that craptacular Nexus 6P (didn't back them up.. terrible sysadmin, am I not?) and wanted to get the circuit diagrams of this thing in order to repair it. Sales girl wanted to give it to me but she'd have to ask the factory people.. and of course those people denied. As if I wanted to use this for anything but to repair my own bloody unit.. pieces of shit.
So I started considering buying a second one, in order to repair my current supply that I've already spent half a week on to document its components, desolder it, clean it up and resolder it (and replace some resistors here and there with better ones from my own assortment). And the project had to be paused because I lost the stupid pictures and couldn't for the love of God figure out how there's supposed to be a jumper near BD2.
Just now going through my notifs..
"Someone ++'d your rant!"
*clicks notif*
A rant that I completely forgot about.. https://devrant.com/rants/1757297. It's a perfect picture of the supposed jumper near BD2 that I was scratching my head about for so long. Turns out that it's just a dupe of the LF2 lines that I erroneously wrote down twice. DevRant, it's good for more than just venting, haha! Time to restore from a cloud backup XD3 -
The company I interned at last summer decided to adopt a JS framework a little over a year ago. The managers went with the old Angular 1.x because they didn't want a JS build process. Each page has ~100 script tags on it, and these are manually included in various files (no automated way to include dependencies). None of the CSS/JS files are minified, either.
They really should have chose Angular 2+, or an entirely different framework (React, VueJS). They're also just now upgrading the codebase from PHP 5.6 to PHP 7.2 (5.6 support ended a long time ago, and security support ends this month).
I love the company itself but these practices are poor.
I may be working there full time eventually. I hope to eventually help with the inevitable transition to a newer framework once Angular 1.x is dead since I am an avid user of newer JS technologies. Any tips on convincing manager(s) towards newer technology? (Or at least convincing them to combine+minify these files in production to reduce # of requests and bandwidth.)
Also this company's product has millions of active users.16 -
31st December 2016, I had signed up for devRant.
It's my cake day today. Feels so good to be part of this community, have learned so much, made some of the greatest friends here.
2021 was a mind fuck. Taxing and draining. Very little growth and even less learnings.
I realised that I am in a toxic environment.
Lately, no philosophy, therapy, supplements, activity, work, etc. has been helping me to get back to my original self.
I used to spiral down with a lot of negative self talk and playing the victim card.
Just day before yesterday, I decided to listen to some affirmations on the Tube and that actually helped me bounce back.
I started socialising and stepping out to attend gigs and just be outdoors as much as I could.
My surroundings changed and so did my thought process.
Hence, I made a decision to continue affirmations and slowly change my surroundings, even if that demand domestic relocation.
Things are starting to look positive after a long, loooooong, time.
I also need more sun exposure for my vitamin D3 deficiency and steady dose of serotonin.
I feel lot clear in head and heart. My goals are clearer and I am ready to start working hard and be my original past self again.
I love you all and I really wish you all achive all your wishes and dreams, be happier and healthier in 2022 with ton of success and money.6 -
TLDR; I am a piece of shit who writes no documentation or no information whatsoever when I am doing something.
Created a custom version of Windows for our company couple of months ago. Before leaving, I am supposed to pass this valuable information to another new developer.
Obviously, since it has been a long time I have worked on that, I have forgotten a lot of core principles. The process is also automated in Jenkins so never really had to touch it again.
Now that I am about to explain the process to the new recruit, I realised that I have written nothing about that process. No documentation, no information. The only thing I have is a bunch of scripts automating everything for me. WHY WHY do I do this to myself :(17 -
I've tried to stay out of the fray regarding replacing long-standing terminology to use "safe" inclusive wording instead because it doesn't seem like that big of a deal to me to just use the new wording. If the old wording wasn't hurting people (this is an argument that a of a lot of people use regarding this mass naming change movement) then the new wording shouldn't hurt anyone either...
that was just my 2 cents on the topic, until today!
Some dumb motherfuckers are trying to replace the word 'execute' with 'start'/'run'.
That's just some fucking ignorant plebian shit right there. The literal definition of execute is:
"The act or process to carry out fully or put completely into effect"
"to do what is provided or required by..."
"to perform what is required to give validity to..."
start and run don't grammatically encapsulate what execute does. And now I sound like a fucking grammar nazi because this shit is getting under my skin more than it should.
Execute's primary definition is grammatically correct for the context in which it is used.
Change Master/Slave for databases and I couldn't give a single solitary fuck about it. Primary/Secondary works just fine too. The grammatical context isn't blown away here.
But take away my execute and sudden I get all hot and bothered with the desire to punch a nun over how stupid this "offensive words" crusade is.
Thank you for coming to my Ted talk.15 -
sprint retros with PM are a fucking farce, it cannot possibly get any more grotesque.
they are held like this:
- in the meeting, PM asks each team member directly what they found good and bad
- only half of the team gives real negative feedback directed towards the PM or the process, because they are intimidated or just not that confrontative
- when they state a bad point, he explains them that their opinion is just wrong or they just need to learn more about the scrum process, in any case he didn't do anything wrong and he is always right
- when people stand up against this behavior, he bullshits his way out, e.g. using platitudes like "it's a learning process for the whole team", switching the topic, or solely repeating what he had just said, acting like everybody agreed on this topic, and then continue talking
- he writes down everything invisible for the team
- after the meeting he mostly remembers sending a mail to the team which "summarizes" the retro. it contains funny points like "good: living the agile approach" (something he must have obviously hallucinated during the meeting)
- for each bad point from team members, he adds a long explanation why this is wrong and he is doing everything right and it's the team's fault
- after that happens the second part of the retro, where colleagues from the team start arguing with him via mail that they don't feel understood or strongly disagree with his summary. of course he can parry all their criticism again, with his perfectly valid arguments, causing even longer debates
- repeated criticism of colleagues about poor retro quality and that we might want to use a retro tool, are also parried by him using arguments such as "obviously you still have to learn a lot about the scrum process, the agile manifesto states 'individuals and interactions over processes and tools', so using a tool won't improve our sprint retros" and "having anonymous feedback violates the principles of scrum"
- when people continue arguing with him, he writes them privately that they are not allowed to criticize or confront him.
i must say, there is one thing that i really like about PM's retro approach:
you get an excellent papertrail about our poor retro quality and how PM tries to enforce his idiocratic PM dictatorship on the team with his manipulative bullshit.
independently from each other, me and my colleague decided to send this papertrail to our boss, and he is veeeery interested.
so shit is hitting the fan, and the fan accelerates. stay tuned シ16 -
I messed up. We have a senior executive that loves this phrase... "It's going to require all of us to make some sacrifices". 100% of the time he's talking about working 10, 12, or 14 hour days.
So after a few months of this I just chimed in with "this isn't church I don't give sacrifices to my employer. I get PAID for my work."
Honestly I can't say it slipped. I've been telling my wife the exact same phrase for a couple months now. Initially I wanted to discuss it with him directly. Maybe I could explain how making everyone work 14 hour days is not going to end well for us, short or long term. We already know the results short term. We got 50+ defects reported back in our first day of testing for a new project (I'm not on the project but we had a sort of "all hands on deck" meeting to talk about how we can "improve our process so that we don't make so many mistakes". I politely suggested move some people onto this project while we interview candidates. I volunteered to take some of the work items even. But that advice went ignored.
So that's why I asked to meet with the senior exec. He refused to even meet with me. Okay fine you're busy. I emailed him my concerns and suggested solutions. Never heard back. I knew he was going to pipe up with the sacrifice thing so I just blurted it out. It went ignored... So I guess we'll see if I have a job tomorrow or not.15 -
I'm still at my first job, got the job by word of mouth from a friend.
This company wants me to develop both their iOS and Android apps, and being the solo developer it's a long process. I forgot to mention I had to learn objective-c on the job, and being from a java background Android was easy to pick up but it wasn't exactly 100% easy either.
8 months down the line I finished the iOS app and working on the Android app, which is more so copying the features I did with the Android prototype I worked on at the start.
I get paid minimum wage with from the looks of it no sight of a pay raise.
This company doesn't seem to know about how difficult it is to be the only developer for two apps in two different languages.
Anyway aside from this I was wondering if I could get some advice, I want to apply for jobs while I finish up the Android app, but is it a good idea to put the company I work for on my CV? I don't want to risk getting found out for looking for a job, without my boss knowing.
Would it be ideal to just have some sort of more information on request type thing if the jobs I apply for respond?
I guess I could stay until I'm here for one year (student advisor said this) but in saying that I don't think he understands that software development is done in projects rather than time, and after these apps I'll have to start on a new app from scratch, which I'm not looking forward to.
Anyways for any advice you guys give me thanks in advance I really appreciate any input, just wanna get out of this job, the 10 hours of commute I spend a week is killing me :/ along with it being expensive.9 -
- Recruiters are as bad as car sellers
- They are not your friends
- They're not on your side
- The less you ask for a job the more they're gonna get
- Keep your cards on your side
- Don't tell them how much you make (they love to know that)
- Set a salary expectation for yourself and push it
- Expect a few-months long job hunting
- If you know you deserve the salary you are asking for keep pushing.
- Be patient.
- Don't give your 2 weeks notice until you signed already for the other company
- Medical insurance makes a big dent on salary
- Keep applying for jobs even if you are advanced in a hiring process.
So far this is what I've been learning through my current job seeking experience.
I hate job recruiters, if you can, avoid them at all costs10 -
So, today for my SO's father who is already over 70 and wants to try Linux. However, he doesn't want Linux on his main PC for now, rather on the old one so that he can take his time to get familiar, which is a reasonable plan.
But holy crap, what a machine! Intel Core2 Duo 4400, 2 GB DDR2(!) RAM, 250 GB IDE(!) HDD, DVD RW drive. Graphics, sound and LAN integrated on the mobo chipset. It's half a miracle that it doesn't run on steam. The machine had been delivered with Vista and has always been painfully slow.
It doesn't even support booting from USB, but I had prepared a DVD just in case. Surprise: it booted from DVD without issues and with full HW support!
Partitioned and installed, deleted Vista in the process (felt good). I went with the full blown Mint 20 Cinnamon edition because XFCE isn't as beautiful. Also, having XFCE now and then Cinnamon looking different on the other PC would be confusing.
Installation took some time, but worked. Cinnamon's RAM usage is at 750 MB idle, and at 1.1 GB with Firefox started. Once the PC is booted, it runs pretty OK with reduced swappiness and noatime on all file systems, plus unnecessary startup applications disabled. Updates took long, but ran through successfully. Installed LibreOffice and some small games, Firefox got uBlock Origin, Youtube worked OOTB.
That PC somehow had escaped disposal several times - and now has a proper OS for the first time in its miserable existence. It runs so much better than it ever has. Just wow, a "big" Linux desktop from 2020 blows a contemporary Vista out of the water on such an old machine!16 -
Have you ever just worked on a project for so long that you just can’t stay motivated in it? Like you enjoy the project itself but the process of not knowing when it’ll be finished kills the motivation? Is this a normal feeling?14
-
*tries to shrink an NTFS volume in preparation for a new BTRFS volume*
(shameless ad: check out https://github.com/maharmstone/...! BTRFS on Windows, how cool is that?)
Windows Disk Management: ah surely, I can do that for you.
*clicks "shrink"*
…
Well that disk calculation process is taking a long time...
*checks Task Manager*
*notices a pretty disk-intensive defrag process*
… Yeah.. defragging. Seems reasonable. Guess I'll just let it finish its defragmentation process. After that it should just be able to shrink the NTFS filesystem and modify the partition table without any issues. After all, I've done this manually in Linux before, and after defragging (to relocate the files on the leftmost sectors of the disk) it finished in no time.
*defrag finishes*
Alright, time to shrink!
….
Taking a shitton of time...
*checks Task Manager again*
System taking a lot of disk this time.. not even a defrag? How long can this shit take at 40MB/s simultaneous read and write?
…
*many minutes passed, finished that episode of Elfen Lied, still ongoing...*
Fucking piece of Microshit. Are you really copying over the entire 1.3TB that that disk is storing?! Inefficient piece of crap.. living up to the premise of Shitware indeed!!!14 -
Fuck regex and everyone who has ever endorsed the use of and/or is affiliated with regex.
It's unreadable, impractical, overly complex and complicated and it adds unnecessary clutter to your code, and your thought process.
It's 00:50 am and I just spent 3 hours debugging a regex only to realise forgot a single "?" in a 75+ character long string and I want to go to bed.13 -
"What tools are needed for eyelash extensions? (eyelash glue, eyelash extension tweezers, etc.)
When applying eyelash extensions, just as important as the extension process itself is choosing the right tools. They not only make the master’s work easier, but also affect the quality and durability of the eyelashes. In this article we will look at what tools are needed for eyelash extensions.
The first and, of course, the most important tool for eyelash extensions is eyelash glue. This glue provides reliable and long-lasting adhesion between natural and artificial eyelashes. It should be hypoallergenic, safe for the skin around the eyes and water resistant. Only correctly selected glue can guarantee safety and beautiful extension results. Therefore, it is important to choose high-quality eyelash glue https://stacylash.com/collections/... that meets all requirements.
The second necessary tool is eyelash extension tweezers. They allow the technician to conveniently and accurately separate natural eyelashes, which facilitates the process of applying and fixing artificial eyelashes. It is important that the tweezers are of high quality, with narrow and sharp tips to ensure precise capture and separation of eyelashes.
The third important tool is tweezers. Tweezers allow the technician to conveniently and accurately place and fix artificial eyelashes on natural ones. It is important that the tweezers have good grip and grip accuracy to ensure precision and accuracy of the extension process.
The fourth necessary tool is a special eyelash brush. It is used to comb eyelashes before the procedure and to remove excess glue after extensions. The brush should be soft, but at the same time securely hold the eyelashes.
The fifth tool is special overhead eye pads. They are used to protect the skin around the eyes and lower eyelashes during the eyelash extension procedure.
So, for successful eyelash extensions you need high-quality eyelash glue, tweezers, tweezers, an eyelash brush and false eye pads. The correct selection and use of these tools will ensure the safety of the procedure and high-quality results. Don’t forget that only a professional approach and high-quality tools can make your look as expressive and attractive as possible."2 -
Last week, a company(start-up) came for campus recruitment.
This company was known for its long working hours, giving unrealistic deadlines to the employees, less recreational activities, etc.
Even though the pay was very good, some of them were there just to experience the interview process. All those waiting for the HR round, were half-hearted into the process.
This particular guy(a friend of mine) was so determined to be rejected from the company, that he intentionally screwed up his interview (final round).
Towards the end of the interview, the HR asked him to draw a map/path from his hostel to the building in which the interview was being taken.
Once my friend finished making the figure, the interviewer said “Take this same path, and get back to your hostel”.
SAVAGE!
Even though he was successful in getting rejected, the way he got rejected really crushed his ego.2 -
Situation: My lead dev (read as in, my employee that has the lead developer position, not my superior) is complaining about certain decisions being made in regards to a rather large project that has been stagnated by executive political bullshit.
Me: let them fuck themselves over, it is their decision to have a voice on this and we are not the ones developing it, merely managing the resources.
Him: Well they do not know what they are asking! everyone is wanting to have an opinion! a voice!!!
Me: and by their own volition they will fuck themselves over and I have the proper documentation to show everyone that if the project is delayed, it will be by popular vote. I have already spoke to our VP to let him know that we are not taking part in their decision planning process, that we provide the necessary feedback, they get to do with it what they want regarding their decisions.
Him: they are being really stupid and inconsiderate
Me: they are indeed, but as long as I show that you, me, and the rest of the team provided input, they disregarded it and went with their decision, then then the fault is on them, not you or our team. Let them fuck themselves over, I have the documentation needed to secure our asses, I record every conversation and I have every email saved. Really, if they don't want to listen to you they will not be able to point the issues that will inevitably rise back to you or us.
Him: .... you are evil
Me: fuck with me team see what happens. Their face and reaction is what makes me get a hard on after the fact.
Ain't no one touching my team.10 -
After working for this company for only a couple years, I was tasked with designing and implementing the entire system for credit card encryption and storage and token management. I got it done, got it working, spent all day Sunday updating our system and updating the encryption on our existing data, then released it.
It wasn't long into Monday before we started getting calls from our clients not being able to void or credit payments once they had processed. Looking through the logs, I found the problem was tokens were getting crossed between companies, resulting in the wrong companies getting the wrong tokens. I was terrified. Fortunately I had including safe guards tying each token to a specific company, so they were not able to process the wrong cards. We fixed it that night.1 -
My best case "Deploy Bittersweet Pipeline":
Prep a bunch of carrots, cucumber and tomatoes for day snacks. Roll & cut some pasta noodles, cook stock with fresh veggies & mushrooms, add some droopy soft boiled egg(s) to the broth, drizzle in some black garlic hot sauce. Enjoy that breakfast with an unsweetened Australian flat white and a half-liter cup of chai spiced green tea. Watch some science/tech/woodworking/cooking YouTube videos while feeding my Bittersweet Jr girl.
(yeah my mood is determined for about 90% by food)
Fire up docker compose & IDEs, and start refactoring code and migrating/fixing old databases.
My worst case "Fatal Incident Bittersweet Repair & Recovery Process":
Stuck while refactoring the worst kind of trash code since 9am.
Pour a glass of Tawny Port at 9pm. Pour a glass of cognac at 11pm. Unwrap 3 chocolate bars and break them into chunks in a bowl. Look at IDE, get nauseated, not from the booze or chocolate, but from the code.
Can't fall asleep because code is too broken, that crap should simply not exist. Take some LSD and amphetamine, can't sleep anyway. Start splitting several 10k-line-long files into smaller classes, type until my fingers have blisters. Empty two bags of Doritos, order a large Falafel with extra garlic sauce at 4am.
Fall asleep at 5am with my face on my keyboard, wake up at 9am with keyboard pattern on my skin.
Cook some hangover noodles.
Call work that I'm taking 3 days off. Feed Bittersweet Jr while I watch some YouTube channels with her. Bittersweet has successfully rebooted.1 -
A colleague of mine had to debug performance problems in a foreign, proprietary application that is ancient.
To be crystal clear: Only reason that thing exists is because some old geezers fear change.
Asked me for help cause it's an _ancient_ MS SQL server that is luckily running on hardware owned by us.
Finding the credentials was already a funny task.
We had to access the vault (not joking here, we have a physical vault for storing sensitive data and critical backups), grab a folder and find the necessary data cause no one ever dares to touch that thing.
The application is btw for a sort of ERP / inventory system that is used in some ancient shops not yet migrated...
Yeah. Story speaks for itself.
Anyway, after dusting off ourselves, we were able to connect.
Was a bit ... Interesting. Everything's in german. The worst kind of german.
After looking at the first tables, I started giggling.
My colleague knew immediately that this was a sign of danger (insert Simpson meme here), raised his eyebrows and asked "How bad is it....".
Me, still giggling, "lemme take a further look, this is gold".
*long sigh from the colleague*
Well... It ended with me putting my hands in front of my eyes, turning around and saying: "I cannot look at it anymore, it hurts too much...."
To summarize:
- German table names
- When a table exceeded 300 plus columns, they added another table with the same plus suffix "_ddd"… where ddd is an zero filled integer sequence like 001
- To join this mess, they created views... Named "generator" - Sequence Number ... Some had the beginning of table names appended, which doesn't make it less confusing.
- the process list was listing queries running longer than 5 mins.
Which isn't at all surprising when generating carrtesian products of N tables with left join.
I've seen shit.... I've seen a lot of shit.
But that shit scared me.1 -
Duckduckgo is AWESOME :)
So happy I moved on from Chrome & Google (just searching for now, its a long process)6 -
Fuck. Medium.
Fuck all the articles on it too.
Do you seriously think I am so fucking dumb that I cannot keep my attention on a paragraph of text without at least one image for five seconds straight?
Three quarters of your shitty fucking article are images. They don't even relate to a damn thing in the article. It's just a fucking stream of random image subtitles.
It's just as bad as people randomly mashing pictures they found via Google search into their Power Point presentation because they actually have no content, breaking all copyright laws in the process, so they can stretch their mindless bullshit as long as humanly possible.
FUCK. YOU.6 -
The company I am currently working for is partnering with another startup. Nothing special about that. We should integrate their API into our system. I wasn't involved in the process when it came to checking there API and if it would work with our Systems. The Person who did that already left the company so I was left behind with some internal documentation. In that Documentation is already written that API is basically trash....
After I started integrating the API I found more and more flaws in the design. They are not sending any responses that would help, when a param is missing or the authentication isn't correct, only 500's . I got some documentation from the partner company so i thought it will be fine as long as the Documentation would be accurate. Turns out the documentation isn't even close to be up to date. Wrong content types wrong endpoints, wrong naming. Basically we could not work with that. We shortly contacted the partner Company. After a few WEEKS we got a response that they updated the Documentation what was right but still not everything was correct. At this point I lost my mind. I researched a little bit about them, the company is founded from 2 young people who basically came strait out of the University and doest have any experience or idea how to build an API. I investigated a little bit there websites.
They have an Admin panel on the base domain from their API but it is only accessible via HTTP. Like WTF , They use HTTP for an Admin Panel this must be a joke right?
They use Cloudflare without a HTTP to HTTPS redirection ???
I really had not that much time to research in there website but if I find these things in 5 minutes I don't want to know what I can find in like an hour.
At the end we will still use them as partners because surprise surprise our company already sold the product that uses their API.
I know that I will be the person who has to help fixing this shit when it breaks and it will break 1000% JUST FUCK THIS SHIT. FUCK THE PARTNER COMPANY. FUCK THERE API.2 -
I work as the entire I.T. department of a small business which products are web based, so naturally, I do tech support in said website directly to our clients.
It is normal that the first time a new client access our site they run into questions, but usually they never call again since it is an easy website.
There was an unlucky client which ran into unknown problems and blamed the server.
I couldn't determine the exact cause, but my assumption was a network error for a few seconds which made the site unavailable and the user tried to navigate the site through the navbar and exited the process he was doing. It goes without saying but he was very angry.
I assured him there was nothing wrong with the site, and told him that it would not be charged for this reason. Finally i told him that if he had the same problem, to let me know instead of trying to fix it himself.
The next time he used the site I received a WhatsApp message saying:
- there is something clearly wrong with the site... It has been doing this for so long!
And attached was a 10 second video which showed that he filled a form and never pressed send (my forms have small animations and text which indicates when the form is being send and error messages when an error occurs, usually not visible because the data they send is small and the whole process is quite fast)
To which I answer
- It seems that the form has not been send that's why it looks that way
- So... What an I supposed to do?
- click send
It took a while but the client replied
- ok
To this day I wonder how much time did the client stared at the form cursing the server. -
Once upon a time, one or two jobs ago, a really awesome engineer specced out a distributed search application in response to a business need. This company was managed pretty oldschool and required a ton of paperwork and approvals.
The engineer spent many weeks running tests and optimizing the hell out of this app cluster. It flew, and he had the data to prove it could handle production workloads (think hundreds of terabytes of data being processed every single day)
Part of the way he achieved this was having RAID0 on all of the servers to maximize I/O throughput. He didn't care much about data loss, since the application itself was fault tolerant on a much more granular level.
Management, hearing about this, absolutely flipped their shit and demanded RAID6 instead. This despite the conclusive data that the engineer had that proved RAID6 couldn't keep up.
He more or less got told to STFU.
Even this despite the fact that a RAID restripe would actually take many times longer than rebuilding the failed node from scratch (a process that took about 30 minutes by hand, and could probably be automated to be done in less than five), causing a longer exposure to actual data loss throughout the length of the days-long array rebuild time.
The ill-thought-out requirement added about 50% to the cost of the project (*many* more hard drives now required), beyond the original budget, and the subsequent bureaucratic wrangling resulted in a late product launch.
6 months or so later, after real customers were using this product, the app was buckling under around half of its expected workload. A friend of the engineer suggested to management to try RAID0. Sure enough, that resolved the I/O bottleneck.
This rage-inducing story has a happy ending, though! Said engineer left the company not long after this incident, citing it as a reason for his departure. He was immediately hired by another company, making integer multiples of his prior salary.
The product the company botched the launch of by ignoring his spec? It died a few months later. Maybe the poor customer experience was to blame? Maybe the late launch? Maybe it was another reason entirely.
Either way, millions of dollars of hardware now sat fallow. This was a black eye on the company all the way up to the C-level.
tl;dr: Listen to your engineers. You hired them for their expertise.5 -
I’m dealing with the worst client I’ve ever had. The project has gone on for way longer than it should, mainly because of them adding a tonne of features to the scope. I should have told them to fuck off but I felt sorry for them because COVID was hitting them hard. So I put in a lot of extra unpaid work to try and get them through it and now they repay me by asking for a refund because they’re now broke?
They blame me for their now being broke when it’s clear they’re broke because of COVID absolutely decimating the restaurant industry. They say that because it took so long to add all those extra unlaid features it’s now my fault?
All this just as I’ve finished the app and am going through the process of releasing it to the stores. I’m probably going to have to take them to court to even get my pay out of them... Thats if they even have money to pay now.
I’ve spent all year trying to get this app out the door only for them to turn around and start abusing me on the phone when things start going down hill for them.
This whole project has been a complete waste of time when I could have been focusing on clients that don’t treat me like shit.4 -
I’m a team lead in the tech team, myself and another team lead manage the on call processes for the department, so when stuff breaks we need to fix it. I assume there is sufficient documentation available for me to fix a process that is not mine.
one of the other managers processes breaks. He’s on annual leave and is away for another week. I attempt to fix the process. No documentation. What do i do?
I go to my manager the next day and tell her the process is broken and I can’t fix it because there’s no documentation and I don’t know what the full impacts are. She agreed we should leave it until he comes back from AL.
He comes back a week later. I tell him the process is broken and it’s been failing since he went on AL.
Him: we had a handover before I went on holiday
Me: no, you showed me where the ‘documentation’ was. Said documentation is not defined enough and is out of date. I didn’t want to break it further by trying to repair it when it’s not completely critical
Him: but it is critical, it has to run every day
Me: so why doesn’t it say that in the documentation?
Him: ............
Me: can you fix it please
Him: no, I’ve got too much to do having just come back from holiday
Me: more critical that a process that has to run EVERY DAY and has been failing for the past 10 DAYS??
Him: I’ll see if I have time
2 hours later...
Him: Lets put in some time for handover so you can understand the process. Is an hour long enough?
Me: I don’t know, you tell me, it’s your process, you know what’s involved and how long it should take to explain
Him: well is an hour long enough?
Me: I don’t know, it takes however long it takes you to explain it
Him: I’m asking you
...........
At this point I’m getting more and more angry, how can you not know how long your process is gonna take to explain when you’re the one that wrote it?! I fully well know that it’s gonna take longer than an hour because it’s an SSIS package that looks like a plate of spaghetti, you spend 15 minutes working out what box flows to where before even looking at any SQL, and he’s still asking me how long it’s gonna take and distracting me from my ACTUAL critical work
Man is a waste of space, so quick to give you work that isn’t his but never takes responsibility for his own... honestly have no clue whatsoever how he became a manager....
This rant doesn’t seem like much reading it back but I swear it’s the last in a looooonnngggg like of his fuck ups that other people have had to deal with 🙄🙄3 -
So a little story about finding your way. I worked at an IoT software firm, very well established. I had a hard time with the on boarding process due to some factors, and I must have lagged behind their mental schedule for my growth. It was clear nonetheless that I was a quality coder and had made some friends there.
It wasn’t enough for the ensuing corporate bullying. It went by and I took it. I became the yes man just so I don’t frustrate anyone enough to turn away my ask for help. This made things worse and before long, I a grown man went to visit my mum and all but cry at how small I felt, after all my hard work getting to the company.
I felt sick with failure but I knew I couldn’t go back. I emailed my resignation and dropped off my company laptop.
4 months later I am working at a medical startup with my own projects, that I have 100% control over. And the quality of my work and ethic is pleasing upper management in all the right ways. I’ve never been happier, and there are barely any perks on paper. No free lunches on Thursdays or discounts at the local high street. I’m the happiest I’ve ever been in my life because I said NO to feeling or being treated any less than I worked and progressed to be.
Don’t let other people stop your potential for their own ego, or any other reason. 😊 -
2 things I'm working on now:
#1 a personal project I am hoping to commercialize and turn it into my moneymaker. Hoping it'd at least be enough to pay the bills and put food on my table so I could forget 9/5 for good. But it has a potential of becoming a much, MUCH bigger thing. This would need the right twist tho, and I'm not sure if I am "the right twister" :) We'll see.
#2 smth I'm thinking of opensourcing once finished -- a new form of TLS. This model could be unbreakable by even quantum computing once it's mature enough to crack conventional TLS. I'm probably gonna use md5 or smth even weakier - I'm leveraging the weakness of hashing functions to make my tool stronger :)
I mean how long can we be racing with more powerful computers, eh? Why not use our weakneses to make them our strengths?
Unittests are already passing, I just haven't polished all the corner-cases and haven't worked out a small piece of the initialization process yet. But it's very close6 -
Only if people understood the amount of effort that goes behind building a simple app.
Even if it's a simple notes app, I've to design the UI (at least 2 different activities - 1 for the list and the other for editing notes), write the code which makes it run i.e. without which the app is just a piece of empty design, think about what data
structures to use (that notes you are saving need to be stored somehow) and then club everything together and hope nothing breaks (spoiler alert: something will definitely break).
People need to understand that it's not just putting some fancy buttons and boxes around. Also, I'm not just making the app for one device. I've to make sure it works on different screen sizes, different versions of the OS (a user can't imagine how many functions need to be re written because something got deprecated in the process and I'd to switch to something different).
Also I'm not just sitting at my computer and converting coffee to code. I've to think about the flow, structure, design, navigation, backend etc. Of the app; most of my time isn't spent writing code but thinking/studying how to write the code. I also need to wait while the project is compiling/building every time I want to test it.
A function which you think is hard to implement night be really easy while something you claim is easy might be a nightmare. Oh and I didn't even mention how I need to stick to some design guidelines to make the app look consistent with the rest of the OS.
If you're wondering why a developer is spending most of his time on a browser, he isn't playing internet games or browsing reddit ( at least you better hope not), he's probably looking at the docs/stack overflow to get something to work/fix something!
Wow! That was long. Thanks!3 -
I think, after a few weeks, I'm actually quite enjoying that the Android SDK is genuinely awful.
We all know the feeling: "This is shit, whoever designed this is a fuc...oh, I get it. This is pretty cool actually."
So, it's nice to encounter a genuine dumpster fire of a platform.
I think the beautiful thing about its absolute obsession with providing a context to every single operation, is that you end up passing it around so much that the very concept of context becomes redundant.
Honestly, half of the stuff in here I've just attached to a global statics class, because it saves having to request a context, or a manager or some fucking kind of adapter, and it works just fine.
I've started to laugh when I look up a solution and see the browser scrollbar shrink into infinity, because the recommended answer is about two whole pages' worth of boilerplate to make the back button disappear or something.
I don't think there's been a single moment where I've just been in the flow of writing code. Pretty much all of the process is grafting boilerplate into it.
Not long til deadline, thank fuck.2 -
I'm in the process of changing jobs and at the point where I need to sign the contract with the new company.
The concern I have is that of work life balance. There is a clause that obviously speaks to overtime and renumeration thereof, etc. But, there is also a clause that mentions that their office hours extend to Saturday mornings.
Speak to my wife about it and all I get is "That's how it is in your industry. I know of my other programmer friends who work late and long hours, so the fact that you don't currently work overtime seems very rare."
I don't think it's rare nor should it be the normal to have to constantly work extra hours. This is not a thing of being lazy or not dedicated to your job, but rather that you put in the time that is required and that alone should be enough to show your "dedication" to the job. Personally I feel that if you're fucking there everyday, giving your best, and you leave at the end of the day, no questions asked, that it is good enough!3 -
Just had a great interview :)
The guy was really cool, asked actually relevant questions (my learning process, what I specialize in, etc), talked about the tech they'll be using and none of that "wHaT aRe YoUr WeAkNeSsEs?" bullshit.
He seemed to like me, he seemed to like the fact that I've been programming for a long time even though I'm in my second semester in college and he also seemed to like that I'm somewhat of a Swiss army knife, a jack of all trades but master of none.
I just I was a bit too informal in the interview but whatever. I'm not taking this very seriously, if I get the job I get the job, if I don't that's fine too.6 -
My head is melting. Does anyone have a colleague who constantly complains about missing specs, documentation, project organization, bad processes and procedures? Everything needs to be planned. Not a single small code change can be done without reviewed details. 10min job becomes a week-long session of whining and dabbling.
You give the guy a small task and at the end of the day nothing is done. Just page after page of written documents and lists in Word and online notebooks. Version numbers, meaningless measurement results, latencies etc. And all you asked was "could you just fucking fix this one thing and quickly compile and check it". But no. There must be a review and at least 10 people need to be called into conference. Someone needs to approve everything just so that he can later move to blame to others. "Yeah I know it's not working but I showed you the code and you reviewed it!". Yes, you did, but other people have work of their own so sometimes you need to tie your own shoelaces.
And sometimes finally there's some work done. All indentations are shit. There’re code changes everywhere just because the guy didn't like the previous smaller, compact and logical code. The code doesn't even compile properly anymore. And if you complain, the reason is "there's no proper reviewed and stamped process description, so I cannot know if a variable is supposed to be 10 characters long. Besides 200 character long variable names are much more descriptive". For fucks sake.
Some coders should've gone to work in some tax office basement.9 -
Want to be likeable or get your way through people?
No need to sell ice cream, just validate those insecure souls.
Wide majority does not want their fragile bubble to be broken even if they are suffocating within.
All they seek is validation. That's fucking it. That's the secret.
If someone asks you for some opinion or support, most of the time they are just want to hear how great their mediocre thought process is.
Someone's lack of ability accept criticism and grow is the sole reason they are stuck in quicksand situation and only drowning further.
An unethical social skill but this will take you a long way and also help you stay sane from the insecure narcissistic scums by avoiding toxic interaction.
JUST VALIDATE THEM.27 -
About 3 years ago, my girlfriend had this laptop that she got from her University. She had to give the laptop back to get reset, but didn't want to lose all of her data on it, and a backup would be around 750GB.
So I suggested that I would backup the laptop (was thinking to just dd an image and go from there). So I plugged in my mobile USB and external hard drive, and started the imaging process. Given the amount of data and setup, the process should have taken about 5hours. So we left it there for 5h.
Please be mindful that at this stage in my life I knew very little about boot processes, oses, and hardware.
5h after. The laptop screen is black and it ain't responsive. Not sure what happened, the dd process was completed, but the laptop refused to boot into windows. Tried a number of boot tools, and spent a crazy night hacking at the machine. But the university had some of sort of fail safe to not allow anyone to boot into windows if someone opened bios without entering a password. Whatever this was, I spent over 12h trying to either open mount the windows partition with a Ubuntu usb or mount the corrupt dd image on my laptop.
Long story short, after throwing at it a number of fixes. I was able to mount the image, copy out all of her personal data, and reinstall a new version of Windows on her laptop. The university didnt understand why the laptop was already reset. She still mentions this to me anytime I want to take a "custom approach" to software lol2 -
I was asked to fix a critical issue which had high visibility among the higher ups and were blocking QA from testing.
My dev lead (who was more like a dev manager) was having one of his insecure moments of “I need to get credit for helping fix this”, probably because he steals the oxygen from those who actually deserve to be alive and he knows he should be fired, slowly...over a BBQ.
For the next few days, I was bombarded with requests for status updates. Idea after idea of what I could do to fix the issue was hurled at me when all I needed was time to make the fix.
Dev Lead: “Dev X says he knows what the problem is and it’s a simple code fix and should be quick.” (Dev X is in the room as well)
Me: “Tell me, have you actually looked into the issue? Then you know that there are several race conditions causing this issue and the error only manifests itself during a Jenkins build and not locally. In order to know if you’ve fixed it, you have to run the Jenkins job each time which is a lengthy process.”
Dev X: “I don’t know how to access Jenkins.”
And so it continued. Just so you know, I’ve worked at controlling my anger over the years, usually triggered by asinine comments and decisions. I trained for many years with Buddhist monks atop remote mountain ranges, meditated for days under waterfalls, contemplated life in solitude as I crossed the desert, and spent many phone calls talking to Microsoft enterprise support while smiling.
But the next day, I lost my shit.
I had been working out quite a bit too so I could have probably flipped around ten large tables before I got tired. And I’m talking long tables you’d need two people to move.
For context, unresolved comments in our pull request process block the ability to merge. My code was ready and I had two other devs review and approve my code already, but my dev lead, who has never seen the code base, gave up trying to learn how to build the app, and hasn’t coded in years, decided to comment on my pull request that upper management has been waiting on and that he himself has been hounding me about.
Two stood out to me. I read them slowly.
“I think you should name this unit test better” (That unit test existed before my PR)
“This function was deleted and moved to this other file, just so people know”
A devil greeted me when I entered hell. He was quite understanding. It turns out he was also a dev.3 -
Ever dealt with people who don’t understand a damn thing they’re coding and just copy and paste stuff around and say that it works? It’s amazing how long people can skate by with only knowing 50% of how what they’re working on works.
We had some dumb know it all on our team who would regularly ship half-done stuff to production and then scramble to fix it after the users bitched about how it didn’t meet the requirements.
This stupid person changed an else to an if having no idea what any of the logic did in this section of code, didn’t adequately test it, and it somehow made it through code review because the better devs were out of office.
This bullshit goes to production, fucks up 200,000 records, and users start complaining about it. Shitty developer refuses to revert the offending code until multiple people on the team overrule them. They spend the next week unfucking the data and decides to just take a day off on Wednesday because it’s been “too much mental energy to fix.” The shit wasn’t even fully resolved yet.
Some people seriously do not belong in this industry. This person’s thought process was:
“Changing an else to an if can’t possibly have significant consequences. Let’s just change this so my code change executes to see what happens.”
Still not sure how they weren’t fired when this happened. They unfortunately got to quit on their own two months later.3 -
I promised i'd be home at 18:00
We discovered a bug at 17:30
We need to have an output for tomorrow
The process takes so many hours so we need to fix this bug before leaving so it can run all night long.
It's 19:06
Wife is gonna get mad...3 -
I just got trolled by Amazon.
LOL and FML.
Be me, super busy with tons of things to do trying to prioritize tasks and jiggle jaggle from one thing to another.
Then i get a call from an Amazon representative, which I know:
Her: You should join the AWS Founders Club, you will get a lot of benefits.
Me: I don't really want to, I already looked into it and the process is long.
Her: You should do it, you got what it takes. Just register through this link..
Me: O.k.
1 day later
AMAZON: Unfortunately, we have to inform you that at this time we aren't able to accept your application. Though your startup story is impressive, your startup isn't at the right place in its journey to benefit from what the AWS Founders Club can offer.
WHAT A FUCKING WASTE OF TIME!
I didn't even want to join in the first place!!! What is this next level of trolling?!5 -
A little late but whatever.
About half a year ago, I started working on setting up self hosted (slippy) maps. For one, because of privacy reasons, for two, because it'd be in my own control and I could, with enough knowledge, be entirely in control of how this would work.
While the process has been going on for hours every day for about half a year (with regular exceptions), I'll briefly lay out what I've accomplished.
I started with the OpenMapTiles project and tried to implement it myself. This went well but there were two major pitfalls:
1. It worked postgres database based. This is fine but when you want to have the entire world.... the queries took insanely long (minutes, at lower zoom levels) and quite intimate postgres/tooling knowledge was required, which I don't have.
2. Due to the long queries and such, the performance was so bad that the maps could take minutes to render and when you'd want that in production... yeah, no.
After quite some time I finally let that idea sail and started looking into the MBTiles solution; generating sqlite databases of geojson features. Very fast data serving but the rendering can take quite some time.
After some more months, I finally got the hang of it to the point that I automated 50-70 percent of the entire process. The one problem? It takes a shitload of resources and time to generate a worldwide mbtiles database.
After infinite numbers of trial and error, I figured out that one can devide a 'render' (mbtiles aka sqlite database) into multiple layers (one for building data, one for water, one for roads and so on), so I started doing renders that way.
Result? Styling became way more easy and logical and one could pick specific data to display; only want to display the roads? Its way more simple this way. (Not impossible otherwise but figuring out how that works... Good luck).
Started rendering all the countries, continents and such this way and while this seemed like a great idea; the entire world is at 3-4 percent after about a month. And while 40-70 percent generates 10 times as fast, that's still way too slow.
Then, I figured out that you can fetch data per individual layer/source. Thus, I could render every layer separately which is way faster.
Tried that with a few very tiny datasets and bam, it works. (And still very fast).
So, now, I'm generating all layers per continent. I want to do it world based but figured out that that's just not manageable with my resources/budget.
Next to that, I'm working on an API which will have exactly the features I want/need!13 -
Anyone else here with anxieties, depression or what-not? I feel this could get heavy, but I feel this is the only place I could write this. So...
My 18-month-long programming course is slowly coming to an end. Time has come for us to be sent out to job interviews at various companies.
Every single time an interview comes up, I feel the exact same mix of my inconfidence, constant anxiety, "I'm gonna throw up", impatience and whatever else is there in my head. I figured it would get easier with each consecutive interview but it hasn't.
The questions they ask make me sick. The atmosphere is unfathomable. Robots are more humane.
- Why do you want to work with us?
I need money for my meds and something to down them with? I willingly put myself through this shit to become a corporate slave, what else is there to say? I can only hope I'll be writing any code here.
- Where do you see yourself in 2-3 years?
Far away from anything remotely related to an HR department of any sort?
- Had you been a fruit, which one would you be? Whatever would come out of my tears blended with semen? What the fuck is even that question?
Of course those aren't my actual responses, but conjuring the IRL ones to finish the process is a serious burden. And those are only some HR ones. After this barrage of questions they want my lifeless, flaccid body to write code. I mean ok, it's a software dev gig, but I already gave all I had on self-clairvoyance.
We'll be in touch!
Is there a strategy you guys have when you go to an interview? Any tips for taming the acrid beast running around in your brain? Is it too much to talk with a human in a humane language without "15 buzzwords to make the recruiter moist"?5 -
I'm getting more and more triggered by my colleagues overusing words in seemingly random fashion.
The word 'perspective' comes up at least 6 times during a meeting, from an x perspective, from a y perspective. It would be fine in a design meeting but it's used _so fucking much_ I cringe every time I hear it.
Another one is 'standard', that gets put in front of every word nowadays, standard process, standard protocol, standard machine, standard pipeline. What does it mean? No clue, what does it add? Nothing.
'Please put this add the standard location.'
Where?
'The default one'
What?!
I remove it from documentation every chance I get.
Furthermore, some documentation changes make small pieces of information super long. A nice summary list of features? Make it at least 3 sentences for every bullet point. 1-sentence info with a reference link to more info? Scratch that let's include all information in that reference paragraph anyway. Sometimes they even expand English expressions for no reason, making them longer and harder to read.
WHYYYY
We always complain about shit documentation and yet we're oblivious to the fact that our own docs are so bloated. Stop repeating information, stop using useless adjectives, just put it all in 1 sentence and add dozens of code examples. One piece of code says more than a billion words.
I'm not innocent either. As a teen I was great at writing long pieces of text that seemed like a great read but were actually way too bloated for the information I needed to convey. It was great for reaching word limits.
Now I'm trying my absolute best to be as concise and to-the-point as possible because I know that nobody likes reading and people just want the information that they're looking for.
Even this rant is overly long, but thank god that it's just a rant and I can let off some steam.
Btw same thing goes for diagrams, too many icons, too much text, too many lines. When I try to submit a clean-as-fuck diagram I get asked to add more info/features to which I say No, we're already at the max.
I even got a PR for review that made some changes to add unnecessary information, I pointed it out and never heard anything from them again. I rejected the PR, and never saw a new one.
* Sigh *
It's just so strange to me, it's never clear to me why these things happen. I'm too much of a coward to point these things out unless they endanger the quality of the product. But maybe they just need somebody to tell it to them.6 -
Annoyance in C: using the same keyword for two unrelated things, process-long memory allocation and internal linkage. Looking at you, static.
The latter should really have been called "intern", just like there is "extern". Far more people would use it if it was named correctly.
History says "static" was chosen for compatibility, allowing older compilers to take new source files.2 -
The company considers the project manager I work with to be the best. After working with him, I consider him to be everything that is wrong with project management.
This PM injects himself into everything and has a way of completely over-complicating the smallest of things. I will give an example:
We needed to receive around 1000 rows of data from our vendor, process each row, and host an endpoint with the data in json. This was a pretty simple task until the PM got involved and over complicated the shit out of it. He asks me what file format I need to receive the data. I say it doesnt really matter, if the vendor has the data in Excel, I can use that. After an hour long conversation about his concerns using Excel he decides CSV is better. I tell him not a problem for me, CSV works just as good. The PM then has multiple conversations with the Vendor about the specific format he wants it in. Everything seems good. The he calls me and asks how am I going to host the JSON endpoints. I tell him because its static data, I was probably going to simply convert each record into its own file and use `nginx`. He is concerned about how I would process each record into its own file. I then suggest I could use a database that stores the data and have an API endpoint that will retrieve and convert into JSON. He is concerned about the complexities of adding a database and unnecessary overhead of re-processing records every time someone hits the endpoint. No decision is made and two hours are wasted. Next day he tells me he figured out a solution, we should process each record into its own JSON file and host with `nginx`. Literally the first thing I said. I tell him great, I will do that.
Fast forward a few days and its time to receive the payload of 1000 records from the Vendor. I receive the file open it up. While they sent it in CSV format the headers and column order are different. I quietly without telling the PM, adjust my code to fit what I received, ran my unit test to make sure it processed correctly, and outputted each record into its own json file. Job is now done and the project manager gets credit for getting everything to work on the first try.
This is absolutely ridiculous, the PM has an absurd 120 hours to this task! Because of all the meetings, constant interruptions, and changing of his mind, I have 35 hours to this task. In reality the actual time I spent writing code was probably 2-3 hours and all the rest was dealing with this PM's meetings and questions and indecisiveness. From a higher level, he appears to be a great PM because of all the hours he logs but in reality he takes the easiest of tasks and turns them into a nightmare. This project could have easily been worked out between me and vendor in a 30 min conversation but this PM makes it his business to insert himself into everything. And then he has the nerve to complain that he is so overwhelmed with all the stuff going on. It drives me crazy because this inefficacy and unwanted help makes everything he touches turn into a logistical nightmare but yet he is viewed as one of the companies top Project Managers.3 -
Haven't been here for a long time, kinda amazed I still had an account to be honest. There used to be a bunch of people I chatted with regularly on here, but my mentally ill self decided at some point to self sabotage (surprise surprise) and cut contact with almost everyone.
That said I've gone through quite a bit of therapy, which has definitely improved my outlook on life and allowed me to do some much needed self reflection. Has that made life better? Hard to say, but I like to think I've got a grasp on my mental health now, with the occasional relapse, because shit's a 🌈process🌈.
I'd like to apologize for the hurt I've caused some people here, you know who you are. My behaviour at times has been inexcusable. There's no sugarcoating it.
The past years have been a rollercoaster to say the least. Switched jobs multiple times. Went from doing frontend exclusively, to fullstack, then backend, and now engineering lead responsible for all architecture and infrastructure, learning a lot about myself and people around me along the way. Somehow I managed to get into a somewhat stable relationship, which is still a big WTF from time to time. The company I currently work for has had a metric fuckton of layoffs, just like the company I worked for before that. I can tell the lack of stability in work still affects my mental health a lot, but seeing how I've been growing a lot personally while the market seemingly has gone to shit gives me some level of confidence. I'll be alright.
This is mostly a sign of life to whom it may concern. I'm alive, existence is dreadful but manageable, shit's hard, but it's all gonna be okay in the end. I may or may not post a rant from time to time, as management loves unrealistic deadlines, and the PM can't say no to the CEO for some reason so her work ends up on my plate most of the time as well. Oh and of course the primary product of the company had a codebase which made me want to gorge my eyes out. So yeah, plenty to rant about.25 -
I think I might change my middle name to "I told you so"
Couple of weeks ago I proposed integrating a daily process job into an existing WPF application (details of what+why would be too long to explain) and the manager suggested I make the changes
Me: "I can do it, but Jay has the most experience with that application. I don't have his WPF skills"
Mgr: "How hard can WPF be? If it uses the MVVM pattern, it should be a snap."
Me: "Its nearly an 8 year old WPF project with several chefs in that kitchen. I pretty sure I could figure it out, but that is a difference between 2 weeks and 2 days. Integration is pretty straight forward, Jay could probably do it in a day."
DevA: "WPF is easy. MVVM makes it even easier. I worked on the shipping app."
Me: "That's was a brand new, single page app, but yea, it should be easy."
DevB: "WPF has been around a long time and the tools have really matured. I don't understand what is so difficult."
Me: "I didn't say anything would be difficult, I know with that application, there is going to be complexity we need to figure out."
DevB: "It uses the MVVM, so all we need is the user control, a view model, controller, and its done."
DevA: "Sounds easy to me."
Mgr: "If you need more time to work on the vendor project, I'll have DevB work on the integration."
<yesterday>
Me: "How is the integration going?"
DevB: "This app is a mess. I have no idea how they got the control collections to work. If I hard-code everything, I can get it to work. This dynamic stuff is so confusing. Then there is the styling. Its uses dark mode, but no matter what I do, my controls show up in light mode."
Me: "The app uses Prism, so the control configuration is in, or around, the startup code."
DevB: "That makes sense. Will it fix the styling too?"
Me: "I have no idea. When I looked at it, some controls loaded the styles from the main resource, other's have it hard-coded. Different chefs in the kitchen, I guess. How far have you got?"
DevB: "I've created invoice button. That is as far as I got"
Me: "I'm finished with the vendor project and I'll be wrapping up the documentation today. I can try to help next week."
DevB: "Thanks. I think we might have to get Jay to help if we can't figure this out."
Me: "Good idea"
Two weeks and only a button. A button? I miss Delphi.3 -
So it's been a while since I've posted as my first few months at the new job have been amazing. But now I'm running into issues with a team member that I need to get off my chest.
So my new job is front end development in React. I'm brand new to it but I was promised time to learn on the job. On my first day the team member I'm now having a conflict with offered me help. He's the most experienced so I gladly took it.
But now several months in I've noticed his teaching style doesn't work for me. He'll go into long theoretical explanations whenever I ask a question and I get overwhelmed with info. And he gets frustrated with my inability to process all that, because he feels I waste his time. So frustrated that at one time he just walked out of work and drove home, which was really upsetting to everyone.
My direct manager and my mentor in the company (our software architect), as well as our scrum master (a consultant) are all aware of the conflict. I've been assigned another colleague to help me out. Things were going ok but he got sick so I had to turn back to the team member with the conflict for assistance. Of course frustrations arose again.
Now yesterday during our sprint planning meeting we had to say what we liked and didn't like about the past sprint. And I brought up I feel I need time for learning and that I don't know where to put that, since we don't have a task for it. I said I also felt past approaches weren't working out and that I'd like to take up the offer to go on training. I was trying to word it very neutral to not upset my colleagues, as they tried their best. But the colleague who I had previous conflicts with took it personal and accused me of not listening and that is why my code is awful. While all I've been doing is rely on his code to learn. Long story short it got very heated and direct manager and scrum master who were present had to shut it down.
I'm thinking of talking to my manager and mentor today. It really hurts when you're accused of maliciousness when all you did was try. I know my code isn't perfect. But I get no help in improving it beyond long winded explanations about theory. If I ask for practical help he says he won't write my code for me. Which isn't what I expect. When I say I followed his example he says I shouldn't copy. But two sentences later he says if I don't know what I am doing I should listen to him. It's really very confused and demotivating as a beginner, but he makes it about how I waste his time and ruin his job for him. I understand he tries his best and that it has to be hard when someone seemingly is as dumb as a bag of bricks. But my manager and mentor told me they support me as long as I continue to show improvement. So I asked for alternatives (training, time to study, or whatever I haven't thought of) and now I feel like the bad person. I'm already someone with crippling low self esteem, and I'm thrown into the deep end. It kinda sucks when someone then tells you from the sideline you can't swim and how swimming works. How about tossing me one of those floaty things and then maybe accept I need to hold on to that for a bit and my technique will need work until I can make it on my own? :(2 -
Laying cozy on sofa, watching yt from phone. Decide there's a need for a bigger screen but too cozy to adjust position to watch from TV. Grab trusty old chromebook running Debian from arm's reach instead. Haven't used that thing in a while. Try to connect bt headphones. Notice that the Bluetooth module is not detected according to the UI. Weird, never noticed that. Wonder what that's about. Apparently someone had fixed it in kernel already long ago, I'm on a much newer kernel. Too lazy to pick up wired headphones from across the room. Maybe I'll update the firmware, I haven't done that in a while. Oh, the script doesn't run because it requires newer glibc. Wait, I'm still on Debian 11, maybe it would be worth it to upgrade to 12. Wow, upgrading Debian is a surprisingly manual process. Wonder what I'll be doing tonight. Wait, what was I doing again?13
-
I feel really bad for the guy I'm currently working with. I have until roughly the end of August to upskill him in every aspect of 3 different iOS apps because once I move to a new project he will be the entire maintenance team for those apps. Feel like he is getting shafted so badly. The whole process has been poorly managed. The managers don't care how well I train him as long as it doesn't take too many man-days. And they are expecting that they can still pull me back in to help if he gets stuck even after I've moved. Starting to feel like I'm being taken for granted. Can't wait to get off this horrible project.
-
tl;dr - why you no read this?
Here I am pondering why I continue to return to my job everyday when we are currently at month 13 of a 4 month project... yea let that set in for a minute... which is still at least 3-4 months away from being deployed due to annual leave of key stake holders and the whole Christmas period creeping up and things just not going as planned every step of the way.
There's no greater demotivater - is that even how you spell it - then being stuck in a project for so long you really just don't give a shit if it works or not anymore.
This has gone from a simple - relatively speaking - project to some monolithic mayhem of requirement changes and process adjustments, that have not only delayed our team, but 3rd party vendors needing to change things as well, or the requirements being wrong early so when you get up to business testing it's like "nope, that's not what we wanted" .... despite all the sessions of you personally giving the PM all the damn requirements.
But in saying that, they (3rd party) aren't innocent either, we have found nothing but issue after issue with their product since we started this project that who ever signed off on going forward with the thing should have been shot from both sides - it's not designed for the scale we will be using it yet we didn't find that out till we got so far into the rabbit hole we had a chance to be able to do load testing.
Meh, guess I'll go to work Monday and spend another week in misery trying to deliver something that just doesn't want to know what the finish line is.4 -
It was disappointing when I heard that the concept I was working on was already developed by Google long time back. I had spent a complete month in implementation and thought process.
But, to motivate myself, I should feel proud that my idea was worthy that a technology giant worked on that.
However it was confusing to understand the behavior of someone who called my idea crap in starting but then appraised when he got to know that unknowingly it was duplicate of some Google's project.5 -
When i was younger, lesser experienced and more naive than now; i got away with a lot of things. By lot of things i mean security flaws in my applications and overall architecture. I realise now i could've so easily been pawned.
Not that i claim to be totally secure even now, or would ever. It is a process, slow and painful one - Learning.
What i wish to point out is the role of favorable probability (non believers would call it luck). Security is so much about it. You get away with so many things for so long. And bang one day the roll of dice is unfavorable. On such rare occasions, just look back and wonder - damn i should've been breached long ago.rant hindsight security fail looking back security luck vulnerabilities food for thought musings naive probability2 -
My company's process basically boils down to this:
-Hour long meeting to open an issue.
-5 lines of comments.
-Update three documents.
-5 days for a peer review.
-40 bitchy comments about how everything you do and love is terrible.
For a one line code change to prevent a show stopping exception.2 -
The process of making my paging MIDI player has ground to a halt IMMEDIATELY:
Format 1 MIDIs.
There are 3 MIDI types: Format 0, 1, and 2.
Format 0 is two chunks long. One track chunk and the header chunk. Can be played with literally one chunk_load() call in my player.
Format 2 is (n+1) chunks long, with n being defined in the header chunk (which makes up the +1.) Can be played with one chunk_load() call per chunk in my player.
Format 1... is (n+1) chunks long, same as Format 2, but instead of being played one chunk at a time in sequence, it requires you play all chunks
AT THE SAME FUCKING TIME.
65534 maximum chunks (first track chunk is global tempo events and has no notes), maximum notes per chunk of ((FFFFFFFFh byte max chunk data area length)/3 = 1,431,655,763d)/2 (as Note On and Note Off have to be done for every note for it to be a valid note, and each eats 3 bytes) = 715,827,881 notes (truncated from 715,827,881.5), 715,827,881 * 65534 (max number of tracks with notes) = a grand total of 46,911,064,353,454 absolute maximum notes. At 6 bytes per (valid) note, disregarding track headers and footers, that's 281,466,386,120,724 bytes of memory at absolute minimum, or 255.992 TERABYTES of note data alone.
All potentially having to be played
ALL
AT
ONCE.
This wouldn't be so bad I thought at the start... I wasn't planning on supporting them.
Except...
>= 90% of MIDIs are Format 1.
Yup. The one format seemingly deliberately built not to be paged of the three is BY FAR the most common, even in cases where Format 0 would be a better fit.
Guess this is why no other player pages out MIDIs: the files are most commonly built specifically to disallow it.
Format 1 and 2 differ in the following way: Format 1's chunks all have to hit the piano keys, so to speak, all at once. Format 2's chunks hit one-by-one, even though it can have the same staggering number of notes as Format 1. One is built for short, detailed MIDIs, one for long, sparse ones.
No one seems to be making long ones.6 -
TL;DR: I hate how management doesn't listen to devs (even Dev managers).
We need to sort out our release process where I'm at. It takes a Dev about 2 solid days to complete and it's hideously involved and ripe for human error. They're completely out of action until it's done and it happens once a week!
It's stopping us releasing business critical bug fixes and features that need to go out. Instead the work just sits in develop for days doing fuck all.
Can't be agile if it takes so long to deliver value 🙃
Plus makes any fuck ups by our department look worse as it takes an age until it's fixed which reduces their collective trust in us and our opinions.
Making any improvements we want to make harder todo as they're harder to convince 🙃
Has anyone had any success getting automated releases?
How did you convince management to prioritise it?
I need to convince someone who has some influence in my company and ask how they got that influence7 -
I just have to rant...
7 months ago, I was still a pretty new iOS developer, but finally coming into my own. My boss gave me my first feature ever... a fully custom backend tweaker for our development builds, complete with text fields that devs and testers alike could fill in themselves for whatever they needed to test. I worked harder on that than I’ve ever worked on anything... and I got to make all the decisions on how it looked, behaved, what exactly the user saw/read... everything.
A month ago the most senior dev on my team was asked to update the tool to prepare for a backend migration to a new server. He was then hired to work for Apple, hurried to finish this task, and left forever. (He deserves it, we probably were slowing him down realistically. But that doesn’t forgive the following...)
Unfortunately, he thought it’d be a good idea to remove my entire custom backend tool in the process. Not sure why— maybe he thought it was legacy code or something. He must not have tested either, because the entire backend selector stopped working after that. But that was no problem— I could fix the pre-filled environment buttons just by updating a few values.
It’s the fact that he removed 100+ lines of my custom code from 3 separate classes (including entirely removing one of those classes), for no known reason, and now I have to completely rebuild the feature. Since it was entirely custom, it required no change for our migration in the first place. But he rewrote how the entire view works by writing an entirely new VC, so there is no chance I can just restore my work as it was written.
And in the shared class, he erased every line with the word “custom.” So, so many lines of hard work, now irrelevant and only visible in old defunct versions. And my boss has asked me to “just make it look how it did before the migration.”
I know it’s useless to be angry at a guy who’s long gone, but damn. I am having a real hard time convincing myself to redo all this work. He removed every trace, and all I can think is WHY DID YOU DO THAT YOU FUCKING MONSTER? IT WAS MY GREATEST WORK, AND NOBODY ASKED YOU TO DESTROY IT. THIS WAS NOT EVEN RELATED TO THE TASK YOU WERE GIVEN, AND NOW A SIMPLE TICKET TO RESTRUCTURE A TOOL HAS BECOME A MANDATE TO REBUILD IT FROM SCRATCH.
Thank you for being here, devRant. I would’ve gotten myself into deep trouble long ago if I didn’t have this safe place to blow off steam 🙏4 -
Most obnoxious company process: The newly introduced promotion process at my ex-employer.
Originally they had a run-of-the-mill process. You and your boss reviewed your performance independently, then spent an hour to compare results. If you agreed to have proven yourself, your boss did some remaining paperwork (iow he did his job) and done.
Under the guise of transparency, fairness and autonomy of employees this was changed to:
You had to find three coworkers willing to review you (favorably). You collected their feedback, processed that (strengths, "opportunities for improvement", etc) and presented it to your boss for review. These were the first two steps of four in total, of which I've forgotten the other details tbh. It became pretty ridiculous with you defining "progress indicators", your boss's boss involved in another review round and what not.
The true purpose was clear: Delaying promotions as long as possible, making the employees do all the work, and being able to just say "no" at any point. I don't know how intellectually superior managers and HR viewed themselves, because literally none of my coworkers bought this as an improvement.
But, yeah, that became the new process at a company too big to fail.1 -
This is the third part of my ongoing series "The Ballad of the Six Witchers and the Undocumented Java Tool".
In this part, we have the massive Battle of Sparks and Storms.
The first part is here: https://devrant.com/rants/5009817/...
The second part is here: https://devrant.com/rants/5054467/...
Over the last couple sprints and then some, The Witcher Who Writes and the Butchers of Jarfile had studied the decompiled guts of the Undocumented Java Beast and finally derived (most of) the process by which the data was transformed. They even built a model to replicate the results in small scale.
But when such process was presented to the Priests of Accounting at the Temple of Cash-Flow, chaos ensued.
This cannot be! - cried the priests - You must be wrong!
Wrong, the Witchers were not. In every single test case the Priests of Accounting threw at the Witchers, their model predicted perfectly what would be registered by the Undocumented Java Tool at the very end.
It was not the Witchers. The process was corrupted at its essence.
The Witchers reconvened at their fortress of Sprint. In the dark room of Standup, the leader of their order, wise beyond his years (and there were plenty of those), in a deep and solemn voice, there declared:
"Guys, we must not fuck this up." (actual quote)
For the leader of the witchers had just returned from a war council at the capitol of the province. There, heading a table boarding the Archpriest of Accounting, the Augur of Economics, the Marketing Spymaster and Admiral of the Fleet, was the Ciefoh Seat himself.
They had heard rumors about the Order of the Witchers' battles and operations. They wanted to know more.
It was quiet that night in the flat and cloudy plains of Cluster of Sparks and Storms. The Ciefoh Seat had ordered the thunder to stay silent, so that the forces of whole cluster would be available for the Witchers.
The cluster had solid ground for Hive and Parquet turf, and extended from the Connection River to farther than the horizon.
The Witcher Who Writes, seated high atop his war-elephant, looked at the massive battle formations behind.
The frontline were all war-elephants of Hadoop, their mahouts the Witchers themselves.
For the right flank, the Red Port of Redis had sent their best connectors - currency conversions would happen by the hundreds, instantly and always updated.
The left flank had the first and second army of Coroutine Jugglers, trained by the Witchers. Their swift catapults would be able to move data to and from the JIRA cities. No data point will be left behind.
At the center were thousands of Sparks mounting their RDD warhorses. Organized in formations designed by the Witchers and the Priestesses of Accounting, those armoured and strong units were native to this cloudy landscape. This was their home, and they were ready to defend it.
For the enemy could be seen in the horizon.
There were terabytes of data crossing the Stony Event Bridge. Hundreds of millions of datapoints, eager to flood the memory of every system and devour the processing time of every node on sight.
For the Ciefoh Seat, in his fury about the wrong calculations of the processes of the past, had ruled that the Witchers would not simply reshape the data from now on.
The Witchers were to process the entire historical ledger of transactions. And be done before the end of the month.
The metrics rumbled under the weight of terabytes of data crossing the Event Bridge. With fire in their eyes, the war-elephants in the frontline advanced.
Hundreds of data points would be impaled by their tusks and trampled by their feet, pressed into the parquet and hive grounds. But hundreds more would take their place. There were too many data points for the Hadoop war-elephants alone.
But the dawn will come.
When the night seemed darker, the Witchers heard a thunder, and the skies turned red. The Sparks were on the move.
Riding into the parquet and hive turf, impaling scores of data points with their long SIMD lances and chopping data off with their Scala swords, the Sparks burned through the enemy like fire.
The second line of the sparks would pick data off to be sent by the Coroutine Jugglers to JIRA. That would provoke even more data to cross the Event Bridge, but the third line of Sparks were ready for it - those data would be pierced by the rounds provided by the Red Port of Redis, and sent back to JIRA - for good.
They fought for six days and six nights, taking turns so that the battles would not stop. And then, silence. The day was won, all the data crushed into hive and parquet.
Short-lived was the relief. The Witchers knew that the enemy in combat is but a shadow of the troubles that approach. Politics and greed and grudge are all next in line. Are the Witchers heroes or marauders? The aftermath is to come, and I will keep you posted.4 -
I interviewed for a Lead role at a popular energy producing company last week. The fucking retard that was interviewing me was multi tasking and only asked me a few questions. It was as if he was forced to do it. He came late and couldnt even introduce himself. He just started asking questions.
After about 2-3 questions, he asked me to tell him my current salary and my salary expectations. I told him to go fuck himself for the former and said i was open to negotiations for the latter. We said our goodbyes afterwards and the interview was terminated. The easiest I have done in a long time.
Fast forward to last friday, I received a call from someone in HR. She offered £60k. I couldn't believe what I heard, so I asked her to repeat the offer. She replied in the affirmative, £60k! I refused and told her I was hoping for £100k because that's like the average for the position I applied for. I could literally hear her gasp with shock when I said that. She replied by saying that's the kind of salary we pay people 2 levels above the one you have applied for! What the fuck I said to myself. Is your company that poor was all I could think of??? I couldn't believe what I was hearing. I told her to go and see if they can come back with an improved offer.
She sent me a mail this morning saying the best they can do is £75k. Oh no, for your troubles and mine, can you talk to HR and let them raise it £95k was my reply to her. She replied moments later, No. £75k is the final offer. C'mon, I presently earn more than that. I only want to leave my current company for new challenges.
Moral of the story: Politely ask for the salary range for the role you are applying for at the early stages. It saves both the employer and applicants having to go through an interview process only to be disappointed at the end.8 -
A couple of years ago, we decide to migrate our customer's data from one data center to another, this is the story of how it goes well.
The product was a Facebook canvas and mobile game with 200M users, that represent approximately 500Gibi of data to move stored in MySQL and Redis. The source was stored in Dallas, and the target was New York.
Because downtime is responsible for preventing users to spend their money on our "free" game, we decide to avoid it as much as possible.
In our MySQL main table (manually sharded 100 tables) , we had a modification TIMESTAMP column. We decide to use it to check if a user needs to be copied on the new database. The rest of the data consist of a savegame stored as gzipped JSON in a LONGBLOB column.
A program in Go has been developed to continuously track if a user's data needs to be copied again everytime progress has been made on its savegame. The process goes like this: First the JSON was unzipped to detect bot users with no progress that we simply drop, then data was exported in a custom binary file with fast compressed data to reduce the size of the file. Next, the exported file was copied using rsync to the new servers, and a second Go program do the import on the new MySQL instances.
The 1st loop takes 1 week to copy; the 2nd takes 1 day; a couple of hours for the 3rd, and so on. At the end, copying the latest versions of all the savegame takes roughly a couple of minutes.
On the Redis side, some data were cache that we knew can be dropped without impacting the user's experience. Others were big bunch of data and we simply SCAN each Redis instances and produces the same kind of custom binary files. The process was fast enough to launch it once during migration. It takes 15 minutes because we were able to parallelise across the 22 instances.
It takes 6 months of meticulous preparation. The D day, the process goes smoothly, but we shutdowns our service for one long hour because of a typo on a domain name.1 -
Interviewed for a Mid/Senior developer role and finally got feedback. The company feels I'm not experience enough for the senior role but think I'm a good fit for the company. Bad thing is they don't have any entry level positions available. I honestly feel like I am ready for a mid level role and maybe even a senior role. They say to keep considering them while they try to get approval for entry level position, but this is a massive company and who knows how long that will take. Recruiter said it's not a no, just not a right now. /:
Oh and going off my last rant, I found out that the senior dev was wrong about set interception being '|' in python, I found out that it's actually a method called interception(set). So even the senior dev didn't know off the top of his head. /:
Have some projects in GitHub but my biggest one is a private repo I'm doing the entire backend and even frontend. Can't share that repo or share details because it's a project a friend (his idea) and I are planning on releasing. (:
Overall feeling pretty bummed because I was looking forward to steady work that'll improve my skills even further... I'm self taught so it's a bit tougher to land interviews because of the automated process most companies have with resume filtering. ):
Going to keep doing small contracted projects until I land another interview. In the meantime trying to keep my spirit up. (:1 -
A big project in my company. Had some annoying race condition that caused data to get deleted when two processes finished in the wrong order they hit the dB and override each other’s work.
Long story short. Fixed the bug and in the process the codebase shrunk by 60%. I didn’t have to delete the rest of the code, but the bug was due to a function in the legacy section of the code, and found out that it was the only function used in that section.
So I deleted it. Rewrote the function so it upserts. And bam. Smaller, cleaner code :)1 -
This is long rant/story:
My manager conducts sync-up meetings regularly. The idea is to sync up all developers on current state of work. He does’t conduct stand-ups. He doesn't have time for it. He rather discusses on individual basis if we are blocked. The rule of the sync-up meeting is NOT to discuss any blockers or problems but simply explain each other what we are doing and how we plan next.
Sometime ago, the manager brought up and explained a new way of working in the sync-up meeting. At this point, a new developer in the team was absent due to sickness.
Today, there was a sync-up meeting and the manager started to question the new member about the newly introduced way of working. He was unaware of it and the manager never communicated this important information via email or any mode of communication available.
So, the conversation goes on as follows:
"Manager": — "Why didn’t you complete your task as per the new way of working?"
"Employee": — "Well, I've no idea. Am I supposed to do? I’ve been working as usual like any other"
"Manager": — "We have a new process and you have failed to follow it, so we’re late in delivering your work"
"Employee": — "I’ve already finished my work on time. I've raised a pull-request this morning"
"Manager": — "It doesn’t matter, it is not merged to main branch and so we can’t include your work in the release"
"Employee": — "I’ve no idea about the new process"
"Manager": — "Haven’t you asked around about what happened from previous meeting"
"Employee": — "Yes, I have. I was told which tasks were handled, but nothing about a new process"
"Manager": — "Aren’t you interested to learn it?"
"Employee": — "Why won’t I be interested? I was on a sick leave and I have no clue what happened here"
"Manager": — "What’s happened is past now, let’s not focus on it"
"Employee": — <Dumbfounded>
The Employee felt ashamed in front of everyone. He did his job but it didn’t pay off.
…. After an hour … the Employee had a talk with the Manager
"Employee": — "You shouldn’t have pointed me out in front of everyone. It made me feel real bad. You should have emailed this information if its important for the team."
"Manager": — "I have no idea what you’re talking about. When did I say so? I think you’ve a bright future in the team. You should be focusing on doing better things."
Employee goes back to work. A minute later, the Manager sends a PowerPoint screenshot of the process in the group chat.
**The Process**
It's about delivering release packages based on priorities defined by client. Each release package is a set of work items or requirements. Individual developers are assigned to work items. They are expected to deliver on planned delivery timelines in order to consider a work item into a release package.1 -
I fucking hate the process of setting up IDEs and compilers! All the build files, cmake files, tasks, all that shit.
I undrerstand it's integral part of coding, but fuck, why does it always take so long to set up a stupid project. Just let me start coding ffs.
Sometimes I get so frustrated that I rather write a bash script or run the compiler commands in the shell instead of going through the hassle of setting all this up.2 -
Bittrex is "amazing"...
I had lost my 2FA a long time ago (as my phone fried) and missed the account ferification deadline which caused my account to get disabled. Off we go to support!
0. Nothing to rant about at this point. I just created an account in their zendesk, logged in and logged a ticket to reset my 2FA and reactivate my account. They asked me for info, I provided it to them and got my 2FA disabled. Hooray!
1. I then asked to reenable my account. They sent me a link to restart the verification process. I open up that link and log in. I'm asked to upload some photos. I select requested photos from my galery and hit [UPLOAD]. An error pops up saying that smth wrong happened and I need to reload that site and reupload my photos. After page refresh they are telling me they are validating my uploaded info (w/o any way to resubmit my info, which, according to the error seen below, was not successfully submitted in the first place)...
2. So I reach out to the support guy again. Guess what he replies! He says he's sorry but he cannot help me any more and I need to create a NEW ACCOUNT in their support site with the same email <???!!!???>
3. I try to log in to the support portal and my access no longer works. MY ACCOUNT HAS BEEN DELETED! WTF!!!
4. I do as I'm told and create a new acc with the same email. Now I can log back in. So I'm raising a new ticket saying I still cannot finish my verification process due to the same error. It looks like it's going to be a fun ride with them so I can't wait to see what they'll reply.2 -
rant="""
It's too many features for me to keep up with. And the client just bounces between this matrix of all the possible permutations of them, refusing to admit that he is asking for mutually exclusive behavior in more than one place. I have mentioned to him at least 12 times a year that there is too much going on, not organized, we need to simplify, prioritize, or we will have 100 half baked untested features.
Of course it is more or less made it out to be that this is all my fault, or at least it's hard not to feel that way when I say:
It will be a long time before X will be working, we need 25 other things first.;
Next day he asks:
Have you made any progress on X;
I reply: Now we need 24 things to be done at this rate it will be a month.;
He replies:
Ok but I need this yesterday. How about if you add a new feature Y that does everything X does without those 24 things?;
I reply: That will not work at all like X. Y is just X + 1 more feature.
He replies: Ok well I need Y so when you're done with X I need a way to do it like Y also. I just thought it'd be easier.
EASIER TO ADD MORE FUCKING FEATURES YEAH SURE THATS EASY AS FUCK YOU FUCK FUCK FUCK. He's a nice enough guy, pretty smart compared to my first few paying gigs, but wtf really? How do I come out and tell you I need 25 days and you ADD more work? This was one example.
IN TWO days he has added 12 features. And during the week has asked for 29 UI interfaces to be COMPLETELY different. This is becoming COMMONPLACE. Every week there is either a huge change, or a conversation like about that finds its way into the entire business flow inside an dout.
The worst thing is: I TOTALLY understand what he needs. I feel that HE doesn't. This weekend I spent literally HALF of his retainer on getting equipment into my hands to bring it back to find out it DOESNT WORK. Why aisn't HE doing this so I can finish the features from NOVEMBER that HE NEEDS in order to PROCESS SALES.
I've tried and tried but I just can't get through to this client what a tremendous waste of time his \"process\" is, for lack of a better word. Constant changes, contsant additions, lack of clarity, needless repetition and contradictions, constantly adding moonshot ideas to compete with every industry in the region, and not beta testing anything until something goes wrong.
Fuck this guy! His business is failing and I felt responsible for the longest time but it is clear to me that if I wanted to save his business I would have to ignore 95% of his feature requests. I ignore 50% now because of the stress in trying to determine which of the 3 different paradigms he is talking about changing. I will lose this client, and I feel like he will sue me to get all of his money back. He holds me to very little honestly - BUT WEEKLY reminds me that he won't be able to pay me next month if feature XY and Z arent ready!
If a developer is CLEARLY overwhelmed, it makes NO sense at all to continue to PILE ON feature after feature
"""
try:
while true:
rant+=", after feature"
except DevHeadExplodes as inevitable:
raise YourDevsRatesOrLookElsewhere(inevitable)8 -
So you are running ads and people who click your ads land on a blog post? What is the goal? How are you measuring conversions? How do you know if an ad or post actually helped?
Am: "When can you get this up?"
Me: "I don't have any of the information I need to make a page."
Am: "skip all the seo crap and tell me how long to get the content online"
Me: "you're missing the whole point of a blog post. But ok it's online"
Am: "was that so hard?"
No, putting garbage on a site is not hard. Creating useful web pages with content that is easy to find and read is a time consuming process and it would go smoother and faster if you followed the checklist I gave you which lays out what I want, in a single, cohesive document, all of the necessary pieces to a web page or blog post or content edit. We have templates for you to follow to help eliminate back and forth emails which causes things to get lost or fall through the cracks. -
I just finished reading the last chapter of the DevOps Handbook, its an eye opener, but not an easy read. And still recommended.
I've been reading this book for the past year and a half, little by little. It was hard since I started understanding why my work was so frustrating (I'm in System-Cloud-Ops position). The book made sense, while the work did not, it got harder since the book provides solutions, but whenever I dicussed any solutions with management they dismissed everything.
I started to initiate improvements by myself:
Prioritizing tasks I thought were more important to improve the way of work - do now and ask questions later... I got yelled at, I got my managers angry, but afterwards more often then not they admitted I was right.
To make it possible I worked overtime and on weekends, trying to prove a better way is possible, by implementing a long term solutions to solve problems instead of workarounds, automating a lot of stuff, creating labs, preparing presentations and documentation.
Time and time again I tried to pitch more ideas related to DevOps but the managers didn't care...
I know now my burnout started 8 months ago slowly, my hairline started receding, I started clenching my teeth (the doctor said stress was the cause) which was very fainful.
I continued to work but I noticed I was also more cynical, frustrated, and tired.
In the process I neglected myself.
So finally after 2 years and a half I quit my job, to focus on myself, at least for a little while.
I hope in my next job will be better.4 -
Was working on an algorithm a few months back. I was not liking how long it was taking to process some data. A colleague of mine said: "Just throw out the data that is past a certain distance. You don't need it." At first I was shocked. Throw out data... Seemed so wrong at the time. He was correct, and it made sense. What was I saving it for? Posterity?1
-
Soo highlight. I’m a Tech Lead dev, and I happened to have had a gunshot injury in 2021 Dec, and kinda suffered some hectic stuff but long story short, I went through a full year from recovery and blah blah, but anyways after that year when I went back to work my boss(former), asked I go for psychological tests etc, then after that I passed everything as normal but then soon as I went back to work my boss took me to HR for some special performance review process that could mean I get fired or put back in the team again. My question is it this a fair trial when I never got another chance to work again as I was hired??? I need help pls :(4
-
"God we've got an awful lot of technical debt, there's no process for anything here, no one knows how to use it, how it works or what even what it really does. Should we try to spend some time documenting and fixing that since this problem is going to keep cropping up again and again and the guy who wrote it left 2 years ago"
"Nah, the execs want features, fuck the fact that we are constantly struggling to meet deadlines due to being horrendously understaffed and everything takes 3 times as long as it should due our crippling technical debt. Lets keep hacking away with our old rusty saw instead of taking 10 mins to sharpen it"5 -
I guess this is not necessarily a dev question but ...
To those who had a burnout / depression how did you manage to pull through ? How long was the process for you ?9 -
I begin with the optimism and the joy that I am creating something new that will improve people's lives.
I listen to the user and analyze the current process in depth.
I try to suggest additional value to the system for the users consideration. Sometimes they do not realize we can improve 10x rather than 2x.
I learn what the users goals are and what they want out of the system. We think about reports and downstream value. Sort of working from the end to the beginning (data ingests and upstream processes that will feed the system).
After the user signs off on the requirements and deliverables and I have a realistic project plan I begin to code.
It works and has worked for me every time for a long long time. -
Not dev, but a perf-eng confidence boost.
Our company was hired by a client to onboard perf-testing process and do some perf-related go-live stuff. Basically, make sure the app meets the SLAs.
Our company mobilized some internal resources for the task. The had 3-4 months. 2 months later they realized they won't pull it off. What a shame...
When the threat of dropping the ball and losing the client and recommendations became very real, they engaged us. Half the time, half the resources, a worried and annoyed client who now wants to control the whole initiative.
During the first 2 meetings we get the general idea of what they have, what they want. We take some time to prepare a plan to make it on time. The client argues our plan, mostly because one of the main points was mocking downstream dependencies [integrations]. He asks, then demands to do it all with live integrations. We explain why this is an incredible risk and why we should do it the proposed way. He disagrees.
Alright then... Maybe he knows smth we don't. Let's do it the risky way...
A month later test results are far from the target. I did my best with app de-bottlenecking and fine-tuning. But since the live integrations do not deliver, they hide other bottlenecks. The initiative is stuck.
Finally, the client agrees to do it with mocking. But now there's no time left as it will take almost a month to prepare mocks...
The client agrees we should have done it our way from the start. They postpone the go-live and we carry out our testing and tuning the right way.
That was one expensive and long "I told you so". But it boosted our [perf team's] confidence to the top and beyond :)
don't tell us how to do our job, unless you do want extra expenses -
Today I created my first shell script for automation.
I have a git repository I use for backing up documents at the training centre I'm at for work. Not a specific project, just all of the documents and miscellaneous stuff. The need for this came about because they re-image the computers every month with a new version of windows (Because they're too cheap to register windows). And I can't risk forgetting to copy all the files onto my USB drive the day before they re-image.
So at the end of each day I open a git bash and type:
git add .
git commit -m "Backup - dd/mm/yy"
git push
Not a particularly laborious task but repetitive and time consuming.
So I decided to create a .sh script to automate the process
(The idea originally occurred because of this post: https://devrant.com/rants/329221/...)
So after about half an hour fiddling about with dates and $ signs, I came up with GitBackup.sh:
git add .
today=$(date '+%d-%m-%y')
commitMsg="Backup - "$today
git commit -m "$commitMsg"
git push origin master
Not much but proud to call it my first automation script.2 -
Hello there devranters, long time no see
I have a question for all the computer scientists and students out there. Do you have book recommendations especially for the maths part? I'm in the process of buying some books, they're very expensive but if I'm going to buy they might as well be useful books.8 -
From long Using Visual Studio Code for Programming.
Why i love
supports Typescript
supports java
Lighter
plugins available like linter, git lense
Best for small web app projects.
And Favourite IDE, intellij Idea
Why ?
For writing java i use as
it can easily generate getter setters
constructor
importing
and build process.
best for java.
last but not the least
Nano
why ?
because most of the devops configuration, requires to be done via terminal only and i often use nano.
it is good for shell scripting,
editing configurations
that is all....2 -
just as Erik Meijer said scrum is the most stupid shit in modern development process. I worked in an organization hires ppl as full time scrum master, which is joke. each day the asks what did u finished yesterday and how long it need to finish the task assigned to u. btw the scrum masters know nothing about programming. come on man how can u finish any serious shit in one day and who cares how much shit others finished. each week just attending those freaking meetings without coding. each programmer are assigned at least 5 bosses, and what the fuck is product manager doing, it's not adding indirection can solve anything.2
-
FIRE DRILL!!!!!
Customer who decided to deploy our system in the middle of their busiest time ... and kinda ad hoc-ed their ... human processes (not sure what to call it). Just to get by, and then sort of let things rot.
So last week they contact us and say "OMG some poor soul at this company was spending hours making spreadsheets to track what they were doing... and they keep fucking it up because it's nigh impossible to get right".
Real story, big shake up at the company, and someone said "lets look at our process" and they discovered "holy fuck we have this software but we're doing shit like it's the damned civil war".
This naturally raised questions about the competence of the folks we work with ... who chose our software, and thus our software.
So now we're flushing out all the stuff we asked the customer to figure out months ago that is usually done via a months long implementation / integration ... in a few days. Also ... I'm making some new things for them.
WEEEEEEEE
Granted, we're billing them like mad for this so no big deal really.1 -
Hey everyone! This is a long one so get comfy~
TLDR; I'm glad to be back in the presence of all you awesome people. 2019 was a dream and I have a lot of you to thank for that.
If you've noticed, I've been away for a while. I took a sabbatical from a lot of my socials (including github - or at least public github :( this summer. Let me explain:
In late April/early May, I applied and got an internship at RBC (a big bank company in Canada) found out I'm getting flown out to San Fran for a talk I gave at a summit, and got accepted to this 2 week physics [Quantum Cryptography] camp @ UWaterloo. So I had quiet the summer. In order to throw myself into work and friends and all that, I decided that I was going to take a break. Although I took a break from Github I was still active on Github Enterprise for my job but outside of that I didn't do much.
Don't worry though, now that it's fall/winter season, I'll be in my room for way too long so it's back to the usual grind. Currently, I'm in the process of planning a hackathon, prepping for picoCTF 2019, filling out University applications, all while dealing with school :) I've got a lot of projects/things coming up so ya'll will hear more from me :D4 -
My biggest influence on coding style is working with other people's code. I know the temptation to write "clever" code and I've been (and probably still occasionally am) guilty of it myself, but it's not until you have to debug someones oneliner iterator which has !(i-j) as the stop condition that you start to appreciate dumb, boring, obvious code.
If having a series of if checks in a long list makes it readable, keep it that way. If it makes it more readable to rewrite it into a nested switchcase with a couple of ternary bits, go ahead. Just don't spend half a day wrapping it up into two layers of abstraction that will require an onboarding process for the rest of the team.2 -
Erm not sure if this qualifies. Not so long ago I was tackled with having to read a device memory at a very high address in 32-bit linux process (kernel is 64). The 32-bit mmap is unfortunately limited to range of protected mode PAE so it just wouldnt reach that high. So! I wrote my own syscall in assembly that would switch to long mode first so I could use long registers and then I got my page and switched back :)
In retrospective not a big deal, but it made me really happy for the rest of the day when I saw that address in pmap :)1 -
I really don't understand why my company is so slow when it comes to change. We have a very small engineering team (<100 people), but it takes MONTHS to get anything done. They have spent the last 4-6 months getting FontAwesome Pro into the platform, been taking 8 months to get engineering levels out the door, and we've been lagging on choosing between React or Angular as our upgrade from AngularJS (yes it is the old one) for a year.
Is this normal? I am on the FE and don't know much about our dependencies, but it should not take this long to make a simple decision. The whole migration process will take time, but be decisive for Jesus' sake.2 -
I haven't killed a process in a long time so I typed, "man kill".
Why do I feel so triggered right now?3 -
You know what fuck github , anyone remember when git cli was easy and straight forward to use
Now i have conflicting master branches because the remote is main and git automatically defaults to master.
Git still asks for a password while github can't wait to inform me how I have to go through the very long process of setting up an auth_token.
Apparently https remote origins for some reason don't work anymore, why because apparently i need to change them into ssh, good luck with the public key errors
This sucks , fuck github and fuck politics9 -
We need to update the slang "script kiddie" to "prompt enginot" or something.
So my boss's boss or someone even higher up drank the generative AI kool-aid and hired a 40-something kid to generate images for the marketing teams (or something like it).
Naturally, things soon went to shit.
The bloke already left, having staid less than six months on the job.
Guess who got to handle all the shit-is-currently-on-fire the kiddie left behind?
First impression: apparently, muggles tried to slak him some very broad descriptions of what they needed, and at first he actually tried to summarize those bark-speech pseudo-words into an actual prompt.
It does not seem to have gone for too long, though.
After users requested changes to the AI outputs, he would update the prompts, all right. And the process seemed to go fast enough... until reaching near-to-completion status.
Then users would request the tiniest changes to the AI output...
And the bloke couldn't do it.
Seriously. Some things were as simple as "we need this slider to go all the way up to 180% instead of 100%" on a lame dashboard and *kid. could. not. do. it.*.
In many cases he literally just gave up and copied the slak history into the AI prompt. No dice.
Bloke couldn't code a print('hello world') into a jupyter notebook cell, that's what i'm saying.
Apparently, he was "self taught", too. And was hired to "speed up the process of generating visual aids for usage in meetings and presentations". But then "the budget for this position was considered excessive" (meaning: shit results from a raw idea some executive crapped some day) and "the position was expanded to include the development of Business Inteligence Dashboards and Data Apps".
So now it is up to me (and my CRIMINALLY UNDERPAID team) to clean up his mess and maintain/fix/deprecate DOZENS of SHODDILY DESIGNED and MOSTLY USELESS but QUITE ACTIVE "data vis" PIECES OF SHIT.
Fuck "AI prompters", fucking snake oil script kiddies.7 -
I got a new job recently(that's an older rant's story) and I find amusing that I'm still getting reject notices from job offers which I applied to... 2 months ago 😂
That one from 2 months ago is quite funny cuz I didn't have any other interview with the company, just like the first interview with a HR lady, so after one week I gave up with that company and moved on. So I received the rejection notice today and my first thought was "how considerate!"5 -
An iterative process of "plan, do, test, improve" shouldn't leave an engineer's head. If we outsource "plan" to a manager, "test" to another blabbering idiot with a corporately purchased donut hanging off his mouth, the cycle becomes too long to actually work. Multiplied by an engineer's despair because he's obviously clever enough to see the whole picture, this is a recipe for disaster.
Throwing man-hours in there won't solve anything.5 -
I’m currently working with a devops team in the company to migrate our old ass jboss servers architecture to kubernetes.
They’ve been working in this for about a year now, and it was supposed to be delivered a few months back, no one knew what’s going on and last week they manage to have something to see at least.
I’ve never seen anything so bad in my short life as a developer, at the point that the main devops guy can’t even understand his own documentation to add ci/cd to a project.
It goes from trigger manually pipelines in multiple branches for configuration and secrets, a million unnecessary env variables to set, to docker images lacking almost all requisites necessary to run the apps.
You can clearly see the dude goes around internet copy pasting stuff without actually understanding what going on behind as every time you ask him for the guts of the architecture he changes the topic.
And the worst of all this, as my team is their counterpart on development we’ve fighting for weeks to make them understand that is impossible the proceed with this process with over 100 apps and 50+ developers.
Long story short, last two weeks I’ve been fixing the “dev ops” guy mess in terms of processes and documentation but I think this is gonna end really bad, not to sound cocky or anything but developers level is really low, add docker and k8s in top of that and you have a recipe for disaster.
Still enjoying as I have no fault there, and dude got busted.9 -
Package Installer on android needs to show something other than just the progress bar. Even a basic log like windows installers that say, "copying this, extracting this, done..." If it affects the minimalism of the interface, they could try doing what Tor browser does- swipe to see a log. It just feels heartbreaking to wait 5 long minutes for it to process on this tortoise device, and then get, "app not installed." with an OK button. :( Like, whyyyy? There should be a "THAT'S NOT OK" button.
Is there any magisk module for this? Or some other tweak?5 -
Our "agile" process uses one-month long sprints, ending on the last day of the month with a demo. (I'll rant some other time about non-consistent iteration lengths.)
Our sprint ends today (Monday). What was the most logical time to introduce changes that affect the architecture and break every single build? How about 4PM last Friday?
We're still waiting on the build breaker to show up while trying to figure out what the heck we can cobble together and run to show that we actually did something in the last month.2 -
So the project I work on basically has to talk to a 3rd party plugin, through a 3rd party framework. The 3rd party plugin is a black box. This conversation happened:
Software guy: so we aren't sure what is breaking the thing. It's either us or the plugin, but it's probably both.
Systems guy: well then if we aren't sure then why are we writing an issue for it.
SWG: because we aren't sure but we know we are doing at least something that contributes. We read int X from a table and put it into a float. X doesn't perfectly represent in a float. It comes out X.0001. Then they take it and when it comes back it comes back as Y.0001. We cram it into an int so it becomes Y, we compare it to X which is really X.0001 and it comes back invalid.
SG: well as long as we are sending them the right number . . .
SWG: but we aren't sending them the right number. They are expecting X not X.0001. Then they send us back Y.0001 but it should be X so it's wrong.
SG: so they're giving us the wrong return value.
SWG: yes, but because we're giving them the wrong number.
SG: well not exactly . . .
SWG: yes exactly. It is off by .0001 because of floating point math.
SG: well . . .
Me: look it doesn't matter how it's breaking. But it IS broken. Which is why we're filling out the damn problem report. THEY ARE EDITABLE. We talked to the customer and gave them the risk assessment. They don't care. It happens rarely any way.
SG: then can we lower the severity?
Me: no. Severity doesn't relate to risk. That is a whole different process. Severity assumes it has already happened. It's a a high severity.
SG: but the metrics.
Me: WE GIVE THE METRICS TO THE CUSTOMER. WE TALKED TO THE CUSTOMER. THEY DON'T GIVE A SHIT.
And that was how I spent Wednesday wondering how a level 4 lead systems engineer got his job. How many push ups did he do? What kind of juice did he drink?2 -
The beta version of the new DEVRANT TOOLBOX is available now.
Its an unofficial web extension for Chrome and Firefox.
Chrome Web Store:
https://chrome.google.com/webstore/...
Firefox:
The certifaction process takes a long time, therefore I provided a direct download for the xpi file (for side loading).
https://drive.google.com/drive/...
Additional features: DUAL FRAME MODE (feeds left, rants right), themes (black, mono, darkgray, darkblue, comic, solarized), scrollbar plugin (perfect scrollbar, FF only), extended controls, fixed header, sorted userprofiles (by votes), autoreload (recent feed, 180 sec), highlighting new rants (recent feed), personal filter, image preview (mouseover), keyboard shortcuts, timestamps for rants, compact mode, colored notifs with clickable usernames, weekly rant.
I tested the extension with Windows Browsers only.
It would be great to get a feedback how it works with other systems!
Have fun with the toolbox.7 -
Windows: "That sure is a nice long running process you've left me with. Sure would be a shame if it didn't finish. Time for automatic updates!"5
-
Another team didn't bother testing their code correctly, they passed us invalid values that another microservice needs, as a result they have a bunch of unstored data (that they would have seen wasn't being stored if they bothered checking the last stage of the process to see if it was stored). Now it's been so long that the data is expired. They want us to manually store millions of transactions for them.
Now tell me...if I came and shit in your bed, shouldn't I have to clean it up? -
Client calls with an issue(some automated process that's run perfectly fine for years, one error and it's the end of the world), and after 15 minutes of trying to explain to them what happened, they wanted to see the code the error originated from.. so I sent it to them. After a long pause, they agreed with my assessment. 🤣🤣🤣
-
"Can you go through this hours-long process to reproduce an issue i saw and debug it? I don't have bandwidth."
"Sure, but I'm pretty sure the issue is actually due to your recent changes in [related feature], and I'm pretty busy myself."
"No, that's not how that works. Please figure out the real issue." (Strongly implying it was my fault)
*Goes through hours-long process to reproduce* (yes this procedure could be improved but this is a rant not a planning meeting)
*Of course, it was his change*
"Oh. Well, it's not really a priority." -
I'm writing all the dev things I know in a docs site as a means to be hireable should I need to switch jobs.
I'm not gonna go too deep on how I'm doing it. One style I'm enjoying is making every article take only one page long, and if they take longer, maybe consider breaking it into another article.
Fuck long articles. Yes, that's a bit autistic.
But I will describe the challenges I'm finding (which are quite many) in further detail.
One of them is that words can be ambiguous. Production can mean the production environment but it can also mean production in plain english.
And there are tons of cases like this.
Because of this, I felt a lot of confusion in my beginner days. So it my objective to write this as to prevent as much confusion as possible.
Granted, I don't want to write "development for dummies". Software is complex. But because it's complex on its own, I don't want to add complexity to the learning process through obscure language usage.
"Fine", I say, "I'll disambiguate". But this means I find myself branching out very often into fundamental or commonly used software terms like "framework", "model", "scaffold", "algorithm", "viewport", "breakpoint", etc.
Another challenge is reaching good levels of completitude.
This means I have to explain that obscure CLI flag I never used in my life.
If I don't do this, then what makes my docs different than these superficial dev.to or medium posts? Nothing.
But trying to explain EVERYTHING about a software can generate a lot of frustration: I never finish.
It also makes me wonder "do I even know shit?". I think some amount of insecurity is healthy and pushes myself forward.
But at some point it's kind of making me feel like shit. Maybe I just need to keep learning.1 -
Where do I start...
I have seen a QA load local code to a machine, run it and then say it was ready to deploy. Little did we know she wasn’t following the deployment process at all and didn’t even realize she had to. We were a week trying to figure out why the deploys wouldn’t work until she spoke up.
I knew a dev/founder that said to me “source control is only for large projects”, I tried to convince him and his cofounder to use github or bitbucket. Nope, they weren’t into it (fresh out of school listening to professors who hadn’t worked a development day in 20 years) One cofounder got disgruntled, thought he was doing most of the work and decided to quit, he also decided to wipe the code off his co-founders machine. I literally saw a grown man come out of a meeting crying knowing he would never gain back the respect of those mentors and advisors.
I once saw a developer create a printed ticket receipt for a web app. Instead of making a page and styling it to fit a smaller width, he decided to do everything in string literals. More precisely, he made one big long fucking strong literal and then broke it up using custom regex to add styling to different sections. We had a meeting and he was totally convinced this was the only way. In the end we scrapped the entire code and the dude didn’t last very long after that.
Worst of all! I once saw a developer find a IBM Model M keyboard and said “I’m gonna throw out this junky keyboard”. I told him to shut his stupid fucking mouth and give the the keyboard.
He did -
Long story short I joined this company as a junior after 1.5 years of a break from development. Before that I worked for almost 3 years in the required stack. We agreed that if I do well after 3 months probation period I can ask for a raise.
It turned out that Im doing better than half of my team so 1 week before probation was about to end, I put in my raise request. Got nothing but strong feedback, even managed to burn myself out a couple times.
Now since the request 11 weeks passed. Our HQ which has the final say about the raise is overseas. Im getting excuses about summer: allegedly because of summer some people in the appproval chain have vacations so this process is taking a long time. This is the excuse they are giving to me.
Right now Im getting really pissed off and resentful because this drag is becoming unnacceptable. Also being in a new scrum team filled with total juniors complicates everything a lot. Im not having the best time here. But at the same time I dont have any savings actually am in debts and currenty barely am able to survive paycheck to paycheck to I cant just quit on the spot.
Had I known that they will drag this out that much, I would have applied to other places and presented them a counter offer. Or at least bluffed from the start in order to speed the raise proccess up.
Should I give ultimatum to my manager?
Im hesitant to do that because up until now we had a decent relationship and he seems like a nice guy so I dont want to rock the boat.
Or should I bluff about having a counter offer, so he would speed things up? But what happens if he asks me to forward him evidence of my received offer?3 -
My app is finally on the Apple App Store.
The rant: how bloody difficult was it to get on there?! They scrutinise EVERYTHING. My promo copy, my screengrabs and also it seems that there is code that works on iPhone that doesn’t work on iPad.
I thought it was designed to be the same for ease of development? However I found a function that works perfectly well on iPhone but breaks iPad.
Anyway I guess in the long run this keeps the App Store’s quality level high and it isn’t the Wild West like the google play store. However it’s still pretty annoying. I can see why devs get angry about Apple’s process.2 -
I'm going to confess: I am the type of developer that creates the ExcruciatinglyLongAndSpecificClassNameObject with the UtterlyDetailedExplanationMethod. It's just a thing I keep doing, despite voiced frustrations from people I've worked with. It just feels right in the mindset of self-documenting code
And while I acknowledge this isn't a flawless process, I see no other way around without losing information. I've tried alternatives, but everything feels like trading one issue for another:
- Abbreviations work as long as they are well known (XML, HTML, ...). As soon as you add your own (even if they make sense in the business context) you can bet your ass someone is going to have no idea what you're talking about. Even remembering your own shit is difficult after X months.
- Removing redundant naming seems fine until it isn't redundant anymore (like when a feature with similar traits gets added). and you can bet your ass no-one is going to refactor the existing part to specify how it differs from the newly added stuff.
- Moving details to namespaces is IMO just moving the problem and pretending it doesn't exist. Also have had folks that just auto-include namespaces in VS without looking if they need the class from namespaceA or namespaceB and then proceed to complain why it doesn't compile.
So, since I am out of ideas, I'd like to ask you folks: Is it possible to reduce class/method name lengths without losing information? Or is self-documenting code just an ideal I'm trying too hard to achieve? Or are long names not a problem at all? I'm looking forward to your answers.19 -
Once upon a time aka last week,
Was trying to fix an industrial automation software coded in Codesys. My company's standard library is riddled with bad documentation with a mix of English and German terminology.
Had to find out why a program kept crashing the program upon start up. Long story short and many stressful hours later, I found two functions in the standard library that caused an endless terminal process loop. Had to wrap the function in an 'if statement' so it would only run once. Function should have done this by default. -
So, have been working for this company for 4 years now as a warehouse associate, but over time they finally realized I can code. I was given the opportunity to work on different projects (even though the first project was a setup for failure but still prevail completing it).
Long story short, next year plan on finishing my bachelor's degree in Software Development. Once I get the degree (or during the process) should I strive to try to work at the:
Tech position (at the current job)
or
Data Analyst department (current job) ,
since I would be the only developer (for data analyst and impressed the team members at my current job,
or
should I try to find another job in software development for a new field when the opportunity come up for a fresh start in just programming and not warehouse associate work?
P. S. Close friends with the Tech department, have high recognition and have done some projects for them. They would love to see me join the team if it happens. When I am not working with the tech department during off season (needs to be approved by management to work on these projects during off season) I am literally cutting a box, wasting my skills and potential in auditing during the season.7 -
Actual validation message. I will omit the culprit to not shame them:
Your password must be at least eight (8) characters long and contain at least one letter,
one digit and three (3) special characters. No combination of any of the previously mentioned
requirements may be in a repeat success of one (1) or more. Special characters must be
separated by at least two (2) non-special characters, not including numbers. You may not
use more more than one (1) upper-cased and one (1) lower-cased letters in order together. You
may not begin or end your password with an uppercase letter or special character. You may use
no more than eight (8) special characters in your password.
If you need any assistance with this process, please send a message to our support staff.
Message: PASSWD-NG
Your IP Address: 50.202.37.1335 -
Extremely frustrated with the release process and versioning system at my current company. Don't know if this is same everywhere or the half ass release managers can't think of a better way here.
Basically for any client raised issue that can't wait for next release are built as a hotfix. However hotfixes are never bundled togather or shiped to other clients. This is causing a vicious chain, two clients raise two separate issues on same version. Instead of fixing them as single hotfix (however minor the issues) we create two hotfix versions for each with only their issue. A week later same clients come back with the issue the other raised. Once again instead of bundling what is now effectively same code we build hotfixes on top of the clients respective branches. We now have two branches to maintain with same codebase. No matter how serious issue, the hotfix is never made generally available and always created on client's specific hotfix version.
Now that was an example for only two clients, in reality we have released five patch versions of a product in last 2 years. Each product version contains about a dozen artifacts (webapps, thick clients, etc) with its own version. Each product version being shipped to various clients. Clients being big banks never take a patch of product even if it fixes their issues and continues requesting hotfix. We continue building hotfixes on client branch and creat ever increasing tech debt. There is never a chance to clean up or new development. Just keep doing hotfix after hotfix of same things.
To top if all off, old branches are still in svn while new in git. Old branches still compile with ant new with maven. Old still build with java 5,6,7 while current with 8. Old still build from old jenkins serve pipelines while new has different build server. Old branches had hardcoded integration db details which no longer exists so if tou forget to change before releasing it doesn't work.
Please tell me this is not normal and that there are better ways to do this? Apologies I think I rambled on for too long 😅5 -
Cause when you die or exit from process it doesn’t matter how it happened, was it kill -9, sigkill or sigterm. As long as you go to hell / heaven / you name it and not to /dev/null you can still try to segfault the universe. Just give me the code !!!
And it aligns well with depression, alcoholism and lack of sleep. -
!rant
27 days ago I asked here for advice on how to mentor software engineer student that was terrible at coding.
So, we are in the middle of the mentoring, my approach is for her to get used to normal engineering tools, in this occasion she is learning Git and "kanban" (basically we are using Clubhouse for this one) and Github PR submission and approval (I'm the one who approves them, naturally) by doing.
With git, things are hard because we cannot share a terminal session (via upterm) due to her using Windows on her laptop (WSL is an option for using upterm but her internet is so damn slow doing the configuration takes way too long), otherwise teaching her use git would be smoother than it is currently, with the other tools she is gaining a good grasp of them, it pleases me that the bottleneck is with Git itself.
She is working on a hangman game with Python, nothing fancy just the terminal. I made the stories with the requirements in Clubhouse for her to work on each as a unit removing some "thought process" of reading requirements and implementing solutions (at Uni it seems the professor writes a document of several pages detailing the background of the project and the requirements, I can see how it can become confusing for some students like her).
She will start Uni again this August 10th, there is a chance that our first "session" at this will end by then, my fear is that she forgets how to use the tools she learned, so I need to find a way to encourage her to keep using them somehow.3 -
So I was looking into phone app development again (as you do) and I'm working on a simple QoL app for me and my SO that will help us automate some home management and finances stuff. Naturally I delved down the rabbit hole deep and wanted to have push notifications so we don't have to check the app periodically to know when certain things happen... Oh boy... Why is mobile development so convoluted, especially if you don't want to rely on Google Services...
It seems that the most accepted way of doing this is Firebase (FCM). Well me being me, I refuse to use google services for this and I prefer self hosted solutions (for data privacy reasons) which eliminates most products out there.
It also didn't help that my framework of choice is Flutter/Dart, because fuck Android Studio and the insane buggy XML stuff and fuck Android and it's constantly changing APIs...
Well In the end I decided on a rather simple solution and self hosted an AMQP service (RabbitMQ in my case, as I have some experience with it already) and implemented a foreground service in android platform specific code on top of my flutter project to kickstart it and made my phone a queue listener... This now means I can push notifications from my server to the Messaging Queue and it will be pushed into my App automatically!
One thing I found out on this journey was that Android now kills most background services and enforces foreground services to have a visible notification in the status drawer... which I actually approve of. It's a bit annoying that you can start a reliable background service, but I'm absolutely on-board with long running processes started by my apps are constantly visible...
Long story short, I love reinventing all the wheels, especially if it's for free and private... And I also went to sleep at 2AM again because this took longer that I'd like to tune... but it works, and it's google free...
I'm thinking of trying to package this up as a flutter module later, but first I want to do testing on battery life and the general life cycle of the service. RabbitMQ says they have the client library optimized for long-lasting connections and it should be just using a tcp socket, which should pretty much be what all the push notification services are doing anyway. I'm also not completely satisfied with how the permanent notification looks.. it isn't collapsible like some of the other ones from other apps and it's about 2 lines high instead of single line... which is something quite annoying and I'm struggling to find any relevant docs on how this is done other than possible making a custom Notification Style... but I just can't believe that everyone is doing that.. there must be a built-in somewhere -_-... Ugh Android is hell...
Anyway, if any android devs here have some hints, tips and tricks on how to handle this type of background/foreground process stuff and I'm doing something wrong let me know, cause googling this shit is a nightmare too!6 -
So I applied for a Cloud Architect position. The process was very intensive. Roughly 6 interviews, 2 practical assignments and a written exam. In total it took me 3 weeks to go through the screening process. I aced everything, and was told they were going to send me an offer. I received an email on the 21st of April asking me if I was still interested. I replied back immediately saying I was most def interested. The next morning I get an email back from the hiring manager, who happened to CC the client as well, saying I took too long to reply to the offer, and the job was filled. I was perplexed as to how I took too long to reply. I went through the email chain that the client also received, and saw the hiring manager changed the email headers in the reply chain from the 21st of April, to the 12th of April. So it made out that I did indeed take too long and the client went with someone else! WTF! Very unprofessional, but very little I could do.. I wasted a lot of time and energy and heartache with this!4
-
Story of my first successful project
Being part of a great team, I've shared in a lot of successes, one I am particularly proud of is my first attempt to use agile methodologies in a deeply waterfall-managment culture.
Time was June/July-ish and we applied for a national quality award where one key element in the application stated how well we handled customer complaint resolution.
While somewhat true (our customer service is the top-shelf good stuff), we did not have a systematic process in resolving customer complaints. Long story short,
the VP lied on her section of the application. Then came the 'emergency', borderline panic meeting (several VPs, managers, etc) to develop a process to better manage
complaints before the in-house inspection in December.
As most top priority projects go, the dev manager allocated 3 developers, 2 DBAs, and any/all network admins we would need (plus all the bureaucratic management that wanted their thumb in the pie).
Fast forward to August, after many, many planning meetings, lost interest, new shiny bouncing balls, I was the only one left on the project. The VP runs into the dev manager in the hallway and asks "Is my program done yet? If its not ready before December with report-able data, we will not win the award."
The <bleep> hit the fan...dev manager comes by...
Frank: "How the application coming along? Almost done?"
Me:"No, haven't really started coding. You moved Jake and Tom over to James's team, Tina quit, and you've had me sidetracked helping other teams because the DBAs are too busy."
Frank: "So, it's excuses. You really think the national quality award auditors care about your excuses? The specification design document has been done for months. This is unacceptable."
Me: "The VP finished up her section yesterday and according to the process, we can't start coding until the document is signed off."
Frank: "Holy f<bleep>ing sh<bleep>t! No one told you *you* couldn't start. You know how to create tables and write code."
Me: "There is no specification to write to. The design document is all about how they plan on reporting the data, not how call agents will be using the application to serve customers."
Frank: "The f<bleep> it isn't. F<bleep>ing monkeys could code against that specification, I helped write it! NO MORE F<bleep>ING EXCUSES! This is your top priority from now on!"
I was 'cleared' to work directly with the call center manager and the VP to develop a fully integrated customer complaint management system before December (by-passing any of the waterfall processes that would get in the way).
I had heard about this 'agile' stuff, attended a few conference tracks on the subject, read the manifesto, and thought "I could do this.".
Over the next month, I had my own 'sprints' and 'scrums' with the manager (at the time, 'agile' was a dirty word so I had to be careful of my words and what info I shared) and by the 2nd iteration had a working prototype.
Feature here, feature there (documenting the 'whys' and 'whats' along the way), and by October, had a full deployed application.
Not thinking I would get a parade or anything, the dev manager came back from a meeting where the VP was showing off the new app to the other VPs (and how she didn't really 'lie' on the application)
Frank: "Everyone is pleased how well the project turned out, except one thing. Erin said you bothered him too much with too many questions."
Me: "Bothered? Did he really say that?"
Frank: "No, not directly, but he said you would stop by his office every day to show him your progress and if he needed you to change anything. You shouldn't have done that."
Me: "Erin really seemed to like the continuous feedback. What we have now is very different than what we started with."
Frank: "Yes, probably because you kept bothering him and not following the specification document. That is why we spend so much time up front in design is so we don't waste management's time, which is exactly what you did."
Me: "We beat the deadline by two months, so I don't think I wasted anyone's time. In fact, this is kind of a big win for us, right?"
Frank: "Not really. There was breakdown in the process. We need better focus on the process, not in these one-hit-wonders."
End the end, the company won the award (mgmt team got to meet the vice president, yes the #2 guy). I know I played a very small, somewhat insignificant role in that victory, I was extremely proud to be part of the team. -
Debugging is not about process, it's about end.
(I just finished two week long debugging session - approx 5 hours a day. It was nasty bug appearing only with optimalizations in embedded C, you can imagine joy when it came to life tonight. So now I am resting at pub with glass of cider knowing I am loosing needed sleep but I simply do not care right now. Sweet careless.)2 -
I really wanna get a keg of rum and start sailing across the globe...
Just to spank some devs / managers arses.
The last years were... very demanding regarding security and upgrades.
It hasn't gotten better.
Microsoft leaked it's security key thx to internal debugging and the tool to secure the debugging process so secure data gets filtered was buggy...
I'd guess I already have carpal tunnel after Redmond.
But the really really sad story is: This has become the gold standard.
https://lwn.net/Articles/943969/
Chrome selling the privacy mode for Ads, long topic ongoing for years... yeah they did it.
Apple... oh boy. I could write a Silmarillion about it and would still need an additional trilogy.
Amazon realizing that a Microservice architecture needs planning, cause yeah... just potting services in a data center doesn't end well.
It goes on and on and on....
Don't even get me started on the plethora of firmware / microcode updates cause there was either yet another CPU bug or another device pooped their pants cause the firmware is a mess and needed some dubious update without any background at all...
Serious question: Am I becoming a pepperidge farm uncle threatening to shoot everyone cause I'm getting old and cranky ....
Or is really everything in IT going down the drain the last few years?
It feels like every week is just another "we fucked it up" event.3 -
What password manager/ generators do you suggest?
Also would anyone please clear my possibly misconceptions on the password manager/generators?
I’m that type of guy that only uses few password combinations at different websites.
tl;dr: my account out leaked, I didn’t want to use any password manager because I don’t want to give password to the company. Some do generate complex password for me but if they become defunct I’ll be locked out from those accounts.
A while ago, aptoide got attacked and my password(same as google account) was leaked. I’ll have to thank google for this, google blocking a stranger accessing account using a “less secure app” So now I’ll doing a emergency password changing process to all of my accounts with the password.
I like the whole aspect of the password manager, but I always thought that I shouldn’t give my password to other companies. And I got to use some website long term, if the password management company ever just become defunct, I might lose access to my account forever.30 -
Converting all my side projects from C# .Net Framework to C# .Net Core (or Node.js) is a rewarding but long process.7
-
Long post, TLDR: Given a large team building large enterprise apps with many parts (mini-projects/processes), how do you reduce the bus-factor and the # of Brent's (Phoenix Project)?
# The detailed version #
We have a lot of people making changes, building in new processes to support new flows or changes in the requirements and data.
But we also have to support these except when it gets into Production there is little information to quickly understand:
- how it works
- what it does/supposed to do
- what the inputs and dependencies are
So often times, if there's an issue, I have to reverse engineer whatever logic I can find out of a huge mess.
I guess the saying goes: the only people that know how it works is whoever wrote it and God.
I'm a senior dev but i spend a lot of time digging thru source code and PROD issues to figure out why ... is broken and how to maybe fix it.
I think in Agile there's supposed to be artifacts during development but never seen em.
Personally whenever i work on a new project, I write down notes and create design diagrams so i can confirm things and have easy to use references while working.
I don't think anyone else does that. And afterwards, I don't have anywhere to put it/share it. There is no central repo for this stuff other than our Wiki but for the most part, is like a dumping ground. You have to dig for information and hoping there's something useful.
And when people leave, information is lost forever and well... we hire a lot of monkeys... so again I feel a lot of times i m trying to recover information from a corrupted hard drive...
The only way real information is transferred is thru word of mouth, special knowledge transfer sessions.
Ideally I would like anything that goes into PROD to have design docs as well as usage instructions in order for anyone to be able to quickly pick it up as needed but I'm not sure if that's realistic.
Even unit tests don't seem to help much as they just test specific functions but don't give much detail about how a whole process is supposed to work.9 -
My worst mistake was to not follow the commit process one time. I was multitasking a lot and forgot to run the tests for one of the commits I made. Next thing I know the whole Dev team started complaining that the Head of the branch was all messed up and blaming me. Long story short, it wasn't my change but I had to take the bullet and revert it for not following the process. It was deserved. Process is just as important as writing the code.
-
Bro I fucking hate Flutter and android studio. I have just started android development and oh my god the bunch of errors i’m getting is crazy af. Like I don’t get one point, flutter was created by google and android studio was also created by google… then why tf they don’t focus on normalizing the development process. Why so many errors ???????? And no easy fix for it like whyyyyyyyyyyy?????
Anyways sorry for the rant but there’s more to it. I just built a fuckin app which was running fine in my AVD and then when I sent it to my friend he was seeing a grayed out screen and then I searched for the error and then I was like bruh, I was sitting for sooo long building the first app of my life and here we are. My app can’t even run on someone else’s phone because of a fuckin gray screen error (i’ll fix it tomorrow)10 -
About 3 years ago, we had 4 different WordPress sites for various clients.
My colleagues thought it'd be a genius idea to keep them all in one repo. Even more genius, for local development, a single installation which implements a switcher for the wp-config.php files so we can switch between sites. Not bad in theory.
Fast-forward to present day. 1 client left; another site got converted to using Laravel because they always asked us to update their content so no point using a CMS; whereas the remaining 2 sites use differing versions of WordPress on their live sites, no less than 18 months out of date, have no dev sites, different collection of plugins and themes and both modified to the deepest darkest depths of fucking hell that's barely recognisable as WordPress anymore and next to no documentation or comments around the changes.
The functions.php file of one of these themes is over 4000 lines long!!!
We're keen to upgrade our servers to use Ubuntu 16.04 which defaults to PHP7, so all the already deprecated WordPress functions will then fail to work completely as will have been removed.
Both of these clients have agreed that they wish to convert Laravel as well so there's not really much point in going through the clean up process of their WordPress sites. Just copy the database nuke it all and start a fresh with Laravel FFS!
They also wish to completely redesign and discuss what features to keep/add/remove. With no date for these redesign meetings in sight, we won't be converting to Laravel any time soon, nor upgrading our servers in the foreseeable future either!
This is all because of one dev in the office and his history of failing to keep on top of breaking changes!
Fuck you! Seriously, fuck you!!!
If I was your superior, then you'd have been fired long ago!3 -
TL;DR: Have you ever been on a serious company where you have to DRAW a high fidelity mockup of the software in the design phase?
So I'm in my last year of college and I have a class called Interactive systems design, which is basically about usability and how to design the frontend of your app so it's intuitive, pretty and easy to use.
So we work in groups to design a project for the entire semester, following a long and tedious process of research and planning which includes writing absurdly long documents, doing interviews with potential users and more.
Now that we've done all of that, the teacher insists that we make paper mockups of our app before we do a digital one using Balsamiq or other programs. He wants the paper mockups to be "interactive", so we have to draw them and then record a video where someone "clicks" on the mockup with their fingers and another person moves the papers around to make it look like an actual app that's doing something.
The teacher still insists this is something almost every company does when designing a project, so it's very important that we learn to do this kind of stuff. He's kidding, right? Have you guys ever drawn a mockup of an app instead of using some mockup software?7 -
Working on a new tool idea. It's a long & boring process of checking domain availability for multiple name ideas. That's what I'm trying to solve in here ⚡Are you excited?9
-
Does somebody know how to send data to the PHP CGI executable directly and how to receive it (stdin/stdout)?
Or point me to a useful resource?
In a side project (just for fun) I try to implement the interface on NodeJS so I could process PHP through ExpressJS (long story).
I've been able to send and receive stuff, but the PHP CGI always tells me that I am "not allowed" to use this interface...
Docs/mailinglists seem reeeally old and don't want to go through the Apache source code 😅
Or does Node not have enough privileges for communicatig with PHP CGI exe?8 -
Revision to the Peter/Dilbert Principle, the ProjektAquarius principle: a company will systematically shift the least competent employee on to the assignments the competent employees can't be bothered to do until they become an integral part of the team and drag you down with them. (E.g. eventually they completely fuck up your delivery process, although it's probably still cheaper and quicker than having them do anything else.)
ProjektAquarius principle: A Case Study
We have an engineer who is getting paid quite a bit more than me. Over time his responsibilities have gradually been reduced to documentation and running our almost entirely automated build. Well today the build failed. He pulls me over to tell me, and says he's confused because there is a file there he has never seen before in there and a file he always has seen that isn't there (basically a file got renamed. It was not non-obvious). Answer: change the file name.
Then he comes over and tells us that it's failing again because the script is not finding a file. So a coworker of mine and I go over. He explains the whole build process to us when we ask if there is any point in the script that would help us identify where the script is looking for the file and failing (there wasn't but that's besides the point).
Turns out, he had decided to put the assembly list in order. Normally no problem, but the list is in source destination pairs. So the fucking file was being put in a different directory than the one the script was looking for it in and failing. And that's the story about how my company just paid 3 engineers a quarter of a man hour each for something that would have been resolved in 30 seconds via file search/copying and pasting a file path. Related note: our process for building an install is now about 4 hours long with no change on process besides the BCAK. -
Does anyone here knows (first hand) how long does it take the entire hiring process at Google in Europe?
From the first contact to the offer?
Thanks a lot6 -
3 weeks back took a bug..
**long rant**
Looked into it and found that it is exist in older version(say V1) as well.
Sent mail to client stating i can fix this in current version (say V2). Since V1 is already released and our current code stream is V2 and so if we fix in V2 , the code will not reach V1 code base.
**explained to client**
Client : I mean if you fix why it won't work in older release.
Me: Explains how code streams will work.
Client : Okay.. but it will support the functionality in V1 , right ?
Me: (*internally* are fucking kidding me? It won't work dumb ass.) No. It won't work in older versions. I am fixing it in V2.
client: okay.. Let's proceed.
Me: Done code changes. Send code to review. (we have to send review to upper level manager).
Manager1 : I didn't liked this part. can you change this ?
Me : sure. Done.
Manager1 : Now i liked it. Sent review to Manager2.
Me: why the fuck ? Are you not sure about my changes are good?
Manager 2: I liked it, but need some log changes.
Me: Fuckkkk...... Let me change this.. Done. Now can I promote those changes?
Manager2: No we need to send review to client manager as well.
Me: Goddammit.. Okay.. sent review.
*After a fucking week..*
Client Manager : Looks good. Push the code.
Me: Finally..
(This process took 18 days which would have been completed in 3 days if there is only one peer review)
Now the other guy from client whose tracking the bugs reported why it took so long to fix it.
I think my client manager is over paid and can't even know how his company code stream works. Fuck you . why client has these lazy ass old fucking "I don't look into my email" type people. God I hate these "I am in rich country" people.2 -
ITS FRIDAY!!!!!! such a long week..... fcking prod issue and new (anti) agile process team wants to implement2
-
Curious question to fellow Mint Mate user (if there is any).
Do you experience a long restarting phenomenon with your mint?
I have used this and that distros and windows in the past. I am fond of light and fast things; long time user of xubuntu and lubuntu. Mint saved my ass when I had some display driver issues with my xubuntu. So I have switched to and I have been using it for a while and noticed that sometimes the restarting process can take more than 90 second.5 -
So I just got rejected from a company I always wanted to worked and that paid almost best $$$$ among others. During the recruitment I was almost convinced I'd get hired (recruitment process was 4 months long). I cleared all the rounds in breeze. Yet I didn't get the offer. Now I'm sad.1
-
Few months ago we move into a new Building, Company buys new Polycoms for 2 of the boardrooms - fancy ones with the Skype for Business and stuff.
Provision the boardroom accounts get them set up and all is working well.
Director asks if we can swap 2 boardroom phones around because their dept. just got a remote user and video calling would be awesome.
I set to work changing sign in details, provisioning accounts, assigning licenses, etc which is a long process because 365 needs to update throughout.
Finally get everything right, time to login... Failed...
Login fails on the Polycom, my laptop & an android tab - all 3 with different errors.
Decide to test account by logging into the web version in OWA - logs in perfectly.
Why Microsoft?? Why must you make it so hard? Why not just work?2 -
I setup ELK for our team and went live with it on Production VM.
I'm the only one that knows how it works, is setup... Because no one else cares or wants to know as long as it works...
And well if it doesn't, let's just say they hope that I'm around...
On a side note, I think I'll leave a bit early today since I cut or main projects build process time by 50%.
Root cause: SONAR complains if you implement that using if else to match each field... it is pretty ugly...
And can use Lombok to clean it up, last rant.
So shaved off 10 minutes in each build... And well I'm like seriously? No one else bothered to figure this out for the last year or 2?
I mean I've been pretty busy too but the team had like 20 ppl and at least 4 senior devs and well u don't even need to be senior? Just inquisitive and proactive?2 -
Any of you are annoyed by your non-technical manager work practices?
Every release I feel like our manager's goal is to have our planning and results look good in front of higher management, no matter if it is true or not.
Oh this big task could not be done because we had to plan 4 months in advance with no info and poorly done requirements? Well let's just push it to the next release we can't have unfinished tasks logged in.
Oh we don't have time to work on tech debt and refactoring, there are too many features and bugfixes to do. Well maybe that is why there are so many bugs, eh?
Oh your automated test results need to all look perfect, does not matter if your test are even good or actually doing anything in the first place, as long as it passes.
Also, I was promised agile and got a waterfall-like bullshit process instead that barely works.
Anyways just morning rambling.1 -
Ponderings more than a rant.
Can't help but feel that if Google (and other companies with similar ridiculously hard interview experiences) want to keep attracting the best candidates, they'll have to change their approach. I can't be alone in that, surely?
I know a lot of good senior & lead devs through various networks - *really* smart people, definitely way brighter than me, who stay on top of their game, work really well in any team they're a part of and create top-notch, beautiful and well-tested code to do just about anything they set their mind to. A few of them have literally turned around projects on the brink of disaster into massive successes.
Have *any* of them expressed any desire in working for companies like Google? Not one iota, and mainly because of the interview process which has a (deserved) reputation for being unnecessarily long, drawn-out, and full of irrelevant questions and mind games.
20 years ago when working for Google was *the* cool place to be, I could see it. But I really can't see them attracting the cream of the crop all the while they continue to take that approach. The really good devs just have too much choice elsewhere - there's not much reason to bother.5 -
While working on a problem my codding partner and I spent far too long trying to figure out why nothing was working with the deployment tool that we where given. The team that maintains the tool told us that all the scripts that we needed to write, to filter and add additional logic to the deployment process, was supposed to be in groovy,
after a couple of hours of having nothing but failed runs, we started poring through the tools official documentation just to find out that the feature we where using used JavaScript instead of groovy. 2 minuets latter everything worked.
The most puzzling thing with the problem is that the code was executing and just having issues with the regular expression that we used on line 20 or so -
every time someone says sustainable I flinch and have to re-process what I just heard
I can't get used to this
I know it has an actual meaning but it's been used stupidly for so long I can't untrain it from my connotations to Marxism / theft
I do find it really funny that now disinformation went from smearing people for not towing to some authoritarian line to calling out the smearing people though4 -
The term "technical debt" is poorly used. I hear folks of all stripes and roles proudly proclaim that they've "reduced technical debt" in some way. It's used as a catch all to describe some kind of supposedly beneficial change. I think it's just more software process word salad. Mostly because there seems to be some assumption that "Yay, that stuff that was changed is no longer a problem" when odds are that it will be changed again before too long for more "technical debt reduction". Software changes over time because the requirements change over time. I don't see the need for the phrase at all, and I think using it gives some false sense of accomplishment when really the constant change of code is the normal state.6
-
Long time no rant...
Just fuck apple.
I’m working in partnership with an startup as iOS dev.
We have payments in our app since it was released couple years ago. And everything was ok. Two months ago we implemented a subscription based program that granted our user access to a few things that we need to process manually. I specified that because in apple’s guidelines states that services consumed outside app are not allowed to be sold using inapp purchase and you have to implement your own payment method.
All nice and good we used what we had already in place and the updated was approved. Same for the next 6 versions. Now we discovered a quite critical bug and fixed and submitted a new update just so apple would reject it because we are using subscription that is not implemented using their fucking store kit. So they can’t get those 30% share cut.
Fuck them fuck their echo system fuck their overpriced product. I’v just abandoned my 15” mbp mid2015 in favor of a hackintosh just because my mbp was dying from high temps. Fuck it i’m almost done with mobile development after 6 years2 -
I've written watchdog to restart background job runner every 5 minutes because I couldn't track why its process was randomly killed...
But hey, client had conference in 10 minutes so as long as it works... -
If i become borderline rich, and rich for me is even 50k$, I b2plane promise to not post 1 shit post anymore ever (as long as in still borderline rich)
To speed up this process each of u can donate me 1$3 -
1) Starting long running process on a Windows test computer.
2) Switching back to working computer and coding.
3) Switching to the test computer to see how the long process is doing and sees the Win10 reboot screen saying "We are getting a few things ready for you..."
Just gotta love it when MS decides when it's a good time to reboot. :-( -
!rant
In case anyone else finds this useful - Git 2.22 gets a --no-overlay flag, allowing you to switch directories between branches at will *without* having to clean up any newly created files in the process.
Long overdue IMHO. -
I started with Gothic II modding as a kid and copy pasted the hell out of that game.
After that I learnt to code Java in school. And was shattered because of the things I did back then.
At my first job I learnt to code RIGHT. So... learning to code is a long process.1 -
Before I came along, my company was processing orders of type X by hand, taking many hours and being at greater risk of human error. So as a temporary solution, I crafted a console app to do the processing. Then, this app is needed to be accessed remotely. Because adding a newer .NET to a handful of servers was just too much to handle emotionally for management, the console app was revamped to a web app. During this revamping process, I was having my client send me an email so that I could initiate the processing myself until a friendlier UI was available. Well, I finished last night. I sent them an email explaining that it was live, gave them the address, and gave myself a high-five. A moment ago, I get an email from the client insisting that I process those orders quickly so that I don't cause a delay in shipping. FML!! Did they even READ the email I sent them?? They've been suckling at the teat for too long. Adding insult to injury, since the revamping project began, the client would CC my boss every time they emailed to have an order processed as if to hint at their frustration that the project wasn't done yet. Grr....
-
tldr: i take pride of our code! It hurts when someone calls it wrong when i know it was right.
So there was this integrations team that are trying to connect to our api. This team has been throwing different people to work with us. We even taught them how to use postman/soapui with ssl, even to the point that we search stackoverflow to resolve their code-level issues and left us halfway, then came back again repeating all process. A year passed, they came back with the same issue... now all answer that they get from us was to “review past conversation”, Today, they insist that we repeat ssl onboarding process as they are having issues with their current one, we insisted not to do it, and told them we (including them) can proceed without changing the client ssl. And told them we had a snippet sent to resolve their issues, but instead told us in a rude way, our sample is wrong. I was challenged to prove that we can make it work by eod. With their wrong sense of pride as theyve been working for that issue for long, they started throwing tantrums on us, saying that we do not need to make them feel that they do not know what their doing. man! Cmon, its you who requested that snippet few years back, then you tell us you dont need it as it is not working, in the first place, it is not our job to code for you asses,...i left the channel after. it was escalated quickly to management and accounts team(those people who only cares for traffic/money).. asked to return to the channel, spoonfed the details to them, provided a working snippet and left again.not sure what happened next.,. I hope this started a fire on our management to handle such incompetence. -
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... -
My head solves each problem with a logic base thinking process, I tend to be awful talking in my main language but great in English, don't have patience to stupid people with stupid questions, learned that most of my friend have great ideas and think that I would love to work for free as long as I'm coding
-
based on my previous rant about dataset I downloaded
https://devrant.com/rants/9870922/...
I filtered data from single language and removed duplicates.
The first problem I spotted are advertisements and kudos at movie start and at end in the subtitles.
The second is that some text files with subtitles don’t have extensions.
However I managed to extract text files with subtitles and it turned out there is only 2.8gb of data in my native language.
I postponed model training for now as it will be long, painful process and will try to get some nice results faster by leveraging different approach.
I figured out I can try to load this data to vector database and see if I can query it with text fragment. 2.8gb will easily fit into ram so queries should be fast.
Output I want is time of this text fragment, movie name and couple lines before and after.
It will be faster and simpler test to find out if dataset is ok.
Will try to make it this week as I don’t have much todo besides sending CVs and talking with people.2 -
I was trying to move a Zend app from one server to another once. there were actually 3 apps running on 2 different servers, an idle rabbit server, and the code in prod was vastly different than what was on the repo. the docs the previous dev wrote were literally the about pages for the tech used.
I remember he had a Windows server running something... all the docs said was "for long processes".... there wasn't a single process ever running on it. -
I have to download 500 images from bookreads to help a friend out. Thought I'd use this opportunity to learn about web scraping rather than downloading the images which'd be a plain and long waste of time. I've got a list of books and author names, the process I wanna automate is putting the book name and author name into the search bar, clicking it, and downloading the first image the appears on the new webpage. I'm planning to use selenium, BeautifulSoup and requests for this project. Is that the right way to go?9
-
There was a department. Long time ago their work was somewhat complicated: background checks of businesses, websites, ToSes, assuring agreement compliance, some risk management on top. They started as small 3 people team but over the years they were hiring new employees to catch up with the growing customer base. They were still struggling. Few years back we've integrated 3rd party services to help them and, finally, their backlog was gone!
In January they complained about how much more work they have since the merger so I inquired about which process was troublesome, what was the flow, etc., and it turned out to be very... Tinder-like - the issue was the sheer number of cases:
1. open a case,
2. check results in few windows,
3. if green + green + green, move right.
4. else move left.
It was ridiculous, I wouldn't stand for that. I sat for an hour, made some ghosting scripts that followed same business logic and saved results alongside their actual decisions. Last week I compared the two and there was zero difference so I green-lit it with my boss and pushed to prod.
Oh, the happiness on their faces when they heard the news, the disbelief, the tears of joy!
And then it happened. After 4 years of being cautious not to stir the waters I did it again. Yesterday I accidentally replaced 17 people department with 3 scripts. How was I supposed to know it was *all* they were doing??1 -
I recently built an automated payout functionality for bank-to-bank transfers, and we initially looked at using the pain.001 XML schema to do it. Luckily, we ended up finding a service that has a simple REST API to do this instead. (Thank god we didn't go with the XML method, I know how much of a headache that could become, I can imagine the treasure trove of memes with naming an XML schema with the name PAIN)
Anyway, for one of our big-brained product managers, this will forever be the infamous "XML Task" that he continues to ask about and bring up. I've already clarified a few times that we have long chosen a solution process that has nothing to do with XML, but to no avail, it will forever be his "XML Task". Wonder what name he'll pick next time we need XML in a solution? "Second XML Task?" Let's just keep the mental overhead idiot train going!2 -
i wrote a whole-ass python script to allow me to resume an interrupted makescript from whatever step it was stopped on (because 25 long-ass lines smashed together with semicolons is hard to remember and to type fast) but the make process disowns all the processes so it just immediately started all the make steps all at once... back to just manually resuming for me.1
-
For a while now I've wanted to make a blog about engineering and discovering different types of engineering (software development, electrical, mechanical, etc). In the blog I'd like to write about journey discovering what kind of engineering I wanted to be, how I got here, and fun projects you can do to see what different types of engineering fields are like. Long story short I want one of those projects to be my process making the blog they're actually reading it on and I have no idea where to start with web dev. Can I get pointers (puns) to resources or frameworks that would be good for beginners?5
-
Fuck the long process to make a new Microsoft Azure account. It needs both a verified email and a verified phone number, and (especially) doesn't accept a Google Voice number, which is the main number I actually use for everything. And of course, this is after doing the exact same process to make a new Microsoft account.1
-
Why recruiters are sometimes taking so long to answer? I did my final stage of interview with the companie's client (out of 4 stages in total) last Thursday.
Client came back with positive feedback at Monday at the end of workday. Today is Tuesday and internal recruiter was supposed to call me to make an offer and discuss starting date.
Now again workday is nearly over and no contact from her. Tomorrow is a national holiday so she will get back to me at best on Thursday.
Goddamnit why it takes so long, if Im starting next Monday I need to prepare myself. Im seriously getting second thoughts such as even about declining the offer if they will try to lowball me. Previous week they really rushed the process and I had to do 4 stages of interviews and this week they are wasting my time. Am I being impatient or what?2 -
This moment when you have to read a 3k lines long Service class to plug a new process on the legacy one, and wonder if it wouldn't be just better to rewrite stuff in parallel instead of reusing and bending the old one
Everything is so tightly coupled that I would have to refacto all this and extract methods but I don't have time for that, and the chance of breaking stuff is insanely high -
Damn some stupid moves can literally fuck you up.
I just moved to linux distros around 4 to 5 months back. And I have installed and reinstalled it many times. So I thought it's simple and cool af.
So last time when i installed Ubuntu 18.04 i had it installed it on SSD and mounted my home from HDD. I felt super awesome. It worked perfectoo! 😘
And now I had some issues with dual booting so i planned to resort it and make it clean.
So during the installation process there's a part where you gotta select where to installation path and all. Its been a long time since I did a clean installation and TBH i forgot the / and /home . So what i did I put / on my previously maintained home instead of putting it on the SSD.
Now I am FUCKED!
Guys never ever make this mistake. It's baaad. Reaaal bad!2 -
First and foremost, it's essential to figure out which IRS office is closest to your location. That, in itself, can be a daunting task, especially if you're not familiar with the area. Using the IRS's online office locator is a helpful start, but sometimes, even that leaves you with more questions than answers.
Then comes the joy of trying to get in touch with someone who can provide the specific information or assistance you need. Long hold times, automated systems, and a seemingly endless stream of recorded messages can leave you feeling like you're caught in an endless loop.
And let's not forget the paperwork. Different IRS offices often have different procedures, so finding the right forms and knowing how to fill them out correctly can be a headache.
In the end, it feels like a journey filled with frustration and uncertainty. But, here's a tip from someone who's been there: persistence pays off. Keep trying, be patient, and, if possible, reach out to others who've had similar experiences. Sometimes, a bit of collective wisdom can make this daunting process a little more manageable.3 -
Have a question for more seasoned developers/techies in the industry. I started my first software development job 7 months ago and I am contract to hire. There’s only two developers (including myself) on my team and we’ve been working on two separate projects that’s apart of a bigger system. He was a contractor but because our company took too long to get back to him about converting he interviewed and accepted an offer at Amazon (don’t blame him). Now I have to take over his project as well as mine which would be overwhelming to say the least... our team is almost entirely remote so it can be difficult to communicate sometimes and our company is heavy in process so development moves slow. Should I start looking for other opportunities or should I stick it out and gain experience even though the workload is unrealistic?5
-
I have been an armchair neuroscientist in my interests. I am fascinated by the brain, how we believe it works, how it really works, and what different research has shown. I have found books written by real neuroscientists that talk about how the brain works and what the research they have shows about intelligence. I am also fascinated by the idea of rewiring your brain. I just found another neuroscience book that has research from some neuroscientists that have challenged the established belief that adult brains have little to no neuroplasticity. This is the ability for the brain to rewire itself to accomplish new tasks or repurpose different parts of the brain. I didn't know this was a limiting factor in the theory of neuroscience. The book also includes information about how Buddhists and neuroscientists are working together to unlock more knowledge about neuroplasticity. The traditional neursoscience belief is that the brain affects the mind solely. However Buddhists have long believed that the mind can affect the brain physically. I am just starting to read this book, but so far the experiments that have been performed seem fascinating. It also has not gotten to the part about the Buddhism influence on the research yet. So far I have just read about how scientists have shown that plasticity can be shown to occur with normal everyday tasks. I don't know where this will lead, but its really cool to read about.
Okay, great, so what?
The why was I looking for this is interesting. I have been looking for some time ideas on how to improve my thinking. I had the idea that I could help myself think better by training my brain with mental exercises. I want to create a program that runs on the computer or phone that one could use with visual and audible cues to play mental games. These games would be designed to make one better at solving puzzles, remember things better, and more. If these exercises could be made in such a way that they were fun to do then we could use our own addictions to improve ourselves. The research I had before frustrated me because they always said you couldn't make yourself smarter. Maybe you cannot increase your mental capacity (not sure if that is true if we can grow neurons, also mentioned in the book), but reorganizing what you have might be possible. Maybe if there is a finite capacity to the brain that reorganizing might cause you to drool. I don't know, but if I could create a puzzle game with the purpose of helping me visualize algorithms, I would find that useful. Also, helping me remember short strings of data would be helpful as well. It seems like I have trouble when it is more than 7 numbers (ten?). Which is also why phone numbers are that long. To make them easier to remember.
I just don't know where this will lead. It might be a wild goose chase. But I think I will learn something about my mind and myself in the process. It also sounds like a great deal of fun.3 -
So it's been a burden I carried for long.
With the way I set npm up, I unconsciously did the installing process with sudo, and thus can't use npm properly without a sudo.
Is there a rather not convoluted way to set it back up so I don't have to use sudo again for that?11 -
Right guys and gals, I need your opinions.
Recently was approached by a recruiter who thought I’d be a good fit for a role, a role that is a step up from senior dev but without moving into people / project management.
More like a bridge between architects and senior devs.
I thought what the hell, why not. So I agreed to go for it.
It could be quite a decent payrise (though that wasn’t my motivation for going for it) and I like the idea of doing more mentoring, design and research than I do now. It would involve stuff like learning new tech, coming up with examples and implementations of how the dev team need to use it to churn out user stories.
For the last few years I’ve been mainly a back end developer, which didn’t start by choice and I always liked to be full stack.
But the recruitment process for this role has been quite slow (number of reasons) and since then I’ve been given a new piece of work at my current employer doing some greenfield angular work, plus the c# back end.
I’m really, really enjoying this angular work. Haven’t done it for a while and it feels great to get back into it. Seem to be picking it back up with no problems, like the old magic is still there.
Also the money at my current place is good enough.
So now I’m wondering if I should bail on this other role in favour of seeing this out and maybe going back to being full stack (tho for reasons I’ll outline below in the long term that might have to be elsewhere)
But I’m also trying to remind myself that up until enjoying this work there’s a reason I decided to go for this other role.
Current place is a small company that has no project management process. It’s chaos, and everything’s an emergency. There are no requirements for anything, not enough people etc. No one has a clue how to run an IT project.
The one thing we do have is good development practices in our team and we have been greenfield for the last 12 months working on a new product. But we do tend to be pigeon holed into looking after a specific service/area.
But this new place if I got the role, is a bigger company (I’ve worked in small, medium and massive companies so I know what the difference is like), they’re a household name, they have resources for learning, putting people through aws certs, etc. They give people time each week to invest in themselves. Much more agile.
And thinking about it now you don’t often see a role that allows you to ‘move up’ without having to take on people/project management and still having time to be hands on.
(Just maybe more hands on with strategic work than delivering user stories for business as usual)
So just in general, what do you think? -
After my third "requested changes" I've officially lost all dignity I held. Spend hours working, wrong solution. Revert, not working. Fix, removed functional code. I think my brain is just broken. Or maybe this project is just massive and I just can't wrap my head around it properly. Or maybe I'm just clueless. One day I'd like to be at a level where you hear an issue and immediately know the solution, where the problem lies in the code, how to fix it, and how long it will take. Hell, I'd settle for even one of those right now. The learning process is so stressful.
-
WSL seems really cool from what i've been toying with it. WSL2 seems like it'll be even better and the integration with docker(another thing i'm toying with) looks interesting. as far as i can find though it's only on windows insider for now, and I don't like having telemetry on my main machine.
So i spent a good chuck of my day just setting up Hyper-v, learning about nested virtualization (so docker will work), setting up a win10pro vm, and i'm now in the process of setting this up to be a virtualized dev machine (not gonna be a one use only system cause i spent way too long on this shit) and setting up docker and wsl
I don't know much about docker or WSL beyond just some random stuff i've learned to toy with to simplify some things i do. but maybe this will give me a cool way to actively learn more about them and maybe use them as more than just boredom toys3 -
Anyone here any info regarding the company "Nuclei".
Like how the company and working here is?
It's been a long while I am being waiting for them to start the campus process!4 -
That time my then employer decided to build an ERP system but was unable to fund the process, long story short delayed salaries, low morale, everyone on the team leaving, sad times
-
After rewriting a piece of code to simulate a process subject to human error I previously stepped back and looked at it and realized the test data I was generating which I would have just let run of it wasn’t so long was subject to a simple distributive property and could be normalized considerably which then could be subjected to error introduction and used as training data at random and over time and error really only being ones of efficiency or last moment mistakes of a manual process
-
Any one hear hates the process of creating a new react app, cuz the command takes so long.
You should know that there is an NPM package called create-react-app-offline, its offline and faster.2 -
Long time no rant.
Spent the last two days trying to figure out why a legacy app that I adopted (was a surprise considering I'm a database developer not c#).
Long story short horrendous view causing issues retrieving data in an app that is slow enough as it is.
I may have suggested starting a proper product roadmap and using sprint's etc for managing development of said app. And the boss agreed, currently the process is someone asks for a feature and we drop everything and develop it so things get forgotten/pushed to the back of the queue.
So to cut to the chase, can anyone suggest any places I can read up about managing this properly? -
"We use the letters of our alphabet every day with the utmost ease and unconcern, taking them for granted as the air we breathe. We do not realize that each of these letters is at our service today only as the result of a long and laboriously slow process of evolution in the age-old art of writing." - Douglas C. McMurtle1
-
YAYYY! I MADE IT!!
After several nights of playing with my new and very first custom mechanical keyboard, at last I could successfully get my long-time-dreaming keyboard!
I read the guilds, tutorials, even youtube videos to get walked through the process:
- I started with building my own layout on different websites, since they said that it would be easier to use online tools than to write codes by yourself in order to build your own keymappings, but the UI/UX of the first one I tried was so bad that it took me a great deal of time to understand how to use it and working on it is even more time consuming. Later I found another webpage which was less recommended, but could help me to do that a lot easier.
- Then, the result was compiled to a firmware file, which would be flashed into the kb's controller. Loading the file into the board was also tiring and got me exhausted totally! I tried all the "lazy" recommended ways (using Windows softwares) but received the same error all the time. When I almost lost all the hopes, I'd come to the least recommended way: typing a few command lines on Linux. And it worked! The keyboard just do what I want it to do miraculously.
What I learnt: never do complicated things on Windows, because they are suuuuuper simple on Linux!
P/S: Sorry for the bad lighting in my room and the tiny spacebar (the spacebar size is 7u which I don't have one right now). I just need a beautiful keycap set to make it perfect.5 -
I got situation here,
I am getting 524 error from cloud fare. I sent some data using AJAX, process it and then return the result. Since the data is large and have some SQL manipulation on it so it take a lot of time. I put the process in back end. But still even for 10k records it took 4-5 minutes to process, Issue is everything works fine but since cloud fare response time is 1-2 minute so it through 524 error (as it does not getting any response within its time frame). How I am suppose to tackle this. May be using job scheduler now ? My client simply refuse to send small data. My Friend is suggesting don't use ajax, simply reload the page. But again data is too much so page loading will also through 524 error. Kindaa stuck here. Any idea/suggestion how I can proceed.
Language I am using PHP. Database, MySQL and SQL.
Hmm Here is some more explanation
https://github.com/marcialpaulg/...
But not working
Here is also something
https://stackoverflow.com/questions...
But I am thinking why redirecting ? It doesn't make sense to me7 -
To say that losing 40,000 BTC was a devastating blow would be an understatement. It was an emotional and financial crisis that left me feeling hopeless and utterly lost. For weeks, I found myself trapped in a whirlwind of regret, second-guessing every decision that led me to that point. The fear that I would never be able to recover such a significant sum of cryptocurrency consumed me, and with each passing day, my despair deepened. I had all but given up on ever regaining my wealth. Then I happened to stumble onto Tech Cyber Force Recovery. In the beginning, I was hesitant. It looked too good to be true: was it possible for someone to get back so much of their lost Bitcoin? After trying several different approaches and programs without success, I was hesitant to put my trust in another recovery agency. However, I changed my mind after reading Tech Cyber Force Recovery's stellar reviews and reputation. Reaching out to their team was a risk I made. They were courteous and professional from the first time I got in touch with them. I felt like I wasn't just another case to be solved by the staff at Tech Cyber Force Recovery; they truly cared about getting me my lost Bitcoin back. They listened carefully to my circumstances and guided me through each stage, giving me succinct and understandable explanations as I went. Their passion gave me new hope, and their openness instantly made me feel better. As the recovery process began, I still had my doubts, but I knew I had placed my trust in the right hands. The Tech Cyber Force Recovery team kept me informed and updated on their progress, ensuring I never felt in the dark. Despite the complexity of my case, they worked tirelessly, and their expertise became evident at every turn. The level of professionalism and attention to detail they demonstrated throughout the process was beyond impressive. And then, after what felt like an eternity of anticipation, the moment I had been waiting for arrived. I received the news that my 40,000 BTC had been successfully recovered. It was hard to believe at first—it felt like a dream. The weight that had been dragging me down for so long was suddenly lifted, and I could breathe again. The financial loss I had feared would define my future was no longer a reality. I can’t fully express the emotions I felt during that moment. It was a mix of relief, joy, and an overwhelming sense of gratitude. I had gone from a place of utter despair to a complete resurgence of wealth, both emotionally and financially. The team at Tech Cyber Force Recovery didn’t just restore my Bitcoin—they restored my faith in the possibility of recovery and gave me back something far more valuable: peace of mind. I will urge anyone in this same predicament to.
WHATSAPP THEM ON
+156172636972 -
Positive Moves: Your Best Rated Long Distance Moving Company in WV
Moving long distances can be a daunting task, but with the right support, it can also be an exciting new beginning. At Positive Moves Moving Company, we take pride in being recognized as one of the best rated long distance moving companies in WV. Located at 841 57th St SE, Charleston, WV 25304, we offer reliable and professional moving services tailored to meet your unique needs.
Why Positive Moves is the Best Choice for Your Long Distance Move
Expertise and Experience
With years of experience in the moving industry, our team has developed the skills and knowledge necessary to handle long distance relocations effectively. We understand the complexities involved, from planning and logistics to ensuring the safe transport of your belongings. Our goal is to make your move as seamless as possible.
Comprehensive Services
At Positive Moves, we offer a wide range of services specifically designed for long distance moves, including:
Residential Long Distance Moving: Whether you are moving to a new home or apartment, our dedicated team will ensure every detail is managed with precision and care.
Commercial Long Distance Moving: We specialize in office relocations, providing efficient and effective solutions to minimize downtime and keep your business running smoothly.
Professional Packing Services: Packing can be one of the most stressful parts of moving. Our expert packers use high-quality materials to protect your belongings and ensure they arrive safely at your new location.
Transparent and Competitive Pricing
We believe that the best rated long distance moving companies in WV should provide value without hidden costs. At Positive Moves, our pricing is competitive, and our estimates are clear and detailed, allowing you to plan your budget effectively. You can trust that there will be no surprises on moving day.
Commitment to Customer Satisfaction
Our commitment to exceptional customer service sets us apart. From your first contact with us at +1 (304) 590-0840, you will experience our dedication to your needs. We listen to your concerns and work closely with you to create a customized moving plan that meets your requirements.
Our Streamlined Long Distance Moving Process
At Positive Moves, we have designed our long distance moving process to be efficient and stress-free:
Free Consultation: Reach out to us for a free consultation. We will discuss your specific moving needs and provide a detailed estimate based on your situation.
Customized Planning: Our team will work with you to create a personalized moving plan that accommodates your timeline and preferences.
Packing and Loading: On moving day, our professional movers will arrive on time to pack and load your belongings carefully, treating them with the utmost respect.
Safe Transportation: Our experienced drivers ensure that your belongings are transported safely to your new location, keeping you updated throughout the journey.
Unloading and Setup: Once we arrive at your new home or office, our team will assist with unloading and setting up your space, helping you transition smoothly.
Contact Positive Moves for Your Long Distance Move Today!
If you are searching for one of the best rated long distance moving companies in WV, look no further than Positive Moves Moving Company. Our dedicated team is here to provide you with the support and expertise you need for a successful long distance move. For more information or to schedule your move, call us at +1 (304) 590-0840 or visit our office at 841 57th St SE, Charleston, WV 25304. Trust Positive Moves to turn your moving experience into a positive adventure!2 -
CRYPTO RECOVERY SERVICE - MUYERN TRUST HACKER
( Email: muyerntrusted(@)mail-me(.)com )
The term "crypto theft" describes how fraudsters get and misuse cryptocurrency assets without authorization. The fact that the theft may cause monetary loss, interfere with corporate operations, and erode public confidence in virtual currency makes it a serious worry. Recovering stolen cryptocurrency requires specialized knowledge and techniques that professionals in the field possess. They have experience dealing with crypto theft cases, understand the tactics employed by cybercriminals, and can develop tailored recovery strategies to maximize the chances of successful retrieval. Muyern Trust Hacker demonstrates the highest level of professionalism in the realm of cryptocurrency theft when it comes to reclaiming stolen cryptocurrency. Their team of professionals offers a dependable and relatable recovery service by fusing technical proficiency, and personality. Having dependable expert assistance is essential for the safety of your cryptocurrency holdings. Along the way, Muyern Trust Hacker adds a dash of humor and personality to your team of experts who are committed to retrieving your pilfered cryptocurrency. Protect your investments and put your faith in Muyern Trust Hacker's expertise. Allow them to work with you to protect what is truly yours. Seeking expert assistance becomes crucial for people and organizations trying to recover stolen cryptocurrency as long as the threat of crypto theft persists. Muyern Trust Hacker differentiates by providing specialized techniques and the highest level of professionalism as a group of professionals committed to the recovery process. They have a reputation for being successful in recovering cryptocurrency monies that have been stolen thanks to their demonstrated track record and client endorsements. Individuals and companies can safeguard their priceless cryptocurrency assets and confidently negotiate the murky world of cryptocurrency theft by putting their trust in the knowledge of experts such as Muyern Trust Hacker. Do sure to contact Muyern Trust Hacker for a prompt and effective Bitcoin retrieval on Whats App +1-8-6-3-(606)-8-3-4-7
Regards.15 -
CONSULT PROFESSIONAL BITCOIN RECOVERY EXPERTS // MAESTRO ENCRYPTER FINANCIER
You want to hear confidence-boosting success tales about getting your lost bitcoins back. Maestro Encrypter Financier has a remarkable history of assisting people and companies in getting their lost money back. Consider the instance of Connor Jack , who unintentionally sent his bitcoins to the incorrect address. Connor's face returned after Maestro Encrypter Financier used their knowledge and tenacity to track down the transaction and get his bitcoins back.
What distinguishes Maestro Encrypter Financier from other alternatives for recovering bitcoin? Above all, their team of professionals is well-versed in handling bitcoin transactions, which enables them to handle even the most complicated circumstances. Furthermore, their customer-focused methodology guarantees that you will receive tailored support and consistent updates during the recuperation procedure. To demonstrate the superiority of Maestro Encrypter Financier, let's compare their performance with that of their competitors. In a head-to-head analysis, Maestro Encrypter Financier consistently outperformed other recovery services in terms of success rate, speed of recovery, and customer satisfaction. Time and time again, they have proven their ability to recover lost bitcoins when others have failed. At Maestro Encrypter Financier, your privacy and confidentiality are of utmost importance. They employ robust security measures to safeguard your personal information and ensure that it remains strictly confidential. You can trust that your data is in safe hands throughout the recovery process. Not only does Maestro Encrypter Financier excel in recovering lost bitcoins, but they also prioritize helping clients protect their funds from future loss. Their team provides expert advice on the latest security practices, including wallet management and secure transaction techniques. By equipping you with the knowledge to safeguard your investments, Maestro Encrypter Financier goes above and beyond to ensure your long-term financial security. For enquiry, Email:(maestroencrypter @ financier . com) or call/ WhatsApp:+147220389374 -
I just went through a super long debugging process trying to figure out what was going on with my ZFS volumes. It turned out I had bad memory:
https://battlepenguin.com/tech/... -
Is leadership's willingness to accept shoddy code and a shoddy deployment process, as long as you can develop shoddy features early, a common theme among startups?
I really get a "not my problem when I sell this business" vibe from this attitude.5 -
"Any system that sees aesthetics as irrelevant, that separates the artist from the product, that fragments the work of the individual, or creates by committee, or makes mincemeat of the creative process will in the long run diminish not only the product but the maker as well." - Paul Rand
-
As a construction worker, my life has always revolved around hard labor and integrity. The foundations I build aren’t just physical structures; they represent my commitment to my family and community. However, everything changed when I became a victim of a cryptocurrency scam that left me devastated.It all began innocently enough. Like many others, I was intrigued by the potential of cryptocurrency investments. I researched and ultimately decided to work with a broker who appeared reputable at first glance. The allure of significant returns was hard to resist, and I found myself investing £40,000, believing I was making a smart financial decision. Unfortunately, it didn’t take long for the facade to crumble. When I attempted to withdraw my funds, the broker became unresponsive. Alarm bells started ringing, but it was too late. I had fallen victim to a sophisticated scam that drained my savings and left my family and me feeling hopeless. After exhausting all options, including filing a police report and reporting the scam to various authorities, we felt defeated and powerless.Just when I thought all was lost, a friend reached out to me with a glimmer of hope. He referred me to Digital Web Recovery, a firm that specializes in recovering lost funds from scams. Initially, I was skeptical. How could a team of professionals help me reclaim my hard-earned money after I had already felt so let down by the system? But my desperation outweighed my doubts, and I decided to give them a try. From the moment I contacted Digital Web Recovery, I was met with professionalism and empathy. The team took the time to understand my situation, patiently explaining the recovery process in detail. They assured me that I was not alone in this fight, and their commitment to helping me regain my funds was evident. Throughout the recovery process, they kept me updated at every stage, which alleviated some of my anxieties. I appreciated their transparency and the way they worked diligently to trace my lost funds. Their expertise was apparent, and their determination gave me hope during a time when I desperately needed it.After weeks of effort, I received the news I had been hoping for: a significant portion of my funds had been successfully recovered. I can’t thank Digital Web Recovery enough for their support during this challenging time. Website; https: // digitalwebrecovery. com Their dedication not only restored my financial security but also my faith in the possibility of recovery after loss. I learned that even in moments of despair, there are people and resources ready to help rebuild what was lost. Telegram; @digitalwebrecovery
-
- Have the app running perfectly on heroku.
- App does some serious calculations which, depending on amount of data, takes a long time to process
- Heroku timesout after request takes longer than 30 secs...
- Need to move from heroku to aws... No devops experience...
- Damn... 🙃
Any suggestions? The procedure cannot be put into a worker queue so thats out of the equation.2 -
RECOVER MONEY FROM BITCOIN SCAM HIRE ADWARE RECOVERY SPECIALIST
Regaining Trust: My Story with ADWARE RECOVERY SPECIALIST for More Than 36,000 Ethereum
It was a harrowing experience, to say the least. After years of carefully building up my cryptocurrency portfolio, I found myself the victim of a devastating hack that wiped out my entire holdings - over 36,000 Ethereum, vanished in an instant. The sinking feeling of helplessness and betrayal was overwhelming. I had entrusted my digital assets to what I thought were secure platforms, only to have that trust shattered in the most painful way. But I refused to simply give up and accept my losses. I was determined to fight back and reclaim what was rightfully mine. That's when I discovered ADWARE RECOVERY SPECIALIST , a specialized service dedicated to tracking down and recovering stolen cryptocurrency. It was a long and arduous process, filled with dead ends and roadblocks, but the team at ADWARE RECOVERY SPECIALIST never gave up. They used their expertise in blockchain forensics, their extensive network of industry contacts, and their sheer dogged determination to painstakingly trace the movement of my stolen Ethereum. It was like watching skilled detectives slowly unravel a complex web of digital transactions, following the digital breadcrumbs until they pinpointed the perpetrators. And after months of tireless effort, they succeeded - my Ethereum was located, secured, and returned to me. The sense of relief and gratitude I felt was indescribable. ADWARE RECOVERY SPECIALIST had not only restored my financial holdings, but they had also restored my faith in the cryptocurrency ecosystem.2 -
Losing access to a $250,000 cryptocurrency wallet felt like my worst nightmare come true. One moment, I was clicking what seemed like a routine link; the next, I was locked out of my funds with no way back in. The panic that set in was overwhelming. Frantic and fearing that my money was lost forever, I started researching solutions and stumbled upon Digital Web Recovery. From the very first interaction, I knew I was in good hands, Their team handled my case with remarkable professionalism, offering clear communication and genuine reassurance. They didn’t make any exaggerated promises but instead walked me through their recovery process step by step, making sure I understood how they would tackle my situation. Their use of advanced forensic tools was impressive, and it became clear they were experts in recovering lost crypto, It wasn’t long before they delivered results beyond my expectations. Not only did they recover every cent of the $250,000 I thought I’d never see again, but they also provided me with invaluable advice on how to secure my wallet and prevent similar incidents in the future. Their transparency in pricing and dedication to my case were refreshing, and I felt reassured every step of the way, If you’ve ever found yourself locked out of your cryptocurrency wallet and think your funds are gone for good, don’t lose hope. Digital Web Recovery is the team that will get you through it, with professionalism, expertise, and an approach that inspires trust, CONTACT INFO; Website; https: // digitalwebrecovery. com WhatsApp;+13433003465