Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "transactions"
-
A "support" guy my boss got in. I had told my boss numerous times, "Get rid of this guy, he's only wasting our time and money. And he's going to end up doing something where we will end up having to put out the fires."
Sure as a pair of nuts on a squirrel, this crazy bastard goes and DELETES a client's database. Yes folks, in fucking production. A live database. The heart of the business' transactions are... *poof*... GONE!!!
No backups for the day! No synchronisation beforehand! No nothing... just GONE!!! Fucking flat-lining!
Well, when I realised what he has done, I had to remove myself from the room before shit got outta hand!
I told the boss man that is the last straw and he needs to go...
The long and short of it...
- The client had luckily only lost about half a days data.
- I'm no longer at the company.
- This dumb fuck still is.18 -
My biggest dev blunder. I haven't told a single soul about this, until now.
👻👻👻👻👻👻
So, I was working as a full stack dev at a small consulting company. By this time I had about 3 years of experience and started to get pretty comfortable with my tools and the systems I worked with.
I was the person in charge of a system dealing with interactions between people in different roles. Some of this data could be sensitive in nature and users had a legal right to have data permanently removed from our system. In this case it meant remoting into the production database server and manually issuing DELETE statements against the db. Ugh.
As soon as my brain finishes processing the request to venture into that binary minefield and perform rocket surgery on that cursed database my sympathetic nervous system goes into high alert, palms sweaty. Mom's spaghetti.
Alright. Let's do this the safe way. I write the statements needed and do a test run on my machine. Works like a charm 😎
Time to get this over with. I remote into the server. I paste the code into Microsoft SQL Server Management Studio. I read through the code again and again and again. It's solid. I hit run.
....
Wait. I ran it?
....
With the IDs from my local run?
...
I stare at the confirmation message: "Nice job dude, you just deleted some stuff. Cool. See ya. - Your old pal SQL Server".
What did I just delete? What ramifications will this have? Am I sweating? My life is over. Fuck! Think, think, think.
You're a professional. Handle it like one, goddammit.
I think about doing a rollback but the server dudes are even more incompetent than me and we'd lose all the transactions that occurred after my little slip. No, that won't fly.
I do the only sensible thing: I run the statements again with the correct IDs, disconnect my remote session, and BOTTLE THAT SHIT UP FOREVER.
I tell no one. The next few days I await some kind of bug report or maybe a SWAT team. Days pass. Nothing. My anxiety slowly dissipates. That fateful day fades into oblivion and I feel confident my secret will die with me. Cool ¯\_(ツ)_/¯12 -
Anyone who creates a Facebook Libra account and puts money in it and uses it to buy stuff/for transactions should have their fucking voting rights removed and be submitted to a mental health institution.
Just my personal opinion.27 -
The network starts slowing down, transactions start to fail across the 450+ stores, the website starts to spit 500 errors what is going on?
Queue a frantic running around the office working out what was going wrong... Calls from all 3 data centres, nothing is going in or out of the network.
Notice the network admin come back to his desk, his eyebrows raise and he looks left and right before unplugging his laptop ethernet from one of the server access points
The network rushes back to life, everything is fine.
That particular network mapping tool is now banned for use on production.10 -
I very very rarely drink, but when I do I party hard.
I negotiated an entire piece of complex web architecture (really huge, works at 50k transactions per second), with my boss who's a lead architect, from a bar (he thought I was home), while moderately drunk.
It got me a lotta praise and till date it's one of the best pieces of software I've ever written. It saved the company 500+ hours or something #humblebrag.
To this day I have no recollection of what I said (huge hangover after) or how I managed to come up with that shit. I don't think I'd have been able to do it sober. The sheer size of the problem would've made me go "yea it works, I'm not touching that. Nope."
DAE notice any increase in pattern recognition in their code while drunk?1 -
A major bank had a bug in their system that triggered multiple postings of transactions in all of their clients' accounts. When they found out the root cause, they just had to mention that the programmer was a female. Like that was any bearing to the problem. It's not like they have like a whole fucking team of QA testers that should have checked that shit before it went to production.14
-
Short version:
Dear devRantdairy,
today I was stupid.
The End.
Full version:
I am working on some messaging system, trying to use less as possible overhead sending data. Therefore there of course are asynchronous calls and some templating. But that's just the setting of the rant: I designed an architecture to save conversations in a database. Working with transactions in pdo I wrote a query wich in my eyes should have worked well. But the result just didn't appear in the table. So I started debugging data. Recreated the table. Rewrote the query. Went to bed. Woke up. Further tryed to make this work. And in the end I realized I just forgot to commit the transaction.
How dumb can you be? There's way too much time gone for that mistake. Is there a hole? I want do dig myself.9 -
WHY can I only make digital payments on weekdays, 7:00-16:00?? Its not like there's a human authorizing all transactions. And computers don't sleep!!4
-
Hello again, everyone. I've been busy with all the paperwork at my ship (will make a post about it later) but for now, I'll bore you with another story (not navy one, fortunately) to justify my slacking off.
And this story... is the story on how I got into ITSec. And it is pretty damn embarrassing. It all began when I was 16. I was hooked on battleknight.gameforge.com, a browser game. My father had just had ADSL installed at our home, and the new opportunities before me were endless. Well...
After I've had my fill with the porn torrents and them opportunities dwindled to just a few dozens, I began searching for free games, and I stumbled on that game. I played a lot, but as a free-to-play game, it was also pay-to-win. I didn't have a credit card, so I paid for a few gems with SMS messages. Fast forward a couple of years, I got into the Naval Academy. A guy came in to advertise something (I think it was an encyclopaedia or something - yes, wikipedia wasn't a thing back then) and to pay for it, we could apply for a credit card. So I applied. And I resisted the temptation for a year.
Note: prepaid wasn't that known where I live, so using credit cards was the only way for online transactions.
So I made 1 transaction. Just one. After a couple of months my monthly report from the bank came, showing a 2.5$ (I think) transaction on Paypal. I paid no mind, thinking that it was some hidden fee. Oh boy, I shit you not, I was THAT much of an idiot. Six months later, BOOM!
600$ transaction to ebay via paypal. You can imagine all those nice things that came to my mind. In any case, the bank accepted my protest that I filed at their central offices and cancelled the transaction. I promptly cancelled my card, destroyed it right there for good measure, and got to thinking... what the fuck just happened?
As many people here, I am afflicted with a deadly virus, called curiosity. I started researching the matter, trying to figure out how. And, because I didn't like black boxes and "it is just like it is" explanations, I tumbled down the rabbit hole of ITSec. I soon found out that, not only it was possible, but also it was sometimes EXTREMELY easy to steal credit card info. There are sites, to this very day, that store user info (along with credit cards info) IN FUCKING CLEARTEXT. Sometimes your personal, financial and even medical info are just an SQLi away.
So, I got very disillusioned on many things. But I never regretted it. It may cause me to age prematurely and will kill me of stroke or heart attack one day, but as I still tumble down the ITSec rabbit hole, I can say with confidence that
I REGRET NOTHING
Plus, my 600$ were returned, so look on the bright side :)1 -
Well on my first job we had to integrate payment gateways in client apps for online payment. On my second week in office I published an app on the play store with payment gateway credentials for a different client cause they were there as default values. So the money for one client would go to the other. Nobody noticed it for two weeks and when they did, I thought I had just lost my job and also I would now have to pay all the losses out of my pocket but fortunately I didn't have to cause no transactions had yet been made. After that I always checked my integrations atleast five times before publishing. The incident scared the shit out of me but taught me the value of developer responsibility.2
-
In the begining of time, when The Company was small and The Data could fit in some fucking excel sheets, Those Who Came Before implemented some java tool to issue invoices, notify customers and clear received payments.
Then came the Time Of The Great Expanse, when The Company grew to unthinkable levels. Headcount increased with each passing day, and The Data shows that everything was going great!
But when the future seemed bright, came The Stall-Out. The days when The Company could not expand as fast as it did before. And Those Who Came Before left, abandoning their Undocumented Java Tool to its own luck.
Those who came after knew nothing of the inner workings of the Undocumented Java Tool. They knew only that the magical Jar would take a couple fucking excel spreadsheets and spit out reports and send emails like magic.
And those were The Dark Days.
In the darkness, The Data grew to be a monster. Soon a fucking excel spreadsheet could not hold The Data contained any longer. Those Who Came After, fearing the wrath of The Undocumented Java Tool, dared not mess with its code. Instead, they fucking cut away the lowest volume transactions from the fucking input spreadsheet, and left the company to report the unbilled invoices as "surprise losses". Fucking script kiddies, were Those Who Came After.
Then, at The Darkest of Days (literally, Dec 21st), marched into the project The Six Witchers, who fear not the Demon of Refactoring.
This story is still unfolding. Will The Six Witchers manage to unravel the mysteries of The Undocumented Java Tool? Will they be able to reverse engineer the fucking black box, and scale it's magic into a modern application?
Will they decrease revenue forecasting error by at least 2% in a single strike?
Only the future will tell.16 -
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.4 -
I feel I am getting paid for getting trolled (you read that right) - I have had now two completely seperate clients, a month apart - paying me hundreds of dollars for "testing".
I have explained both of them atleast for a total of 8 hours why there's "sandbox" accounts and that the "virtual money" is the same as "real money", so later when you go live, it will be the exact same, just without the need of actually testing with actual money.
I even as a last suggestion asked to atleast be developing with $0.01 transactions (to literally not run out of additional money, because of the different packages), but they wanted it to be as "real" as possible. -
Yesterday I completed a transactions module that used an external payment processor, similar to PayPal. It was hard, but after few hours of trying out different options I finally managed to get it to work.
I decided to create a simple prototype UI without any styling just to show my progress to the manager and let him know that it's working.
His response? "yeah, that seems to work, but that UI is terrible and not appealing at all. Change that immediately and try to add more thought into your design"
I guess I won't be making prototypes any time soon6 -
User: I need you to extract all the invoice data for us.
Me: What invoice data in particular, what are filters you require. This is a massive database with millions of transactions.
User: JUST EXTRACT THE TABLE!
Me: Right.....(this is a database with 3000+ tables and hundreds of joins)7 -
Dogecoin hit USD $0.40 recently, which means it's time for the Crypto Rant.
TL;DR: Dogecoin is shit and is logically guaranteed to eventually fall unless it is fundamentally changed.
===========================
If you know how Crypto works under the hood, you can skip to the next section. If you don't, here's the general xyz-coin formula:
Money is sent via transactions, which are validated by *anybody*.
Since transactions are validated by anybody, the system needs to make sure you're not fucking it up on purpose.
The current idea (that most coins use today) is called proof-of-work. In short, you're given an extremely difficult task, and the general idea is you wouldn't be willing to do that work if you were just going to fuck up the system.
For validating these transactions, you are rewarded twofold:
1) You are given a fixed-size prize of the currency from the system itself. This is how new currency is introduced, or "minted" if you prefer.
2) You are given variable-size and user-determined prize called "transaction fees", but it could be more accurately called a "bribe" since it's sole purpose is to entice miners to add YOUR transaction to their block.
This system of validation and reward is called mining.
===========================
This smaller section compares the design o f BTC to Dogecoin - which will lead to my final argument
In BTC, the time between blocks (chunks of data which record transactions and are added to the chain, hence blockchain) is ten minutes. Every ten minutes, BTC transactions are validated and new Bitcoins are born.
In Dogecoin, the time between blocks is only one minute. In Theory, this means that mining Dogecoin is about ten times easier, because the system expects you to be able to solve the proof of work in an average of one minute.
The huge difference between BTC and Doge is the block reward (Fixed amount; new coins minted). The block reward for BTC is somewhat complicated compared to Doge: It started as 50 BTC per block and every 4 years it is halved ("the great halving"). Right now it's 6.25 BTC per block. Soon, the block reward will be almost nothing until BTC hits it's max of 21 million bitcoins "minted".
Dogecoin reward is 10,000 coins per block. And it will be that way for the end of time - no maximum, no great halving. And remember, for every 1 BTC block mined, 10 Doge blocks are mined.
===========================
Bitcoin and Dogecoin are now the two most popular coins in pop culture. What makes me angry is the widespread misunderstanding of the differences between the two. It is likely that most investors buy Dogecoin thinking they're getting in "early" because it's so cheap. They think it's cheap because it isn't as popular as Bitcoin yet. They're wrong. It's cheap because of what's outlined in section two of this rant.
Dogecoin is actually not very far off Bitcoin. Do the math: there's a bit over 100 billion Dogecoin in circulation (130b). There's about 20 million BTC. Calculate their total CURRENT values:
130b * $0.40 = 52b
20m * $60k = 1.2t
...and Doge is rising much, much faster than BTC because of the aforementioned lack of understanding.
The most common thing I hear about Doge is that "nobody expects it to reach Bitcoin levels" (referring to being worth 60k a fucking coin). They don't realize that if Doge gets to be worth just $10 a coin, it will not just reach Bitcoin levels but overtake Bitcoin in value ($1.3T).
===========================
It's worth highlighting that Dogecoin is literally designed to fail. Since it lacks a cap on new coins being introduced, it's just simple math that no matter how much Doge rises, it will eventually be worthless. And it won't take centuries, remember that 100k new Doge are mined EVERY TEN MINUTES. 1,440 minutes in a day * 10K per minute is 14.4 million new coins per day. That's damn near every Bitcoin to ever exist mined every day in Dogecoin10 -
Accountant: Can we just get one big Excel file with all the transactions instead of separate reports that are filled out specifically for each dorm?
Me: Hell yes you can.3 -
Got pretty peeved with EU and my own bank today.
My bank was loudly advertising how "progressive" they were by having an Open API!
Well, it just so happened I got an inkling to write me a small app that would make statistics of the payments going in and out of my account, without relying on anything third-party. It should be possible, right? Right?
Wrong...
The bank's "Open API" can be used to fetch the locations of all the physical locations of the bank branches and ATMs, so, completely useless for me.
The API I was after was one apparently made obligatory (don't quote me on that) by EU called the PSD2 - Payment Services Directive 2.
It defines three independent APIs - AISP, CISP and PISP, each for a different set of actions one could perform.
I was only after AISP, or the Account Information Service Provider. It provides all the account and transactions information.
There was only one issue. I needed a client SSL certificate signed by a specific local CA to prove my identity to the API.
Okay, I could get that, it would cost like.. $15 - $50, but whatever. Cheap.
First issue - These certificates for the PSD2 are only issued to legal entities.
That was my first source of hate for politicians.
Then... As a cherry on top, I found out I'd also need a certification from the local capital bank which, you guessed it, is also only given to legal entities, while also being incredibly hard to get in and of itself, and so far, only one company in my country got it.
So here I am, reading through the documentation of something, that would completely satisfy all my needs, yet that is locked behind a stupid legal wall because politicians and laws gotta keep the technology back. And I can't help but seethe in anger towards both, the EU that made this regulation, and the fact that the bank even mentions this API anywhere.
Seriously, if 99.9% of programmers would never ever get access to that API, why bother mentioning it on your public main API page?!
It... It made me sad more than anything...6 -
kinda coding i guess, company specialising in making statistics for other companies, analytic stuff or such, wanted stack: php, mysql
Interviewer: so here is our tech guy, who will be your boss if... so he would like to ask a few questions
techGuy: how would you ask for all the rows in a table? * looks at me *
Interviewer: * looks at me too *
me (learning inner, outer, left, right joins and transactions yesterday): * am i a joke to you? *
also me: * they must be making fun of me or something * well the query should be SELECT * FROM tableName; but one should really not use that, as * in theory really slows things down, because it loads unnecessary meta data bla bla
they: * look at each other * You're really good young man! Yes of course we know that, haha!
Interviewer: You said you just finished Uni, you doesn't seem like a junior to me! good job!
techGuy: so how would you LIMIT your results to 100 rows?
me: sigh * looks at door without turning head, so they wont notice *4 -
Episode 2 of this rant: https://devrant.io/rants/851636/...
PM went to meet with the provider and came back, so I had a talk with the PM and it went like this:
Me: so how did the meeting go? Hope they corporate with you
PM: *in a sarcastic voice* Bro, you need be a good dev, they told me only a good dev can implement Master Card API calls, and its all in the docs. That's all they told me, so you should know how the meeting went
Me: *there is no wifi in jail, there is no wifi in jail, there is no wifi in jail, there is no wifi in jail* Fine bro, I'll go back to school and come back after 12 years.
Seriously when I send the provider the request and the body and all they tell me is: You have an error, Id must be unique but they fail to point out the exact error or at least send me a valid ID to test, how does this make me the bad dev and him the genius that can run Apple, Google, MS all together at once!
What is even worse, when I called the provider he told me: Man transaction ID must always be unique, how could you not know this, how is Mastercard supposed to differentiate between transactions!!
But hey, no one told me transaction id must be unique, primary keys are never unique, like DUH!10 -
Massive payment gateway (not gonna say names) with more then 10k transactions / hour telling md5 is one of most secure encryptions they have. Only to made worse by the fact that they send the key and hashed key in the same request.
I am advising all our clients to change payment gateway asap if they use this one.1 -
So I started getting email notifications telling me about transactions made using my credit card. But I DON'T have a credit card in the first place.
Instead of trying to call customer care and pressing an endless array of buttons, I drive to the bank. I tell them the situation and they check every database they have but they couldn't find any trace of a card connected to my account. Turns out their database somehow had cross-links in their database.
How does the one of the biggest banks in the country possibly have such an issue. Worst part is that it's been a day and they still haven't fixed it -_-7 -
Am I the only one who doesn't understand apple card? Like really, it's just the worst pitch ever!
"Apple card. Made by apple. Not a bank" that's a REAL ad I saw today. Why would you trust APPLE more than an FDIC insured bank with decades or (in some select cases) CENTURIES of experience in finance?
"No more card numbers and CVV"
Cool. I get it. Card numbers get leaked and stolen. But that's why banks insure cards and reverse fradulant transactions. How an I'm supposed to use it on Amazon?! I'm sure they have an answer. Like maybe one time use generated cards. But they haven't advertised it yet, and that's a problem!
Why do they think people want this!? And even more so, because I've seen some people are excited: WHY DO PEOPLE WANT THIS?! why is apple trying to make everything?!15 -
Boss: So what are your biggest achievements for this year?
Me: mmm, probably not killing myself
Boss: .....
Me: I meant I reduced the number of fraudulent transactions in our service by adding machine learning to flag suspicious transaction
Boss: Yeah, you should've start with that
Me: .....3 -
Spec'ing out a data analysis tool for several billion transactions and I got this when sending the final spec to the client.
Client: "I don't see why it takes so long, I downloaded this template from theme forest and edited it in dreamweaver, it only took 3 hours"2 -
So I joined this financial institution back in Nov. Selling themselves as looking for a developer to code micro-services for a Spring based project and deploying on Cloud. I packed my stuff, drove and moved to the big city 3500 km away. New start in life I thought!
Turns out that micro-services code is an old outdated 20 year old JBoss code, that was ported over to Spring 10 years ago, then let to rot and fester into a giant undocumented Spaghetti code. Microservices? Forget about that. And whats worse? This code is responsible for processing thousands of transactions every month and is currently deployed in PROD. Now its your responsibility and now you have to get new features complied on the damn thing. Whats even worse? They made 4 replicas of that project with different functionalities and now you're responsible for all. Ma'am, this project needs serious refactoring, if not a total redesign/build. Nope! Not doing this! Now go work at it.
It took me 2-3 months just to wrap my mind around this thing and implement some form of working unit tests. I have to work on all that code base by myself and deliver all by myself! naturally, I was delayed in my delivery but I finally managed to deliver.
Time for relief I thought! I wont be looking at this for a while. So they assign me the next project: Automate environment sync between PROD and QA server that is manually done so far. Easy beans right? And surely enough, the automation process is simple and straightforward...except it isnt! Why? Because I am not allowed access to the user Ids and 3rd party software used in the sync process. Database and Data WareHouse data manipulation part is same story too. I ask for access and I get denied over and over again. I try to think of workarounds and I managed to do two using jenkins pipeline and local scripts. But those processes that need 3rd party software access? I cannot do anything! How am I supposed to automate job schedule import on autosys when I DONT HAVE ACCESS!! But noo! I must think of plan B! There is no plan B! Rather than thinking of workarounds, how about getting your access privileges right and get it right the first time!!
They pay relatively well but damn, you will lose your sanity as a programmer.
God, oh god, please bless me with a better job soon so I can escape this programming hell hole.
I will never work in finance again. I don't recommend it, unless you're on the tail end of your career and you want something stable & don't give a damn about proper software engineering principles anymore.3 -
EoS1: This is the continuation of my previous rant, "The Ballad of The Six Witchers and The Undocumented Java Tool". Catch the first part here: https://devrant.com/rants/5009817/...
The Undocumented Java Tool, created by Those Who Came Before to fight the great battles of the past, is a swift beast. It reaches systems unknown and impacts many processes, unbeknownst even to said processes' masters. All from within it's lair, a foggy Windows Server swamp of moldy data streams and boggy flows.
One of The Six Witchers, the Wild One, scouted ahead to map the input and output data streams of the Unmapped Data Swamp. Accompanied only by his animal familiars, NetCat and WireShark.
Two others, bold and adventurous, raised their decompiling blades against the Undocumented Java Tool beast itself, to uncover it's data processing secrets.
Another of the witchers, of dark complexion and smooth speak, followed the data upstream to find where the fuck the limited excel sheets that feeds The Beast comes from, since it's handlers only know that "every other day a new one appears on this shared active directory location". WTF do people often have NPC-levels of unawareness about their own fucking jobs?!?!
The other witchers left to tend to the Burn-Rate Bonfire, for The Sprint is dark and full of terrors, and some bigwigs always manage to shoehorn their whims/unrelated stories into a otherwise lean sprint.
At the dawn of the new year, the witchers reconvened. "The Beast breathes a currency conversion API" - said The Wild One - "And it's claws and fangs strike mostly at two independent JIRA clusters, sometimes upserting issues. It uses a company-deprecated API to send emails. We're in deep shit."
"I've found The Source of Fucking Excel Sheets" - said the smooth witcher - "It is The Temple of Cash-Flow, where the priests weave the Tapestry of Transactions. Our Fucking Excel Sheets are but a snapshot of the latest updates on the balance of some billing accounts. I spoke with one of the priestesses, and she told me that The Oracle (DB) would be able to provide us with The Data directly, if we were to learn the way of the ODBC and the Query"
"We stroke at the beast" - said the bold and adventurous witchers, now deserving of the bragging rights to be called The Butchers of Jarfile - "It is actually fewer than twenty classes and modules. Most are API-drivers. And less than 40% of the code is ever even fucking used! We found fucking JIRA API tokens and URIs hard-coded. And it is all synchronous and monolithic - no wonder it takes almost 20 hours to run a single fucking excel sheet".
Together, the witchers figured out that each new billing account were morphed by The Beast into a new JIRA issue, if none was open yet for it. Transactions were used to update the outstanding balance on the issues regarding the billing accounts. The currency conversion API was used too often, and it's purpose was only to give a rough estimate of the total balance in each Jira issue in USD, since each issue could have transactions in several currencies. The Beast would consume the Excel sheet, do some cryptic transformations on it, and for each resulting line access the currency API and upsert a JIRA issue. The secrets of those transformations were still hidden from the witchers. When and why would The Beast send emails, was still a mistery.
As the Witchers Council approached an end and all were armed with knowledge and information, they decided on the next steps.
The Wild Witcher, known in every tavern in the land and by the sea, would create a connector to The Red Port of Redis, where every currency conversion is already updated by other processes and can be quickly retrieved inside the VPC. The Greenhorn Witcher is to follow him and build an offline process to update balances in JIRA issues.
The Butchers of Jarfile were to build The Juggler, an automation that should be able to receive a parquet file with an insertion plan and asynchronously update the JIRA API with scores of concurrent requests.
The Smooth Witcher, proud of his new lead, was to build The Oracle Watch, an order that would guard the Oracle (DB) at the Temple of Cash-Flow and report every qualifying transaction to parquet files in AWS S3. The Data would then be pushed to cross The Event Bridge into The Cluster of Sparks and Storms.
This Witcher Who Writes is to ride the Elephant of Hadoop into The Cluster of Sparks an Storms, to weave the signs of Map and Reduce and with speed and precision transform The Data into The Insertion Plan.
However, how exactly is The Data to be transformed is not yet known.
Will the Witchers be able to build The Data's New Path? Will they figure out the mysterious transformation? Will they discover the Undocumented Java Tool's secrets on notifying customers and aggregating data?
This story is still afoot. Only the future will tell, and I will keep you posted.6 -
There are many, but in in particular,
EA!!!
There could many reasons, overpriced games, micro-transactions...
All of them can be described as "just business"
But one stands out and makes it personal, the reason I wouldn't just shoot the game-designer but stab him and watch him drown in his own blood.
MASSEFFECT ANDROMEDA!!!!!
It felt like they took all the mistakes the third game made, and continued to add some more.
1. The PS4-Version had so many performance-issues, it was pretty much unplayable
2. Instead of a good story, interesting characters and fun battles, we got an open-world.
3. Facial animations and voice-acting from hell.10 -
On the nth day of Christmas, my true love gave to me:
1 misconfigured autoscaling group
200 unnecessary servers
29 urgent emails
3 support teams that would have fixed the problem in an hour of anybody had bothered going to them first
Ugh. Idiots. Somehow the whole issue was caused by a single full hard disk, which caused database transactions to fail, which caused the group to scale out and spin up new instances, which didn't actually fix the problem so it kept scaling until it hit the limit and then continuously failed to create new instances for several hours straight, generating loads of notification emails and generally causing problems for everyone involved. -
Wow so much hate for WordPress. Le me to the rescue 💀
Yes WP is bloated and crappy and full of security issues etc etc. Agreed. That doesn't mean it is useless though.
It is alright to use for someone who is not really good with web, someone who just needs a blog, someone who just needs a home page, about page and contact form with a possibility of updating photo and text once or two times a month.
It is not suitable for e-commerce nor lots of transactions/forms involving websites.
As long as you know what kind of horse/vehicle you are on, you won't end up in the dirt.4 -
Noticed a rant on here about transactions not redirecting the user back to the previously visited page, on certain sites. Just implemented the functionality to my shitty little project and I currently feel better than the big players.1
-
i nearly had a panic attack when 3 tables contaning transactions shows empty,. then i reconnected dbeaver and it turns out it was fine,. damn my shitty internet!
-
Attention: incomming resentful boiled up for months rant.
Hands down G2APAY is the worst because:
Merchant account aproval takes fcking months. It starts with unreasonable delays in documents approval. I mean insane nitpicking. They want to see merchants name surname and address on every god damn document that you submit even if for example bank statement doesnt include these details. I had to manually edit pdf’s just so that they would fck off and approve the merchant application. Insane requirements for document check also combined with their email only support answering only once a week you will have to wait one month just to get your account approved.
Then you get to the fun part, approval proccess for vendor gateway and webhook integration. They are nitpicking everything you can imagine: about website not having https, website forum missing some icons, merchants phone number being from another country then he is, and bunch of other hundreds of problems imagined only by them. Again combined with their one email reply per week policy you will waste atleast one month to finish up your integration.
Now finally you are their client and you think you can chill and go back to focusing on your business? Nope bro. Prepare for threatening emails. Last time I got a request to install https or my merchant application will be shut down. I was given 3 days notice on a fcking friday and had to do it.
Then g2a backend is crashing quite often. Combined with their one email per week policy you are fcked in the ass if your users were not able to pay through g2a and you will get no compensation.
Their backend documentation is shiet. Not clear how to integrate everything and after you integrate they make changes without publishing any changesets. Your integration is working? Good luck if it will still be working tomorrow.
And the very worst part is that they stopped proccessing credit cards like month ago with zero notice. Its been weeks and still zero news about bringing card proccessing back. They sad that they were acquired by some other company so shitty support got even shittier now while they are in a proccess of handover.
So yeah thats the worst vendor I have ever seen in my life. For example integrating paypal took me 30 minutes. Integrating stripe and getting all documents reviewed took me one business day. Same with paymentwall integration and document approval took 1 business day. Support is amazing and even have a phone number that I can reach if urgent problems arise. Thats how it should be. Thats why I can pay percentage of my transactions with a smile for them.
Sorry for the typos since im typing on my shiet phone while driving.
Eat a bag of dicks g2apay. I hope you go bankrupt and shutdown.21 -
Conversation yesterday (senior dev and the mgr)..
SeniorDev: "Yea, I told Ken when using the service, pass the JSON string and serialize to their object. JSON eliminates the data contract mismatch errors they keep running into."
Mgr: "That sounds really familiar. Didn't we do this before?"
SeniorDev: "Hmmm...no. I doubt anyone has done this before."
Me: "Yea, our business tier processor handled transactions via XML. It allowed the client and server to process business objects regardless of platform. Partners using Perl,
clients using Delphi, website using .aspx, and our SQLServer broker even used it."
Mgr: "Oh yea...why did we stop using it?"
Me: "WCF. Remember, the new dev manager at the time and his team broke up the business processor into individual WCF services."
Mgr: "Boy, that was a crap fest. We're still fighting bugs from the mobile devices. Can't wait until we migrate everything to REST."
SeniorDev: "Yea, that was such a -bleep-ing joke."
Me: "You were on Jake's team at the time. You were the primary developer in the re-write process saying passing strings around wasn't the way true object-oriented developers write code.
So it's OK now because the string is in JSON format or because using a JSON string your idea?"
SeniorDev turns around in his desk and puts his headphones back on.
That's right you lying SOB...I remember exactly the level of personal attacks you spewed on me and other developers behind our backs for using XML as the message format.
Keep your fat ass in your seat and shut the hell up.3 -
Today I had plans to refresh my knowledge about transactions' internals in dbms and in general.
Then the rainy weather hit the town. The whole sleepy day wasted on Netflix.
Well.. I guess it was time for a break :) haven't had one in weeks3 -
Me: The dev agency didn’t follow best practices. They only implemented front end validation on the form. The form submits to a public endpoint, so bots don’t have to go through our site to submit the form. That’s why our database is still filled with $1 donation transactions. I honestly recommend telling this to the dev agency and request that you not be charged for the extra work needed to do this right.
Manager: They charge $95/hr and they’re billing for 8 hours already.
[Aside: The agency’s task was to implement a $10 minimum on the form, do some text changes, and deploy.]
Me: I would expect work to be done according to accepted best practices. It’s really a half done job.
Manager: But they were very helpful when we had that payment processing emergency. They stayed late to help us. We shouldn’t push this in case we need their help again. Can you do the backend validation? [We are in US and agency is in Lithuania.]
Me: 🤬😩😑🤐[To myself: This wouldn’t have happened if the fundraising team hadn’t panicked and would only wait until I came back from my one day of PTO.]1 -
Someone created a 0-followers private Twitter account and posted something to try out the new views count feature.
It raked dozens of views in a couple hours.
HOW?!?
Source: https://twitter.com/briggityboppity...
It looks like a funny data reverse-engineering exercise, so let's try and figure out what is going on.
Hypothesis 1) it is the OP's own views.
Reasonable, but unlikely if what OP says about not checking it for hours is true.
H2) It's some background job in OP's device that is refreshing OP's own latest tweets, so even without human interaction technically H1 is true. It would be some really shoddy engineering to count eye-less page views, but that's also what managers would demand.
H3) it's some internal Twitter automated function like back up, replication, indexing and word count.
See H2, it would be even dumber to count that as page views.
H4) it's some internal human reviewing for a keyword that could be associated with porn (in this case, "butts"). Really? dozens of humans to review a no-impact single post? They would have to employ hundreds of thousands of reviewers.
H5) it's some page-loading shit, like thousands of similar tweets get stored in the same index hash page and end up counting as a view in all of them every time someone loads the index page. It would be like counting every hit in the namenode as a hit in every data asset in it's Hadoop partition, or every hit in a storage block as a hit in each of it's files.
Duuuumb and kinda like H3.
H6) page views are just a fraud to scam investors. Maybe it's a "most Blockchain transactions are fake" situation, maybe it's a "views get more engagement if you don't think a lot about it" situation, maybe it's a "we don't use the metric system to count page views" situation.
All of them are very dumb.
Other hypothesis or opinions?10 -
Just spent 8 hours debugging an issue that had been sitting in my issue queue for a week. WooCommerce was claiming transactions were failing, but going through in the background anyway.
Can’t share any more specifics here, but the gist of it is that the server the code was developed on was set to PHP version 7.1, while the server the dev site was on was set to version 5.6 (which I didn’t even think was still installed, never mind the default...).
So yeah, fun times over a trivial fix.1 -
Someone stole my CC number and paid a bunch of spam ads on FB with it tonight. When I woke up and blocked it, there's been already 400€ worth of transactions done with it :(
But the real rant is that it took 3 fucking hours before I managed to get in contact with someone at FB who could actually help me. Fuck those AI chat bots & "Tenk yu kom agan" support guys!9 -
Really glad the privacy community can make some impact. I still don't understand why venmo has to has any public transaction feed and I don't think they have public off by default still, but at least they are explaining things to users instead of being sneaky with their dumb social-network-ish-thingy that made ALL OF YOUR FINANCIAL TRANSACTIONS PUBLIC!!????
I don't understand why they hid this whole public feed thing. I'm pretty privacy focused and I didn't even know that my transactions where public untill I saw https://publicbydefault.fyi/.9 -
I worked for this Chinese company, one of their systems that was supposedly handling millions of US$ in transactions per day had an API that returned HTML tables...
I stop you right there commenter, there was no format=json parameter.
Another of their API I gave up on:
Status = 200
Content = "error"3 -
Customer: the user summary report does not show all the transaction data I want to see
Me: there is a report called "transaction log report" that will show all the transactions
Customer: is that the user summary report? -
So today I accidentally updated more than 3000 records in a table and wasn’t using transactions so I couldn’t Rollback, LOL had the whole team freak out this Monday morning and we had to pull a backup6
-
Me: *asks for sample data for all tables to test database transactions*
Team member: *gives over 45000 records only for city*
🤔 😐 -
Thanks MongoDB for introducing transactions (ACID) in 4.0 version ... This is really going to help a lot.1
-
I just watched https://youtube.com/watch/... - towards the (very) end he's talking about how software developers rule the world... and I just realized something.
A while back, I was working on an accounting sub system for a SaaS product. We managed some of the revenue of our customers and had the accounting for that part as well. Revenue + Payments (with all the VAT / sales tax / ... that you need to have). BUT no expenses.
One day, the head accountant of a customer, angrily demanded that we immediately implement a new payment method, called commission.
You don't need to be an accounting expert for knowing, that a commission is an expense you have because somebody else marketed / sold your product / service for you. Making it a payment method is probably wrong. With a bit more knowledge you'd know that the taxes which are around expenses are completely different to revenue or payments. (btw payments didn't even have any taxes in those countries that we covered at that time at least).
So there I was standing, a software developer, trying to explain the product manager and the head accountant of our customer, that the idea is beyond stupid, and the fact that it comes from an accountant is super scary to me. (he was usually extremely picky about everything we did.)
Luckily, it was easy to convince the manager. He tried to explain it to the accountant but that person just didn't get it.
as if designing resilient distributed systems, which have 99,99% up time weren't hard enough, we also need to be experts in every domain that we have to deal with? And if there is a tiny bug and one out of 10s of thousands of transactions is screwed up, people start panicking and "loose trust in the product"? - what the hell is wrong with them?
Luckily it's a minority of customers only, but each of them is such a pain. Do you also have customers like that? who should know better, but somehow you are the expert in their domain?2 -
My first simplistic wallet to create raw Bitcoin transactions. The best part was that the transaction was mined succesfully and is now part of history.
-
So, we (I'm the backend guy and work with a UI dev) are building this product portfolio management tool for our client and they have a set of 250 users. The team has two point of contacts for the 250 users who maintain the master data, help users with data quality, tool guidance, reporting and other stuff. So one day one of these two support users come to me and say : Hey I'm not able to add new transactions coz a customer is missing.
We have the provision to create / maintain customers.
I check the production DB, application code, try creating the customer and then the transaction, everything works perfectly fine.
I ask the user for a screen sharing session, the user starts reproducing the error like this :
We have a 3 system landscape - Dev / Test and Prod
U : Logs into the test system url, creates the customer.
U : Points out the toast saying customer creation is successful.
U : opens a new tab, opens the production system, tries creating the transaction, searches for the customer and says " see !! cant find the customer here ! the master data management apps never work !! "
FML?. -
I applied for two technical talks in a popular conference summit, the two talks were turned down and the reason was that they are much more technical talks than mine. I switched to watch the live stream today and all i see is a bunch of stupid talks (they decided to pick a talk on git aliases over working with change streams and multi document transactions in mongodb). A friend of mine just told me, your talk won't be accepted if you don't know any of the organizers3
-
"Our supplier asks that you double the number of php child processes for this fpm pool"
"Are you aware, that that would lead to about 100% of memory overcommit, taken the current limit of 128MB/child, and that if a lot of them started at once, the system would probably go for OOM-Kill, which would most probably kill your database, that still runs on 100% MyISAM tables that do not support transactions, and you'd have to kiss your data integrity goodbye, right?"
"Uh... Nevermind then"
I get that some people are not IT-versed, but really... Hire someone who knows what they are doing and doesn't live 20 years in the past, god damn it! -
That awkward moment when you're trying to find patterns to pin point trade ahead transactions on stock market and you realized that you were hired as Android developer.
-
Last night I looked at an Android app.
Going to put it bluntly, I don't like java much.
But Android takes it to a whole new level.
I was talking to our (SlimRoms) framework dev about how the database transactions used to take 400ms, and it was cut down to 10ms by, changing to xml with some kind of a reflector (so xml would be saved in the background).
This is atrocious. As a web developer, I live in a world where you can do thousands of transactions in that time (albeit on faster hardware).
So how is it that all of the abstractions in Android add up to a single read/insertion in Android (and I'm talking about an app written by Google) takes 400ms?
Every time I go in that channel to talk to them, I find something screwed up. Gah.4 -
Friday 5:13pm
- Critical report: "We're allowing users to withdraw more money then they actually have in their accounts"
5:16pm
- "False alarm. There is pagination on the transactions interface". Have a nice weekend everyone!1 -
Stakeholder: Users are unable to buy tickets on the website. IT says Azure’s health check is showing an unhealthy status.
[It’s Sunday. Web Engineering is not on call so no one sees this right away.]
Stakeholder: IT restarted the Azure website twice, but users still can’t place orders.
Me: There was never an issue with the Azure site. That health check is inaccurate. There is a rewrite rule that sends the Azure supplied domain to our custom domain. The Azure health check doesn’t like that so it returns an unhealthy status. The problem is the ticketing server that the website has to communicate with. The ticketing server is overwhelmed and can’t handle more requests. IT should have checked the ticketing server’s logs. This has happened before and it’s never been an Azure issue. It’s a ticketing server issue.
Stakeholder and IT: Oops 😅
—-
JFC. Stop trying to make this web engineering’s problem. Stop trying to make it look like engineering dropped the ball. The ticketing server has experienced this issue multiple times. The ticketing server is maintained by a different team. The website’s symptoms are always the same and there are steps you need to take before you make the decision to restart the website, which will cause the website to show a blue screen of death that says 503 service unavailable for a few minutes. And we have a switch to shut off all transactions. Why do you not want to use it when it’s clear the website can’t process transactions???3 -
O.M.F.G how much longer is that gonna take?!?! It's been 2 days already! 2 fucking days!!!
That's it. Fuck the docs. I'm going hardcore now: hooking up a debugger and diving into the unseen depths of Spring's automatic JPA repo initialization.
Unless any one of you knows how to
1. Manually create jpa repo interface bean
2. Make transactions work [also enable them manually by declaring beans in @Configuration]
and do all this in a single @Bean method. Jpa provider - hibernate.
Nobody? Not a single one? Allright then, I'm going in :(1 -
Why the fuck is debit cards that don't need a PIN for transactions even a thing? What is so difficult to understand or implement in a two factor authentication? Like do these companies have meetings where some fucktard proposes removing a crucial security feature and the others just nod approval?6
-
It's really funny to me that bitcoin can't be used for transactions anymore because it's way too volatile2
-
"What language should I learn?" Wellll.
[0]
43 PERCENT Of banking systems are built on COBOL
80 PERCENT Of in-person transactions use COBOL
95 PERCENT Of ATM swipes rely on COBOL code
220 BILLION Lines of COBOL in use today
"Experienced COBOL programmers can earn more than $100 an hour when they get called in to patch up glitches, rewrite coding manuals or make new systems work with old." [1]
Found this pretty interesting/crazy.
Source:
[0] http://tmsnrt.rs/2nMf18G
[1] http://reuters.com/article/...6 -
Allright, so now I have to extend a brand new application, released to LIVE just weeks ago by devs at out client's company. This application is advertised as very well structured, easy to work on, µservices-based masterpiece.
Well either I lack a loooot of xp to understand the "µservices", "easy to work on" and "well structured" parts in this app or I'm really underpaid to deal with all of this...
- part of business logic is implemented in controllers. Good luck reusing it w/o bringing up all the mappings...
- magic numbers every-fucking-where... I tried adding some constants to make it at least a tiny bit more configurable... I was yelled at by the lead dev of the app for this later.
- crud-only subservices (wrapped by facade-like services, but still.. CRUD (sub)services? Then what's a repository for...?). As a result devs didn't have a place where they could write business logic. So business logic is now in: controllers (also responsible for mapping), helpers (also application layer; used by controllers; using services).
- no transactions wrapping several actions, like removing item from CURRENT table first and then recreating it in HISTORY table. No rollback/recovery mechanism in service layers if things go South.
- no clean-code. One can easily find lines (streams) 400+ cols long.
- no encapsulation. Object fields are accessed directly
- Controllers, once get result from Services (i.e. Facade), must have a tree of: if (result instanceof SomeService.SomeSubservice1.Item1) {...} else if (result instanceof SomeService.SomeSubservice2.Item4) {...} etc. to build a proper DTO. IMO this is not a way to make abstraction - application should NOT know services' internals.
- µservices use different tables (hats off for this one!) but their records must have the same IDs. E.g. if I order a burger and coke - there are 2 order items in my order #442. When I make a payment I create an invoice which must have an id #442. And I'm talking about data layer, not service or application (dto)! Shouldn't µservices be loosely coupled and be able to serve independently...? What happens if I reuse InvoiceµService in some other app?
What are your thoughts?1 -
Another team didn't bother testing their code correctly, they passed us invalid values that another microservice needs, as a result they have a bunch of unstored data (that they would have seen wasn't being stored if they bothered checking the last stage of the process to see if it was stored). Now it's been so long that the data is expired. They want us to manually store millions of transactions for them.
Now tell me...if I came and shit in your bed, shouldn't I have to clean it up? -
Stuff I need to finish:
PHP framework
Music player for android
Nginx module for crypting mp4 fragments
Personal blog engine
Unit and data converter service
Personal transactions application
Too much, just too much... -
Me, working hard on a SQL project with a deadline that is half what it should be with no support from the other people on the project and was mostly made with with data I imagined would be in there cos no one could get me any fucking shit done (i.e. effectively designed, built, tested, fixed, upgraded, documented on my own for an entire weekly/monthly/ad-hoc analysis process that would output various reports for internal/external/management)
Manager - man who is a known waste of space but for some reason is in charge of the smallest part of the project, shouldn't have been fucking involved fucking management guzzling stain magnet...
Manager: Hey, do I need to refresh the database?
Me: .................
Me: .................
Me: ............I dunno, do you think we should refresh the database that this entire project is reliant? I mean...why do we need up to date transactions to analyse? Wait....you telling me it's not been being refreshed this ENTIRE time?
Manager: No....you never said I should. So should I?
Me: ..................I never said you should!?!? Are you not in the meetings talking about dependencies?????? Do you think i should have up to date trans or just run this with old stuff????? Why would you not update it!??!!?!?!? Its transactions...... (Desperately trying not to punch through my screen, through his, into his throat)
Manager: ..............
Me: .................
Manager: I think i'll refresh it and add it to the job?
Me: ....................(goes back to work cursing with music in so I think its quiet but who knows).
Tard, don't know how he even gets to work without someone holding his fucking hand.
Happy ending, I don't work there anymore :p
Sad ending, his spirit of tard follows me to my new jobs and possesses someone (or three sometimes) -
Okay, so, my company does some stuff around blockchain. I had source for smart contract prepared before and it was on 'todo' queue. So, time for it, time to deploy on Kovan, time to test it on actual chain. Riiiight? Okay compiled no problem, deployed, no problem, i plug into several gui's ABI provided by compiler, and... Well..
I still do not understand why each and every gui prompted me to send view transactions (external view), instead of, well, eval them locally, i checked the ABI manually, it is correct, i stripped it down, it is correct, all up to spec.
I try older version of offline MEW, to have older web3.js with no success that thing works properly.
Every
Single
Web3.js based client
Behaved
Differently
And none behaved correctly.
I would, like, understand, if I didnt use official compiler, but official compiler should for F sakes be compatible with official client.
Today this stole 6 hours of my life, I didnt manage to solve it, and I am legitmitely pissed.
Im getting close to re-implement segment of web3JS to be able to do the tests I need to do.
Its not like I havent done it before.... -
Is There any good open source test automation frameworks testers can use to verify database insertions, such as message transactions? Everyday I get questions from testers to verify data and it's so tedious looking at MySQL tables to see if there data is present.4
-
Automate is a great app...
(Scroll to last paragraph for a question if you wanna skip the faff)
Semi addicted to a time waster mobile game that has micro transactions. Yet you can get free ingame currency by watching ads over and over.
Using automate i managed to 'automate' the process of "watch add. Click ok. Repeat"
Now when i sleep or idle ill just let it rake up some cash. Sadly it isnt full proof as sometimes (1 out of 20 times) it fails to run the ad and that breaks ot all. But restsrting it is easy and thats another 20 cash!
What have you done to skip tedious work for something trivial or some trivial gain but felt good you did it anyways?4 -
Ticket: here's something wrong with the export of transactions, please check.
Very useful description, let me just go over this logic I've written months ago.
Yeah, I went extra sure that everything's right, besides the ones for created during the initial testing that we left. Took me a hell a long time to prove because there's such a vague description but ok.
Of course I have the time to make an eyecandy of an excel spreadsheet for you.
Only for you I'll also go and fix these entries manually. If you want me to do it so badly, I'll gladly do it.
Oh what, you're upset that I wasted 5h for this complete bullshit? Well fucking go and learn the database structure yourself then or get sued idk
Hope it was worth that 1€ difference the customer paid himself.
Not to mention that I also had to do an emergency setup to work from home because those people who are responsible for giving me an appointment for a covid test sure like to wait days after my sick leave is over. ffs, I just had a cold...
Also fuck all this bullshit mac software required to work in this network, half of this shit flat out requires you to use the same software and ofc it's all closed source to the point where I'd be glad to have an electron app for everything. -
My visceral hate of Spring.Net burns with the force of a thousand suns.
Almost everything it does is done wrong or solved better by other solutions.
Specifying which classes to instantiate from .xml files? Sure why not, compile type safety (the whole reason for using a static programming language) is obviously overrated and dependency based injection is surely impossible!
And for extra bonus points, now our client code must be aware of the internals of the service classes, and all of their references as well, because, encapsulation? Who cares.
Have you made an typo? Good fucking luck finding out from which of the 100 config files we have floating around...
And, because it has baked in AOP and Transactions its woven into the fabric of the project like a tapewom.
Of course this may just be how our "special snowflake" project uses Spring.
What makes it more painful is that I love good DI tools (ninject, castlewindsor, autofac, there are so many...) and we're stuck with this turd because 7 years ago some java devs couldn't be arsed to learn a new library...1 -
An project I was working on was required to always identify users who took part in certain transactions (think of financial processing regulations).
Because some of the contacts on your phone might only contain a mobile phone number (and no name) a mandatory 'recipient' field was thus created to be filled for each transaction. This name was then checked against some international UN sanctions blacklists (you know, so Bin Ladens cousin can't use the thing...).
Only thing was... you could simply enter whatever name you wanted to. Like '%#^@/}(#' or 'John Doe', or 'Micky Mouse'... Everyone was well aware of this - but because ITS' THEM RULES we had to do it anyway.
Hope Bin Ladens cousin doesn't figure it out. :P -
You can't make this shit up. Google it. WTF.
-----
Question: Why are my <<Major Bank>> reports missing transactions, or why don't they reconcile?
Answer:
Issue
Data is missing from your <<Major Bank>> reports.
Cause
System issues at <<Major Bank>> can compromise the completeness of your report data.1 -
How would you guys feel if your favorite app gave you 3 monetization options.
Crypto Mining at max 70% load
Giving you 100% privacy.
Ads, rip privacy, rip cpu.
Paid content /micro transactions
Rip wallet , some privacy concerns, happy cpu.
Thoughts?6 -
On page 19 of the ethereum yellow paper: http://gavwood.com/paper.pdf it defines the address of a wallet as: A(pr) = Β[96...255](KEC(ECDSAPUBKEY(Pr))), which is the right most 160-bits of the Keccak hash of the public key generated by the private key.
If I expose the public key to the network, do I allow people to impersonate me and sign transactions even though they don't have Tr, Ts, or Tw? My understanding is no, that without those values you can't hash the transaction.
Subsequently, this leads me to wonder if the purpose of the address (besides identifying users) to obscure the public key so that the private key is at a less risk of being reversed? Or can the public key of any address be captured?
If the public key of any address can be identified on the network or off network (without actually being the owner of that key), how do you do that? Are there any resources on how to perform this that are computationally easy?1 -
How do you diagnose speed issues?
I've been lumped with looking after a legacy app.
It connects to our ERP system to handle raising invoices etc. And in June is developed slowness, which we sort of fixed by making one section load later (the SQL was a horrible view in a view in a view).
We then upgraded our ERP software, and the SQL issues are resolved (had to upgrade SQL server etc at the same time) and now the legacy app is running really slowly.
I know that it is when it loops through a data set to set column values etc.
A particular project has 1900 time transactions and takes upto 2 minutes to load.
This part of the program hasn't been changed in over a year, and has only started running slowly since the upgrade.
Are there any good way I can investigate and diagnose exactly why it has suddenly started running slowly?8 -
2 years ago I would have hoped Discord would have started an enterprise version of their software but now it’s bloated with stupid paying gifs animations, activities and other cringe micro-transactions
Problem is there is no alternative of their role-based permissions system, or their open audio channels, or even the audio quality.6 -
Did an assignment where we had to emulate deadlock using C and openMPI, I wanted to make a generalised resource manager process and create deadlock by locking some resources using the other processes, but my teammate said that would be too hard and instead the resource manager was hardcode with for loops for the number of transactions we were gonna make cause it was just a proof of concept.
Then my marker literally leads with, let me tell you the story of a good programmer, and a better programmer. The good programmer writes a function called destroy_earth(), but the better programmer writes a function called destroy_planet(earth) and passes in earth. I sighed so fuckin hard, I should have spoken up. -
Deadline was 2-3 days for product launch and doing distributed transactions was not an opinion as it requires heavy modifications.
I was doing money transfer app between one transactional system and one not transactional system so the way I did it was :
1. transfer money from one system to my app that was using Akka STM ( software transactional memory)
2. try to transfer money to second system
3. transfer money back on failure
There was no database, no state only transactional log as installing database would require to much time and paper work.
Sometimes transfer back failed so we need to look back at logs and search for money, it was quite easy cause there was error and there were not so many failed transactions like this.
About one or two in a month and everyone accepted that.
I started to write some sort of reconciliation thread but then was assigned to other work and it worked like this for couple of years transferring couple millions worth of transactions.1 -
Related to the project in my last rant...
Project got delayed for about a month in total because the API for the payment gateway wasn’t allowing charges against stored cards. Could save, modify, and delete them, but no charges.
After a week of trying to get things working based on the documentation, I get in touch with the vendor (great people) who file a support request with the people running the processor so we can see what’s up. Long story short, that amounted to 3 weeks of getting ignored until the vendor raised hell on my behalf, only to get the following reply back:
“You’ve been using the dev credentials, try it on live transactions instead!”
Thankfully, we’re able to move the customer to another processor under the same vendor, where I already have all the requests figured out...2 -
!rant with a l'il rant at the end.
Anyone have any Android games they would recommend? I just want something to help me unwind, without being baited every 10 minutes into buying upgrades or coins or whatever.
In app transactions have ruined Android games for me. It drives me insane, but, I still would like something for when I'm not bothered to boot up my ps4 and spend hours living in The Witcher.4 -
Book: “Many cloud services choose not to implement distributed transactions due to the operational problems they engender.”
Me: ..... [flips pages and skips the chapter]1 -
Screw our credit card processor so hard. The powers that be decided to sign with them because their rates were better. That's it. Never mind the fact that they don't make/work with mobile readers, which we need. Never mind the fact that their app is trash and is lacking basic features. Never mind the fact that their support is non-existent. Never mind the fact that when I request a new POS machine, I don't hear back for 6 months, and have to follow up again only to find they forgot about it. Never mind the fact that their POS machines can't handle 2 merchants like our ancient, "out-dated" one could, and so we need to spend double the money and have 2 POS machines sitting on the counter. Never mind the fact that their website is trash and lacks basic functionality. Never mind the fact that I cannot manage our user list (which changes CONSTANTLY), or even VIEW IT. I need to email them for all of this, and they may or may not respond. Never mind the fact that I'm going to spend my entire Friday scrolling through thousands of transactions, looking for one specific one, because their website doesn't even allow me to search for a specific transaction amount. Never mind all of that. Slightly lower rates, baby!1
-
I am creating a web api and I am stuck between using asp.net core 2.1 or nodejs' expressjs.
What is your take on this?
take this mind:
this service will also be responsible for processing transactions.7 -
! rant, needing advice
I'm about to start a big and ambitious project, and I'm stuck with a dilemma: what to pick for the back end server, node js vs Java JEE
The thing is that node is way faster than jee in concurrency transactions, which is a critical point for the program. But Java is Java.. I never worked on a huge app with JavaScript and it may become really messy..24 -
Released the product to customers without realising someone had pre-filled a production test accounted login at the login screen. Obviously it was used for testing purposes and the dev forgot to remove it before committing.
I loled when I found out about it, and some customers started to login and made transactions.
When I checked the commit history... It was under my name :/2 -
Writing a test helper that handles all the fuckery with DB connections and transactions when the legacy under test uses multiple DB connections is so 👌👌👌👌👌👌👌👌👌👌👌👌👌👌
I can write tests for code that was untestable before 💦💦💦
*nerd-gasms*2 -
Guys check out IOTA, get a light node wallet and buy some as long as it is still low. It is rising at a rising rate since some hours now.
IOTA is the solution to bitcoins speed and scalability problems. IOTA does not use the blockchain but instead a network called the tangle, which enables decentralized peer-to-peer transactions. There are no miners, no fees and the transaction validation speed depends on how many people are using the currency. One transaction requires your device to validate 2 other transactions through proof of work and therefore the system can never be overloaded by too many transaction requests.
Be warned though, the IOTA foundation is only currently building up the infrastructure, and people are just starting to trade since a few weeks so trasactions still may take a few hours.3 -
Learn what blobs, trees, hashes and the concept of "commiting" (transactions) are.
Then learn how to use diff/patch.
Then learn Git.
In that order. -
Working with external teams on this new project involving pretty sensitive stuff like bank transactions.
Talking about user flow and how to handle authentication, like 2-factor and stuff.
Newish guy on external team (though experienced) says they have a proposal.
Security Questions.
... like "What was you first car" security questions...
awkward silence in room...8 -
!Rant.
After reading many articles and watching YouTube videos on Blockchain, how it works, the new framework etc etc. It's evident that blockchain can be used to eliminate many problem faced in different industries and so on. What I cannot seem to find is a perfect application of solution to these problems in real life. I know it's too early to speculate, but thinking of all the internal(or under the table money) transactions happening, what is the possibility of mass adoption of blockchain given these conditions.3 -
Ebay is a huge pile of freshly juiced garbage.
Their settings menu looks like its from 2005. And when it looks halfway decent the CSS doesnt load cause you have do not track enabled.
If you go to write their support, it returns an unexpected error.
when you use the shopping cart the number of items you have in it is not the same as the number it says that you have in it. And when you want to checkout that cart, not all items show up on the payment screen. Despite the item being shippable.
And the worst thing of them all: IF YOU THEN CHECK OUT ALL THESE ITEMS IT MAKES AN INDIVIDUAL TRANSACTION FOR EACH ONE. THUS THE FRAUD DETECTION OF THE CARD BLOCKS THE CARD, CAUSE TOO MANY TRANSACTIONS HAPPEND AT ONCE!2 -
Hi guys! We are still searching for another dev to join our team for the hackathon hosted by Deutsche Bank in Berlin (late october). We're currently a team of 2: @ginjikoibito as iOS-/Backend-Dev and me as Designer.
So far the idea we want to apply with goes in this direction: Real-time evaluation of social structures through analyzing wealth & transactions provided by anonymized user-data of the API. It will also incorporate recognizable networks between users.
Sounds interesting? Please leave a comment, we're happy to share more with you :-)2 -
Tip: when doing transactions, don't pay as cash even if they tell you it is a requirement. Tell them you will pay via cheque or via bank transfer with a contract first with a seal from an attorney. You must have a valid copy first of the contract before doing payments. Also, get a photo of 2 valid IDs the person you are doing transactions. They require you personal infos and IDs? Require them also that.
#noContractFirstNoPayment1 -
I wasted 470 rupees ($5.6 USD) recharging on the wrong WiFi account, today.
😭 How's your Friday going? 😭
(I did ask Customer support if it can be refunded but they said No, it's not in the policy to refund these transactions).
It's a good thing I always chose 1 month recharge over 3, 6 or 12 months recharge, otherwise I'd have killed myself today.7 -
I need to change how payments are applied to invoices.
ApplyPolicyPayments() looks promising! Make changes to the method to look at the bills in order of the invoice due dates.
Run a test on the DEV environment, and the system is still exhibiting the same bug.
At this point, I wrote a quick logging plugin that I could attach to the DLL and start telling me what is going on.
Turns out, payments are actually applied in a method named BalancePolicy(). So what does ApplyPolicyPayments() do? It DOES apply payments to bills, but then just doesn't save the work. Having it commit the transactions breaks the billing system. FML. -
Time to contest some credit transactions heh
Ps
Pretending to be the poor starving girl who's bitch mother ate everything she wanted from years ago I snuck food to is pretty fucking low10 -
Who the fuck thinks that an private international api should have a limit of 5 tps (transactions per second) lol. Sadly I can't say the name but damn if I have 5 users just browsing our application, it will be throttled.
Mailed the guy why I need a lot more and now its very silent, really hope he can push the limit.6 -
What is your favorite method of debugging?
Mine is a debug log. I like a key value setting for enabling/disabling, and logging most transactions, calculations, and variables, even if they seem trivial. I've been able to locate bugs much quicker with detailed logs while some coworkers are still stepping through the process line by line. I don't fault the step method as I use it when logging uncovers nothing (it usually means I didn't log something critical :p) or when logging is not possible.1 -
A new version of a service request queue processor was deployed to test. It was supposed to have a performance boost compared to the previous version. The performance is so good that the new transactions are still locked when SRQP attempts to process their workload, so it ends up issuing empty transactions in another module. Artificial delay time...
-
It’s crazy that banks don’t have the technology to provide properly redacted bank statements. Will have to remove the labels of 13 pages of transactions by hand.1
-
Where is the best place, on an android app that lists user transactions, to place a sort & filter icon that will make an overlaying filter layout?
Also if you guys know a good place to get android UI/UX material please place links below.
This has stressed me all week. TIA2 -
Today Tornado Cash (TC) discord deleted, website deleted, devs got arrested.
Heres my question: although i believe TC didnt have any bad intentions in context of to help people launder money, how come the government can that easily shut down ANY crypto/nft if they really want to?
What exactly is "decentralized" here...?
TC was not made for money laundering, just like onlyfans wasnt made to be pornographic website - the Users are the ones who determined its fate.
If TC had a way to block illegal transactions, then that would be a web2 company and not web3.
And now when TC doesnt block illegal transactions in order to remain "decentralized" and "anonymous", they got arrested and their system got shut down. Ironically, so much for "anonymity" and "decentralization"...
This means the government is able to shut down absolutely any and every crypto, including BTC if they really wanted to. The question now remains is: why are they letting it roll and not shut down the whole of crypto?
What if crypto was a part of the governments plan for a future financial world where they can control, freeze, block or shut down our finances with a click of a button just as easily as they arrested TC founders today?8 -
What does a bitcoin mining puzzle have to do with verifying transactions/driving consensus across nodes?
The winner just gets to write? The next block but doesn't that mean he is like admin, he can make up all the transactions he wants?22 -
EY and ConsenSys announced the formation of the Baseline Protocol with Microsoft which is an open source initiative that combines cryptography, messaging and blockchain to deliver secure and private business processes at low cost via the public Ethereum Mainnet. The protocol will enable confidential and complex collaboration between enterprises without leaving any sensitive data on-chain. The work will be governed by the Ethereum-Oasis Project.
Past approaches to blockchain technology have had difficulty meeting the highest standards of privacy, security and performance required by corporate IT departments. Overcoming these issues is the goal of the Baseline Protocol.
John Wolpert, ConsenSys’ Group Executive for Enterprise Mainnet added, “A lot of people think of blockchains as the place to record transactions. But what if we thought of the Mainnet as middleware? This approach takes advantage of what the Mainnet is good at while avoiding what it’s not good at.”
Source : ConsenSys -
Is OMEGA CRYPTO RECOVERY SPECIALIST a Genuine, Legit Lost Crypto Recovery Company.
OMEGA CRYPTO RECOVERY SPECIALIST is a company that was founded 22 years ago by a team of experts in the field of cryptocurrency. The company offers a range of services, including recovery of lost or inaccessible crypto assets, forensic analysis of blockchain transactions, and security consulting for individuals and businesses.
The company has gained a reputation in the industry for its expertise and professionalism, with many customers praising their services on social media and review sites. One of the key services offered by Omega Crypto Recovery Specialist is the recovery of lost or inaccessible crypto assets.
The company uses a variety of techniques and tools to recover lost assets, including forensic analysis of blockchain transactions, brute-force password cracking, and social engineering. The company also offers security consulting services for individuals and businesses to help prevent future losses.
Webpage: omegarecoveryspecialist . c o m4 -
hey, so i have recently started learning about node js and express based backend development.
can you suggest some good github repositories that showcase real life backend systems which i can use as inspiration to learn about the tech?
like for eg, i want to create a general case solution for authentication and profile management : a piece of db+api end points + models to :
- authenticate user : login/signup , session expire, o auth 2 based login/signup, multi account login, role based access, forgot password , reset password, otp login , etc
- authorise user : jwt token authentication, ip whitelisting, ssl pinning , cors, certificate based authentication , etc (
- manage user : update user profile, delete user, map services , subscriptions and transactions to user , dynamic meta properties ( which can be added/removed for a single user and not exactly part of main user profile) , etc
followed by deployment and the assoc concepts involved : deployment, clusters, load balancers, sharding ,... etc
----
these are all the buzzwords that i have heard that goes into consideration when designing a secure authentication system for a particular large scale website like linkedin or youtube. am not even sure how many of these concepts would require actual codelines and how many would require something else.
so wanted inspiration from open source content to learn about it in depth, replicate and create new better stuff if possible .
apart from that, other backend architectures like video/images storage system, or just some server for movie, social media, blog website etc would also help.2 -
You know
When I first saw etherum talking about am distributed state machine i thought wow. Not very practical but NEAT. I envisioned being able to make a byte code that could be stored in transactions and run by individual clients in an async function and each step of the resulting execution and the values of managed ram would be stored at intervals so other clients could take over and execute a few more statements and compare what should always be expected results that are identical
A grand incredibly inefficient system however really neato from the theoretical computer nerd standpoint !
Boy was I disappointed lol all it is a basic contracts language but yet they state it could be like a word computer ! How ? I thought maybe if you had enough nodes participating maybe you could store registers and the like in transaction values ? Wouldn’t that be the way ?
Seems like as a word computer they’re stuck somewhere between very simplistic js and something prior to amptron in usability yet they advertised as a world computer
Am i missing something ? I mean you could create something that would translate higher level code into smal numeric statements and then send it additions values but what would it be useful for and how would you actually. Store anything ?