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 - "metrics"
My company just fired 20 people, and the next day instuted a program so salaried employees have to clock in and out. Of course not to effect our pay, just to keep their paranoid asses breathing down our necks. Also, no clocking in remotely so all the work I do from home won't be taken into account. Fucking micromanaging, ball-licking, scum-fuck, MBA, morons couldn't run a company if their lives depended on it. When will these soul-less, suit-wearing, shit-scarffers learn that treating your employees with respect and valueing actual work over bullshit metrics, is a better business strategy than treating them like fucking sheep to the slaughter. Fml, I gotta find a new job...31
Customer: IT is completely useless! I’m getting PORN ADS on my work computer!? This is ridiculous!!!
Friend: Oh that’s not good, perhaps your computer has a virus of some sort let me take a look!
Friend takes a look and sees that the porn ads were all provided by google ad service, they weren’t related to a virus.
Friend: so, you don’t have a virus, but so that you know google gathers metrics on the sites you visit so that it can target ads at you better. Looks like that’s what’s happening here.
Write a small js function using setInterval to fire a request every second ... then copy paste the code 450 times (literally, not an exaggeration) into a massive file to create a load test script.
This load test script also had no means to gather metrics or test response times or anything useful. It was literally a “did the server crash” test.9
Dear Telegram, the fact that you're using a service which provides app usage/metrics/analytics kind of is not nice.
"But they've got the right to!"
Of course they do. But, when you advertise yourself as a messaging app focused on privacy, I expect you to behave that way.
And yes, we know your crypto is broken as fuck but that's not the point right now.
Oh and yeah, the next blog item will probably be about Telegram and how not-privacy friendly it is.22
Every Windows update be like:
Please reconsider using Edge over _, it has Webkit now!
Please reconsider reenabling Cortana.
Please reconsider using Bing.
Please reconsider reenabling sharing all metrics with us.28
Bug report comes in from a coworker. "Cloudinary uploads aren't working. I can't sign up new customers."
"I'll look into it" I say.
I go to one of our sites, and lo! No Cloudinary image loads. Well that can't be good.
I check out mobile app -- our only customer-facing platform. None of the images load! Multiple "Oops!" snackbars from 500 errors on every screen / after every action.
"None of our Cloudinary images load, even in the mobile app," I report.
Nobody seems to notice, but they're probably busy.
I go to log into the Cloudinary site, and realize I don't have the credentials.
"What are the Cloudinary credentials, @ceo?" I ask.
I'm met with more silence. I use this opportunity to look through the logs, try different URLs/transforms directly. Oddly, everything seems fine except on our site.
I check Slack again, and see nothing's changed, so I set about trying to guess the credentials.
Let's see... the ceo is basically illiterate when it come to tech, so it's probably not his email. It's a startup, and custom emails for things cost money, and haven't been a thing here forever, so it's probably oen of the CTO's email aliases. he likes dots and full names so that narrows it down. Now for the password.... his are always crappy (so they're "easy to remember") and usually have the abbreviated company name in them. He also likes adding numbers, generally two-digit numbers, and has a thing for 7s and 9s. Mix in some caps, spaces, order...
Took me a few minutes, but I managed to figured it out.
"Nevermind, I guessed them." I reported.
After getting into Cloudinary, I couldn't find anything amiss. Everything looked great. No outage warnings, metrics looked fine, images all loaded. Ex-cto didn't revoke payment or cancel the account.
I checked our app; everything started loading -- albeit slowly.
I checked the aforementioned site; after a few minutes, everything loaded there, too.
Not sure what else to do, and with everything appearing to work, I said "Fixed!" and closed the issue.
About 20 minutes later, the original person said "thanks" -- never did hear anything from the ceo. I've heard him chatting away in the other room the entire time.
Regardless, good thing for crappy passwords, eh?21
worst experience with a manager was the (female) one who got away with harassing a female employee for YEARS and thought it was ok because she thought they were friends.
She also retaliated (in ways that were hard to prove), played favorites, didn't know metrics or general business sense, couldn't do her employee's jobs but loved to tell them how they were wrong all the time, and then when she was fired, after the female coworker finally reported the ass slapping and the harassment based on disability, she went back into employee only areas with client personal information and thought taking selfies was ok (she was very quickly corrected and had to wipe her phone and memory card to ensure she hadn't been doing it when she wasn't caught, which cameras later proved she had been).
(I only sound calm. I will take a needle to her probably fake boobs and deflate them with glee if I ever see her again)4
Let's see here, we have:
🤡 Creepy Cackle Guy: watches videos all day and cackles like a hyena, plus constantly farts, and complains a lot. He gets everyone gassed up, no pun intended.
😤Bitchy PM: argues with you about every little thing, lies to pad her metrics while screwing the dev's metrics over. Also lies about what clients say to force launch or what she feels client should do. Rude to clients & co-workers. Runs and tattles to higher ups when people call her out on her shit. Nobody can stand her, she get's the entire office upset.
🙉Darth Vader: I don't think this one needs explaining. He breathes SO freaking loud you can hear it across the room. He also won't talk to anybody. Ever.
🤐The Non-Stop Flapper: nice person, but chats you non stop about their mundane life events, even when your status is set to busy or they know you're swamped. Asks irrelevant questions all day, every day. Heart of gold but needs to reel in the chatting.
🤬 Mr.Rage: whines about EVERYTHING. I mean everything. Has also thrown his food on me once over a joke about pizza. Wants to move up to programming but cant program.
So between them all, I scream on the inside daily. 🙊😫😢13
Bus-Factor: A new metric to describe how well kowledge is distributed among the team members by calculating how many of your team members can be run over by a bus without killing your project!6
Agile in practice.
I finished my story with 3 days left in our 2 week sprint.
Me: What story should I pull in next?
PM: Story <number> to add <new feature>
Me: ok, sounds good
PM: Will you finish it before our sprint ends?
Me: No, probably will take me 5-7 days.
PM: But it can't spill over, it will make our metrics look bad.
Me: I can't finish it in 3 days.
Me: Can't you just explain the spillover as us working ahead?
PM: It will look bad on our <automated-report>
Me: So don't want me to get started on <new feature>?
Me: <internally sighing> What do you want me to do?
PM: Maybe you can pair program with <Overpaid-Idiot-Programmer> to help finish their story
Boss: We need health data for this iOS app.
Me: Cool, so we'll use apples HealthKit.
Boss: No that requires the user agrees to it.
Me: ... well yeah ... its private data.
Boss: No we need it to work regardless. If the user says no to HealthKit, just give them textfields for all the metrics HealthKit has and they can enter manually.
Me: .... but ... eh ....
Boss: and we'll partner with some companies and support their devices.
Me: ... see, the thing is ...
Boss: We also need to store it locally and then sync it to the cloud app. What do you think?
Me: ... ... ... no2
Visual Studio Code.
I've tried you because of hearing a lot of good stuff about you. I'd switch back to netbeans regardless because I love netbeans and I always try to use as little as possible from companies like Google/microsoft/facebook (and others) but what you're pulling right now is un-fucking-believable.
I've disabled ANY AND EVERY form of calling home I could (find) in your settings. Crash reports, automatic updates, metrics, you name it. I've searched all the fucking settings but I can't find any other home calling thing that's enabled and yet:
I'm monitoring every goddamn DNS request (through my own DNS server) and I'm still seeing calls to a Microsoft owned domain. Closed all my browser sessions and you as well and it stopped. Started browser again but not you, nothing.
Started you again: BAM. Calls to that damned Microsoft owned domain again.
If you can't honour my decision for disabling any form of home calls, go fuck yourself.
Netbeans, I'm back, I've missed you 💜35
I hate bullshit metrics, they are everywhere.
- 90% unlimited downloads (not unlimited then is it, dickface)
- you are 53% more likely to be noticed with a pro account (yeah, because you fucked with the algorithms)2
Mgmt: We need performance metrics' comparison for those 2 tests ASAP, we'll ping you every 5 minutes
AWS Cloudwatch: *unusually slow - takes ~2 minutes to add/remove a metric or change the timeframe*
AWS Autologout: "Let me just intervene here right before you take that screenshot that took you 1.5 hours to filter out..."1
No, I do not wish to work on your Scrum-managed project.
I do not wish to contribute to the Taylorism of my profession.
I do not wish to be an interchangeable cog in your software sausage machine.
I do not wish to be tracked by some pointless metrics like a call-centre worker.
I do not wish to bust my tight, cute ass to sprint after some idiotic management request that could have been factored in earlier.
I do not wish to obtain some piss-ant qualification that "authorises" me to do my job.
I do not wish to be party to your lie that technical debt will be avoided by refactoring---whatever the cost.
I do not wish to contribute to the death of software engineering to have it replaced by software development.
Agile? Sure. I can pick up the phone and talk to the client, users and fellow devs. After all, that's what it FUCKING MEANS. Communi-fucking-cation.
See that burndown chart? See your anus? Know what's happening next?
Fuck Scrum and every fucking bottom-feeder that is scamming a living by promoting it. You're killing this business.
Hugs and kisses,
Rant against useless metrics:
No, your bootup time is not from when you hit the power button, until the moment the login screen shows up.
It's from when you hit the power button, until the moment when you can actually use your computer, e.g. the web browser or IDE is running and responding to input.
When your laravel (PHP) project's GitHub metrics ends up like this, you question yourself "Am I doing it right?"1
Today was a day at work that I felt like I made a significant contribution. It was not a lot of code. Actually it was a difference of 3 characters.
I am developing an industrial server so that my employer can provide access to their machines to enterprise industrial systems. You know, the big boys toys. Probably in fucking java...
Anyway, I am putting this server on an embedded system. So naturally you want to see how much serving a server can serve. In this case the device in more processor starved than memory starved. So I bumped up the speed of the serving from 1000mS to 100mS per sample. This caused the processor to jump from 8% of one core (as read from top) to 70%. Okay, 10x more sampling then 10x approx cpu usage. That is good. I know some basic metrics for a certain amount of data for a couple of different sampling rates.
Now, I realized this really was not that much activity for this processor. I mean, it didn't seem to me that it "took much" to see a large increase of processor usage. So I started wondering about another process on the system that was eating 60 to 70 % all the time. I know it updated a screen that showed some not often needed data from its display among controlling things. Most of the time it will be in a cabinet hidden from the world. I started looking at this code and figured out where the display code was being called.
This is where it gets interesting. I didn't write this code. Another really good programmer I work with wrote this. It also seemed to be pretty standard approach. It had a timer that fired an event every 50mS. This is 20 times per second. So 20 fps if you will. I thought, What would happen if I changed this to 250mS? So I did. It dropped the processor usage to 15%! WTF?! I showed another programmer: WTF?! I showed the guy who wrote it: WTF?! I asked what does it do? He said all it does it update the display. He said: Lets take to 1000mS! I was hesitant, but okay. It dropped to 5%!
What is funny is several people all said: This is running kinda hot. It really shouldn't be this hot.
Don't assume, if you have a hunch, play with it if its safe to do so. You might just shave off 55 to 60 % cpu usage on your system.
So the code I ended up changing: "50" to "1000".16
Just released version 1 of my first API! For this project I did everything the way I wanted to, no shortcuts! I documented the shit out of every endpoint and parameter. Everything is throughly tested and it’s dockerized. I also have metrics for each endpoint (with Grafana in the frontend, which I love) as well as alerts in case it would go down for some reason.
I prepared all of this before deploying it out into the wild and damn, it feels so good. Probably no one will use it but I don’t care. It’s one of those projects where you have to force yourself to go to bed at 2 AM.
Just some thoughts. Don’t really have any techie friends so figured maybe someone here recognizes that feeling. Also I wrote it in Python, such a pleasant language.11
PM: we need to show some progress, lets build a dashboard to display metrics.
Me: what metrics do we use ? The current period?
PM: No, those aren't good. Use math to show we made progress *wink*
SLOC is the shittiest metric to exist.
If you're in software management, know that any of the numbers you've ever received (from me or anyone) for SLOC count are totally worthless.
"How many lines of code do you think you'll need to write to finish those features"?
"Never assume that data useless to your application is useless to all others - we are asking it different questions"
Privacy is dead because we could disseminate valuable data from crap if our lives depended on it, discarding simple key values for over analysed crap metrics every time.
Oh, and it's also screwing us over... if your keen know more about getting fucked go take a look at @linux 's rant about the matrix.org hack
Found out today that the company wants to hire the consultant that thinks that unit testing is a waste of time, CI and code coverage metrics are useless, DI is mumbo-jumbo. But 500+ line procedural methods are fine, you just start the method with a small essay of a comment on what it does...6
The GitHub graphql API is pretty neat, mostly because it's a great example of a product where graphql has advantages over REST. As a code reviewer for repos with hundreds of simultaneous PRs, I use it to filter through branches for stuff that needs my attention the most.
NewRelic's NRQL API is also quite nice, as it provides an unusual but very direct interface into the underlying application metrics.
I'm also a big fan of launchlibrary, purely because I love spaceflight, and their API is an extremely rich and actively maintained resource. This makes it a great data source for playing around with plotting & statistics libraries — when I'm learning new languages or tools, I prefer to make something "real" rather than following a tutorial, and I often use launchlibrary as a fun and useful data backend.
Teaching my homeschooled son about prime numbers, which of course means we need to also teach prime number determination in Python (his coding language of choice), when leads to a discussion of processing power, and a newly rented cloud server over at digital ocean, and a search of prime number search optimizations, questioning if python is the right language, more performance optimizations, crap, the metrics I added are slowing this down, so feature flags to toggle off the metrics, crap, I actually have a real job I need to get back to. Oooh, I'm up to prime numbers in two millions, and , oh, I really should run that ssh session in screen so it keeps running if I close my laptop. I could make this a service and let it run in the background. I bet there's a library for this. He's only 9. We've already talked about encryption and the need to find large prime numbers.3
These script kiddies fuck with my error metrics! I want 0 !
I swear I'll find them! Even enabled IP log for every request contain “.php”.
Needless to say, app is not even in PHP and PHP isn’t even present on server12
I really like this book on the basis of the philosophy overall, no this doesn’t solve all problems but it’s a good baseline of “guidelines/rules” to program by. Good metrics or goals to architect and design software projects high and low level projects.
Fight Software Rot
Avoid duplicate code
Write Flexible, dynamic, adaptable code
Not cargo cult programming and programming by coincidence.
Make robust code, contracts/asserts/exceptions
Test, Test, and TEST again and Continue testing.. this is a big one.. not so much meaning TDD.. but just testing in general never stop trying to break your software.. FIND the bugs.. you should want to find your bugs. Even after releasing code the field continue testing.21
2020 seems to be the year of the "dev who has never seen scale."
TypeA -> "Here's a reasoned explanation for a change I think we should make. Here is the current deficiency analysis, here is the desired resolution, here is the course of action and all calculations leading to the resolution + data. This will have x,y,z beneficial result according to our operational metrics."
TypeD -> "Those were words. Why do you need that? Change is bad, learning is worse. This will just slow me down, development speed is all that matters; there is no chance that a poorly considered/factored/checked design could ever require a ground up rewrite or fuck us utterly in the long term. Why do you make my life harder? We could x -> y -> zBUTI haven't done the math and I really don't see the benefit in x, so z is pointless. What even is scale?"
The consequences of the war caused by the ever-widening gap between engineers and developers is low key terrifying.13
Said by the former leader of a project that gathers statistics and metrics about software with 1M daily reports.2
So this is my first rant but I have to rant about this because I can’t take it anymore.
So I have a manager that has build the department we are in from an application he built that takes care of department metrics. I work for an ISP for a technical support department that takes care of the metrics and tools that they use to troubleshoot(not to mention that I work mostly with shitty legacy code). When I first got into the team There was no version control, no way to actually measure our work and no actual structure on anything. So when I came in I implemented TFS and GIT, so now we have at least that. The problem is that when my manager decided it would be a good idea to implement agile/ Kanban development in my team, he also decided that a methodology that was proven to work was not enough. So he started adding a bunch of useless and annoying rules on top of that methodology. Some of those rules were for example we don’t use tasks, we use backlog items as tasks and each backlog item has to take minimum of 15 minutes and maximum of 2 days to get completed, if it takes you longer you have to split it into chunks like part A and part B etc. Same thing for features which don’t represent features but represent projects which can’t be greater than 2 weeks and then Epics which can’t be greater than 2 months. But also you can only put in TFS stuff that is related to projects and nothing else. So not all the work you do is accounted in there but yet it will be used for your overall performance at the end of the year. It’s fucking wack and I can’t wait to move out of there, the environment is pretty toxic. It feels like everyone in our team except the one ass licker is just dead inside and no one gives a shit anymore. And that is what happens when you try to make a proven working thing into something “better” when you know nothing about it.2
Can somebody please explain to my boss that using a progressive loading bar when you've got no metrics to base the progression on is stupid. Pls.3
Epic code fight broke out today when one developer fronted himself for leader due to having beat all the metrics by a factor of ten. Claimed he could replace the entire department based on LOC alone.
Another developer told him to fucking zip it.
After almost coming to blows someone managed to explain to him that he had to put his code into a compressed archive.
As it compressed to ten times smaller than the next smallest contribution he declared victory because his compressed better. Another developer joked better call bomb squad.6
2 hour meeting to brainstorm ideas to improve our system health monitoring (logging, alerting, monitoring, and metrics)
Never got past the alerting part. Piss poor excuses for human being managers kept 'blaming' our logging infrastructure for allowing them to log exceptions as 'Warnings', purposely by-passing the alerting system.
Then the d-head tried to 'educate' everyone the difference between error and exception …frack-wad…the difference isn't philosophical…shut up.
The B manager kept referring to our old logging system (like we stopped using it 5 years ago) and if it were written correctly, the legacy code would be easier to migrate. Fracking lying B….shut the frack up.
The fracking idiots then wanted to add direct-bypass of the alerting system (I purposely made the code to bypass alerting painful to write)
Mgr1: "The only way this will work is if you, by default, allow errors to bypass the alerting system. When all of our code is migrated, we'll change a config or something to enable alerting. That shouldn't be too hard."
Me: "Not going to happen. I made by-passing the alert system painful on purpose. If I make it easy, you'll never go back and change code."
Mgr2: "Oh, yes we will. Just mark that method as obsolete. That way, it will force us to fix the code."
Me: "The by-pass method is already obsolete and the teams are already ignoring the build warnings."
Mgr1: "No, that is not correct. We have a process to fix all build warnings related to obsolete methods."
Mgr2: "Yes. It won't be like the old system. We just never had time to go back and fix that code."
Me: "The method has been obsolete for almost a year. If your teams haven't fixed their code by now, it's not going to be fixed."
Mgr1: "You're expecting everything to be changed in one day. Our code base is way too big and there are too many changes to make. All we are asking for is a simple change that will give us the time we need to make the system better. We all want to make the system better…right?"
Me: "We made the changes to the core system over two years ago, and we had this same conversation, remember? If your team hasn't made any changes by now, they aren't going to. The only way they will change code to the new standard is if we make the old way painful. Sorry, that's the truth."
Mgr2: "Why did we make changes to the logging system? Why weren't any of us involved? If there were going to be all these changes, our team should have been part of the process."
Me: "You were and declined every meeting and every attempt to include your area. Considering the massive amount of infrastructure changes there was zero code changes required by your team. The new system simply worked. You can't take advantage of the new features which is why we're here today. I'm here to offer my help in any way I can with the transition."
Mgr1: "The new logging doesn't support logging of the different web page areas. Until you can make that change, we can't begin changing our code."
Me: "Logging properties is just a name+value pair dictionary. All you need to do is standardize on a name and how you add it to the collection."
Mgr2: "So, it's not a standard field? How difficult would it be to change the core assembly? This has to be standard across all our areas and shouldn't be up to the developers to type in anything they want."
- Frack wads smile and nod to each other like fracking chickens in a feeding frenzy
Me: "It can, but what will you call this property? What controls its value?"
- The look I got from both the d-bags I could tell a blood vessel popped.
Mgr1: "Oh…um….I don't know…Area? Yea … Area."
Mgr2: "Um…that's not specific enough. How about Page?"
Mgr1: "Well, pages can cross different areas, and areas cross different pages…what do you think?"
Me: "Don't know, don't care. It's up to you. I just need a name."
Mgr2: "Modules! Our MVC framework is broken up in Modules."
DevMgr: "We already have a field for Module. It's how we're segmenting the different business processes"
Mgr1: "Doesn't matter, we'll come up with a name later. Until then, we won't make any changes until there is a name."
DevMgr: "So what did we accomplish?"
Me: "That we need to review the web's logging and alerting process and make sure we're capturing errors being hidden as warnings."
Mgr1: "Nooo….we didn't accomplish anything. This meeting had no agenda and no purpose. We should have been included in the logging process changes from day one."
Mgr2: "I agree, I'm not sure why we're here"
Me: "This was a brainstorming meeting as listed in the agenda. We've accomplished 2 of the 4 items. I think we've established your commitment to making the system better. Thank you all for coming."
- Mgr1 and 2 left without looking at me or saying a word.1
A few days ago I decided to install Windows 7 on a VM (bad idea as it turned out). All fine and dandy and I ran Windows Update a few times to get it at least as up-to-date as it'll get.
I noticed that out of the 4GB RAM I had allocated, an svchost process responsible for the updates was gobbling up all the available memory, just leaving 82MB for everything else. The process itself was as you might imagine consuming over 3GB RAM just for itself. That's how an OS should work right after installation, I'm sure you'll agree.
So I complained about it. Haven't used Windows anywhere for a while so I wasn't used anymore to this level of efficiency. Disk activity went through the roof, though to be fair the underlying disk wasn't an SSD (qcow2 on ZFS on a spinning drive). RAM consumption is something I already covered. CPU temperature shot up to 95C.
So as any idiot would do, I disabled the service related to that process (the svchost process for wuauserv) and the problem went away. But I complained of course, saying that such amazing system utilization metrics wasn't something I expected. I mean for 4GB allocated, having as much as 82MB usable to get stuff done with! 95C on the CPU, on a lot of chips that's the junction temperature! Absolutely beautiful.
When I complained I heard that I had to replace the thermal grease. I do that twice a year. I wrote a custom fan driver for my system that works absolutely great. It was obviously shit. I must be a horrible sysadmin for solving a problem by eliminating the cause, and companies hiring me must be ashamed of themselves. My hardware must be shit (that's a common one with Windows users) despite being a business laptop and the guest system being a VM. Oh and I'm an idiot of course for complaining about such amazing system metrics in Windows.
I love Windows and its community...8
"You can Download Sublime Merge, and try it for yourself - there's no time limit, no accounts, no metrics, and no tracking. The evaluation version is fully functional, but is restricted to the ***light theme only.***"
In your butt light theme haters ;)4
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
Listen, i really understand you want to know how much a certain resource is downloaded/viewed and so on. But what gets on my nerves is to sign up my email address every fucking time i want to see your semi-tech-but-actually-selling-you-a-pile-of-sperm-fermented-shit whitepaper . yes i know there is something called disposable email adresses and such... But if stuff is 'free' as you say you have, then make it available free!
Every time i think 'hey, this is actually relevant to my interests, let me read up more on that...' i hit the fucking 'insert your email for a free download'
Fuck off! Put your fucking form in the pits of hell and seal it in a fucking fucking dome next to fucking research subject akira with 99 fucking layers of fucking nuclear blast proof wall domes! I dont want you to fucking send me your fucking spam mails about every ideafart your sales dept has fired becausz they were high on computer cleaner spray tubes and thought 'let's trick those stupid people into our marketing scheme', go and fucking jump into a barrel of highly concentrated radioactive waste!
The only thing you manage to do for me like that is to fucking close the tab i had a slight interest in and never look back again!
Am i the only one getting angry about this?2
@dfox @trogus would you guys mind sharing some statistics on devRant? I've been very curious about the following metrics:
- Daily active users
- Weekly active users
- All time rants count
- Monthly comments count
- Total users count
Thanks for reading and thanks even more for making this beautiful platform 😃9
I wonder if there are any metrics to support sites that implement the "don't leave" modal when the mouse leaves the page.
Or is it just a genuine desperate attempt?
I cannot rationalize it.6
Being asked to produce a graph for metrics a, b and c and then being invited to the two hour "a, b and c" meeting to explain what they mean to the people that asked me to graph them. That's rapidly becoming my "job description"...
I'm getting so sick of people bitching about their privacy and apps (looking at you gdpr).
They want full anonymity and share 0 data... well fine but then pay me 2.99 a month to use my service... oh you don't want to spend money well ok then, ill use some of your metrics and share them with advertisers so you can keep using the service at no cost... oh you don't want us to collect the data you are already spewing around on every online platform? well then we cant have you using our service because you are costing us money... what? the gdpr is forcing us to keep providing you with the service... but... who is going to pay for resource costs?!
ps: the gdpr is so full of loopholes, half the arguments you "nerds(be honest you read it on facebook that we have to delete you data...haha..)" use for how great it is are...well... moot
pps: with you nerds I don't mean the readers of this13
aagh fuck college subjects. over my last 4 years and 7 sems in college, i must have said this many times : fuck college subjects. But Later i realize that if not anything, they are useful in government/private exams and interviews.
But Human computer Interaction? WHAT THE FUCK IS WRONG WITH THIS SUBJECT???
This has a human in it, a comp in it, and interaction in it: sounds like a cool subject to gain some robotics/ai designing info. But its syllabus, and the info available on the net , is worse than that weird alienoid hentai porn you watched one night( I know you did).
Like, here is a para from the research paper am reading, try to figure out even if its english is correct or not:
Looking back over the history of HCI publications, we can see how our community has broadened intellectually from its original roots in engineering research and, later, cognitive science. The official title of
the central conference in HCI is “Conference on Human Factors in Computing Systems” even though we usually call it “CHI”. Human factors for interaction originated in the desire to evaluate whether pilots
could make error-free use of the increasingly complex control systems of their planes under normal conditions and under conditions of stress. It was, in origin, a-theoretic and entirely pragmatic. The conference and field still reflects these roots not only in its name but also in the occasional use of simple performance metrics.
However, as Grudin (2005) documents, CHI is more dominated by a second wave brought by the cognitive revolution. HCI adopted its own amalgam of cognitive science ideas centrally captured in Card, Moran & Newell (1983), oriented around the idea that human information processing is deeply analogous to computational signal processing, and that the primary computer-human interaction task is enabling communication between the machine and the person. This cognitive-revolution-influenced approach to humans and technology is what we usually think of when we refer to the HCI field, and particularly that represented at the CHI conference. As we will argue below, this central idea has deeply informed the ways our field conceives of design and evaluation.
The value of the space opened up by these two paradigms is undeniable. Yet one consequence of the dominance of these two paradigms is the difficulty of addressing the phenomena that these paradigms mark as marginal.
My boss is being a stupid cunt. To give you a background we were facing issues with our Collections system. First week December 2019, I and a colleague of mine came up with a new efficient collections architecture. My colleague and I started to Code and create automation scripts mid December and completed it in First week of Jan 2020. This PoC version was supposed to be just between the Dev team(App Dev and Back end, also one from the Ops side to verify the data). I did not receive any feedback on the actual collections system and the data integrity but during this time all they’ve done is take meetings with no real outcome. I raised this and the only email I got is data is looking fine when I know it is not.Now in First week of Feb, he is stressing us to go ahead and deploy the architecture in Production and we have not done any Code Review, Static Code analysis, any real tests on Code and deployment scripts. Have not discussed any metrics for our dashboard and alerting. I have no idea how to handle this cunt. I have even asked for resources to atleast productionalize the code and move ahead the deployment and still no out come. I’ll go in a meeting with him in an hour, I will be very blunt and tell him that whatever he is doing is a foolish way and maybe resign in couple of weeks6
Spent the last year coding on ACA eligibility metrics and end of year tax 1095c automation for the company's employees. Just now getting around to doing my own taxes.
When IT is like : hey our new grafana is at this place "some URL"
I submit a bug ticket: "I can't see metrics about this server that has been running for a while"
Their comment on the ticket : the URL to the old grafana
Oddly enough, i have simultaneously been less busy and more productive since working 66% remotely.
I find myself with more time that feels "wasted" or not busy, but my metrics show that I have more production, better results, and far nicer documentation. A bunch of us also sat down and did a bunch of coursework on really putting together a domain script library for one click onboarding of new servers or new client setups. We spun up a bunch of new virtual environments that literally solved headaches that had existed for years that never got dealt with because of too many other tickets.
Some of our web clients freaked out at us because the business is moving away from doing maintenance of legacy web work (small to midsize businesses). But it didn't matter. Rather than respond with a "make them happy," the response was "well, we will get rid of them as clients. We need to focus our energy on the essential service sectors we support."
Hell, we even got an automated test that has been broken apparently since 2018 to work again.
Granted, the incoming workload has slowed down. But it's still interesting to me to see that despite the slowdown, there isn't any concern; its still paying the bills and we are getting rid of technical debt everywhere. Tbh, this has really been a good reality check.1
New bossman is looking for KPIs.
We're an agile team who build a back end system for a large corporation. Specifically the system we build is used by the sales guys when they are putting through a sale. I have no idea where to start with KPIs.
Can't measure number of sales as that's down to the salesmen. Can't measure speed of sale as again that's down to the salesman and how much they chat.
Over the last few years, i explored the DMZ between dev's world and customer's world. It is a DMZ where both are in contact, ones trying to convince the others to invest on them, and i was just shocked !
People are so stupid and Elitist, they think that an ultimate great godly dev exist !
It is totally fake for sure, they image that a good have to know absolutely everything about all the damn languages (while everyone googles every single comment received, even the most "advanced" dev)
I am shocked to see how people apply their everyday life metrics to the dev's world, i mean, there are a lot of devs around, everyone coding his way to self-improvement, we are all different, we have trends, and we can definitly define groups of developers and types of developers, but people think that a good dev have to come from silicon valley ! Does it means that a dev coming from Vladivostok is less worth ? even he is more dynamic in his approach ? even if he yields more results in terms of solutions ? (SV devs tends to be too much technical, while russians tends to be in the heart of action directly).
Common people shouldn't mess with what they know nothing about, and stay at their "Consumer" position.
Name two production service, metrics and logging included, after a famous woman and an armored vehicle.
Dude, no. When those services go down in the middle of the night some poor soul on call duty will have to handle it without the faintest idea wtf is going on.1
Hello everyone, once again I’m asking for your help, for the first time I’m working as a counterpart for an external development company, this project already has a few months of work but there are not any technical documentation or quality metrics.
Would you suggest to ask all the necessary stuff with times, quality and requirements or it’s already impossible to do that?5
Wanted to try a new alerting based on a new Prometheus metric we added. To trigger an alert we killed the dev stage db of the service. Alert didn't get triggered. The reason was that the metrics endpoint suddenly needs exactly 60s for a response if the db is killed and prometheus timeout is 20s.
And to top it off, this behavior happens for each service we developed (that has a db) .
Well at least the new alerting already helped find a bug.2
So they asked if we want a wallboard or not and we answered with a NO. As you already guessed we still got a wall mounted LG TV with a small linux box.
So I started to tinker with the wallboard and created a horrible python -> HTML5/JS stuff which crawls the data worth to show and creates static pages with html5 canvas for graphs.
Later I found atlasboard which is a discontinuated dashboard from Atlassian so started to learn nodejs and rebuilt and added new widgets to show our smoketests, our mssql server metrics from zabbix, our sprint from Jira and some other servers' status.
Then I created the essential metrics again but in Vice C64 emu, I collected and exported the data in python created a PETSCII compatible .prg file and the **** Dasboard 64 **** loaded and created graphs in the emu every minutes.
That was awesome! BASIC V2 is slow as hell but still awesome.3
@dfox - yall should publish some metrics on devrant, maybe a punchcard graph for rants per minute? think it would be kind of cool to see how rapidly the community is growing2
The Prometheus tales
Part IV - A new FUBAR.
A new and very fascinating problem emerged a few days, after feeding some node definitions to the new titan instance.
It's a storage fuck-up. A major one.
If I'm informed correctly, the latest prometheus should have the same (or even better) log compression algorithms for metrics, as the old one - because these fuckers are so damn good at what they are doing: compress some fucking logs.
The new instance is agregating metrics as planned. Grafana work's like a fucking charm.
Nethertheless, because of very fascinating but unknown reasons, the new instance creates 50GB of metrics in under 4 fucking hours.
Am I missing something here? Some magic parameter that has to be passed to the titan, that enables the hardcore compress-them-fuckers-feature?
Debugging session is tomorrow.
To be continued.
Wanted to add alerting for systemd services in Prometheus today, which spontaneously turned out to be a huge pain in the lower human backend.
For some reason, on Ubuntu 16.04 systemd adds services without unit files for software, that isn't even installed on the damn server (in this case for mysql-server / mysql-common and mysql-client are installed) and lists them as "not-found" and "inactive". The prometheus node exporter that we use, has a little bug in the systemd collector that makes sure that the states of *all* services are collected - even those without a unit file.
so those metrics are pulled by prometheus and now I have to take with those faulty metrics in the condition logic of the alert, because I'm trying to trigger that one on a service which is listed with state "active" = 0 or "failed" = 1.
now guess. right! If the unit file doesn't exist, the regarded systemd service is marked as "inactive", which is another possible state of the metrics in the node exporter. the problem is that the value 1 for state "inactive" means, that "active" has the value 0 (not even wrong) and the alert is triggered.
so systemd fucks up somehow, the node exporter collector fucks up because systemd fucked up and I have to unfuck this with some crazy horse shit logic. w.t.f. to that.
the only good news is, that it works like a charm on Ubuntu 18.04, as far, as I can tell.
while writing this little rant, I thought of a solution.
I could try to change the alert condition to state "active" = 0 AND "failed" = 1.. but that will wait till tomorrow.
one does not simply patch monitoring conditions at midnight..4
Our prometheus node, one of your oldest systems (somehow fits the Titan reference..), is about to be relieved of its duties after several years of loyal services to the crew.
We decided to run with another Prometheus node in the ring, that will run simultaneously with the old one, so that the new one can start to collect metrics that we need for alerting (some historic metrics are needed too..). sort of an Prometheus cluster, without the cluster fun and with 2 different Prometheus versions.
The problems with this? Well it's not the new node or the latest shit versions of Prometheus per se.
1: The node exporter.
those dudes decided to make some breaking changes in a minor update, so that you will need to run with some magic bullshittery, that the latest Prometheus can make something out of the old metrics provided by the old node exporters.
The other one is the related puppet code.
The node definitions for Prometheus were built via exported resources on the target nodes.
The code worked like a charm with only one Prometheus node, but try that with two instances in the same way.
Still WIP, but some targets are already included in the new Prometheus instance.
alerting works so far.
Can't wait to close this ticket for good..
What do you use for performance monitoring on your infrastructure?
My company uses zabbix, OpenNMS and Nagios to monitor different parts of our infrastructure (from shared web hosting to OCCAS to IPTV to FutureVoice to Atlassian servers) but has no real-time performance checks.
I’ve set netdata master with prometheus backlog and grafana dashboards to monitor different metrics, however I am not sure whether any better approach could be done. Any suggestions?2
I walk by our devops dashboard several times per day. It keeps track of key metrics for all our live services. I noticed an interesting trend the last few weeks.
3 weeks ago: all metrics green
2 weeks ago: 1 metric red
1 week ago: 1 metric still red
this week: 1 metric still red but covered with a post it note
I did some cool projects with node JS.
We had this project where we had several embedded sensor box components communicating via a node js server backend with some fancy visualization.
And one of the guys was a total idiot. His part was to write some embedded code for a sensor box. He also wrote some data receiver in C# which was a totally over patterned mess and nothing worked.
For some unknown reason this guy made me his arch nemesis. He also never liked the team. While the rest of the team actually was super cool.
So in the final presentation out of a sudden in his part of the presentation (He had a Mac and had his slides done in some nasty whatever incompatible format) he pulled out some slides with code metrics. The best part was where he compared the embedded C code with my js code in terms of cyclomatic complexity. I will never forget this moment. Some nice bar chart.
Good I loved that guy for this moment.
And that made my year!
At what point do you say a junior dev is no longer a junior? What metrics do you use? Like scope of knowledge, impact on team / code decisions, years experience, management skills, etc.?
I feel I'm qualified as a mid level developer now despite only being a junior for a little over a year. I had tons of internships in college and was kind of placed in a role where growing fast was required.
I broke a sweat for most of that ~1 year I worked as a junior and my contributions to my project aren't insignificant
I don't say that to toot my own horn here, I really do want to ground myself in reality. But I don't know if my standards are too low or my organizations standards are too high. FWIW, other devs on my team have commented privately / informally that the junior title isn't super fitting.
I'm still pretty dependent on my boss but that's more for final say of things. He'll often have some input to my work but I'll also be involved with design discussion and take up a large chunk of work without question. On light sprints I'm knocking out 20+ taskhours of work, going closer to 30/40 when things pick up. Not uncommon to kill 10 user stories in a sprint.
I don't know, what do you guys think?8
I’m trying to update a job posting so that it’s not complete BS and deters juniors from applying... but honestly this is so tough... no wonder these posting get so much bs in them...
Maybe devRant community can help be tackle this conundrum.
I am looking for a junior ml engineer. Basically somebody I can offload a bunch of easy menial tasks like “helping data scientists debug their docker containers”, “integrating with 3rd party REST APIs some of our models for governance”, “extend/debug our ci”, “write some preprocessing functions for raw data”. I’m not expecting the person to know any of the tech we are using, but they should at least be competent enough to google what “docker is” or how GitHub actions work. I’ll be reviewing their work anyhow. Also the person should be able to speak to data scientists on topics relating to accuracy metrics and mode inputs/outputs (not so much the deep-end of how the models work).
In my opinion i need either a “mathy person who loves to code” (like me) or a “techy person who’s interested in data science”.
What do you think is a reasonable request for credentials/experience?5
Just a quick rant to express my distaste that the AWS ALB ingress controller for Kubernetes doesnt expose any useful metrics. I just wanna know the target response latency is that too much to ask?1
* Canonical Data Models for Metrics and Reporting
* ETL, Table, and API designs to blend Legacy data into Cloud data via said Canonical Models
* Teaching n-Tier and Domain Driven Development models
Welcome to the Office of the CIO.
when you get a set of metrics from another dev, on a database you don't know, to add to a BI dash and the next week their manager changes the metrics (for consistency) and the other dev is unavailable.
Just discovered wizzy ... Wow, freaking sweet!
I like it for many reasons, just started playing with it, therefore #1 reason so far is saving dashboards and having them in a git version control, yay!!!
Also, if you're not familiar with Grafana, let me blow your mind: http://grafana.org4
The feeling when eventual consistency is unacceptable for your use case and you suggest making a call synchronous only to be told it can't be synchronous and the clients need to introduce an arbitrary wait time.
Apparently our latency metrics are more important than being correct.2
I've been studying a bit about business analytics and intelligence to diversify a bit from dev.
After a lot of looking around I've found it's all just glorified jargon which basically enables your decision to have backing of facts and logic. It sounds as if it's a great coverup tool but don't know if it actually helped decision-making.
Why does researching the market/competition need to have a thousand breakdowns/categories/focus areas.
I feel like an interpretation of business analytics is a very simple and intuitive solution but there is just too much random and wasteful metrics attached to it.
I believe it's just my nascent knowledge and experience speaking, but I never felt the same way about software development, financials, etc2
How is it that years of development are not enough for NewRelic to add native support of mssql metrics in their unholy newrelic nodejs agent.????!?!?11!
On the other hand "important" databases like PostgreSQL are having native support.
Excuse me... WTF!!!!2
I just want to test my PHP code using phpunit on GitLab, what am I doing wrong?
# Install & enable Xdebug for code coverage reports
- pecl install xdebug
- docker-php-ext-enable xdebug
# Run our tests
# If Xdebug was installed you can generate a coverage report and see code coverage metrics.
- phpunit Test.php4
Question directed to devs who know a bit about setting up middle sized architecture.
Prestory: Joined into development of a middle sized online game. Figured they created a monolith over the last 6 years up to a point where nothing works properly and nothing can be changed without wrecking the whole system. Figured a monolithic approach isn't such a great idea.
Current Situation: In a different, same scale online game development team, game itself working but team is struggling with architecture.
My job is to come up with an approach on how to set up masterserver/matchmaking/database etc. Reading through various articles about common principles (SOLID etc.), i figured that a microservice+event-/servicebus architecture may work for that kind of project.
The idea would be to have a global interface in which microservices can be hooked. So a client registers to a client handler on startup, then starts to queue for a game, the client handler throws an event on the bus to register the user to matchmaking. The matchmaker happens to listen to those events (Observer Pattern) and adds him to matchmaking, when a match is found it throws an event on the bus to connect the user to the server, etc. One can easily imagine a banhandler throwing in a veto to cancel such an action, metrics and logging is fairly simple to add (just another service listening to all events), additionally Continuous Delivery, FRP and such are also beneficial advantages and it is said to scale well.
The question is, would you do the same, is there maybe something i might be overlooking? Do you have better ideas?
Keep in mind that we are not too experienced and are bound to different languages (python, C++ and java mostly) and are a small (4 Devs) Team with different strengths.
Thank you for your feedback and criticism!1
so here's a rant/question
So I'm having an issue with vertical-metrics in a font I'm using which results in mac aligning it in the middle and windows aligning it at the bottom. I tried re-converting it for webfont (fixing vertical metrics in fontsquirrel) but not luck so far,
PS vertical-align don't work either3
Any good recommendations on how to gather user metrics/instrumentation and visualize data?
The program is a WPF application with not internet connection so logging to file and get file is probably the only solution.
I've played a little with Serilog to file and trying to import the log into elastic search and visualize data with Kibana.