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 - "invoices"
-
CEO "If you make costs to build a home office for covid, please be aware that you can fully declare your bills, and you'll retain ownership over the ordered goods. Please all buy some good desk chairs and keyboards, so you can work ergonomically"
6 months later, CFO: "Bittersweet, why did you try to declare €35000? What are these invoices even? Concrete rebar?"
Me: "CEO told us to build a home office. I got permits from the town to dig a souterrain layer under my house. This is just for the foundation, the bills for drainage pumps, sheetpiling, geothermal heat exchangers, insulation, flooring, electricity and of course desk & chair will follow later"
CFO: 😳
(To be fair, I really did make those costs, but was just trolling by uploading all the material bills)15 -
Replace the teachers with no real world experience with part-time workers that are still active in IT.
I had this last year in my final year of vocational education and it was amazing, I had two teachers running their business two days a week and teaching us everything on the three remaining days.
I learnt about oop without dogs and cats, I learnt to extract information from invoices to be able to create an invoicing system without being misled by customers, and much more.
Second thing would also be something we did in my previous education. It was called "learning productively".
Basically, companies would give a project to the school and students could pick one to do for a few months. You had to have meetings with the customer, you had to give presentations and it wasn't another fucking calculator.
I've had the pleasure of working with a big corporation like this and learnt a ton in my first year.
These were extremely valuable, I think I'd still be a piece of shit developer without any knowledge on how to actually develop a full system and how to manage a project as a dev.
Peace6 -
I stare through the blueish black backgrounds and blurry colorful syntax into a somewhat familiar office within a mirrored world. That damned reflective glass layer covering these meaningless pixels is certainly not on my side.
The rushing sound of transactions flowing through cables is silenced today. Some blood cloth in the invoicing system is zeroing out everything after the currency mark.
While sighing I spin a one-and-a-half pirouette on my desk chair — even when desperate, you shouldn't give up on style — I take three steps away from my screen and try to harmonize my thoughts.
So much noise, everywhere... Noise from within?
I have been stuck at the apogee of an inhale for a while now. Locked into some masochistic constriction, self-punishment for the blindness which stings my ego.
Just fucking take a deep breath you asshole...
I freeze in place, and fall backwards.
Patterns on the creamy drywall rapidly vibrate and synchronize on vivid rhythms of respiration and resonating basslines. Deep indigo rainbows ripple through tiny veins, in-between chalky grains, raining as fine magenta dust through the ceiling frames.
My bare feet slide over soft oscillating concrete, fine flows of unsievable sand surrounded by toes, toes surrounded by streaming variables veiled in obscure vile abstractions.
A jadegreen field of vectored compressions resiliently rumbles and bounces through the clearances and corners of the vibrant concrete office cave, whispering in tongues. I try to voice my woes in little blips and bleeps but I seem to be missing an asymmetric key to their shrouded sequenced speech.
Suddenly, a wild turbulence breaks up all signals.
Joanna floats by in her tipsy effervescent cloud of disordered black hair and alcohol perfume, one hand grasping grapes, her other waving at me.
With every finger she moves a thousand tensors propagating paradoxically flawed but perfect pieces of an intricate surreal picture, sketching whole constellations of possible paths throughout the leafs of the giant Ficus next to her desk.
She stops dead in her tracks, and asks somewhat hypocritically: "Are you high?"
I can not discern the meaning of her words, and respond stoically.
"Joanna! Check out those branches!".
"Pun intended?", she giggles.
I'm focused on her grapeless hand, her fingers stretching to reach the lush little tree.
On touch, the plant shivers, grappled in the tight net of the puppet master. She pulls her strings, applying measured weights, all nodes normalize, and Joanna speaks in an oddly soft tone:
"Isn't it beautiful, how so many models emulate nature"
Her cheek buried in foliage she babbles on about unbalanced search trees and machine learning models... but from the tips of her fingers tables and indexes flow into the plant. Users, payments, tariffs, invoices and taxes crawl over the bark, joining at thicker branches, joining at the stem....
Joining. JOINING. A JOIN.
"IF THERE'S NO FUCKING TAX MULTIPLIER IN THIS LEFT JOIN, EVERYTHING COALESCES TO ZERO" I shout at a perplexed Joanna who squeezes grape juice over her desk. I hop on the beat to my keyboard. She looks puzzled, hugs her Ficus tightly, and reaches for the whiskey bottle behind her monitor.
Attracted by my exclamation, Tom from finance swings open the door, while I push my branch.
I look at Joanna still half hiding between the leaves, and I laugh at her: "Branches! Oh, lame, I finally got it!"
Tom's heavy voice interrupts me: "Does this mean... does this mean that the invoicing bug is resolved?".
I smile at Tom with his tailored suit and waxed hair. "The money is flowing once more. All debts are being settled."
He releases his breath in relief, which he seems to have held since that morning as well.
Joanna adds: "Although I think he is forever indebted to my Ficus".
I nod.14 -
8 rules of freelancing which newbie should know:
Rule 1: never pick up a half done website.
Rule 2: never take a job where they want to "do things themselves". And don't work with fixed prices if you calculate your price on a best case scenario.
Rule 3: don't do content management
Rule 4: don't promise a sales target on their website.
Rule 5: start sending invoices every money and not just at the end of the project.
Rule 6: Put every website on your own webserver and don't release it untill it's paid.
Rule 7: Don't work for free.
Rule 8: Don't work for free.
Credit: Jhon Dear5 -
I'm currently 40h/week meeting attender. I'm not enjoying my life right now.
Today I have a meeting about the legal requirements of an invoicing system, in my role as database administrator — the meeting will mostly be lawyers bickering over what the addresses of subsidiaries look like on invoices and which taxes should apply to services provided across borders.
Wait, I can play Factorio during this meeting and say "yeah that sounds OK" once in a while. Not the worst job after all...10 -
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 -
A colleague of mine from the administration department suddenly enters my room where my team and me are all busy and, without considering I'm talking with someone else, interrupts us.
he: "I needed to call you but your phone is in do-not-disturb mode"
me: "that's because I'm busy working on something urgent and I don't want to be disturbed"
he: "but I need your help!"
me: "we're working on a urgent thing, but, anyway, what's the problem"
he: "I need help with digital invoicing"
me: "I deal with programming, I don't think I can help..."
he (interrupting): "I created a digital invoice but I need to send a printable version to a customer"
me: "digital invoices should be XML files so you can't simply take the file's content and paste into Word and print..."
he: "in fact that's what I did and the result was horrible"
me: "I was saying just that. I'm sure, anyway, there should be some online tool for producing a well-formatted PDF from a digital invoice"
he doesn't say anything
me: "you can try with a search on Google..."
he: "but I'm not an IT guy, that's not my business"
me: "this has nothing to do with programming, you simply need to find a tool online for doing this"
he (disappointed): "ok, but this is computer stuff, I'll try..."2 -
Client: Yo, there's like a 30k difference between the invoices in the application and paypal.
CTO: Yeah, that's really sad. Btw, did you know that our payment gateway supports credit cards, which won't be shown in paypal?
I'm writing this in a funny tone, but I was the person who basically implemented every aspect of accounting in that application, so I praying silently 😅1 -
DELETE FROM TABLE invoices.
The next week was spent inputing the data by hand because:
Who needs database back-ups?2 -
DELETE FROM Invoices;
I am on test, right? OH SH!T
had a recent backup tho and no data were lost.
Happened once and never again. I was still pretty much junior in a senior position to be fair 😅6 -
Whatever you do, don't do this.
- a sleep for 300s to avoid full 24 hour rollover (lol)
- sleep 1d instead of cron; so at random times emails will be sent out or they won't at all
- this is a laravel project, there's a thing called task scheduling: https://laravel.com/docs/5.8/...
Git blame: https://github.com/invoiceninja/...
The actual core project docs at least tell you to setup a cron, though not via * * * * * nor task scheduling, which isn't as much of an issue though as their dogshit docker compose: https://invoice-ninja.readthedocs.io/...6 -
!dev
And again...
Our ISP doesn’t say it blocks any port on our Business Fixed IP. Currently I’m trying to access port 25 for SMTP. Guess what? Indeed port blocked. Called them “The port is open”, I visit a port checked, the same thing “Port Closed”
Always the fucking same thing. Every fcking time. These are just criminals. Lastly I removed their router, that they mentions was the only working router in our house and our signal from the other router, not provided by them was much better. They blocked the hotspots because we removed the router then. Guess what? On their site is an option Enable Hotspot on your home router (this enables your access to hotspots). Just pressed it. Haaa they can’t acces my router to set that up and it works.
In our second home, we have another ISP, Proximus, first they did difficult to come and install everything. Because in the appartment the previous owners didn’t pay the bills. After a week or so someone came to install it. Because they cut the cables couldn’t do it myself. Ok it worked for some time. After 3-4 months by once I can’t access the camera there, strange. My uncle went there and there was no internet. Neither TV. But we never received any invoice. Because they didn’t send them. We contacted them, no response. My father sends them an email, with politic people in copy and by once they called to say they will turn it back and scrap the invoices that were not send. They said no technician needed to come, as it’s second home. Guess what, next day a message came “We will arrive in less than an hour”
My uncle went. They did nothing, only restart the modem.
There still was no internet after two days after they came. We called back, response was: “There wasn’t anyone.” Yeah right, we have proof of a technicial that passed (Local Video). By once the internet worked.
Now 4 months later, still didn’t receive any invoice, neither via post or email.
Fuck those criminals, called ISPs20 -
The spam filter fails to block obvious phishing attempts.
It does however block invoices from the people who set up the spam filter for us.
This is the universe working in perfect harmony.1 -
I really dislike the writing invoices and proposals part. Just let me make great stuff and give me enough money so I can live.
-
Okay, so I have a question...
Although unethical, I’m considering disabling a clients services without warning. They’re 6 months behind on paying me and I have complete access over their network infrastructure. Upon reading our contract, I’ve made the mistake of incorporating services will be discontinued due to lack of payment... But, I know if I disable things they’re not smart enough to figure out why they aren’t working and call me... That’s when I’ll tell them that I can’t preform work until past bills are paid in full.
I’m located somewhere in the US. Is this too unethical, too illegal? I just want my fucking money... Thanks!
EDIT: Yes I have invoiced then monthly. They’ve received them because I had deliver al invoices to avoid the “oh I never received it” claims.25 -
Today I found an error in how we handle credit on invoices in our software.
This is the first time my boss has ever made a legit pull request for me to review of his.
Damn I feel proud! -
Fuuuuck you AWS!!!
If you have a feature called “termination protection” perhaps it should actually prevent an instance from being terminated!
But nooo, you add *one line* of text on a documentation unrelated to ec2 terminations saying that in this particular scenario, it will terminate your instance.
Eat a dick. Eat a bag of dicks. Eat all of the dicks you fucking turd munchers.
Now I have to manually enter a month of invoices from the order emails that were created. 😡2 -
MARKETING IS A MENACE FOR SOCIETY and a large waste of time and resources.
Imagine that for some very stupid reason people were allowed to steal cell phones from unsuspecting victims and sell it on open market legally, tax invoices and all.
One could create a business like this. Steal some lad's brand new $600 iPhone and sell it for $280, because why not?
That is marketing. A company goes and makes a phone for lets say $180. Add in taxes, shipping and development costs, and we get to $300. Put some real nice profits on top (let's say 40%) and we get to $420.
The last 180 are the cost of marketing for society.
Today some stupid marketing conmen goosesteps into my lab and says that we must use Tensorflow and in-memory databases and multicloud redundancy and, I kid you not, "profound learning".
WE HAVE A FREAKING LOGISTICS OPS APPLICATION.
"We are putting it on the brochure, those technologies are set to sell well in our core market, and improve employer-branding" says the conmen.
A request for a feature is one thing, a request for an whole other technology because some snake-oil salesmen read the term in some clickbait rag and thinks that some starry-eyed moneyhead will pay extra because the brochure says "NOW WITH 2X MORE TECH!" is just an assault on society.5 -
Just another big rant story full of WTFs and completely true.
The company I work for atm is like the landlord for a big german city. We build houses and flats and rent them to normal people, just that we want to be very cheap and most nearly all our tenants are jobless.
So the company hired a lot of software-dev-companies to manage everything.
The company I want to talk about is "ABI...", a 40-man big software company. ABI sold us different software, e.g. a datawarehouse for our ERP System they "invented" for 300K or the software we talk about today: a document management system. It has workflows, a 100 year-save archive system, a history feature etc.
The software itself, called ELO (you can google it if you want) is a component based software in which every company that is a "partner" can develop things into, like ABI did for our company.
Since 2013 we pay ABI 150€ / hour (most of the time it feels like 300€ / hour, because if you want something done from a dev from ABI you first have to talk to the project manager of him and of course pay him too). They did thousand of hours in all that years for my company.
In 2017 they started to talk about a module in ELO called Invoice-Module. With that you can manage all your paper invoices digital, like scan that piece of paper, then OCR it, then fill formular data, add data and at the end you can send it to the ERP system automatically and we can pay the invoice automatically. "Digitization" is the key word.
After 1.5 years of project planning and a 3 month test phase, we talked to them and decided to go live at 01.01.2019. We are talking about already ~ 200 hours planning and work just from ABI for this (do the math. No. Please dont...).
I joined my actual company in October 2018 and I should "just overview" the project a bit, I mean, hey, they planned it since 1.5 years - how bad can it be, right?
In the first week of 2019 we found 25 bugs and users reporting around 50 feature requests, around 30 of them of such high need that they can't do their daily work with the invoices like they did before without ELO.
In the first three weeks of 2019 we where around 70 bugs deep, 20 of them fixed, with nearly 70 feature requests, 5 done. Around 10 bugs where so high, that the complete system would not work any more if they dont get fixed.
Want examples?
- Delete a Invoice (right click -> delete, no super deep hiding menu), and the server crashed until someone restarts it.
- missing dropdown of tax rate, everything was 19% (in germany 99,9% of all invoices are 19%, 7% or 0%).
But the biggest thing was, that the complete webservice send to ERP wasn't even finished in the code.
So that means we had around 600 invoices to pay with nearly 300.000€ of cash in the first 3 weeks and we couldn't even pay 1 cent - as a urban company!
Shortly after receiving and starting to discussing this high prio request with ABI the project manager of my assigned dev told me he will be gone the next day. He is getting married. And honeymoon. 1 Week. So: Wish him luck, when will his replacement here?
Deep breath.
Deep breath.
There was no replacement. They just had 1 developer. As a 40-people-software-house they had exactly one developer which knows ELO, which they sold to A LOT of companies.
He came back, 1 week gone, we asked for a meeting, they told us "oh, he is now in other ELO projects planned, we can offer you time from him in 4 weeks earliest".
To cut a long story short (it's to late for that, right?) we fought around 3 month with ABI to even rescue this project in any thinkable way. The solution mid February was, that I (software dev) would visit crash courses in ELO to be the second developer ABI didnt had, even without working for ABI....
Now its may and we decided to cut strings with ABI in ELO and switch to a new company who knows ELO. There where around 10 meetings on CEO-level to make this a "good" cut and not a bad cut, because we can't afford to scare them (think about the 300K tool they sold us...).
01.06.2019 we should start with the new company. 2 days before I found out, by accident, that there was a password on the project file on the server for one of the ELO services. I called my boss and my CEO. No one knows anything about it. I found out, that ABI sneaked into this folder, while working on another thing a week ago, and set this password to lock us out. OF OUR OWN FCKING FILE.
Without this password we are not able to fix any bug, develop any feature or even change an image within ELO, regardless, that we paid thausend of hours for that.
When we asked ABI about this, his CEO told us, it is "their property" and they will not remove it.
When I asked my CEO about it, they told me to do nothing, we can't scare them, we need them for the 300K tool.
No punt.
No finish.
Just the project file with a password still there today6 -
Client: Each invoice should be it's entity. It should only report it's own open amount. Any other open amounts remain on the other invoices.
Me: No problem. ::Sets invoices to only report own open amount::
PM: Hey, the invoices in UAT are not displaying the sum of all open bills.
Me: I know. The client wants each invoice to only report the open amount on that specific invoice.
PM: That can't be right, change it back before we give the client access to the UAT environment.
Me: No problem. ::reverts invoice changes::
Client: We are failing the invoices. The invoices should not be giving total open amounts for the account. Each invoice should only report the open amount for that invoice. We told the development about this...
PM: I see. I'll make sure he understands your request.
Me: ... ::reverts the revert::
PM: Hey, the invoices in UAT aren't giving a total of the open-
Me: OMFG. I just want this task closed!
Client: After the invoice work is done, we need to talk about past due amounts and how they are reported to customers.
PM: Sure thing. It is logical to give a total of a past due amount to the customer...
Me: ::Starts updating resume:: -
One time, I accidentally deleted all the data from one of the client's database table (invoices) because i forgot to comment the line from the script.
Good thing there were some backups and I was able to restore everything without anyone noticing. I was so fucking dumb at that time and I felt all the blood rush to my head at that moment when I did a SELECT * and NOTHING was displayed on the screen.
Rookie mistake.11 -
Half a year ago, I got fired in my job. The reason was the same always bullshit; we have very little clients, economy nowadays is terribly bad, our priorities are different now than when we hired you, etc.
The last week I spent there, I heard something about my poor performance and programming skills, and that pissed me off a lot. For six months I worked on a laravel web app for managing customers, tasks and invoices, a fucking CRM, but made specifically for that company just because they didn't know sugar, odoo, prime or whatever.
Parallel to the crappy CRM, I was told to patch some PrestaShop, WordPress and plain sites, and it was hard to communicate with customers, management ignored every email I sent, and all I was told to do was "do as they say".
The result was shit, obviously, and my work showed much less skill, knowledge and expertise than I really have.
After that, I spent a few months unemployed, studying and working as a waiter just to survive, because my contract didn't comply with unemployment office requirements for a pay.
Then I got this job, on an analytics company where guess what, I'm told to write a fucking laravel web app for managing customers, invoices and tasks. In the meantime, I design websites, and communication with customers is shit, and management ignores every single mail I send.
My salary is eight hundred putos euros again, and will contract is wet shit.
I know, maybe I am "not that good" to earn a 3000€+ salary and have a good team support.
But I'm not */that/* bad.5 -
Most painful code error you've made?
More than I probably care to count.
One in particular where I was asked to integrate our code and converted the wrong value..ex
The correct code was supposed to be ...
var serviceBusMessage = new Message() {ID = dto.InvoiceId ...}
but I wrote ..
var serviceBusMessage = new Message() {ID = dto.OrderId ...}
At the time of the message bus event, the dto.OrderId is zero (it's set after a successful credit card transaction in another process)
Because of a 'true up' job that occurs at EOD, the issue went unnoticed for weeks. One day the credit card system went down and thousands of invoices needed to be re-processed, but seemed to be 'stuck', and 'John' was tasked to investigate, found the issue, and traced back to the code changes.
John: "There is a bug in the event bus, looks like you used the wrong key and all the keys are zero."
Me: "Oh crap, I made that change weeks ago. No one noticed?"
John: "Nah, its not a big deal. The true-up job cleans up anything we missed and in the rare event the credit card system goes down, like now. No worries, I can fix the data and the code."
<about an hour later I'm called into a meeting>
Mgr1: "We're following up on the credit card outage earlier. You made the code changes that prevented the cards from reprocessing?"
Me: "Yes, it was my screw up."
Mgr1: "Why wasn't there a code review? It should have caught this mistake."
Mgr2: "All code that is deployed is reviewed. 'Tom' performed the review."
Mgr1: "Tom, why didn't you catch that mistake."
Tom: "I don't know, that code is over 5 years old written by someone else. I assumed it was correct."
Mgr1: "Aren't there unit tests? Integration tests?"
Tom: "Oh yea, and passed them all. In the scenario, the original developers probably never thought the wrong ID would be passed."
Mgr1: "What are you going to do so this never happens again?"
Tom: "Its an easy addition to the tests. Should only take 5 minutes."
Mgr1: "No, what are *you* going to do so this never happens again?"
Me: "It was my mistake, I need to do a better job in paying attention. I knew what value was supposed to passed, but I screwed up."
Mgr2: "No harm no foul. We didn't lose any money and no customer was negativity affected. Credit card system may go down once, or twice a year? Nothing to lose sleep over. Thanks guys."
A week later Mgr1 fires Tom.
I feel/felt like a total d-bag.
Talking to 'John' later about it, turns out Tom's attention to detail and 'passion' was lacking in other areas. Understandable since he has 2 kids + one with special-needs, and in the middle of a divorce, taking most/all of his vacation+sick time (which 'Mgr1' dislikes people taking more than a few days off, that's another story) and 'Mgr1' didn't like Tom's lack of work ethic (felt he needed to leave his problems at home). The outage and the 'lack of due diligence' was the last straw.1 -
A couple weeks ago I told a now former client that I just "fired" that I had no remaining invoices to send them. Today I discovered a couple of invoices from a couple months ago that it appears they'd not yet paid. This is why I need to quit trying to run a business and just be an employee again. I suck at accounting.3
-
Absolutely SICK of clients contesting invoices, refusing to pay and paying late.
I work bloody hard building websites for these people, often saving their business and doing a huge amount of work they’ll never understand or appreciate. Agree a price and pay it, stop being horrible greedy arseholes.
Arghhhhhhhh5 -
Guest user by having all non authenticated sessions automatically assigned to user ID 0.
Let's just say.. it's not fun having all guests be able to view each others purchases and invoices.
So we ended up just always returning empty everywhere for user 0 -
Kinde messed up my first contract.
I am a senior frontend dev who until now worked only on full time gigs. For the first time I picked up a short term gig of 1 week that consisted of 2 packages and I wanted to share my mistake that I made so hopefuly its useful to you.
So last week I started working on this gig. First package went through fine, I delivered in 2 days and collected the first half of the payment.
However I messed up with the second package. Not messed up the implementation per say, but I didnt manage the communication well.
Before implementing it I raised a discussion about a missing backend endpoint that is required to implement the perfect solution. Client got cold feet, had a discussion with his manager and now decided to postpone the second package and even got mad at me that I already did and pushed half of the work of the second package without waiting for his decision from his manager. So now obviously Im not getting paid for half of the work of the second package (I dont mind, I should have waited for clients response), anyways it took me like 20min to implement so thats fine.
My takeaways:
1. As a short term contractor you are hired to solve a concrete problem. Scope out what you can, agree on a task list and stick to it. Anything out of scope will cost the client extra.
2. Your priority is to get paid. Not to deliver the perfect solution that confuses the client and potentially can impact your delivery. If he wants something and you see its only a half of what he really needs, deliver it anyways. Keep that idea of improvement for the future. More work for future = more invoices = more money. I know its not ethical but your priority should be to get paid and in order to do that you need to deliver. Dont shoot yourself in the foot with unnecesseraly overcomplicating things.1 -
How do you deal with working on something that you have absolutely no interest in?
I’m working on financial software, at the moment stuff hay handles invoices etc, and even talking about for more than 2 minutes has be yawning and struggling to keep my eyes open.8 -
We’re a young and dynamic team of messy data-scientists who have failed at being employed on the real market. Our experience in losing data and throwing files away is more than amazing! Over the years, we have managed to get rid of so much important data at home and even at work. Pictures of our holidays, important invoices, login details… it’s all gone. So we started to make a business out of what we’re good at.2
-
The billing system on an enterprise project that I've inherited is a nightmare. The client complained that an aged receivable was being reported as 31-60 days overdue when it should be 0-30 days overdue. I checked the system, and discovered that an account had multiple invoices. One was due in May and one was due in July. The system took a large payment, fully paid the invoice due in July, and partially paid the invoice due in May. That seems wrong.
I checked the code and confirmed my suspicion. The system is ordering open invoices by their creation date, not their due date. The invoice due in May was created after the first invoice, but had a much smaller window to pay. I'll bet anything the original coder assumed all invoices would have the same window to pay. -
Why the fuck do i need to propose try-catch to an contractor, so he can fix his application, because its crashing if the input is non-conform to the specs?
Oh and before you ask. The application is a application that processes and sanitizes invoices.8 -
Just got the first invoice from my new flat. Who the hell writes invoices in comic sans and why? Well, I know who now. But why? So it wouldn't look so serious? But there is only few things that are more serious than invoice! Invitation to funeral im comic sans will look even weirder, but still...6
-
I have 15k in unpaid invoices. 5k of which is over a year old. Everyone has contracts. Considering getting a job and just giving up the biz.6
-
Huge mistake on a customer billing procedure.
That procedure was generating a file for automatic billing requests from our customer bank to his customers banks.
That procedure was shifting the bank coordinates by one byte right making all payment requests invalid and rejected.
That month the customer got nothing from invoices (more or less 80k euros).
Side note; only one payment was accepted because the guy entering the invoice on the system shifted the bank coordinates by mistake, so the procedure fixed it.
:/ -
I feel like contractor companies are crazy overfunded at the moment..
They keep hiring more people to put on the invoices but everyone seems to be working at 50 capacity at most...
I understand that clients rather overpay contractors than hiring people themselves that they don't need anymore in a few months and can't easily get rid of but dude.. I'd gladly do the job of 3 contractors for twice my salary in this current climate.
Not to mention that the amount of hiring brings lots of underqualified engineers with it.3 -
happy new year! what do yall have planned for this year? I'm thinking about writing me up a miniature jarvis to automate my Web Development business, nothing really special just automated invoices, website installs, calendar, contract signing, etc. where all I have to do is type up a requirement list and code2
-
We had application for appointments with cashier for invoices. Made some changes. Didn't test it. Clients couldn't issued invoices for half a day, were super pissed.
Boss was realy angry, tought I will be fired.
I wasn't. -
OK what the actual fuck is going on within this company.
TL;DR: Spaghetti Copy/Pasted code that made me mad because it's just a mess
I just looked into a code file to search for a specific procedure regarding the creation of invoices.
I thought "Oh this is gonna be a quick look-through of like 1000 lines MAX" turns out this script is 11317 fucking lines long and most of it's logic is written there multiple (up to 6-7 times). And I'm not talking about a simple 10 lines or something. No! Logic of over 300 lines.. copy & pasted over .. and over .. and over?! I mean what the fuck did this guy drink when he wrote this.
Alsooo 10000 of those 11317 lines is ONE FUNCTION.. I kid you not! It's just a gigantic if / else if construct that, as I said before, contains copy-pasted code all over the place.
Sadly my TL thinks that code cleanup / optimization is "not necessary as long as it works" like wtf dude. If anyone wants to ever fix something in this mess or add a new feature they take a few hours longer just to "adjust" to this fucking shit.
This is a nightmare. The worst part: This is not the only script that has shit like this. We got over 150 "modules" (Yeah, we ATTEMPTED something OOP-ish but failed miserably) that sometimes have over 15000 lines which could be easily cut down to 1/3 and/or splitted into multiple files.
Let's not start about centralization of methods or encoding handling or coding standards or work code review or .. you get the point because there's a character limit for one rant and I guess I'd overshoot that by a lot if I'd start with that. Holy shit I can't wait until my internship is over and I can leave this code-hell!!2 -
Dividing currency values across new invoices results in ball aching rounding issues.
Finally solved it and there's no one around to high five.3 -
How to pass yourself off as a Web Developer.
Download Wordpress.
Install theme.
Install plugins.
Activate plugins.
Customize theme.
Email client: "Done, invoice attached."
Receive sum of $10,000.6 -
I just had the most embarrassing moment in programming... I am writing an administration / client / invoice webapp and I was testing an export function that worked locally, because everything that was being exported was inside the folder.
So I exported the files in test production, but some invoices didn't exist. So when they don't exist, the system creates a new invoice.
Because I was running on the test production (with client data) the system emailed the created invoices to the clients.. now I have to contact some clients and tell them the invoices were sent accidentally.2 -
I called the hack "blow up bunny", was in my first company.
We had 4 industrial printers which usually got fed by PHP / IPP to generate invoices / picking lists / ...
The dilemma started with inventory - we didn't have time to prepar due to a severe influenza going round (my team of 5 was down to 2 persons, where on was stuck with trying to maintain order. Overall I guess more than 40 % ill, of roughly 70 persons...)
Inventory was the kind of ultimate death process. Since the company sold mobile accessoires and other - small - stuff.
Small is the important word here....
Over 10 000 items were usually in stock.
Everything needed to be counted if open or (if closed) at least registered.
The dev task was to generate PDFs with SKUs and prefilled information to prevent disaster.
The problem wasn't printing.
The problem was time and size.
To generate lists for > 10 000 articles, matching SKUs, segmented by number of teams isn't fun.
To print it even less. Especially since printers can and will fail - if you send nonstop, there is a high chance that the printer get's stuck since the printers command buffer get's cranky and so on.
It was my longest working day: 18 hours.
In the end "Blow up bunny" did something incredibly stupid: It was a not so trivial bash pipeline which "blew up" the large PDF in a max of 5 pages, sent it to one of the 4 printers in round robin fashion.
After a max of 4 iterations, bunny was called.
"bunny" was the fun part.
Via IPP you can of course watch the printer queue.
So...
Check if queue was empty, start next round with determined empty printer queues.
Not so easy already. But due to the amount of pages this could fail too.
This was the moment where my brain suddenly got stuck aft 4 o clock in the morning in a very dark and spookey empty company - what if the printer get's stuck? I could send an reset queue or stuff like that, but all in all - dead is dead. Paper Jam is paper jam.
So... I just added all cups servers to the curl list of bunny.
Yes. I printed on all > 50 printers on 4 beefy CUPS servers in the whole company.
It worked.
People were pretty pissed since collecting them was a pita... But it worked.
And in less than 2 hours, which I would have never believed (cannot remember the previous time or number of pages...)1 -
Freelancers!
How do you create your invoices?
I love toggl and want to build a service to automatically create and send invoices to my clients based on the times in toggl. Would this be of any use to you guys? Could do the same for other time keepers2 -
At one point in my career I tried to do a payment plan for the websites I built for some reason (I guess to make it more affordable for people???).
Out of the 3 people I onboarded 1 of them actually finished paying for everything.
The other 2 didn't make it half way through.
Their invoices are overdue collecting interest to this day. Websites are shutdown.3 -
How many late invoices are acceptable for a developer working in an early stage startup before they should stop believing in their own team?
-
I am going to go freelance (starting a company and will be my own first employee) at the end of the month.
Was wondering what software some of you, who are also freelancers, are using to manage everything.
Quotes, invoices, jobcards, etc.
The bank through which I will be registering the company appears to offer some sort of online service for that purpose, but I have not seen it yet.
Any assistance will be greatly appreciated.5 -
Client deletes erp record with a massive amount of aggregate objects. Calls and almost has a nervous breakdown.
Thank god for soft deletes, they make awesome invoices. -
Like 4 years ago I worked in a company as IT that used a windows desktop app with SQL Server 2008 (yep that old) to manage their sales, this app was written in WPF, the app was good because it was customizable with reports
One day the boss wanted to keep extra some data in the customer invoice, so they contacted the app developers to add this data to the invoice, so they they did it, but it in their own way, because the didn't modify the app itself(even if it was an useful idea for the app and companies that use it) they just used other unused fields in the invoice to keep this data and one of the field that the boss was interested was currency rate, later I verified in the DB this rate was saved as string in the database
The boss was not interested in reports because he just wanted to test it first and let time to know what the boss will need in the reports, so at the of the year they will contact again the devs to talk about the reports
So is the end of that year and the boss contacted the devs to talk about the reports of the invoices using the currency rate, this rate was just printed in the invoice nothing more, that's what the boss wanted that's what's the devs did, but when asked to do the reports they said they could'nt because the data was saved as string in the DB o_O
Well, that was one the most stupid excuses I ever heard...
So I started to digging on it and I found why... and the reason is that they were just lazy, at the end I did it but it took some work and the main the problem was that the rate was saved like this 1,01 here we use comma for decimal separator but in SQL you must use the dot (.) as decimal separator like this 1.01, also there was a problem with exact numbers, for example if the rate was exactly 1, that data must be saved just 1 in the field, but it was saved as 1,00 so not just replace all the commas with dots, it's also delete all ,00 and with all that I did the reports for my boss and everyone was happy
Some programmers just want to do easy things... -
- have a vserver and domains at a Webhoster
- get strange emails with shady links about ubpaid unvoices
- ignore
- find out domains are actually unreachable
- ssh to vserver doesn't work
- log in Webhoster, invoices paid
>>> damn hacker bois here we go again5 -
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 -
Things I've only thought since becoming a freelancer:
How to politely phrase "b*tch better have my money" in an email after nearly a month of waiting on an invoice. -
Client wants to be able to edit invoices after they are collected. So essentially he could tell a customer "you didn't pay enough" and if they don't have their receipt then they're screwed? So instead i let him delete invoices. Can re enter them with back date. But not good enough. Still wants to edit existing invoice to change customers account balance. On a whim. This info should be coming from the app in the field when employee takes payment from customer. That's the design HE signed off on. Now all This shit about pulling a fast one on his customers. Not comfortable here. Seems crooked or am i over thinking so i don't need to add another CRUD flow?9
-
Fuck the bureacracy.
It's so difficult being an solo entrepreneur due to outdated bureacracy.
I just wanted to have a current/ business bank account to separate txns related to the business from my personal account and GST ID to officially register the business and also avoid headaches with taxes in the future.
However, If you want business bank account in the name of business, you have to have an official registration for the business and GST is the easiest and affordable way for sole proprietorship. Since my work is basically online and can be done remote, it doesn't make sense to waste money renting or buying an office space, getting electricity coonection or pay other related expenses which is necessary to have to show as proof of existence.
So I went ahead and purchased a virtual office plan and applied for GST with required documents. However, the bureacrat rejected the application. The informed about it to the biz where I purchased this virtual office and they had a meeting with the bureacrat and they were told virtual office address can't be allowed.
They told had no such issues in last few years and now on they are gonna have to stop providing virtual office to register GST. That was one of the main reason people went with virtual office.
Now I won't be able to open a business bank account.
I won't be able to signup for payment gateway networks. They ask for GST ID.
I won't be able to complete Paypal business registration.
I may have to expose my personal address on invoices or otherwise lie on it.
I will have to use my savings account for any expense related to it.
Also by end of this fiscal year, I probably gonna have to deal with tax issues. -
A couple weeks ago I mentioned to my boss that we are thinking about creating a program to send invoices through cxml. Today he sent me an email that just says FYI with a link to the Wikipedia page on cxml
-
So in my last rant I mentioned an ERP. This is its story:
When I started, all paperwork (including invoices, delivery slips, orders to suppliers etc.) was done on Word and some Excel, no specialised software whatsoever.
At some point (I already worked there for 2 years then), it became too much even for our boss, so he decided to spend some cash on the real deal.
After some looking around, he found software that seemed right (same vendor as our external bookkeeper used, so it would work with him too, nice). In order to save some money, he purchased it in Germany, as they offered a smaller product costing way less (we were based in Switzerland).
Once installed, we realised that this product was only meant to be used within the EU, as it only supported € as a currency and German VAT rates. We needed Swiss Francs and local VAT to work as well.
His solution looked as follows: I had the task to edit all forms via built-in MS Report Builder (god does it suck) to display the string CHF instead of €, and alter the on-sheet excel-like functions to use our VAT rates. Internally, the application of course still thought it was using € etc. For that reason, all output was unusable for bookkeeping, so we (as before) would just hand it in on paper.
If he had purchased the version sold here, all of the above would not have been the case, meaning support for multiple currencies and VATs, as well as direct transfer to the bookkeeper. He hardly saved 15k, in exchange for a non-working solution.2 -
My main project in work is making program in C# (right now .NET Standard) that can read scans of invoices that are sent from contractors. I'm working on it for almost two years now (with breaks and only halftime because university). Alone. And for last two months I've been redesigning, refactoring and making whole app "better", using experience and knowledge gained in the last two years.
Obviously my boss wasn't happy with that but I got him to accept it, promising that it'll make it work faster, expansion will be simpler and I'll make core as a separate library that can be used anywhere, not only in the JobRouter ecosystem.
And so I reworked most of the code, made it cleaner, I hope, and a tad quicker. And I was happy with it while testing on a package of invoices. Today I made first integration with customer's JobRouter.
The results aren't any better - in some cases they are much worse. Especially while searching for invoice entries, which can be in any shape or form and on any of document's pages.
I guess, being a Junior, I wasn't really up to the task. I'm sick of working on a "guessing" program that has to work with every invoice template users can imagine. I'm sick of not getting any recognition for what I did good. And I'm sick of constantly being pushed to make it work better when I just don't have any more ideas or my skills are just lacking.
To be honest, I don't know what to do. I'll probably have to work on making it search the data better. But it's not trivial to just look at the code and see errors. Iterating on the code while working with different invoices worked for a bit in older versions, but I reached the point where changes made to make one invoice be read better, made another one worse.
Its like on those GIFs where you squish one bug to make another two appear.
So yeah, I'm currently really doubting my career, skills and intelligence.8 -
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. -
Has anyone worked with these 2 APIs
°Chargebee
°Billbee
I'm using chargebee for creating invoices
with a AWS lambda passing invoice data from chargebee to billbee to create an order in billbee
I'm in need of help on how to get item SKU
and on which side do i extract SKU
the SKU value is necessarily for mapping products in billbee when the order is created -
Working on a xslt just to change a single character in an invoice. The system I use does not have the euros sign...
Because fuck manually editing the pdf every month.
Fun.2 -
Fucking hate to explain basic shit to computer illiterate. Usually I don't mind, but right know I working on the project, want to automate one thing I need to do every morning, put two numbers to web page(I will explain details maybe in next rant). So I am only one who fix, buys computers, printer(for some problems I call for other repair man.). Generally speaking working as IT guy. Firm has like 50 computers, some of them has SCADA software. Some computers have Win 7, some win 8 and others win 10, can't upgrade those computers, not enough money(I can deal with this problem). And yes, computer buying is not the fastest, easiest thing too. Because is public firm, I need to do public buying(I don't know how to translate to english), and most of the time wins the lowest price, I am ok with that. But I can't on item specification write I want that model pc or it components. Example: I can't write I want intel processor, however I can write number of cores, frequency. But it's not that bad, usually i have template for all things I buy. One of the worst thing is this, our firm bought new bookkeeping software version, old version was using visual foxpro framework. Good thing I didn't initiate the purchase, because right know I would be jobless, not because I would be fired, but because our senior accountant would drive me crazy. In fact accountants drive me crazy, but I can handle it for now. As I wrote before our form has about 120 workers, major part of workers are old, like my parents age. (I am 28 btw. Mom is 55.). As you all know what happens if you say you work with computers. So our accountants are like 60 years old, got new program, don't know how to work with it, and they ask me how to do certain things. if I don't know how to I ask program's support, every question is like 90 Eur. So in short accountants expect I should know their work and how program works. If I try say something they don't like, they try to make my day hard. Next thing is our billing program. Man that worked before me done some payments import. And when I came everyone expect me to do that. Ok I did that because that people working with billing program would probably fuck it up. And I semi automated that, so I don't mind that much. Sometimes that program fucks up, like it happened yesterday, it send email invoices attachment without filename. Example: people got this attachment ".pdf"(no filename, only extension), And if you save it you need do OPEN WITH command and then select pdf reader or rename file (I don't know what easier). And surprise surprise our firm, customer support redirects all phone calls, emails to me. But I did explain to customer support what to say to people. Still they redirect it to me.
PS: This is my first job after school. I work as part time.
TL;DR Thinking my life, carrier choices. accountants are not the nicest people.8 -
@n3xus and I are making a panel for clients and us to help manage and send out invoices and allow clients to track orders. What are some features we should include.1
-
Haaaaaaaaaa!!!!!!!
How tha fuck do I stop Lambda to act so fucking dumb
thing invokes multiple times and creates multiple invoices
even after implementing code to stop this from happening shit still acts dumb
FUCK!!!!!1 -
URGENT:
How an online supplier charge their clients with huge amount >40k monthly in an automated way ? ?
Context:
i am building a huge b2b international online service that will require clients to pay between 1000 usd to 400'000 usd per month.
The system is build on top of an e-payment api (stripe) that enable the system to work based on regular fully automated credit card authorization and capture system.
Everything works fine in dev mode. But when we will move to production, the amounts are so huge that they exceed the max limit of any-credit card, even the corporate's ones.
So that makes me wonder, how automated services (aws, gcp etc) charge huge invoices for their clients in an automated way without using credit cards...
Please help11