Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "critical?"
Manager: This button is too dark, you need to lighten it. Have you no sense of design?
Dev: Hows this for an adjustment?
Manager: Wayyyyy too light now, jesus you need glasses if you think that’s good.
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: 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.
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.
In an effort to deal with the number of “top priority” tickets, management has come up with a new priority level, “urgent”, to help differentiate between tickets that are “top priority” and tickets that are actually “top priority”.
So as you can guess all tickets are now codified as “urgent”.
I’ve suggested management downgrade some tickets back to merely “top priority” as we’re clearly right back where we started with it being difficult to determine which order to do tickets in.
They’ve ignored my request as the bletherings of a clearly unenlightened peon, and have instead came up with a new priority, “mission critical” which will be reserved for the most hallowed of emerg— oh no wait everything is now “mission critical” who would have guessed?
So “Top priority” is the now lowest priority a ticket can have…Naturally.18
Well, I was the One that was scolded. Because I basically took over without asking permission to fix a critical outage.
I fixed it within 3 minute, while the person in question have been trying for 2 hours.
He then got very angry and told me infront of everyone that "dont ever help me out".
Said and done. I never helped him ever since, even if he clearly struggled with everything.
He got fired recently due to incompetense6
*CTO in panic, as always, invites everyone to the war room*
CTO: We have a MAJOR problem where 0.0001% of our customers are not receiving SMS confirmations.
Me: Cool. But, 0.0001% is very less compared to the other problems we are solving.
CTO: You don't understand, this is critical issue that needs to be addressed immediately.
Me: But even those.0.0001% customers are receiving e-mail confirmations, so this is not even blocker as we have other channels working.
CTO: I am emotional at this point. You need to prioritise this now.
Me: Okay, do we know the root cause of this problem?
Engineering head: we have blacklisted those numbers in past as our system detected them abusing our platform.
Me: Cool. Let's whitelist them, nothing much to worry here.
CTO: Floyd, you need to understand that 0.0001% of the customers are not receiving the SMS and the solution you are proposing is incorrect.
Me: Okay, what do you suggest?
CTO: We stop sending the SMS to all the customers.
Everyone on the call: 😨18
Managers: wE wAnT tO bE LeAn aNd MoVe FaSt As PoSsIBLe wiTh NeW FeAtUrEs
Same Managers: Can you make this icon 2 pixels smaller?! Shift this element left?! Swap out this icon?! Use a different color here?! A perfect feature and design is critical!!!!!!
FullStackClown: You can either be lean and fast, or be fucking nitpicking clowns 🤡 about this stuff and slow us all down. Choose one.
FullStackClown: Sit down and shut up7
Some 'wk306' highlights from different people:
Walk around the office in his underwear, because he forgot he left his trousers in the bathroom
Run a red light outside the office due to not wearing his required glasses. When questioned by co-workers, replied "I don't follow those facist rules"
Asking if we work less will we get paid more, because the project will take longer to do (while in a startup with no funding trying to secure some)
Tell a senior dev to stop testing in his spare time, as we won't be able to release on time if he keeps finding critical security bugs
Telling me "your timezone is not my concern", when asking for help with new tooling so we don't have to be online at the same time
Blaming my team for requesting too much help, leading to his team missing deadlines, in a meeting with very senior managers. When the reason we were requesting help was the handover doc we were given was filled with lies about features being finished and "ready to ship" and lacking any unit tests
Being accused of bullying and harassment to the CEO, because someone asked "did you follow up with X about the partnership they emailed us about". The person who was responsible, forgot 4 times, and saw it as an "attack" to mention it in team meetings
Telling an entire office/building mid November they've secured funding for at least the next year, then announcing in January after the Christmas break that its cheaper to move to India, so they are closing the office in 30 days2
Oh boy, my riskiest coding decision was certainly that one time when I refactored some 50k lines of critical legacy shit code in 3 days, straight up merged everything into master and then deployed to prod.
Luckily there was only one minor bug I had to fix after that... phew...
(To my defense: I was solo-working on it - the infamous CMS Of Doom™)2
I was on vacation when my employer’s new fiscal year started. My manager let me take vacation because it’s not like anything critical was going to happen. Well, joke was on us because we didn’t foresee the stupidity of others…
I had to update a few product codes in the website’s web config and deploy those changes. I was only going to be logged in for 30 minutes to complete that.
I get messaged by one of our database admins. He was doing testing and was unable to complete a payment on the website. That was strange. There was a change pushed by our offsite dev agency, but that was all frontend changes (just updating text) and wouldn’t affect payments.
We don’t want to enlist the dev agency for debugging work, especially when it’s not likely that it’s a code issue. But I was on vacation and I couldn’t stay online past the time I had budgeted for. So my employer enlists the dev agency for help. It’s going to be costly because the agency is in Lithuania, it was past their business hours, and it was emergency support.
Dev agency looks at error logs. There are Apple Pay errors, but that doesn’t explain why non Apple Pay transactions aren’t going through. They roll back my deployment and theirs, but no change. They tell my employer to contact our payment processor.
My manager and the Product Manager contact Payroll, who is the stakeholder for our payment gateways. Payroll contacts our payment gateway and finds out a service called Decision Manager was recently configured for our account. Decision Manager was declining all payments. Payroll was not the person who had Decision Manager installed and our account using this service was news to her.
Payroll works with our payment processor to get payments working again. The damage is pretty severe. Online payments were down for at least 12 hours. Our call center had logged reports from customers the night before.
At our post mortem, we had to find out who ok’d Decision Manager without telling anyone. Luckily, it was quick work. The first stakeholder up was for the Fundraising Dept. She said it wasn’t her or anyone on her team. Our VP of Analytics broke it to her that our payment processor gave us the name of the person who ok’d Decision Manager and it was someone on the Fundraising team. Fundraising then starts backtracking and says that oh yes she knew about it but transactions were still working after the Decision Manager had been configured. WTAF.
Everyone is dumbfounded by this. How could you make a big change to our payment processor and not tell anyone? How did our payment processor allow you to make this change when you’re not the account admin (you’re just a user)?
Our company head had to give an awkward speech about communication and how it’s important. The web team can’t figure out issues if you don’t tell us what you did. The company head was pissed because it was a shitty way to start off the new fiscal year. Our bill for the dev agency must have been over $1000 for debugging work that wasn’t helpful.
Amazingly, no one was fired.5
Is this really what tech-startup culture is?
A year ago I wanted to make a change and joined my friend who is a VP at a startup. She and my team are great even up to the C-suite level. But after a recent encounter with the core developer team here… I’m at my
This dev team is extremely tribal. It’s as if they view other tech teams as “others” and it’s “us vs. them”. My team works on a different vertical so I’ve never interacted with them before and a timeline of events is below. Is this kind of behavior a normal thing at a tech startups?
Here’s some highlights from the last month…
- Customer demands a deliverable because it’s in a contract signed a year ago.
- No one in dev can be troubled to lift a finger (holiday season). I get called in to support.
- This isn’t my code - I’ve never seen or used it before.
- None of dev’s documentation is up to date.
- Find out dev hasn’t touched client’s project in a year.
- Spend weeks working with it. Find fundamental flaws which could have put us in legal jeopardy.
- I realize dev never finished this project because it doesn’t even have basic functionality to do what customer needs.
- Spent entire Christmas/New Year working.
- Create dozens of bug tickets and merge requests.
- Barely squeeze by and save multi-million $ contract renewal.
So what happens next?
- Reprimanded by the dev lead. He tells me I’m “hurting people’s feelings” by pointing out so many problems.
- A PM in a public Slack channel told me I was “passive aggressive” for a Jira issue where I wrote (verbatim) “Can we enable code highlighting in this text box? It’s difficult to show steps to reproduce the bug.”
- get told by VP to stop talking to them
- a bunch of merge requests rejected without explanation
- weeks later I see someone in dev run into a bug I found. I sent him the fix. They accepted his MR in the same day and it actually added another new bug.
- I lookup the recent commits of the lead-dev who chewed me out, he’s been working on adding colors to his console log output for print debugging. This is a time-critical application and he adds 30% overhead with logging debug information in production.
- Meanwhile dozens of major bugs exist and are ignored.
- The CTO at this company loves these people - though he hasn’t brought in any new business (literally) ever.
- My team is about to close a new contract and we’ve spent 15 days to work on it.
- The CTO said my team is slow and doesn’t fit with the business model of the company.
My team has never dealt with these devs before, so I checked Glassdoor for other experiences, the dev team apparently…
- uses “vulgar slurs for women”
- talking about technical issues “resulted in a lot of resentment”
- has an apparent “desire for revenge”
/ end story
This last month really shocked me because for my career so far I’ve never dealt with this kind of behavior. I could see a startup accepting this kind of culture if was bringing in a lot of revenue but they aren’t. They dropped the ball so hard we all lost our bonuses this year. It’s made even worse with the fact that they are constantly producing complete dog poop code (I’ve kept that opinion to myself though).
I’m really left wondering if this is just how it is in the high-stakes startup world.
Sorry - this started out as a question but ended up another dev rant.10
God, I love when people name stuff right. Now I'm reading through an open source project, trying to find out how they solved a critical issue I'm facing now. It's not a small one but navigating through it is a breeze. Look through variable/function names and I don't even really need to read the code. Meanwhile, last assignment, there was "yangDataHandler" and "yangDataManager" that, obviously, had nothing to do with each other in either interoperability or functionality - and then half of the variables would get aliased to abbreviations. Uh, yes, sure it's obvious what
𝚋𝚣𝚋𝚠𝚒 variable means. Just let me run it through 𝚒𝚍𝚣𝚍() function.10
Greatest thing just happened.
Get a ticket about orders not being processed in our webshop. Angry customer. Critical!!!!
Starts troubleshooting. Nothing has changed in the code recently, was working just fine yesterday. Works locally and on test server. Hmmm...
Take a chance. Writes back to customer: “there! Try to place an order again” without changing anything.
5 minutes I get back “awesome! Everything works again and all previous orders have appeared. Good work!”.
Happy customer. Happy dev :)
Oh dear, a scaling problem I solved was replacing some Regex matching with simpler string functions. While I'm a huge fan of Regex, it's unreal how much performance they can suck out of some high-n loops...
I got about 120x out of some critical code thus making a CPU upgrade unnecessary.8
Online team meeting at 9:30 am, I wake up at 9:25 am
Wake up. Meeting was moved at 9:00 am and renamed to "CRITICAL". It's been 45 minutes and I still don't know what broke, but I'm too scared to ask.3
Its all fun and games until your malfunctioning software costs people their lives - if you're just starting out as a dev or in the "ain't nobody got time for writing tests" camp, I highly recommend you to lookup and read about the Therac-25 incidents during the 80s.
Even if you're not working on a life-critical/mission-critical application, the realization of the impact that us devs can have on the society can push you to become a better developer producing quality software...9
If you're going to request CRITICAL changes to thousands of records in the database, and approve it through testing which is done on an exact replica of production, then tell me it was done incorrectly after the fact it has been implemented and you didn't actually review the changes made to the data or business logic that you requested then you are an idiot. Our staging environment is there to ensure all the changes are accurate you useless human. Its the data you provided, I didn't just magically pull it from thin air to make yours and my job a pain the ass.9
"7 high severity vulnerabilities"
$> npm audit fix --force
"13 vulnerabilities (11 high, 2 critical)"
How is this fixed?!
It will be a great day when JS finally prolapses under the weight of its own hubris.15
Don't just blindly do what's asked to be done by superiors. Be critical, suggest alternatives and take ownership of and participate in processes beyond your own scope.2
Consumers ruined software development and we the developers have little to no chance of changing it.
Recently I read a great blog post by someone called Nikita, the blog post talks mostly about the lack of efficiency and waste of resources modern software has and even tho I agree with the sentiment I don't agree with some things.
First of all the way the author compares software engineering to mechanical, civil and aeroespacial engineering is flawed, why? Because they all directly impact the average consumer more than laggy chrome.
Do you know why car engines have reached such high efficiency numbers? Gas prices keep increasing, why is building a skyscraper better, cheaper and safer than before? Consumers want cheaper and safer buildings, why are airplanes so carefully engineered? Consumers want safer and cheaper flights.
Wanna know what the average software consumer wants? Shiny "beautiful" software that is either dirt ship or free and does what it needs to. The difference between our end product is that average consumers DON'T see the end product, they just experience the light, intuitive experience we are demanded to provide! It's not for nothing that the stereotype of "wizard" still exists, for the average folk magic and electricity makes their devices function and we are to blame, we did our jobs TOO well!
Don't get me wrong, I am about to become a software engineer and efficient, elegant, quality code is the second best eye candy next to a 21yo LA model. BUT dirt cheap software doesn't mean quality software, software developed in a hurry is not quality software and that's what douchebag bosses and consumers demand! They want it cheap, they want it shiny and they wanted it yesterday!
Just look at where the actual effort is going, devs focus on delivering half baked solutions on time just to "harden" the software later and I don't blame them, complete, quality, efficient solutions take time and effort and that costs money, money companies and users don't want to invest most of the time. Who gets to worry about efficiency and ms speed gains? Big ass companies where every second counts because it directly affects their bottom line.
People don't give a shit and it sucks but they forfeit the right to complain the moment they start screaming about the buttons not glaring when hovered upon rather than the 60sec bootup, actual efforts to make quality software are made on people's own time or time critical projects.
You put up a nice example with the python tweet snippet, you have a python script that runs everyday and takes 1.6 seconds, what if I told you I'll pay you 50 cents for you to translate it to Rust and it takes you 6 hours or better what if you do it for free?
The answer to that sort of questions is given every day when "enganeers" across the lake claim to make you an Uber app for 100 bucks in 5 days, people just don't care, we do and that's why developers often end up with the fancy stuff and creating startups from the ground up, they put in the effort and they are compensated for it.
I agree things will get better, things are getting better and we are working to make programs and systems more efficient (specially in the Open Source community or high end Tech companies) but unless consumers and university teachers change their mindset not much can be done about the regular folk.
For now my mother doesn't care if her Android phone takes too much time to turn on as long as it runs Candy Crush just fine. On my part I'll keep programming the best I can, optimizing the best I can for my own projects and others because that's just how I roll, but if I'm hungry I won't hesitate to give you the performance you pay for.
My previous bosses were real awesome people. However, the current one is an intentional asshole.
He wants to review every piece of work. He thinks I am a retard who knows shit. He has no sense of feedback vs. humiliating criticism.
Fucker questions every single word.
For example, consider the following statement, "They are taking the Hobbits to Isengard."
He'd critical question every word like,
What do you mean by 'they'?
Why have you mentioned it?
Why does 'They' exists in English vocabulary?
Why cannot you try 'Your'?
What data points you have?
And after endless questioning, he'd repeat the same with next word. Making sure to break my spirit of working for him.
And let me add that his communication is saturated with heavy jargons which are difficult to understand. At times, I slow down to understand and absorb and he has a problem with that as well.
My past experience says that I learned a lot from strict managers.
But this fucker intentional criticises every aspect with zero to negative appreciation. All in the name of feedback.
I have gotten tons of compliments and good ratings in the past based on my communication and thought process. However, this fucker feels that my thought process is shit and I don't know how to communicate. Furthermore, he feels that I lack sense of ownership.
I really don't know what he saw in my resume or me to even hire me in the first place.
Given how he treats me and others, no wonder people are leaving. And if he fires me, good luck to him finding a sensible replacement who matches his expectations or puts up with his crap.3
I used to hate marketing.
But now, I realised how powerful of a tool it is.
Indians are dumb and wide majority are fucking illiterate out of choice.
Dumb morons. Add as much glamour as possible, and you will be able to sell these fuckers anything.
99% of the elders in my family are illiterate. Many of my cousins post fake success photos and market themselves in family group.
All the boomers think that the kids are doing well. No critical thinking. In reality, those cousins are struggling like crazy.
The boomers, including my retarded father, think that I am a useless piece of shit. According to them, I am a waste of oxygen.
Trust me, market well and you can make billions in Indian market.
I do believe, genuinely that “I don’t know” is sometimes an acceptable answer. If you don’t know, you don’t know. I appreciate the honesty.
But at the same time
I don’t know how much longer I can take “I don’t know” as an answer from my boss when I ask about critical business things HE tasked me with, or things relating to career development and maximizing my time with this company.
Do I need my boss to have all the answers on company revenue? No.
Do I need my boss to at least have an understanding on wtf is going with projects when my priorities get changed mid-project for the 4th time? Hell yes.4
My boss has zero emotions and empathy. How ironic for someone into product management!
He is 100% logical, maybe more. He is smart that way and yes, that is a skill to learn from him. He has good product management hard skills.
But, he is an emotional void. Zero humane feelings. He treats everyone like a machine. He is overly obsessed with documentation and wants every single word to be his way.
My writing and communication skills are his pet peeve.
Last Monday, our CTO was in office and he wanted to meet me. I was working remotely, so leads notified me. Even though our CTO runs a monkey business, I was eager and excited to meet him.
This week, my boss will be in office. He texted me to catch-up on coming Monday. I am anxious and worried even though my boss has great skills in our work function.
Furthermore, I find my boss overly critical about everything I do. Maybe it's not me and he does it with everyone, because I haven't been part of a group connect, so no idea. But dude.. give me a break.. give me some room to breathe..
What I heard from another junior, who joined us last month, is that one of the folks who resigned in past was because of my boss.
Feel like that I will move on from my dream organisation as soon as I complete little more than one year.
And apart from that, I scratched my eye glasses, Reddit permanently banned my account for no fault of mine, wanted to catch-up with a cousin, who is going through a rough phase, to cheer up the lad, but he won't answer our calls.
What a shitty weekend.
And yes, my boss is a hipster in the way he dresses and thinks.
He literally keeps saying that we need to use dark patterns like click baits, incite FoMo in our app users, add feedback loops, etc.3
I haven't felt joy programming for a while now.
My work is just tasks that can be done by a monkey if they understand how the framework works and at home I can't come up with any ideas that are exciting, challenging or useful.
I feel like all my creativeness is leaking dry having to deal with deadlines about implementing this text change with critical^3 priority and other boring shit9
I like like my boss and my coworkers and the place I work but for the love of goat cheese this org has the attention span of a toddler on meth.
Seriously, it's like this is your #1 priority, next week, wait we have a different emergency you have a new super critical urgent thing, then "hey team Y has a vendor coming in next month to integrate these two pieces and they need you to have half of it wired up by then so make sure you get that done." Like SERIOUSLY SERIOUSLY
HERE"S SOME LIFE ADVICE IT DOESN'T MATTER WHAT YOU PLAN OR SCHEDULE OR PRIORITIZE IF YOU END UP CHANGING ALL OF IT EVERY WEEK!
It's like painting a mural of a field, and then 10 minutes in you decide you'd rather paint a space ship, then you realize you don't like the space ship so instead you decide to change your painting to Elvis with a mullet, and you keep doing this. The end result is not beauty it's the mad deranged scribbles of a man past the point of sanity.
But for the love of Haliburton if they ask me why X or Y wasn't done I'll probably end up going full BOFH on somebody.3
Elon musk has shown himself to be a terrible person, a worse manager and someone who hasn't a clue of what a code review is. A summarily fires so many people that he can't find someone to open the doors for his big in person meeting or the vet the badges. He offers 3 months termination pay or you can work 12 hours a day 7 days a week hardcore. But none of the payroll people are around anymore either. Critical subsystems have not a single engineer left to work on them. He's paranoid that employees will sabotage the software. But I think he's doing such a good job it would be impossible to tell that anyone else was helping him.
An engineer wrote a prescient seven page report listing problems ahead including user verification. So Elon twit-fired him.
Also entirely predictable is the stress that the world cup will put on the system beginning today, I believe. He doesn't "like" microservices.
I work for the psychiatrist once who barely needed to sleep. Maybe Elon can function with 12-hour days week in week out. But it's cool to think you're going to squeeze substantially more work out of people by doubling their hours. More likely you will more than double their errors and what will that do to you budget? 50 years ago IBM determined that the best way to improve programmer productivity was to give each one their own office.
I can't believe he's whining over spending 13 million dollars a year on food. That is so far from being a strategic item. Soapbox out.28
Longest I've worked without rest + why?
Over 24 hours. Why?
In our old system, the database had fields, for example, a customer like Total97, Total98, etc. to store values by year (or some date-specific value).
Every January 1, we had to add fields to accommodate the upcoming year and make the appropriate code changes to handle the new fields.
One year the UPS shipping rates changed and users didn't want to 'lose' the old rates, so they wanted new fields added (Rate98, Rate99, etc) so they could compare old vs. new. That required a complete re-write of most of the underlying applications because users wanted to see the difference on any/all applications that displayed a shipping rate. I'll throw in asking 'why?' was often answered with "because we pay you to do what we say". Luckily, we had already gotten to work on a lot of this before January 1st, so we were, for the most part, ready.
January 1st rolls around (we had to be in the office at 3:00AM), work thru changes, spend some time testing, and be done before noon. That didn't happen. The accounting system was a system that wasn't in (and had never been) in scope, and when we flipped the switch, one of the accountants comes into the office:
E: "Guys? None of our Excel spreadsheets are working. They are critical to integration with the accounting software"
Us: "What? Why would you be using Excel to integrate with the software instead of their portal?"
E: "We could never figure it out, so we had a consultant write VBA scripts to do the work."
Us: "OK, a lot of fields changed, but shouldn't be a big deal. How many spreadsheets are we talking about?"
E: "Hundreds. We have a separate spreadsheet for every integration point. The consulting company said it scalable, whatever that means."
Us: "What?! Why we just know hearing about this!?"
E: "Don't worry, the consultant said making changes would be easy, let me show you, just open the spreadsheet..click here..<click><click><click>...ignore that error, it always happens...click that <click><click><click>.."
Us: "Oh good lord, this is going to take hours"
E: "Ha! Probably. All this computer stuff is your job and I've got a family to get to. Later"
Us: "Hey 'VP of IS', can we go home and fix these spreadsheets as-needed this week?"
VP-IS: "Let me check with 'VP-FS'"
<few minutes later>
VP-IS: "No, he said Excel is critical to running their department. We stay until Excel is fixed."
Us: "No, no...its these spreadsheets. I doubt FS needs all of them tomorrow morning."
VP-IS: "That's what I said. Spreadsheets, Excel, same thing. I'll order the pizza. Who likes pepperoni!?"
At least he didn't cheap out on the pizza (only 4 of us and he ordered 6 large, extra pepperoni from one of the best pizza places in town)
One problem after another and we didn't get done until almost 6:00AM. Then...
VP-IS: "Great job guys. I've scheduled a meeting at 8:00AM to review what we did so we can document the process for next year. You've got a couple of hours. Feel free to get some breakfast and come back, or eat the left over pizza in the breakroom fridge. There is a lot left"
Us: "Um...sorry...we're going home."
VP-IS: "WHAT!!...OK...fine. I'll schedule the meeting for 12"
Us: "No...we're going home. We'll see you tomorrow."
Me: I've not done this before, so any guess would be pure assumption.
Client: Okay, but still, you would have some idea, right?
Me: It might get done in 3 days or may take even 30.
After 3 days:
Client: But you said that it will be done in 3 days. Now you are saying there MVP is not ready. Do you even know, your part is the most critical one in the project. We believed in you. We trusted you. This is insane. It was a wrong decision to choose you.
Me (in my head): Didn't I say, this is the first time I am trying to scrape Coles? It might take time?
Me (in actual): I understand, it is getting delayed. Am trying to get this up ASAP....
Anyone else experienced toxic clients but still didn't lose their cool?14
Honestly, the most underrated skill in tech is communication. Writing clear, succinct emails and telling the story without rambling is a critical skill. If hiring comes down to a wire, I would hire a dev that can communicate well than someone with pure technical skill but zero communication skills.4
my boss some months ago: so there is this new project, and we're planning to slowly fade in and gradually increase the time you guys work on this project
new pm last week: welcome to the project, you're now 100% allocated to the new project, that's your highest prio now
me: ...what about the other projects? they might have questions xD
pm: don't worry about that, dealing with that is not your job
my boss this week: yeah no, the other releases are most important for our company. the new project needs to be subordinated and has lower prio, at least lower prio than critical and highly prioritized bugs.
me: so.... who decides which items from which projects i shall prioritize higher than the new project and how much time i shall spend on them?
my boss: it is your job to talk to people, give them estimates and tell them how many items you can work on, so they can decide which items they pick
so basically i'm having the feeling that i need to manage myself here. it will be fun to attend the new project daily standups and tell the new pm all the time that i couldn't do anything because i had no time. anyone else with this experience? is this normal? actually i liked our new pm's attitude "dealing with that is not your job". i should have known it was too good to be true ^^'5
So, I've been reading all this complaints about micro services which started to be loud thanks to the mad CEO of Twitter.
Keep reading but I am curious about your opinion as well
To me all the point of micro services has never been about improving the speed, in fact it might have a negative impact on the performances of an application. I think that given the calculation power we have nowdays, it's not a big deal
However on the other side, it makes all the rest so much easier.
When there's a problem on one service, I can just debug the given service without spending hours starting a huge slow turtle
If something goes down, it doesn't make unhealthy the whole app, and if I am lucky it's not gonna be a critical service (so very few people will be pissed).
I have documentation for each of them so it's easier to find what I am looking for.
If I have to work on that particular service, I don't have to go through thousands of tangled lines of code unrelated to each other but instead work on an isolated, one-purpose service.
Releasing takes minutes, not hours, and without risk of crashing everything.
So I understand the complaint about the fact that it's making the app run slower but all the rest is just making it easier.
Before biting my ass, I am not working at Twitter, I don't know the state of their application (which seems to be extremely complicated for an app deigned to post a bit of text and a few pictures), but in a company with skilled people, and a well designed architecture.11
I used to be at a company where it was kind of expected that you worked long days, which made it quite difficult to balance work and private life. It got so out of control that I was even called to work while I was on my holiday. At first I started with shutting off my phone after work hours, but the real solution I found was moving away from that company.
Pretty much everyone at my new company just stops working when the clock hits 4 or 5 pm unless there is something critical that needs to be done. Seeing that also discourages me (and everyone else) from working long days. We are also quite open about our workload so if anyone thinks they’re overwhelmed they can find a relevant person to talk to and eventually a solution is found. The salary isn’t incredible, but the work/life balance and the benefits I get are just way better than getting paid more and living to work.
I think a lot of people go for the high salaries, most of the time disregarding the other part of the equation. If the company has a meh work culture with low regard to employees’ work/life balance, there isn’t much the employee can do besides finding a place to work with better wlb. I’d pick a great work/life balance and peace of mind to a high salary any day.1
After years of working at a place where you are as good it gets in terms of domain knowledge, it can be refreshing to work with someone who has way more experience than you.
The previous company I was with wanted to have me as one of their primary engineers, and everyone else who came in would have to learn from me (most of them were low-skilled contractors). This should have been great in theory, but it was actually quite frustrating since I did not relish being the mentor figure while just being two years into my career. Despite it getting to my head at times, I was aware that I still lack a lot of skills, but with no one to teach me, I hardly progressed in terms of growth, even though the leadership treated me well and listened to me.
Took a leap of faith and quit, to join a start-up where I would be the most inexperienced (and the youngest) person. Has been a few months, and I have stumbled and goofed up more times than I like to admit, but taken with the right mindset, it is nice to see how a team of professionals goes about it. It is a learning curve to get back into the mindset of the novice (after more than a year of being the undisputed "go-to" person), and to make effort knowing that you'll fall short in multiple places by the standards here, but at the same time, it's nowhere like the frustration I felt previously when my head was pushing against the shallow ceiling.
Fun part is, the learning is almost not at all about the code, but about how to be a proactive team member and all the things to think through and finalize BEFORE getting down to code. Some of it is bureaucracy, yes, but given the chaotic place I come from, I don't really mind it as long as it only goes as far as what is required.
The most amusing part of it all to me is how I try to be humble and listen to people (everyone's got a lot more experience than me), but I'm often asked to be critical of what others say and poke holes instead of just taking what they say at face value, which has been one of the most challenging things to adapt to for me (for similar organisation cultural reasons mentioned previously)/1
Killing people is bad. But, there should be a law to allow killing people who don't write proper unit tests for their code. And also those "team leaders" who approve and merge code without unit tests.
Little backstory. Starts with a question.
What is the most critical part of a quoting tool (tool for resellers to set discounts and margins and create quotations)? The calculations, right?
If one formula is incorrect in one use case, people lose real money. This is the component which the user should be able to trust 100%. Right?
Okay. So this team was supposed to create a calculation engine to support all these calculations. The development was done, and the system was given to the QA team. For the last two months, the QA team finds bugs and assigns those to the development team and the development team fix those and assigns it back to the QA team. But then the QA team realizes that something else has been broken, a different calculation.
Upon investigation, today, I found out that the developers did not write a single unit test for the entire engine. There are at least 2000 different test cases involving the formulas and the QA team was doing all of that manually.
Now, Our continuous integration tool mandates coverage of 75%. What the developer did was to write a dummy test case, so that the entire code was covered.
I really really really really really think that developers should write unit tests, and proper unit tests, for each of the code lines (or, “logical blocks of code”) they write.20
Sometimes I think devs are like superheroes who are bored to death and just want to have the greatest world clusterfuck possible to be ... Amused.
Backstory: One project, fairly large (roughly 200 dependencies, a framework). I looked over the ticket backlog and a critical ticket title regarding the important framework caught my eye.
(Rephrased as title was gibberish)
Framework fork needed for supporting different versions of library X
Ok. They want to fork a whole fucking framework for a single library dependency.
The framework that is the basis of like 30 - 40 % of all projects at our company.
Maybe.. I just misunderstood it. (my hope dies several times a day, one more or less doesn't matter).
"to incorporate library X at version A and - for other projects - at version Y, we need to split the framework into two forks with different versions but same namespace."
Why. Just why. How the fuck can anyone come up with such an incredible stupidity?
After chewing some people's ears off....
It turned out to be very simple.
Just split off the library dependent part, which were like 20 plus classes.
Release it with two different versions, for library in version A and library B.
Sometimes devs terrify me.
Please. Never fork / branch a framework or anything "heavy" completely.
That's madness. Properly split what needs to be split and be done.
It's not that hard, hmkay?1
As I keep saying, we should spend less time developing "better, safer" tools and practices and more time making sure the developers that use them know what they're doing. The bugs caused by lack of memory safety are rare (although often more critical) compared to the bugs caused by developers not paying proper attention to what their code does in the first place.
Someone please explain to me how error messages such as
"Something went wrong" or "Critical error" are valid and provide little to no follow up explanation in the GUI, Logs, or client logs.
I get that not all error cases can be displayed on a GUI, but at least have decent error handling. Especially if your $8+ billion company.1
Time to switch to offline and hide in some dark corner to get work done. Tired of all the IM’s and coming over to my desk from 1 person for “critical” work. If they’re all critical then none of them are truly critical. If you sit on the data for 2 months, and then today is the day it becomes critical and the compliance issue is because of your ineptitude then its a you problem not an IT problem. Then on top of that you submit your data to be loaded in the incorrect request form and spreadsheet format you can go fuck yourself asking this be done in an hour. It could be done in 15 minutes if you had it in the correct format as specified in the 20 meetings over the past year which removed all manual analysis and automated the entire process you idiot. Now I have to get it into the correct format in that hour so I don’t have to do the analysis for you.
I have other things to do besides your etl tickets, like finding the actual problems in our actual critical applications. You know the ones where the VP’s of this giant corporation start calling if they go down.
Sorry for the rambling guys.
Tell me to work with the most critical feature of the project. So critical if not done right people can die! While working on it I find many poorly written requirements, I notify the leads about this. The whole thing is re-scoped and the feature is completed. I expected to become a senior after this but unfortunately only find out they put the blame on me for poorly written requirements that other people had written which I corrected... fml1
The universe has taken a cactus.
It proceeded to gift the cactus with a toxin that greatly enhances the stimulus of pain.
After the universe watched it's miraculous creation it decided to shove it up so far my arse that my gag reflex turned on and I puked a lot of cactus.
Didn't sleep well, weekend hardware migration finish, today an old server got moved.
Some part, most likely the redundant PSU, had a short circuit - decided to take the switches out... Which are the only non redundant hardware...
There was only one critical system in the whole rack, that was one redundant firewall.
Guess what happened..... Naaaa?
For whatever reason, the second firewall didn't kick in, so large part of internal network unreachable as VPN was on the firewall.
That's not cactus level yet.
Spontaneously a large part of the work at home crew decided to call, cause getting an email wasn't enough.
So while all the phones were ringing and we had the joyful fun to carefully take apart a whole rack to check for possible faulty wiring / electric burns / hardware damage and getting firewall up and running again...
Some dev decided to run a deployment (doable as one of the few working at the company at the moment -.-).
I work from home, but we had a conference phone call running the whole time so I could "deescalate" and keep others up-to-date. So me on headphone with conference call, regular phone for calls, while typing mails / sms for de-escalation.
Now we're reaching cactus level, cause being tortured by being annoyed out of hell by all telephone ringing, the beeping of UPS (uninterruptible power supplies), the screaming of admins from the server room and the roaring of air coolers…
Suddenly said dev must have stood in the midst of the chaos… and asked for help cause "the deployment broke, project XY is offline"...
I think it was the first time since years that I screamed at the top of my lungs.
Bad idea (health issues)… but oh boy was it a pleasure to hear my own voice echo through the conference speaker and creating an echoic sound effect.
It was definitely worth coughing out my loungs for the next hour and I think it was the best emotional outburst ever.
I feel a bit sorry for the dev, but only a tiny bit.
After the whole rack thing, the broken deployment fixing and the "my ears are bleeding and I think I will never be able to talk again" action...
We had to roll out several emergency deployments to fix CVEs (eg libexpat).
This day was a marvelous shit show.
I will now cry myself to sleep with some codein.1
Regression testing is a type of software testing that is performed to ensure that changes or modifications made to an existing software application do not have any adverse effects on the functionality of the system. It is typically performed after bug fixes, enhancements, or other changes are made to the software, to ensure that previously working functionality has not been impacted by the changes.
The main objective of regression testing is to ensure that previously working functionality continues to work correctly after any modifications to the software. This involves re-executing test cases that were previously executed to ensure that they still pass, and also adding new test cases to cover any new functionality or changes that have been made.
Regression testing can be performed manually or using automated testing tools. Automated regression testing tools can significantly reduce the time and effort required to execute and maintain regression test suites. Automated tools can also help to identify defects and issues in the software more quickly, allowing for faster feedback and resolution.
Regression testing https://u-tor.com/services/... is a critical component of software development and is essential for ensuring that software applications remain functional and error-free, even after changes have been made to the system.9
Today, I randomly remembered a guy who was doing an internship at my college's tech lab. From what I gathered (I wasn't really part of that group) all they had to do was familiarize themselves with one of the many systems available and... I suppose maintain it or improve it.
.... Poor guy spent the first 2 to 3 weeks just trying to get Ruby on Rails to work. The work he was doing was not (and would never be) critical so there was not much of a sense of urgency.
Someone should have told him to use a fresh VM. Guy was trying to get it to work in his private laptop running windows. A doomed endeavor.3
🚨 EMERGENCY ALTRANT UPDATE 🚨
- Fixed critical UI hangs when scrolling up a rant's comments on slow networks
- Fixed critical UI hangs when loading the profile screen on slow networks
Today, I discovered that there is a huge issue with UI responsiveness when the device is connected to a slow (or subpar) network connection. I deemed this absolutely unacceptable and not in the standard I strive to achieve and scrambled to make a fix. The fix is now *live* and available.
In a week from now, I will expire the update I released yesterday (build 2070) in favor of this new one (build 2084). The schedule for expiring the build before yesterday's update (build 1607) is still scheduled to be expired on Wednesday, 11/23/2022, 6 days from the upload of this post.8
One day, the Director of Web Ops (marketing role) submitted a ticket to update the list of product categories on the website’s navigation. Sounds like a simple ticket right? Just some html edits. Nope. Every day for three days, she changes her mind and adds new changes. What should have taken me 10 minutes stretched out to three days. She held up code review of my ticket because she kept making changes.
She had plenty of time to sort out what she wanted. That ticket had been sitting in the To Do pile for two days before I touched it.
She was being an asshole because she knew she could get away with it and I had no recourse: my direct manager was on vacation, the entire dev team was going to be laid off anyway so no one was going to defend us on “trivial” matters, and we were going to enter code freeze soon so she’d just argue it was critical business changes for our critical revenue season.
I suspect she was also just not good at her job. I never met her in person because she was hired during the 2020 pandemic and we were all working remotely. I did see her make a five minute presentation during an all staff meeting…and she didn’t come off too well. Her voice was trembling during her turn to speak…like she was not confident or not prepared.
She knew she was causing chaos but she put on this act of not knowing. She was definitely trained on our dev team’s practices for tickets and deployments. She knows about code review, beta testing, and user acceptance testing that has to happen before a ticket can be deployed.
It happened to be before Thanksgiving weekend 2020. Our deploy was going to happen on Tuesday instead of Thursday because Thursday was a holiday (no one would be working) and Wednesday was a half day.
Tuesday afternoon at 1pm, she messages me and the dev in charge of deploy about more changes! My time is already occupied because our Product Manager went on vacation and dumped a large amount of user acceptance testing on me. I scream at my computer at that point because I realize I’m in the ninth circle of hell. I tell the other dev in a separate message that Web Ops has been making changes EVERY DAY since I picked up that ticket.
Other dev tells her that we have to check with the C-suite executive for engineering because we’re not allowed to make changes to tickets so close to the deploy. This is actually the policy. He also tries to give Web Ops the benefit of the doubt because we’re not deploying on our usual day. He had to do that to so she didn’t feel bad (and so she doesn’t complain about us not working towards the company’s goals).
Other dev had to do the code changes because I was otherwise occupied with user acceptance testing. If I were him, I’d be pissed that I was distracted from concentrating on the deploy so close to the holiday.
Director of Web Ops was actually capable of even more chaos. I ranted about it before. For that dramatization and if you want to go down the rabbit hole, see: https://devrant.com/rants/4811518/...4
More and more, I am getting frustrated/depressed from the attitude of our customers who complain, moan and get angry about issues in their infrastructure, while at the same time, refusing to pay more so the issues could be mitigated.
Like, a client's angry with us today for having one of their non-production-critical databases inaccessible for... Hmm... About 8 hours now (So a whole workday).
Like... I get it, some of your employees couldn't work with it offline, but like... What the hell do we do? You keep data from as far back as several years ago in there, without partitioning, without exports, in a mix of innodb and myisam, so when the DB crashes, and its replication has to be reset from zero, reimporting all the data takes hours upon hours, and importing .sql files just takes time.
Or another client who got angry when their app fell out of the internet, cuz one of their myisam-based log tables crashed, and had to be repaired, with data spanning several years back, meaning it took hours to fix...
The more I work with these "basic" and "simple" infrastructure designs that is *not* redundant, or HA, the more I wonder -- How do the big names out there do it? How do you design systems with fault tolerance so a single DB table crash doesn't lead to the whole app getting inaccessible?
We have... One, exactly one, client, who uses MariaDB with Gallera, and that cluster is *amazing*, it just keeps chugging along, without a care in the world. But it cost them quite a lot, as they had to buy 3 DB servers, instead of 1...1
Another day, another critical vulnerability due to an out of bounds write that could never have occurred in Rust
It's a shame that people don't want to use F# but prise C# for how cool it became and continue becoming. At the same time, little do they know that many of the features were simply drawn from F#.
It's just rediculous how far this OO and C-Style syntax crap has progressed. They keep copying things from functional langugages, making the initial language to be a monstrocity like C++ is now, insted of just using languages like C#. I mean, it was right there before C#: async/task, immutablility, records, indexes, lambdas, non-null by default, who the hell knows what else.
Besides, many people (in my company at least) are just blindly overengineering with patterns and shit, where a simple function would be just enogh.
Watch some some NDC talks about F#, in particular those of Scott Wlaschin. It's just better in so many ways: less noice (I'm looking at you, brackets, commas and semicolons), the whole LOT of type inference and less duplication (just look at the C# signatures of linq methods - it's difficult to read them), immutability by default, non-nullable by default, ADTs and pattern matching, some neat features like type providers (how many times have used "paste special" or an online tool to create C# classes from a JSON/XML file, and how many times have your regenrated it because of schema changes?) and units of measure.
Of course, in some cases it's not optimal, in some cases mutable datastructures of C# are better for performance. But dude, how many performance critical systems have you wrote in C#? I mean, if it comes to performance you should use Rust or C++ or C after all.
Having too many projects in my team and managed to convince my boss that we need more people and even other teams to help on some really critical tasks. It was fine until today the technical project planner decided to scold me for not assigning tasks to developers in other teams for one specific of project of ours.
I tried to explain that its not the best idea external people working on a really spaghetti code project that we will be left to maintain. Its the same problem that led to the current problem.
And the PP response was "they are machines and have worked on many othe team projects".
So the help was delivered as a scolding and my team sucks in their eyes. Without any word from my boss that i havent talked for 6 months except on 2 accessions where someone else demanded of us to focus only on their project. Beautiful ❤️6
I got contacted by an other company and I am so unsure whether to accept their offer or stay at my current job.
For now I spend 2 years at my current company. The culture is great and everyone gets treated very well.
The bad part is, that it is located in a part of Germany I really can't stand and to this day fully remote is not an option.
Additionally lots of stuff is really frustrating in my daily work, e.g. colleagues that experiment with critical parts if our infrastructure, resulting in every developer who made the mistake to update the local development stack being unable to work for half a day or so.
Company number two seems to work with a wide variety of technologies for very different projects (it's a consulting compan), would pay me ~28% more than my currently raised pay and allows for full remote.
When I try to look objectively on the facts everything points to accepting their offer, but on the other hand there is this weird feeling of this being a joice that would come to soon...
How do you make such decisions? I already talked to a great colleague of mine, who thinks it might not be a bad idea to stay at the company for an additional year or 2, because I haven't yet reached the point where there is not enough to learn here anymore, which I agree on, but this company seems to offer everything I want.
I feel overwhelmed with this situation :D that's why I would like to know how you people try to tackle such a situation8
Seeing ALL the members of my team finally coming into their own. One person tackled our entire not-at-all-simple CI/CD setup from scratch knowing nothing about any of it and, while not without bumps in the road, did an excellent job overall (and then did the same for some other projects since he found himself being the SME). Two of my more junior people took on some difficult tasks that required them to design and build some tricky features from the ground-up, rather than me giving them a ton of guidance, design and even a start on the basic code early on (I just gave them some general descriptions of what I was looking for and then let them run with it). Again, not without some hiccups, but they ultimately delivered and learned a lot in the process and, I think, gained a new sense of self-confidence, which to me is the real win. And my other person handled some tricky high-level stuff that got him deep in the weeds of all the corporate procedures I'd normally shield them all from and did very well with it (and like the other person, wound up being an SME and doing it for some other projects after that). It took a while to get here, but I finally feel like I don't need to do all the really difficult stuff myself, I can count on them now, and they, I think, no longer feel like they're in over their heads if I throw something difficult at them.
A few critical bugs slipped into production this year, with a few requiring some after-hours heroics to deal with (and, unfortunately, due to the timing, it all fell on me). Of course, that just tells us that next year we really need to focus on more robust automated testing (though, in reality, at least one of the issues almost certainly would not - COULD NOT - have been caught before-hand anyway, and that's probably true for more than just one of them). We had avoided major issues the previous three years we've been live, so this was unusual. Then again, it's in a way a symptom of success because with more users and more usage, both of which exploded this year, typically does come more issues discovered, so I guess it tempers the bad just a little bit.2
So this month I had to do two major features which required unexpected refactors and I had to handle unexpected edge cases all over the place. Since I work in another timezone and time was of essence, I was kinda working around the clock to complete refactors as fast as possible because it was "important and critical". I have 7 other devs in my team but only half of the team are actually competent and even less are motivated to push through. Most of the team prefer to sit on low hanging fruit tasks and cant even get that fucking right.
So that resulted in me doing at least 100 hours of overtime this month. Best part all I got for pulling it off was a thank you slack message from teamlead and got assigned even more work: to lead a new initiative which seems to be even bigger clusterfuck...
So today I had a sitdown with my manager and I asked for 3 paid days off and told him that I did 50-60 hours of overtime. He okayed it as long as my teamlead was happy.
So I created a chat, adder manager and teamlead to it and explained my situation. That Im feeling burned out, I need 3 days off and combined with the weekend that should allow me to finally relax.
My fucking teamlead told me that these days are mine and he cant take them away from me. But then he started guilt tripping me that no one else will be working on the new initiative these days so we will have a very tight timeframe to deliver this (only until August).
Instead of having at least a drop of empathy that fucker tried to guilt trip me for taking days off for fucking unpaid overtime. What a motherfucker. Best part is Ive talked with manager and we actually have until end of August to deliver the new initiative, so fucker teamlead is gashlighting me with false sense of urgency.
I guess a hard lesson learnt here. Waiting for my fucking raise to be approved for the past 6 weeks (asked for a 43% bump which is on the way since I got very strong positive feedback).
So Im done. I proved myself, will get the salary of which I only dreamed about few months ago. Not putting any overtime anymore. If something is very urgent, borrow fucking decent devs from another team. Or replace half of our useless team with just one new decent dev. I bet our producticity would increase at least by 50%.
Its not my fuckint fault that 2-3 people are pulling the weight of 8 people team. Its not my responsibility to mentor retards while crunching under immense pressure just because current processes are dysfunctional. Fuck it. Hard lesson learned. If you want overtime, compensate with extra days off or pay. Putting my 7-8 hours in daily and Im not responding to your bullshit slack messages or emails after work. I dont give a fuck that you work in another timezone and my late responses might result in stuff getting done postponed by a few days or a week. Figure it out.2
How to handle a manager who manages to find fault in everything you do ... Butt fails to acknowledge any of the good work
It's not like the feedbacks from his end are valuable , often times they are illogical and based on false assumptions
Is the behaviour from manager toxic ?
I end up getting uneasy everytime I hear a false superficial backhanded sarcastic remark on how and what I should have done differently
And when I really deliver something critical i don't even get an acknowledgement ... forget about compliment
Maybe I don't have a thick skin , maybe I'm taking the I'm a victim mentality here ... Maybe I should view everything with a more positive outlook ... but I really doubt if I'm at fault here
And I'm not sure if he's like this with other guys , but I suspect I'm the only one who's being treated like this ..
Should I "escalate" this to someone?2
CSP: the thing that finally makes me jump out a window.
It's not that it's bad per se... well, I mean, it is, in several ways... but I can cope with it.
But when you're being pushed to apply a very strict policy to an app that is (a) itself 10 years old (predating CSP and most modern practices entirely you'll note), (b) has code that originally came from a 15-year old app at its core, and most critically (c) uses a third-party library that is at the very heart of it all and that simply can't ever play nice with CSP due to its fundamental nature... well... that's a recipe for an awful lot of head-meet-wall.
And you're not going to do a ground-up rewrite of an app that cost literally millions to develop (and is constantly being grown to this day) and which is now mission-critical and very highly regarded by the most important clients.
Ok soooo......today all those years of learning cmd commands and how to navigate the system in cmd kinda paid off
Had to search and copy files from a pc that isn't booting up and the pc has to return to the pharmacy today
Incase the machine fails.... we just do fresh install and restore back critical data
So we having a heated debate about MS decision on introducing ads on me menu
So was saying this can be a potential critical vuln as always... its kind of like MS tread Mark now :-C
My reasoning was now ads will have direct access to pc memory since they are being delivered straight to your pc
and this other guy went on to say they are being delivered to your machine they are being delivered to explore...... and I was like WTF?? isnt explore a process running directly on your machine??
I like it. It's simple and better than that "discover" software center thing.
But omg do I hate pamac. Not even talking about what it caused to the AUR. I'm talking about automatic full system updates.
It's so annoying. I'm working on something, have like 20 open windows where I'm doing something. I just need that ONE app to continue. So I install it using pamac, boom. 2GB of updates and I can't even skip it. Alright, I wait.
When it finally finished I tried continuing with what I was doing, but nah. Some nvidia driver update broke my stuff and I have to reboot my system.
That's very annoying. Remember, I still have all my work open, including one app which takes a stupid amount of setup when starting. I really don't wanna have to reboot at that point. But I have to.
So I open the "windows button menu" (don't know the name, but you know what I mean) and click restart. It gives me an error. Probably updated some critical thing relating to the reboot menu which broke it.
(I know I can just use the terminal to reboot, but before I do I had to make this post.)
This isn't a one time thing. This has happened to me twice before. What really makes me mad is that I can't turn full updates off. There would be a really simple fix to all of this:
When installing an app, check for updates and just ask the user if they want to update everything, or just install this app now (and update the dependencies for it).
I understand that I have to update my system, but just let me finish my work first, okay? Just update when I'm done. It would also be nice to have an extra button for "Update and shutdown" without going the Windows route and forcing updates.
While I'm on the topic of windows, I used Windows 8 once on a laptop belonging to a family member. I was in the proccess of doing something when it just blacked out, stopped all apps and started installing updates. Not even a warning. That's just one of the reasons I'll never even consider switching to Windows.
(Using Arch with KDE btw.)6
I have the following scenario with a proposed solution, can anyone please confirm it is a secure choice:
- We have critical API keys that we do not want to ship with the app because de-compiling will give access to those keys, and the request is done before the user logs in, we are dealing with guests
- Add a Lambda function which accepts requests from the app and returns the API keys
- Lambda will accept the following:
1. Android app signing key sha1
2. iOS signing certificate sha1
- If lambda was able to validate them API keys are sent back.
- Can an attacker read the request from the original (non-tampered) apk and see what the actual sha1 value is on his local network?
- If the answer to the question above is yes, what is the recommended way to validate that the request received is actually from the app that we shipped and not from curl/postman/script/modified version of the app11
Log() method blocking caller to
1) Enter a critical section
2) Open the log file
3) Move to the end of the file
4) Write the log
5) Close the log file
6) Exit the critical section
And this was already in production.1
So I work at a small company and we are currently talking about introducing critical path analysis for our projects.
Are there any recommendations or tips/do's/don'ts that are good to know when starting with this??
On a side note: we use Jira in combination with Confluence so if there are any useful integrations with that possible please let me know. I already saw some interesting add-ons for it.