Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "client release"
Me: PHP, please load the images.
Me: Come on PHP, the deadline is tonight.
PHP: Haha nope.
Me: What if I swap the libraries?
PHP: Still no.
Me: What if I add a symlink?
PHP: No. And also I hate you.
Me: *gives up and sends an email to the client saying we have to delay the release*
PHP: lololol jk here's the images haha
Roughly 180 days, 5 months and 29 days, 4,320 hours, 259,200 minutes, I devoted myself to a client project. I missed family outings with my daughter and my wife. People started asking my wife if we had broken up. My daughter became accustomed to daddy not being around and playing with her. Sometimes only sleeping 4 hours, I would figure out solutions to problems in my sleep and force myself to wake and put them into action. My relationship with my wife became very fragile and unstable. I knew I had to change but I just needed a little bit more time to complete this client project.
Finally, the project was ending there was light at the end of the tunnel. I “git add –-all && git status” everything looked good. I then “git commit -m “v1.0 release candidate && git push beanstalk master”
I deployed the app to the staging server where I performed my deployment steps. Everything was good. I signed-up as a new user, I upload a bunch different files types with different sizes, completed my profile and logged out. I emailed the client to arrange a time to speak remotely.
“Hello” says the client “How are you” I replied. “Great, lets begin” urged the client. I recited the apps url out to the client. The client creates a new account and tries to upload a file. The app spews a bunch of error messages on the screen.
The client says
“Merlin – I do not think you really applied yourself to this project. The first test we do and it fails. If you do not have the time to do my project properly please just say so now, so I can find somebody else who can”
I FREAKED THE FUCKOUT on the client!!!!!!! and nearly hung up. My wife was right next to and she was absolutely gobsmacked. I sat back and thought to myself “These fuckers don’t get it”. All that suffering for nothing!
Thanks for reading my rant….
BTW: I did finish the project, the client was amazed on how the app worked and it is has become an indispensable tool for their employees.19
I’m a senior dev at a small company that does some consulting. This past October, some really heavy personal situation came up and my job suffered for it. I raised the flag and was very open with my boss about it and both him and my team of 3 understood and were pretty cool with me taking on a smaller load of work while I moved on with some stuff in my life. For a week.
Right after that, I got sent to a client. “One month only, we just want some presence there since it’s such a big client” alright, I guess I can do that. “You’ll be in charge of a team of a few people and help them technically.” Sounds good, I like leading!
So I get here. Let’s talk technical first: from being in a small but interesting project using Xamarin, I’m now looking at Visual Basic code, using Visual Studio 2010. Windows fucking Forms.
The project was made by a single dev for this huge company. She did what she could but as the requirements grew this thing became a behemoth of spaghetti code and User Controls. The other two guys working on the project have been here for a few months and they have very basic experience at the job anyways. The woman that worked on the project for 5 years is now leaving because she can’t take it anymore.
And that’s not the worse of it. It took from October to December for me to get a machine. I literally spent two months reading on my cellphone and just going over my shitty personal situation for 8 hours a day. I complained to everyone I could and nothing really worked.
Then I got a PC! But wait… no domain user. Queue an extra month in which I could see the Windows 7 (yep) log in screen and nothing else. Then, finally! A domain user! I can log in! Just wait 2 extra weeks for us to give your user access to the subversion rep and you’re good to go!
While all of this went on, I didn’t get an access card until a week ago. Every day I had to walk to the reception desk, show my ID and request they call my boss so he could grant me access. 5 months of this, both at the start of the day and after lunch. There was one day in particular, between two holidays, in which no one that could grant me access was at the office. I literally stood there until 11am in which I called my company and told them I was going home.
Now I’ve been actually working for a while, mostly fixing stuff that works like crap and trying to implement functions that should have been finished but aren’t even started. Did I mention this App is in production and being used by the people here? Because it is. Imagine if you will the amount of problems that an application that’s connecting to the production DB can create when it doesn’t even validate if the field should receive numeric values only. Did I mention the DB itself is also a complete mess? Because it is. There’s an “INDEXES” tables in which, I shit you not, the IDs of every other table is stored. There are no Identity fields anywhere, and instead every insert has to go to this INDEXES table, check the last ID of the table we’re working on, then create a new registry in order to give you your new ID. It’s insane.
And, to boot, the new order from above is: We want to split this app in two. You guys will stick with the maintenance of half of it, some other dudes with the other. Still both targeting the same DB and using the same starting point, but each only working on the module that we want them to work in. PostmodernJerk, it’s your job now to prepare the app so that this can work. How? We dunno. Why? Fuck if we care. Kill you? You don’t deserve the swift release of death.
Also I’m starting to get a bit tired of comments that go ‘THIS DOESN’T WORK and ‘I DON’T KNOW WHY WE DO THIS BUT IT HELPS and my personal favorite ‘??????????????????????15
To the Windows 10 users of the unofficial devRant client.
I will release soon the v1.4, but I'm already thinking about the future of this project.
What do you think about this concept?
Let me know if you like/hate it.
Any suggestion will be considered.
Things have been a little too quiet on my side here, so its time for an exciting new series:
practiseSafeHex's new life as a manager.
Episode 1: Dealing with the new backend team
It's great to be back folks. Since our last series where we delved into the mind numbing idiocy of former colleagues, a lot has changed. I've moved to a new company and taken a step up as a Dev manager / Tech lead. Now I know what you are all thinking, sounds more dull and boring right? Well it wouldn't be a practiseSafeHex series if we weren't ...
DEALING! ... WITH! ... IDIOTS!
Bingo! so lets jump right in and kick us off with a good one.
So for the past few months i've been on an on-boarding / fact finding / figuring out this shit-storm, mission to understand more about what it is i'm suppose to do and how to do it. Last week, as part of this, I had the esteemed pleasure of meeting face to face with the remote backend team i've been working with. Lets rattle off a few facts to catch us all up:
- 8 hour time difference to me
- No documentation other than a non-maintained swagger doc
- Swagger is reporting errors and several of the input models are just `Type: String`
- The one model that seems accurate, has every property listed as optional, including what must be the primary key
- Properties go missing and get removed at the drop of a hat and we are never told.
- First email I sent them took 27 days to reply, my response to that hasn't been answered so far 31 days later (new record! way to go team, I knew we could do it!!!)
- I deal directly with 2 of them, the manager and the tech lead. Based on how things have gone so far, i've nick named them:
So lets look at some example of their work:
- I was trying to test the new backend, I saw no data in QA. They said it wouldn't show up until mid day their time, which is middle of the night for us. I said we need data in our timezone and I was told: a) "You don't understand how big this system is" (which is their new catch phrase) b) "Your timezone is not my concern"
- The whole org started testing 2 days later. The next day a member from each team was on a call and I was asked to give an update of how the testing was going on the mobile side. I said I was completely blocked because I can't get test data. Backend were asked to respond. They acknowledged they were aware, but that mobile don't understand how big the system is, and that the mobile team need to come up with ideas for the backend team, as to how mobile can test it. I said we can't do anything without test data, they said ... can you guess what? ... correct "you don't understand how big the system is"
- We eventually got something going and I noticed that only 1 of the 5 API changes due on their side was done. Opened tickets. 2 days later asked them for progress and was told that "new findings" always go to the bottom of the backlog, and they are busy with other things. I said these were suppose to be done days ago. They said you can't give us 2 days notice and expect everything done. I said the original ticket was opened a month a go *sends link* ......... *long silence* ...... "ok, but you don't understand how big the system is, this is a lot of work"
- We were on a call. Product was asking the backend manager (aka "Ass") a question about a slight upgrade to the new feature. While trying to talk, the tech lead (aka "Hole") kept cutting everyone off by saying loudly "but thats not in scope". The question was "is this possible in the future" and "how long would it take", coming from management and product development. Hole just kept saying "its not in scope", until he was told to be quiet by several people.
- An API was sending down JSON with a string containing a message for the user with 2 bits of data inside it. We asked for one of those pieces to also come down as a property as the string can change and we needed it client side. We got that. A few days later we found an edge case and asked for the second piece of data to be a property too. Now keep in mind, they clearly already have access to them in order to make the string. We were told "If you keep requesting changes like this, you are going to delay the release of the backend by up to 2 weeks"
Yes folks, there you have it, the most minuscule JSON modifications, can delay your release by up to 2 weeks ........ maybe I should just tell product, that they don't understand how big the app is, and claim we can't build it on our side? Seems to work for them
Thats all the time we have for today,
Tune in for more, where we'll be looking into such topics as:
- If god himself was an iOS developer ... not
- Why automate when you can spend all day doing it by hand
- Its more time-efficient to just give everything a story point of 5
- Why waste time replying to emails ... when you can do nothing instead
See you all next week,
Client comes to me after a year to publish an update to his app.
I accept, start looking for my release key.... Found it.
Fuuuuuuucccck what's the password? I can't remember
Googled what to do if forgot password of keystore: Nope can't do shit other than brute Force. You've to forget your app and publish as a new app. Nice.
I must have written it somewhere... I'm sure. Check my password manager: Nope.
Start brute forcing:
Default pass: android. Nope
Name of app? Nope
After 10 mins of brute forcing:
Why would I not store the password in my password manager? The only reason I can think is the password is too stupid to be stored.
Try "password". App signed successfully.
I'm ashamed of 1 year older me xD9
- My client on regular day.
U can manage your tasks by your own. App looks stable and you are doing well.
- Same client when I'm on Vacation
This thing is not working, that thing is not working. This is do or die situation for us. you have to cancel your vacation plans.
- Same client after I come back from vacation in which I wasted precious hours of my vacation time and fixed all the bugs.
I didn't release your changes yet coz I wanted to release it together with you. I was like "THEN WHY THE FUCK YOU RUINED MY VACATION" -_-4
I'm getting so pissed off by this client, here's the gist
We signed agreement defining the following deliverables:
- news page and news article page
- releases page and release info page
(it's a guy from a record label)
After the signature we (me and my colleagues) went to work and finished all that (+ a little more actually, yea I know never overstep your agreement right but we did) and we got paid (all good)
Now after payment he's asking us to do more (some kind of mail installation thing), so I obviously tell him, as I actually have many times before, that our agreement only stretched as far as those 4 deliverables and we wouldn't work without a new agreement defining a new set of requirements or an hourly rate.
Next he goes and tells me the following
We already have an agreement. I'm not paying you on an hourly rate as you are not next to me. Let me know
-- First off no we don't, the agreement only covered the 4 pages
== immediatly after
Also you really need to work on your costumer service. Your attitude is very rude. I don't know how many clients you have but all this distrust attitude is not in your favours. Let me know if you want to proceed?
-- Are you fucking kidding me? I am rude and distrustful? I JUST DO MY FUCKING JOB YOU PRICK
Sorry just need to let off some steam14
A client obsessed with *security* won’t give us access to the server that hosts the website we built.
Code release involves building templates, compressing the changed files into a zip folder, and emailing them to the client with instructions on where the changed files go8
It's enough. I have to quit my job.
December last year I've started working for a company doing finance. Since it was a serious-sounding field, I tought I'd be better off than with my previous employer. Which was kinda the family-agency where you can do pretty much anything you want without any real concequences, nor structures. I liked it, but the professionalism was missing.
Turns out, they do operate more professionally, but the intern mood and commitment is awful. They all pretty much bash on eachother. And the root cause of this and why it will stay like this is simply the Project Lead.
The plan was that I was positioned as glue between Design/UX and Backend to then make the best Frontend for the situation. Since that is somewhat new and has the most potential to get better. Beside, this is what the customer sees everyday.
After just two months, an retrospective and a hell lot of communication with co-workers, I've decided that there is no other way other than to leave.
I had a weekly productivity of 60h+ (work and private, sometimes up to 80h). I had no problems with that, I was happy to work, but since working in this company, my weekly productivity dropped to 25~30h. Not only can I not work for a whole proper work-week, this time still includes private projects. So in hindsight, I efficiently work less than 20h for my actual job.
The Product lead just wants feature on top of feature, our customers don't want to pay concepts, but also won't give us exact specifications on what they want.
Refactoring is forbidden since we get to many issues/bugs on a daily basis so we won't get time.
An re-design is forbidden because that would mean that all Screens have to be re-designed.
The product should be responsive, but none of the components feel finished on Desktop - don't talk about mobile, it doesn't exist.
The Designer next to me has to make 200+ Screens for Desktop and Mobile JUST so we can change the primary colors for an potential new customer, nothing more. Remember that we don't have responsiveness? Guess what, that should be purposely included on the Designs (and it looks awful).
I may hate PHP, but I can still work with it. But not here, this is worse then any ecommerce. I have to fix legacy backend code that has no test coverage. But I haven't touched php for 4 years, letalone wrote sql (I hate it). There should be no reason whatsoever to let me do this kind of work, as FRONTEND ARCHITECT.
After an (short) analysis of the Frontend, I conclude that it is required to be rewritten to 90%. There have been no performance checks for the Client/UI, therefor not only the components behave badly, but the whole system is slow as FUCK! Back in my days I wrote jQuery, but even that shit was faster than the architecuture of this React Multi-instance app. Nothing is shared, most of the AppState correlate to other instances.
The Backend. Oh boy. Not only do we use an shitty outated open-source project with tons of XSS possibillities as base, no we clone that shit and COPY OUR SOURCES ON TOP. But since these people also don't want to write SQL, they tought using Symfony as base on top of the base would be an good idea.
Generally speaking (and done right), this is true. but not then there will be no time and not properly checked. As I said I'm working on Legacy code. And the more I look into it, the more Bugs I find. Nothing too bad, but it's still a bad sign why the webservices are buggy in general. And therefor, the buggyness has to travel into the frontend.
And now the last goodies:
- Composer itself is commited to the repo (the fucking .phar!)
- Deployments never work and every release is done manually
- We commit an "_TRASH" folder
- There is an secret ongoing refactoring in the root of the Project called "_REFACTORING" (right, no branches)
- I cannot test locally, nor have just the Frontend locally connected to the Staging webservices
- I am required to upload my sources I write to an in-house server that get's shared with the other coworkers
- This is the only Linux server here and all of the permissions are fucked up
- We don't have versions, nor builds, we use the current Date as build number, but nothing simple to read, nonono. It's has to be an german Date, with only numbers and has always to end with "00"
- They take security "super serious" but disable the abillity to unlock your device with your fingerprint sensor ON PURPOSE
My brain hurts, maybe I'll post more on this shit fucking cuntfuck company. Sorry to be rude, but this triggers me sooo much!2
TFW your client's git policies are so draconian that the dev teams use "develop" as trunk, and completely ignore the release process.
I wrote up 50 pages of git standards, documentation and procedure for a client. Bad indian director 9000 decides the admin (also Indian) who specializes in Clearcase and has no git or development experience is more qualified to decide and let's him set the policy.
FF to today:
- documentation, mostly contradictory, is copy pasted from the atlassian wiki
- source tree is the standard
- no force pushing of any branches, including work branches
- no ff-merge
- no rebasing allowed
- no ssh, because he couldn't figure it out...errr it's "insecure"
- all repos have random abbreviated names that are unintelligible
- gitflow, but with pull requests and no trust
- only project managers can delete a branch
- long lived feature branches
- only projects managers can conduct code reviews
- hotfixes must be based off develop
- hotfixes must go in the normal release cycle
- releases involve creating a ticket to have an admin create a release branch from your branch, creating a second ticket to stage the PR, a third ticket to review the PR (because only admins can approve release PRs), and a fourth ticket to merge it in
- rollbacks require director signoff
- at the end of each project the repo must be handed to the admin on a burned CD for "archiving"
And so no one actually uses the official release process, and just does releases out of dev. If you're wondering if IBM sucks, the answer is more than you can possibly imagine.12
App nearing completion. Code tested, everything's working fine. Ready for release.
The client just calls me and tells me that they have decided to turn the app into two separate ones. Should not be a problem, you developers must have some tricks for that, according to the client. Of course, the release date remains unchanged.
Clients!, finally understand that there's no secret button for turning an app into two separate ones.5
Yes, Mr. Client. It is extremely wise of you to demand changes on release-day. Of course it won't go smoothly, untested and buggy as it will be.
“Don’t learn multiple languages at the same time”
Ignored that. Suddently I understood why he said that. Mixed both languages. In holiday rechecked it and it was ok.
Sometimes mistakes can lead to good things. After relearning I understood it much better.
“Don’t learn things by head” was another one. Because that’s useless. If you want to learn a language, try to understand it.
I fully agree with that. I started that way too learning what x did what y did, ... But after a few I found out this was inutile. Since then, I only have problems with Git
Another one. At release of Swift, my code was written in Obj-C. But I would like to adopt Swift. This was in my first year of iOS development, if I can even call it development. I used these things called “Converters”. But 3/4 was wrong and caused bugs. But the Issues in swift could handle that for me. After some time one told me “Stop doing that. Try to write it yourself.”
One of the last ones: “Try to contribute to open source software, instead of creating your own version of it. You won’t reinvent the wheel right? This could also be usefull for other users.”
Next: “If something doesn’t work the first time, don’t give up. Create Backups” As I did that multiple times and simply deleted the source files. By once I had a problem no iOS project worked. Didn’t found why. I was about to delete my Mac. Because of Apple’s WWDR certificate. Since then I started Git. Git is a new way of living.
Reaching the end: “We are developers. Not designers. We can’t do both. If a client asks for another design because they don’t like the current one tell them to hire one” - Remebers me one of my previous rants about the PDF “design”
Last one: “Clients suck. They will always complain. They need a new function. They don’t need that... And after that they wont bill ya for that. Because they think it’s no work.”
Sorry, forgot this one: “Always add backdoors. Many times clients wont pay and resell it or reuse it. With backdoors you can prohibit that.”
I think these are all things I loved they said to me. Probably forgot some.
At a certain client, was asked to help them with an "intermediary" solution to stopgap a license renewal on their HR recruiting system.
This is something I was very familiar with, so no big. Did some requirements gathering, told them we could knock it out in 6 weeks.
We start the project, no problems, everything is fine until about 2.5 weeks in. At this point, someone demands that we engage with the testing team early. It grates a little as this client had the typical Indian outsourcing mega-corp pointey-clickey shit show "testing" (automation? Did you mean '10 additional testers?') you get at companies who put business people in charge of technology, but I couldn't really argue with it.
So we're progressing along and the project manager decides now is a great time to bugger the fuck off to India for 3 months, so she's totally gone. This is the point it goes off the rails. Without a PM to control the scope, the "lead tester," we'll call her Shrilldesi, proceeds to sit in a room and start trying to control the design of the system. Rather than testing anything in the specification, she just looked at the existing full HRIS recruiting system they were using and starts submitting bugs for missing features. The fuckwit serfs they'd assigned from HR to oversee this process just allowed it to happen totally losing focus on the fact this was an interim solution to hold them over for 6 months and avoid a contract renewal.
I get real passive aggressive at this point and refuse to deliver anything outside the original scope. We negotiate and end up with about 150% scope bloat and a now untenable timeline that we delivered about 2 weeks late, but in the end that absolute whore made my life a living hell for the duration of the project. She then got the recognition at the project release for her "excellent work," no mention of the people who actually did the work.
Tl;Dr people suck and if you value your sanity, you'll avoid companies that say things like, "we're not in the technology business" as an excuse to have shitty, ignorant staff.6
// devRant unofficial UWP update (v2.0.0-beta7)
After "Active Discussions" (implemented in v2.0.0-beta5), it was time to implement the last missing app section, "Collabs".
This is the biggest update since the start of the public beta, over 100 changes (new features, improvements, fixes).
- Support for Collabs
- Notifs Tabs
- & more... read the entire changelog here: https://jakubsteplowski.com/en/...
Microsoft Store: https://microsoft.com/store/apps/...
I'm really happy to announce that the unofficial UWP client has now 100% of the features available on the official Android and iOS apps (if we don't count Push Notifs 😝 but they will arrive soon too).
It took several months of hard work, but I made it... it's here, it reached the level I wanted to reach since the beginning of this project (May 2016) (if we don't count Push Notifs).
I did it a lot of times, but I think they deserve it everytime, I would like to thank all the people who made this possible, all the active users, who opened issues, suggested features, or just used my app and had fun, posted positives (and negatives, motherfuckers, just kidding, maybe) reviews on Microsoft Store etc.
The entire community who made me want to do this project.
You're amazing guys!
Of course this is not the end of this project, I want to bring the app out of the beta and support it until I will be able to do it, releasing updates almost simultaneously with @dfox and @trogus.
Planned to be done:
- Support for Anniversary Update
- Push Notifs
- Custom Themes
- Close the 15+ issues (features requests, fixes) on the issue tracker on GitHub
- Ranti by @Alice: Your devRant Assistant <- I really hope it will become a thing :)
- Your future suggestions -> post them here: https://github.com/JakubSteplowski/...
Thanks for the attention,
It's almost time!
I am almost ready to release new devRant client and the full version of the api wrapper that powers it.
While I finish up a few things, here is a quick explination of what / why the client is:
The devRant client is called:
The reason I made yet another new client is:
I wanted to have a CLI client that could run on a chromebook and I also discovered the cool text editor called ed. I really like the command-based interface of ed, so I made a devRant client in that style!
dr is a simple and (mostly) no BS devrant client built for us cool cli-only people.
(yes, this was written in dr)
More info will come soon!13
This big multi-million consulting company hired me as freelance. They did it in a hurry, because "the project already started, it is a very important client (a bank) and we need your expertise by YESTERDAY".
In the first THREE WEEKS I had meetings with their own project managers, their client's project managers, techies, sales people. No one was able to tell me what do I have to do, but:
1 - they asked me for very detailed estimates plus a release plan
2 - f**k your estimates, we need this BY JANUARY 16th5
OK so I'm just going to announce this. I'm done with my WPF client for devRant. It's not really "Production" quality but it does what I want and well... it's good enough for me and I need to move on.
Here's the release and code if anyone is interested. If you want any other feature, you can just fork and implement it yourself.
Release: (ClickOnce installer in app.zip)
I think I want to quit my first applicantion developer job 6 months in because of just how bad the code and deployment and.. Just everything, is.
I'm a C#/.net developer. Currently I'm working on some asp.net and sql stuff for this company.
We have no code standards. Our project manager is somewhere between useless and determinental. Our clients are unreasonable (its the government, so im a bit stifled on what I can say.) and expect absurd things from us. We have 0 automated tests and before I arrived all our infrastructure wasn't correct to our documentation... And we barely had any documentation to begin with.
The code is another horror story. It's out sourced C# asp.net, js and SQL code.. And to very bad programmers in India, no offense to the good ones, I know you exist. Its all spagheti. And half of it isn't spelled correctly.
It's... God awful. The result of a billion and one quick fixes that nobody documented. The configuration alone has to have the same value put multiple times. And now our senior developer is getting the outsourced department to work on moving every SINGLE NORMAL STRING INTO THE DATABASE. That's right. Rather then putting them into some local resource file or anything sane, our website will now be drawing every single standard string from the database. Our SENIOR DEVELOPER thinks this is a good idea. I don't need to go into detail about how slow this is. Want to do it on boot? Fine. But they do it every time the page loads. It's absurd.
Our sql database design is an absolute atrocity. You have to join several tables together just to get anything done. Half of our SP's are failing all the time because nobody really understands the design. Its gloriously awful its like.. The epitome of failed database designs.
But rather then taking a step back and dealing with all the issues, we keep adding new features and other ones get left in the dust. Hell, we don't even have complete browser support yet. There were things on the website that were still running SILVERLIGHT. In 2019. I don't even know how to feel about it.
I brought up our insane technical debt to our PM who told me that we don't have time to worry about things like technical debt. They also wouldn't spend the time to teach me anything, saying they would rather outsource everything then take the time to teach me. So i did. I learned a huge chunk of it myself.
But calling this a developer job was a sick, twisted joke. All our lives revolve around bugnet. Our work is our BN's. So every issue the client emails about becomes BN's. I haven't developed anything. All I've done is clean up others mess.
Except for the one time they did have me develop something. And I did it right and took my time. And then they told me it took too long, forced me to release before it was ready, even though I had never worked on what I was doing before. And it worked. I did it.
They then told me it likely wouldn't even be used anyway. I wasn't very happy at all.
I then discovered quickly the horrors of wanting to make changes on production. In order to make changes to it, we have to... Get this
Write a huge document explaining why. Not to our management. To the customer. The customer wants us to 'request' to fix our application.
I feel like I am literally against a wall. A huge massive wall. I can't get constent from my PM to fix the shitty code they have as a result of outsourcing. I can't make changes without the customer asking why I would work on something that doesn't add something new for them. And I can't ask for any sort of help, and half of the people I have to ask help from don't even speak english very well so it makes it double hard to understand anything.
But what can I do? If I leave my job it leaves a lasting stain on my record that I am unsure if I can shake off.
... Well, thats my tl;dr rant. Im a junior, so maybe idk what the hell im talking about.16
Client wants to deliver August 1st. Bust our butts to make the deadline. Changes the entire layout on July 29th and still expected 8/1 release. Blames us for missing the deadline.4
That I am not good enough for this shit.
Recently left my job because anxiety, a lot of it.
Tbh, I should not burntout myself, because:
- salary was a shit
- the scrum was a lie, there was no end of the sprint, so no retrospective meeting ever done.
- They change the """sprint""" task pile at any moment, usually adding more tasks for the same sprint.
- previous project manager was an idiot who said "yes" at EVERYTHING the client asked, even if the request was outside tje scope of the project.
The project was heavily delayed, and I was the only developer left on the most hideous backend you can imagine (the code was just tje very definition of "what not to do"). NO UNIT TESTING at all.
My task: clean the mess so we have a """stable""" release (with the tests), add the new features and re-do the backend again, but this time properly.
8 months of develop for this shit and they wanted the stable-shit-backend in a month and the new backend in other month "because everithing was already done in the shitty one". Do not forget the new features too.
So, I was doing the imposible to try to do tje task, overdoing hours and reading the docs of the project (because I was new in it), but it take me.a lot of effort to simply correct bugs because of complexity of the code and not understanding fully some parts of the project.
Then the comments like "why this is not finished yet?" Or "I do not understand why this is taking so long"
So, I had poor sleep, I was anxious because my inhability to do the imposible and in the end, a feeling kind of defeated because I quit.
Sorry if something is wrong typed or so, english is not my native language.5
Me and my manager throughout 2020
Me: So umm, we can release the new app version
Manager: No we promised client X app first go build that
Me: umm, ok.
Me: so the app is done, but client hasn't setup area L so there is no data there
Manager: ok, I'll have them setup area L soon ™️
Manager: area L is too much work to setup, use workaround L thats way better
Me: ok ...
Manager: client is nitpicking on design and layout please make this mess even greater
Me: ok, anything else?
Manager: yeah also start on app for client Z!
Me: and our app update?
Manager: later son! Risk tooo muchos!
Me: the mess for client X is done, and first version for client Z is also ready for test
Manager: ok good work, here is a new set of things to mess up
Me: but... Seriously, wtf?!
Manager: clients want quality
Me: ah ok, not nitpicking, cool
Manager: client X went MIA, but client Z will send you a weekly list of things they don't understand and want to change
Me: ah great, truly worth postponing my February holiday to release nothing
Manager: so, how we doing on all them changes
Me: well, I am a loyal custodian with alot of pleasure in my work!
Manager: ah ok good!
Me: any news from client X??
Me: mkay ... n.v.m
Me: can we release yet?
Manager: change, we can!!!
Me: are you Obama?
Me: fuck you pay me
Me: I am confident we can now release all 3 apps as promised mid september
Manager: great!! Good work
Also manager: you know that immensely complex area within the app? That needs a complete rewrite because we have bad ux there!!!
Me: ok... To which requirements?
Manager: good ux, we must have standards
Me: but the layout of page R id generic as page F so then we need to align there as well
Manager: go! Do!
Me: ok I'll come up with my own requirements then
Manager: we also need documentation
Me: really!!!! How clever of you to fire colleagues T & P and we now have zero workforce for that
Manager: things will get better someday
Me: ah, great! Put it on my calendar
Me: I need a sabbatical biatch
Manager: a what?4
warning: huge ass rant, language.
sooo, i’ve been away from too long from here but in my defence i had nothing to rant about.... LOL YOU WISH.
this yeah and part of the last one were a huge dumpster fire. i had terrible and stupid clients, but this time, oooh my. i had the kind of client that puts you in the state of taking drugs to talk with him.
so, basically my job is to use IT to run businesses and part of it is going paperless and bringing intelligence to their DMS. I have 5 years experience on the field, not a senior, but let’s say i do know my way around the job. this involves a lot of windows services, scripts (in vbscript..), powershell tasks, i basically lick Microsoft boots for a living :D
So, huge part of the job is taking “physical” (on paper) processes, taking them to digital, then making them better, once they are used to the system. (nothing secret I work with M-Files)
But this guy. Dude. this is the kind of person that needs to look good towards his boss. it’s the guy that says his words are “cartesian”, with a “precise meaning”. My, Fucking, Ass.
When it comes to structure (folders, flows, trees, whatever) it’s important to think about design, you want to touch it the least at the end. i have to modify workflows and objects countless times. and yes, i had with him a long and extensive design phase. the dude basically says “yes” without reading what’s been done, and then changes mind and asks “who the fuck approved this shit”. the problem comes when you write services to process huge amounts of data to be saved idk, on the FS, and decide that it was wrong, and that it needs to be changed and retroactively. then change it back. then change the process. then make it bigger, so big your staff gets confused as fuck. then you want to impose stuff to your suppliers, which they don’t give a fuck about your requests.
then. THEN. then you come to me, say it’s my fault you might lose your job because release must be pushed further because you didn’t want to lose your fucking pride by admitting that you were wrong about something it’s my fucking expertise, something your 15 years experience accountant also told you, as well as half of your accounting department (the way VAT is treated basically). get fucking fired already. for real. and guess who had to implement something wrong on purpose knowing It would be a fucking nightmare to properly reverse?
without mentioning that some stuff makes so 0 fucking sense, jesus, get wrecked by a horny duck dude. who the fuck needs to store e-mails in public folder for each fucking email in the company? take a cryo backup solution. no, each email that comes into each mailbox needs to be assigned to a working site. without exception. why would an email to order pizzas for the dinner be assigned to a working site?
also, thanks a lot for making me writing a huge service the other way around because you didn’t read my emails. thank you. because how the fuck am i supposed to know that i need X data from Y and not Y from X? (over, over simplifying here). the number of hours spent there , uuugh.
but hey, don’t worry, I hopefully got to spend the morning of my birthday, which was also a day off, helping you out because your staff is basically overwhelmed.
god, they aren’t the brightest stars in the sky, but I can just understand them. poor souls.
but hey besides all this. it would’ve been nice acknowledging the many mistakes done on your side my dear client. no, while being 100% e-mail backed, somehow the error is in our side. (my boss knows it isn’t don’t worry he covers me).
like, a couple of days ago he asked me to solve a huge bug on an invoice validation workflow that must’ve been a bug because was designed in a shitty way. it wasn’t a bug, it was his “cartesian” specification. which i told him btw wasn’t that clever, but never mind.
hopefully client will have a 3 weeks leave. i will enjoy every day of work without him. every hour.
i will do excel macros for what I care.
once already my boss stepped in to calm down the dude, shit was going south and I was going to basically fire myself because if a phone call I finally didn’t do. i was ready to insult the shit out of his face with his boss. god thank my boss for that.
sorry for the slightly long rant
have a good day y’all2
Dotnet Core and dotnet framework are now one (november).
Blazor has an official release for client side webassembly.
Just had to install XP to adapt our VB6 client code for a new release of the server. Oh the horror of it all!2
After three hours of emailing with a customer I can confirm that programmers are the worst customers.
Customer: We've found a bug in the system... <details>
Me: Thank you for letting us know, a ticket has been created and the issue is most likely to be fixed in the next release.
Customer: Please grant me UPDATE privileges in the live(!) database so I can fix it myself
Me: I cannot allow that. You have to use the client software for maintaining your data.
Customer: No, I don't want to spend my day clicking. I want to write queries.
We didn't reply to the last one yet...
If we give him access, then I would charge them at least 3x for fixing issues caused by him.1
In one of my first jobs i developed an (ugly and heavly under-payed) e-commerce/media platform for a customer.
That customer was constantly making fun of his bald partner telling how he was gay, liked dicks, etc., drawing dicks and bananas as sample website logos or uploading dildo/penis images as images, he was always like this.
Once the website was ready for production i removed all the "testing" posts and images and told the client to insert some real content and alert me when it was ready for release.
Well some time after the release i got a call from that client, for the first time he was serious:
C: Hi, why there are dildo images on the server? (the website in production was full of dildo/penis images instead of actual product images, he even photoshopped the head of his partner on a penis and uploaded it!!!)
R: ehm... i told you it was on production and to stop uploading bad content....
C: Ummm ok, please fix it immediatly, thanks!3
PM: "so I need you to deploy this new application to some new server. The deadline is in 2 days"
Me: "yeah I can do that, is the application ready and has been tested? Have the servers been set up properly by the IT guy?"
PM: "yep, all is set up and good"
Couple of hours later I try locating the server, only to find it didn't exist.
Me: "the server you mentioned earlier, is doesn't appear to exist?"
PM: "it definitely does, IT guy said he set it all up"
I dig around a little more, but this server definitely doesn't exist. The IT guy was on holiday for a week, so we had to wait for him to get back; delaying the release. On the morning the IT guy got back,
PM: " I though you said you set up that server for the application, we've had to delay it now!"
IT: "I just set it up this morning. Like I said in the email to you before I Ieft, I will have to do it first thing when I get back after holiday"
Turns out the PM had asked the IT guy to spin up the server, but never bothered to read his response. Assuming it was done he told the client he'd have it deployed in a couple of days.
The application was deployed successfully later that day, but not before the PM blamed us two for its delay.1
The app I'm using right now... devRant unofficial UWP.
It started by chance, I wanted since years to release an app for Windows 10, but never something like this.
I found devRant in 2016 and I just wanted to use it on my Lumia 950, so I opened Visual Studio and created a very simple client to get data from the web version.
After a few builds I decided to release it on the Microsoft Store as "devFeed (Beta)" (a bit later renamed to "devRant unofficial UWP").
Today, after almost 2 years, thanks to the huge support from @dfox and all the users, I'm releasing the 55th update. 😁
The new version of the (unofficial) client (now UWP and with "Stories") for Windows 10 is here... but I can't release it due to a Microsoft Store bug... 😢
Hope to see a Microsoft fix soon, because I can't wait to share it with you! 😝5
Client has an "urgent" release that needs to be launched immediately... So they keep changing the spec every few minutes with new changes, but are upset that the product isn't launched yet. Lol. Got to love clients.1
Fuck that shit once again. Spent an entire day releasing micro-patches because nobody listened to me, because "I am a developer but I don't do that full time".
Because you might think that I didn't fuck my ass with a giant bottle-shaped dildo studying development to get this fucking place maybe?
And what, I was right, once again. Because maybe I know the fucking project I work in, linked to the fucking product I'm certified for, you dumb cumfilled assface.
For those that doesn't know it, i do manage, maintain, develop stuff on our ECM infrastructure for our clients. I do basically everything as we have few clients and are a small company we can do this that way.
Anyway, had to release "urgently" 3 fucking features to a custom module to export stuff from the ECM to a client's ERP system. Tests? No time for this, don't lose time on this. I smell the "why didn't you test?" in two days. I fucking smell it.
Plus, the client is a fucking retarded mess. The kind of guy that is unable to check his previous e-mails and asks again the same thing, four times. Should I do a fucking tutorial on how to fucking use a fucking search bar? And you want to be informed on the technical details about the features? Come on, I have to explain you how to do your fucking CFO job.
And if it wasn't enough, My boss replied to the client while I was on holiday to explicitely tell the client that I'm the only one that can take care of that. That gives us a very professional image, doesn't it? And when I asked to train someone to at least do the administration job when I'm away, it's always a "we'll check that, we need that" but then nothing.
Anyway fuck it. if I resign I will laugh. 2 months to train someone else and get them on the export modules (which are commented and documented) in a company where in the office I'm possibly the only developer (we have one in the second office but he's a web developer).
Hopefully I'm at a bar drinking a fucking beer while continuing my golang "getting started" project. That's the only thing that makes me happy of coming back from holiday
p.s.: I want the fucking raven, make me dream.7
Agreed to work on a mobile app project on Android. No contract signed, just was given what the client wanted from this sub-contractor.
No specific details given, had to figure out a lot of the minute details of how they wanted the application to behave. We would deliver a working part of the product before getting a % of the pay. We charged $30 /hr on a mobile app, low as heck.
It was me and another developer, neither of us had any contact with the clients to ask questions, all questions had to go through the sub-contractor. Many arguments and months later we find that what they're asking for only a phone manufacturer can do. Sub-contractor blames us for not doing our "research" when she/he was the only one able to contact the client to get requirements.
Sub-contractor wanted us to refund money. We declined but offered solutions.
Sub-contractor goes to client and manages to get approval of what we were able to do. Finally a light in this dark tunnel spanning 7 months.
On the day of releasing to the client the finished app, we get notification from Google that the app won't be published due to a recent policy change that came into effect in January. WTF.
Go back to sub-contractor, tell the bad news. Once again he/she says it's our fault for not doing the "research". Yeah as if we knew what Google is going to change. Asks for paid money back. We refuse.
We lastly suggested that we remove what Google wants removed on the app and release it that way.
We had billed 300 hours cumulative divided among 3 people (including the sub-contractor who didn't appear to do anything), and just 2 months of development. It's been 7 months and we were only paid for 240 hours, the rest was unpaid, and the sub-contractor still wants to make us give it back. /rant13
My first project at the job was implenting a website, designed by the same company we mostly worked with.
It was very stressful because half of the 2 months calculated for finishing the project, these genius designers needed for their design. Until then, I had almost no tasks to do...
When the designs finally came, I worked on it and two weeks later was a meeting for review and to decide about some details.
These fuckers then concluded, that the whole design did not fit the page and that they would rework it.
Two weeks later, on the planned release day, we finally received it. A completely fucking different design! Wow!
My boss was pretty angry and so was I. We had to move the release 4 weeks ahead, the client was pissed like a stinking hobo and it needed a lot of convincing to keep that client...
It's fucking nerve-wracking as well that we always have to wait in most projects for weeks for clients or designers to add the content before we can publish a website.
They don't seem to care if they have 2 months or 2 weeks, we never were able to release one single project on time, because of these lazy fuckers...3
Has been a long time since I'm appreciating working with GRPC.
Amazingly fast and full-featured protocol! No complaints at all.
Although I felt something was missing...
Back in the days of HTTP, we were all given very simple tools for making requests to verify behaviours and data of any of our HTTP endpoints, tools like curl, postman, wget and so on...
This toolset gives us definitely a nice and quick way to explore our HTTP services, debug them when necessary and be efficient.
This is probably what I miss the most from HTTP.
When you want to debug a remote endpoint with GRPC, you need to actually write a client by hand (in any of the supported language) then run it.
There are alternatives in the open source world, but those wants you to either configure the server to support Reflection or add a proxy in front of your services to be able to query them in a simpler way.
This is not how things work in 2018 almost 2019.
We want simple, quick and efficient tools that make our life easier and having problems more under control.
I'm a developer my self and I feel this on my skin every day. I don't want to change my server or add an infrastructure component for the simple reason of being able to query it in a simpler way!
However, This exact problem has been solved many times from HTTP or other protocols, so we should do something about our beloved GRPC.
Fine! I've told to my self. Let's fix this.
A few weeks later...
I'm glad to announce the first Release of BloomRPC - The first GRPC Client GUI that is nice and simple,
It allows to query and explore your GRPC services with just a couple of clicks without any additional modification to what you have running right now! Just install the client and start making requests.
It has been built with the Electron technology so its a desktop app and it supports the 3 major platforms, Mac, Linux, Windows.
Check out the repository on GitHub: https://github.com/uw-labs/bloomrpc
This is the first step towards the goal of having a simple and efficient way of querying GRPC services!
Keep in mind that It is in its first release, so improvements will follow along with future releases.
Your feedback and contributions are very welcome.
If you have the same frustration with GRPC I hope BloomRPC will make you a bit happier!3
I feel so guilty.
I had to make a hotfix today. It is the ugliest piece of shit code I ever intentionally created. But there was no other way. I swear there was no other fucking way!
My boss just assigned this to me. But because she thinks this needs to be a hotfix and can't wait for the next release we just have to change the server and not the client side of our application.
So I had to add a memory to our server so that it knows from which high level method from the client the multiple low level calls to it are coming from.
It just doesn't make sense logically.
I mean I feel like I killed someone. And just so that we get less writes to our DB. I mean yes in some edge cases it is a huge speed-up...
But nothing this fix solves is a new bug.
I'm gonna take a shower now. For like an hour4
Manager : (During 2 weeks before final release) So the client asked if we could have this xyz functionality which we never have done before.
Me: But we already have so many issues to fix and only a week to do that
Manager: that's true.. So Complete them in 3 days ?1
My client requested me to release the source code to their development team today. They are going to handle the further development from now. Client has paid for the app in full.
That wasn't a good news to me.6
Client writes a bug report: This and that doesn't work.
Me: This functionality never was implemented. Please open a feature request.
Client: But this is a bug. Without this feature, the service won't work as we expect.
Me: But this wasn't in the requirements for release. So you have to contact the PM for a feature request.
Client: THIS IS A BUG! FIX IT!
Me: GO FUCK YOURSELF! THIS IS A NEW FEATURE AND YOU HAVE TO PAY FOR IT!
Unfortunately, I never sent the mail. But I kept it in the drafts. Maybe someday...1
When I got the current job I started to work on an Android app that a coworker which left the company was doing.
The app was ready at about 40% and was barely usable, it lacked a lot of features and multithreading so with a huge amount of data it used to crash (Android doesn't allow you to make the app freeze for more than 2-3 seconds, it considers that the app is not responding anymore).
After a week or two the work to do was still huge, but one day one of my coworkers came in and ask me if I was able to release a beta for a client the same day... Unexpected deadline.
I spent 8 hour fixing as many bugs as possible and adding multithreading in the most weak parts.
I did it but it was so stressful and the result wasn't even great. In fact I finished the stable version 7 months later.4
There is nothing more fulfilling than working you ass off 2 days, learning a new technology, and getting it to finally work as per the requirements and then ...
getting told that the absolute cunt of a client forgot the release date, announced its release 2 days early and decided to casually ask why there is no app on the released URL (it's a tiny Agonizing Reality [AR] app meant as a gimmick on the invitation cards for an upcoming convention).
My boss told me, the thing I worked on is now being scrapped and will not be released.
Yes, I wish the clients could slowly die in agony by a tree growing out of their appendix. Nature shall reclaim their corpses and feed a happy pig which I would happily have a feast of. 🤗4
OpenSSH 8.2 is out. This release removes support for the ssh-rsa key algorithm. The better alternatives include:
1. RSA SHA-2 signature algorithms rsa-sha2-256/512. These algorithms have the advantage of using the same key type as "ssh-rsa" but use the safe SHA-2 hash algorithms (now used by default if the client and server support them).
2. The ssh-ed25519 signature algorithm.
3. ECDSA algorithms: ecdsa-sha2-nistp256/384/521.
In this release, support for FIDO/U2F hardware tokens. Also noteworthy, a future release of OpenSSH will enable UpdateHostKeys by default to allow the client to automatically migrate to better algorithms.19
Who needs a pre-prod system?? Losers that's who!
Real men release code on live systems without even informing the client...2
I was tricky this time and sent a separate email for the client and my boss about the new release.
Client response: "Its very good, runs flawlessly, could you check x if you have the time? It gives errors simetimes"
Boss response: "[...] urgent fix get working on it right now [...]"
Seems like my boss has been the fucking piece of shit all this time :)1
When a manager asks if you can implement a feature (their are legitimately not sure if it is even possible) and you say yes and they say, "Good, 'cause I already assured the client that we would provide it on the next release"
Like, what the actual fuck...1
Client: Please add feature x in "here"
Me: Adds feature x in "here"
Fast forward to QA
QA: Test for feature x failed. Feature was added in "here" but is not in "there"
Me: There was no request to add x in "there"
Client: Feature x was already supposed to be in "there", you might have removed it.
Me: *Checks file where feature would be added.
* Git blame show no changes since received we the project (one major release back)
Lying cunt. I'm sick of your literally incomprehensible tasks giving government fucks, speak human language not overhead driven bureaucracy-jargon3
The frustration that comes to each developer when he tries to write the code structured by thinking through each situations, and your team lead comes and tells you why r you doing so much validations just hard code them we need to release it today client is waiting. After 3-4 months the same team lead goes through the code and shouts at you telling why the he'll you hard coded all these, can't you write the code correctly by thinking through.3
I am currently reverse-engineering the devRant Avatar APIs, I think I understand all of it now. I am curently making comprehensive documentation on it and I think I will release it (if the developers of devRant allow me to do so).
I am reversing it as part of my project of making a devRant client built in SwiftUI, because I really want to make an avatar editor on there, it’s gonna be SICK!18
Fuck fridays, fuck releases and especially s big fuck you to releases to productions on fridays.
So to give a little back story to my nightmare, we are working on a big system that are pretty complex for a big client. So 2 days ago we did get new feature requests/change how some of main things works (that would require big api/backend changes) So i am the app guy, so the chances were not that big for me, but due to the api changes i could first test it today, that started out to be fine everything worked, but like around 2 hours before our work day ended, i had to implement very simple thing. But everything went wrong, So i had to make some quick hacks, due to how i had designed it earlier. So the last 2 hours were a fight with errors in the api, and me getting pissed asf. 15 min overtime, the endpoint finally works as it should. At least it works now, i know everything else for that feature should work execpt from one option that i didnt get to test. (Its 50/50 if that part works). But i had to release it and have it ready for monday. So fuck me, now i need weekend and some time to relax.
I am sorry for my sins, for pushing some untested code :( (but the api is out of my hands)2
After some time i got the hang of time, around that time B left and a new guy, C, was hired soon after that. He didn't know about react/redux either. The perfect start off to a burning pile of smelly code.
Today this burning pile turned into a wasteland of code quality, a house of cards with a storm approaching, a rocket with leaks ready to launch, you get the idea.
We got 2 dozen files with 200-500 loc, each in the same directory and each with the same 2 word prefix which makes finding the right one a nightmare on its on. We have an i18n-library used only for ~10 textfields, copy-pasted code you never know if it's used or not, fetch-calls with no error-handling, and many other code smells that turn this fire into a garbage fire. An eternal fire. 3 months ago i reduced the linter-warnings on this project to 1, now i can't keep count anymore.
We use the reactabular-module which gives us headaches because IT DOESN'T DO WHAT IT'S SUPPOSED TO DO AND WE CANT USE IT WELL EITHER. All because the client cant be bothered to have the table header scroll along with the body. We have methods which do two things because passing another callback somehow crashed in the browser. And the only thing about indentation is that it exists. Copy pasting from websites, other files and indentation wars give the files the unique look that make you wonder if some of the devs hides his whitespace code in the files.
All of this is the result of missing time, results over quality and the worst approach of all, used by A: if A wants an ui-component similar to an existing one, he copies the original and edits he copy until it does what he wants. A knows about classes, modules, components, etc. Still, he can't bring himself to spend his time on creating superclasses... his approach gives results much faster
Things got worse when A tried redux, luckily A prefers the components local state. WHICH IS ANOTHER PROBLEM. He doesn't understand redux and loads all of the data directly from the server and puts it into the local state. The point of redux is that you don't have to do this. But there are only 1 or 2 examples of how this practice hurt us yet, so i'm gonna have to let this slide. IF HE AT LEAST WOULD UPDATE THE DATA PROPERLY. Changes are just sent to the server and then all of the data is re-fetched. I programmed the rest-endpoints to return the updated objects for a very reason. But no, fuck me.
I've heard A decided (A is the teamleader) to use less redux on the next project and use a dedicated rest-endpoints for every little comoutation you COULD DO WITH REDUX INSTEAD. My will is broken and just don't want to work with this anymore.
There are still various subpages that cant f5 because the components cant handle an empty redux state in the beginning, but to be honest i don't care anymore. Lets hope the client will never find out, along with the "on error nothing happens"-bugs. The product should've been shipped last week, but thanks to mandatory bugfixes the release was postponed to next week. Then the next project starts...
Please give me some tips to keep up code quality over time, i cant take this once more.
I'm also aware that i could've done more, talking A and C about code style, prettifying the code, etc. Etc. But i was busy putting out my out fires, i couldn't kill much of the other fires which in the end became a burning building (a perfect metaphor for this software)4
Why not release the devrant (mobile+web) client on github (and maybe gitlab for people that would actually contribute but are special about the usage of github) so people could contribute to it, leading to faster progress? I thought about it now for a bit and couldn't see any problems with that, since the current apk can be anyway unpacked via freely available tools (appcelerator doesn't make it too hard either anyway 😕) and the website/api isn't any secret either (see the 4000 clients getting patched together out of zombie like api calls)21
Why the fuck these managers can’t understand that you can’t build a full blown system with in a week. After building a demo driven application to show the client you can tell the client we are fucking ready to launch the damn thing . I FUCKING MENTIONED BEFORE GOING TO THE MEETING ITS NOT RELEASE READY GOD DAMN IT.
Now when I say we can’t launch this app we need to fix things . THE FUCKING MANAGER HAS THE GUTS TO SAY “one day is enough to fix the issues right ? Shouldn’t be a big deal for you to fix this” .
Kill me now 🤬🤬🤬🤬🤬7
When the boss has a meeting at 4pm with the client, it's 1pm, I didn't have lunch yet and I have to release the product in 1h, and test everything before he starts the meeting... :/2
You know what's fun? When your client insists you use an agile process with a delivery at the end of each sprint, then proceeds to bitch at each release at the features that weren't implemented yet. The thing isn't even slated to be done until 4Q 2018 and is on schedule/early. Glad I am not on that team . . . yet.
This is long rant/story:
My manager conducts sync-up meetings regularly. The idea is to sync up all developers on current state of work. He does’t conduct stand-ups. He doesn't have time for it. He rather discusses on individual basis if we are blocked. The rule of the sync-up meeting is NOT to discuss any blockers or problems but simply explain each other what we are doing and how we plan next.
Sometime ago, the manager brought up and explained a new way of working in the sync-up meeting. At this point, a new developer in the team was absent due to sickness.
Today, there was a sync-up meeting and the manager started to question the new member about the newly introduced way of working. He was unaware of it and the manager never communicated this important information via email or any mode of communication available.
So, the conversation goes on as follows:
"Manager": — "Why didn’t you complete your task as per the new way of working?"
"Employee": — "Well, I've no idea. Am I supposed to do? I’ve been working as usual like any other"
"Manager": — "We have a new process and you have failed to follow it, so we’re late in delivering your work"
"Employee": — "I’ve already finished my work on time. I've raised a pull-request this morning"
"Manager": — "It doesn’t matter, it is not merged to main branch and so we can’t include your work in the release"
"Employee": — "I’ve no idea about the new process"
"Manager": — "Haven’t you asked around about what happened from previous meeting"
"Employee": — "Yes, I have. I was told which tasks were handled, but nothing about a new process"
"Manager": — "Aren’t you interested to learn it?"
"Employee": — "Why won’t I be interested? I was on a sick leave and I have no clue what happened here"
"Manager": — "What’s happened is past now, let’s not focus on it"
"Employee": — <Dumbfounded>
The Employee felt ashamed in front of everyone. He did his job but it didn’t pay off.
…. After an hour … the Employee had a talk with the Manager
"Employee": — "You shouldn’t have pointed me out in front of everyone. It made me feel real bad. You should have emailed this information if its important for the team."
"Manager": — "I have no idea what you’re talking about. When did I say so? I think you’ve a bright future in the team. You should be focusing on doing better things."
Employee goes back to work. A minute later, the Manager sends a PowerPoint screenshot of the process in the group chat.
It's about delivering release packages based on priorities defined by client. Each release package is a set of work items or requirements. Individual developers are assigned to work items. They are expected to deliver on planned delivery timelines in order to consider a work item into a release package.1
I had a pretty good laugh just now.
There's this extension I wrote for our client's online shop which enables them to create template files via the backend. Essentially it's just an editor reading and writing files from/to a directory.
So I installed said extension using a package I found locally, thinking it was the latest release. Unfortunately it was not.
As I said the extension writes template files within it's own directory and back when I had packed up the extension, I must had forgotten to delete these template files resulting from tests and messing around.
Long story short, I just received a ticket about a line of text suddenly showing up below the product page description saying: "I like turtles!"
The ticket itself was very professional though and the client didn't forget to mention that the "notice" was not part of their product feed data. No shit! LOL2
So the story is true and this is what we have to deal with now..
My friend and I started to build a Web Application for a Roleplay Community. The project was for a client mainly and they don't mind if we try to sell this project to the public. All goes well except the shitty design, which is the one our client asked for. So after 6 months of work we planned to switch our backend to Nodejs, the switch look quite easy in our brains [PHP => NODEJS] because we already use Nodejs for instant functions without reloading the page.
So during the planning we earn a client which is one of the member of the clan, but he pay for another clan which is 6x bigger then the one we're in. So we continue to develop and think about the switch. We learn a news about a new competitor, this one sucks, we tried their App and it's not worth the money they ask. A few days after another competitor enter the market, this one is a big challenge for us. "Sit down tight, yea you reading this"..
The competitor use BUBBLE to create their shit, they earned 10 clients in one week and just punch us with "THE ROCK" hand, they release a lot of feature each week, they're 6 devs on that (if we can call them devs), we're 2 programmers (True Programmers). What we do in 1 week they do it in 5 hours with Bubble, the switching to Nodejs was a badluck, you couldn't add feature because of this switch during 2 weeks, this made us later and second in the race. My friend (at the same time my employee and back-end programmer) move into another appartment which obligate him to work full-time. At this time I'm f****, I'm only a Front-End Programmer vs 6 Wannabe Devs with a mother**** tool of *** (#Bubble).
This is where I am, in this beautiful opportunity to win this market but with this bad luck occuring = the opportunity is low, but our advantage is we don't have made our project public yet so they're the only good option for the communities to get that kind of web app, the others are not included and only a copy of this (Their Product) or just a big junk made with Wix.
At this time I'm working hard to make this opportunity happen, I have my math which I have to finish to have my High School diploma to do, a part-time job to get if I want to stay with an internet connection and finally I have to find a way to still be able to make my dream come true (Working on my Business at full time & Make money from it) and continue to be a Front-End Programmer/CEO of an enterprise.4
A client asks me to produce a Release note when publishing a new version, which is more than fair ask, I shall deliver.
Then he asks me questions on the version's feature which are clearly described in the release note, with examples, showing he did not bother to read it..............
Am I the problem or is my job?
TL,DR: Problems at work on a specific project with wide scale, I'm the only developer charged to fix them, work is very frustrating, I'm getting very anxious and stressed and thinking about leaving.
Recently we've been having problems with software that we developed which has been in production for a year now, the client has accepted the software but decided to put it on the shelf for a year and release it publicly now, after that some bugs and problems started appearing and I was pretty much the only one who had this mission to help with the problems since the other coworker had left the job, problems are still appearing to this very day and there are new functionality requirements as well, I'm getting anxious and overly stressed, in the last 2 weeks I have worked 3 weeks worth of hours, no pay for overtime, and even when I go home or on a weekend I can't stop thinking about work, problems and new tasks there. It has stressed me out so much that sometimes just wanna say "fuck it" and leave, I think it's damaging my mental health as well, my boss told me that problems are not my fault since the system was not tested properly and I should just focus on solving the problems at hand, but fuck it I don't wanna get anxious and think about what problem is left for me on the table whenever I go to work, I overthink so much it's like my life depended on it.
The scale of the project is large (nation-wide, small nation though), I started developing it with only 1 year of experience, now I have 2 years of experience which I think is part of the problem since I do not have enough experience to deal with this shit and also I think it was inadequate of the management team to let me (a junior dev at a time) develop the core of such software.
I hate this project and everything associated with it, I'm thinking about leaving.
Your thoughts and what would you do in my shoes? Should I stay and deal with my stress and anxiety and continue working here? Or should I leave and look for a fresh start and a better organized team?
If you are still reading this thank you.3
Looking for critiques on a website I’ve been working on. Client pushed me to release it early after every time I tried to tell them to wait
Critics welcome: www.perfectaimbowling.com15
I just don't get the WordPress hate or CMS hate in general. Using these is not perfect, but neither is _anyone's_ code. Get over that and be more productive for your client. Unless you're the best coder the world has ever seen, and you're _always_ available to push content for an organization of 90 or 900 or 9,000 people, nobody CARES about your "coding purity". They want a website that they can still operate if your ass gets hit by a bus. Don't like WP? Find a CMS that ticks most of the boxes for your client's needs. If you have the time, budget, and long-term inclination to provide bug fixes for it, write your own Awesomesauce Custom CMS(TM) and release it to the open source community so we can finally replace WordPress with the next best thing.
Otherwise, launch site, get check. Repeat until you can retire.10
A dev life in Queen songs:
„A Kind of Magic“ - Build successful
„A Winter’s Tale“ - Key Account Manager visits customer
„Action This Day“ - Release day
„All Dead, All Dead“ - System down
„Another One Bites the Dust“ - kill -9 4711
„Breakthru“ - 10 hour debuging session
„Chinese Torture“ - Microsft Office
„Coming Soon“ - Client asks for delivery date
„Dead on Time“ - shutdown -t 10
„Doing All Right“ - How's the progress on the new feature?
„Don’t Lose Your Head“ - git push -f
„Don’t Stop Me Now“ - In the zone
„Escape from the Swamp“ - Hand in resignation letter
„Forever“ - while(1)
„Friends Will Be Friends“ - friend class Vector;
„Get Down, Make Love“ - No rule to make target "Love"
„Hammer to Fall“ - Release day
„Hang on in There“ - 2 weeks until release
„I Can’t Live With You“- Microsoft
„I Go Crazy“ - Microsoft
„I Want It All“ - Google
„I Want to Break Free“ - free( (void*) 0xDEADBEEF );
„I’m Going Slightly Mad“ - Impossible feature requested
„If You Can’t Beat Them“ - Impossible feature promised by sales
„In Only Seven Days“ - Impossible feature ordered
„Is This the World We Created...?“ - Philosphic moments
„It’s a Beautiful Day“ - Weekend
„It’s a Hard Life“ - Weekday
„It’s Late“ - Deadline was last week
„Jesus“ - WTF?
„Keep Passing the Open Windows“ - Interprocess communication
„Keep Yourself Alive“ - Daily struggle
„Leaving Home Ain’t Easy“ - Time to get up and go to work
„Let Me Entertain You“ - Sales meets customer
„Liar“ - Sales
„Long Away“ - Project start
„Loser in the End“ - Dev
„Lost Opportunity“ - Job ad
„Love of My Life“ - emacs/vim
„Machines“ - Computer
„Made in Heaven“ - git
„Misfire“ - Unhandled exception at Memory location 0xDEADBEEF
„My Life Has Been Saved“ - Google drive/Facebook
„New York, New York“ - Meeting at customer
„No-One But You“ - Bus factor = 1
„Now I’m Here“ - Morning rush hour
„One Vision“ - Management goals
„Pain Is So Close to Pleasure“ - NullPointerExcption
„Party“ - Delivery completed
„Play the Game“ - Customer meeting inhous -
„Put Out the Fire“ - Support hotline
„Radio Ga Ga“ - GSM/GPRS/UMTS/LTE/5G
„Ride the Wild Wind“ - Arch Linux
„Rock It“ - Linux
„Save Me“ - CTRL-S/CTRL-Z
„See What a Fool I’ve Been“ - git blame
„Sheer Heart Attack“ - rm -rf /
„Staying Power“- UPS
„Stealin’“ - Stack Overflow
„The Miracle“ - It works
„The Night Comes Down“ - It doesn't work
„The Show Must Go On“ - Project cancelled
„There Must Be More to Life Than This“ - Philosophic moments
„These Are the Days of Our Lives“ - Daily routine
„Under Pressure“ - 1 day until release
„Was It All Worth It“ - Controlling
„We Are the Champions“ - Release finished
„We Will Rock You“ - Sales at customer
„Who Needs You“ - HR
„You Don’t Fool Me“ - Debugging session
„You Take My Breath Away“ - rm -rf /
„You’re My Best Friend“ - emacs/vim4
I have started a new journey on a company on Jabuary 25. I put a lot of effort but apparently the client told my employer I took too many time in my onboarding process (they expected me to be ready in two weeks or less) and they deactivated my slack account (this was on monday, because although I had holidays I turn on my machine in order to advance). The client said this on friday and I got awared on monday. I feel frustrated... Because I put a lot of effort resuming the documentation and even my team mates said it was unfair; some of them took longer than two weeks and they havent make a PR.
So it seemed to me strange as I said... Some of the conclusions we arrived were: We should ask for credentials 1 week before. The other thing was: The guy who technically interviewed me was really important in the project and he has a cool posibility on Barcelona (spain). We assumed that the client feel angry or sad about this and because they want to keep still the relation but want other provider to supply that dev guy, they arose with silly and stupid time requirements. I did all I could taking into account they didnt give me all the credentials at the same time; the first one came one week after.
Soooo here I am... Enjoying a good bench time and learning angular !!!!... sincerely... I wanted to release some shots to the air jaja
Today a co-worker (I am going to call him 'boss') ask to another co-worker (I am goin to call it 'useless piece of shit' or 'ups') to explain to me a new task, becaus boss was to bussy with a new release for a client.
Idk how but ups managed to explain all wrong, like terribly wrong.
Ups: "Dev, all you have to do is fix some queries from local files"
Dev: "Ok, seems legit"
Try the local files, nothing happend
Dev: "weird... ups why this is happening?"
Ups: "I know the same as you, ask boss."
Dev: "boss this."
Boss: "what the actual what? ... this is all wrong. The config file is in mongo, in this IP, we don't use local files anymore. I tell ups to explain this to you so I can atay focused on this other task, but now I lost the double amount of time"
Dev: "oh... sorry, I will fix the remote queries"
I hate ups, every fucking time soneone need something from him this happend or worst...1
So in the project I’m working on we were about to do a push to live, no major functionality just minor adjustments and nice to have stuff. One of the things I did was a reminder, nothing special just sends an email out if something hasn’t been done for 3 days and then sends an email every day following. Push to live and every thing goes fine with no issues. Day 1 there are no issues. Day 2 there are no issues. Day 3 and I’m inundated with people telling me that the emails are getting sent to practically everyone, shit. What have I done? What have I missed?
So I start looking at the live database hoping for a data problem, no such luck. I look at my code looking for something blatantly obvious but nothing. I start replicating the data but I can’t reproduce this bug and it’s annoying the hell out of me. I checked one of the emails that the client sent to us more thoroughly and seen that it was sent at 07:01. This is odd as our webjob runs at 1am so I start looking at environmental factors and started looking at release management, more out of hope than expectation. I check the staging environment and see that the webjob ran at 7:00. Coincidence I thought, the webjob gets packaged on the release pipeline and everything in the database was dummy data anyway but I’d better check anyway. The database was an exact copy of the live database, turns out a “senior developer” wanted to sanity check everything by running live data through the code so he copied the database over. It was fine for the first couple of days but the data was now 3 days out of date triggering my email code and I get hit with the shit storm. I’ve never met such an incompetent developer in my fucking life, functions 700 lines long, classes that are over 20000 lines, repetition every where and the only design patterns he’s used is when he picks up a child’s colouring book. I can live with the fact that he writes code like someone on their first day of University But copying a database because he wants to “visualise” the fucking data is absolutely farcical. No wonder the project is fucked with a “developer” (in the loosest possible use of the word) is at the helm.
I coded part of feature 2 months ago.
Left it to help frontend guy a bit, deal with fire after release. ( we’re missing frontend integration tests and every release is pain in the ass ).
My backend code coverage is about 80% so not much can go wrong at this point.
So I added more code today and it looks like new feature is working but don’t know what the code I added 2 months ago exactly do.
The only thing I know is that it definitely needs refactoring ...
Being only backend dev / release manager / administrator/ dev ops in project is painful I need to deal with everything on my own 😔
At least client doesn’t care if it’s done in one week or in one month right now.1
/** Null until this web socket is connected. Used for writes, pings, and close timeouts. */
private ScheduledExecutorService executor;
Dear boys and girls.
If you ever do this again and release this as a public library (even better - an official client of your solution, e.g. kuber-fucking-netes), I will get my way into dR's gateway servers, trace down your IP in nginx's logs, find your location, probably use some means to get your first and last name (you prolly have a domain registered under your IP anyways...), buy a ticket to your town, get to your home and wait for night to fall. Once it's dark and you're asleep, I'll make sure to leave a real nice, warm and extraordinarily smelly turd on your doorstep (I'll also make sure the process of manufacturing that gem is as noisy as it gets - you just have to bend the right way, and....).
Gents. If you really, REALLY want to make writes asynchronous, at least provide a way to either get a notification once the write is synchronized, or allow the user to handle the threads/executors himself!
when the release date is may 31 and the client thought it's a good idea to request a bunch of new features and changes in friday afternoon :)
Tomorrow is gonna be a fun birthday...
Project for a client, release date: tomorrow.
We handed over the project two weeks ago, for their QA to test everything.
Guess when they complained about having no access.
Hint: it's today1
So for a new client, they have their domain on a registrar that has the most ugliest and confusing UI ever.
So I decided to transfer the domain to somewhere better.
Guess what, it takes 5 days for them to release the domain. The site would be down and I won't be able to proceed with my work until transfer is complete.
In hopes to speed up the process, I tried to create a ticket. There is no ticket system and their only available contact email listed is email@example.com
I mailed them yesterday evening hoping for a reply.
Few hrs ago, I received a bunch of automated email on some ticket I never created.
The biggest WTF is that the To: on that email is some other customer's gmail address and I am CC'd along with a bunch of other customers gmail and hotmail addresses.
Seriously, WTF is this?! I'm glad I took the decision to move from them20
some days are very frustrating , i had a task today in which client want a page where he can add bulk of car details on the same page.
now jquery fucked me.
I want to do something to release stress. Why do I get stuck at shitty problems sometimes ?
Damn I'm a noob programmer4
If any of you have been following my last few rants, you'll know I've been working on a project with a particularly difficult client, trying to meet wholly unrealistic deadlines with only one other developer.
The situation has reached the climax. The client had a call with our project manager and boss on Monday to discuss things. Despite them still not having paid a single bill since October, they've demanded the release date be moved to the 6th April. Apparently we'd agreed to release on this date, despite making no such promises, the (optimistic) deadline we were working towards has always been, since it was set about 2 weeks ago, the 16th April.
Apparently AWS migration won't take as long as we think it will, because the designers that do the CSS for this project say so, despite knowing nothing about the architecture of the requirements of the system once live (like if backups are required and what of).
The bottom line is that client is ending development with us the day after the project goes live to give it to their own in-house team. If they want us to work more after the date, they have to buy blocks of days.
To make things better, a large part of new functionality relies on an external API we can't even begin to do learning tests with, let alone integrate due to back-office errors on their end. They've had since Friday to give us our token, yet here we are.
Something tells me my holidays booked for for the first week of April are going by the wayside.4
There's like one guy in the office who actually knows anything about the software we sell. It's a mess of bolted together chunks of code from different client projects (that the clients have paid for and continue to pay a license fee for) we just cherry pick the best bits and repackage it for the next release.3
I’ve got a new client wanting me to take over their website, okay... I’ll take care of you.
What’s the hold up?
1. Anon, Get ahold of this person, they’ve got the info you’ll need.
2. We will get together sometime to go over paperwork.
3. We are waiting on the board to sign off on a contract switch.
4. I’m needing this changed immediately on the site or we will be fined, but I understand you don’t have the information to make that change - can you get ahold of X to get the information?
5. *gets ahold of X* - still waiting on Y to approve contract release and change.
Listen, I have my faults too on running my own business but at least I know what I can and can’t do when either accepting or turning away a client. I’d be happy to work on your website, but you’ve got to get approval from those on your team before you make a change, that’s not on me. It’s cool that you need whatever changed on your site before the end of the week, but I can’t help you until I’m officially signed on. Please don’t request content change when I don’t have access to the content to change it.
Go get approval by your team first before you call me about making changes to your site, we haven’t even exchanged any information or paperwork yet.
If you call me again knowing that I’m on a two month leave from work, I’ll slit your throat and fuck the wound. It’s 1:40. There are other techs, you’ve got the on-call list in front of you. I’m flattered you went through the trouble of finding my PERSONAL NUMBER, but I have rants to write damn it.
TGIF & remember..
DO NO FUCKING PUSH TO PRODUCTION TODAY!
DO NOT FUCKING RELEASE A NEW VERSION OF THE CLIENT APP!
have a nice weekend partners 🤗1
I haven't been ranting in a while but y'all are so smart that I can't get enough of your wisdom!
So... Client wants me to build something. That something has a lot of commercial value as a product or even a startup...
How do I go about communicating that? Do I reach an agreement to release it open-source and then I can offer commercial support? Do I offer them a discounted price for my services and I remain the owner of the code?
When your in a sales meeting and the sales manager says "we release new client features in as soon as the next day"
............ I'm already the only software engineer1
Someone mentioned that client want to use wordpress instead of they current website because it is cheaper! Ok lets see how cheap it is.. each time wp release update after updating you need go through all website and check if nothing is broken.. plugins will need update as well because usually they run on specific wp version. Fixing theme and plugins requires dev time.. despite all those things.. have common sense. Maybe it is good for some type of business to host few pages without any business logic or use as blog without scare to loose everything and do not store users data.. someone mentioned that it is secure to run anything because updates are the best security to avoid security breaches. So why banks are not running on WP? Why health service is not using WP?
I have just slept for a minimum of 5 hours. It is 7:47 PM atm.
We have had a damn stressful day today.
We have had a programming test, but it really was rather an exam.
Normally, you get 30 minutes for a test and 45 minutes for an exam.
In this "test" we have had to explain what 'extends' does and name a few advantages of why one should use it.
Read 3 separate texts and write the program code on paper. It was about 1 super class and 1 sub class with a test class in Java.
Task 3: Create the UML diagram of the code from above. *internally: From above? He probably means my code since there is no other code there. *Checks time*. I have about 3 minutes left. Fuck my life.*
Draws the boxes. Put the class names in each of them. A private attribute for the super class.
Teacher: Last minute!
Draw the arrow starting starting from the sub class to the super class.
Put my name on each written paper. And mentally done for the day. Couldn't finish the last task. Task 3.
During this "test", I heard the frustrations of my classmates. Seemed like everyone was pretty much pissed.
After a short discussion with the teacher who also happens to be the physics professor of a university nearby.
[If you are reading this, I hope that something bad happens to you]
The next course was about computer systems. Remember my recent rant about DNS, dhcp, ftp, web server and samba on ubuntu?
We have had the task to do the screenshots of the consoles where you proof that you have dhcp activated on win7 machine etc. Seemed ok to me. I would have been done in 10 minutes, if I would be doing this relaxed. Now the teacher tells us to change the domain names to <surnameOfEachStudent>.edu.
I was like: That's fine.
Create a new user for the samba server. Read and write directories. Change the config.
Me: That should be easy.
Create new DNS entries in the configs.
Change the IPv6 address area to 192.168.x.100-200/24 only for the dhcp server.
Change the web server's default page. Write your own text into it.
You will have 1 hour and 30 minutes of time for it.
Dumbo -ANGRY-CLIENT-: Aye. Let us first start screenshotting the default page. Oh, it says that we should access it with the domain name. I don't have that much time. Let us be creative and fake it, legally.
Changes the title element so that it looks like it has been accessed via domain name. Deletes the url and writes the domain name without pressing Enter. Screenshot. Done. Ok, let us move to the next target.
Dhcp: Change lease time. Change IP address area. Subnet mask. Router. DNS. Broadcast. Optional domain name. Save.
Switches to win7.
Holy shit it does not work!
After changing the configs on ubuntu for a legit 30 minutes: Maybe I should change the ip of the ubuntu virtual machine itself. *me asking my old self: why did not you do that in the first place, ass hole?!*
Same previous commands on win7 console. Does not work. Hmmm...
Where could be the problem?
Check the IP of the ubuntu server once again. Fml. Ubuntu did not save when I clicked on the save button the first time I have changed it. Click on save button 10 times to make sure it really is saved now lol.
Same old procedure on win7.
Alright. Dhcp works. Screenshot.
Checks time. 40 minutes left.
DNS:It is your turn. Checks bind9 configs. sudo nano db.reverse.edu.
sudo nano db.<mysurname>.edu.
Alright. All set. It should work now.
Ping win7 from ubuntu and vice versa. Works. Ping domain name on windows 7 vm. Does not work.
Oh, I forgot to restart the bind9 server on ubuntu.
sudo service bind stop
" " " start
Check DNS server IP on win7. It looks fine.
It still doesn't work. Fuck it. I have only 20 minutes left. Samba. Let us do this!
10 minutes in. No result. I don't remember why. I already forgot why I have done for it. It was a very stressful day.
Let us try DNS again.
Oh shit. I forgot the resolver!
sudo nano /etc/resolv.conf
The previous edits are gone. Dumb me. It says it in the comments. Why did not I care about it. Fuck it.6 minutes left. Open a yt video real quick. Changes the config file. Saves it. Restarts DNS and dhcp. Closes the terminal and opens a new one. The changes do not affect them until you reopen them. That's why.
Change to win7.
Ping works. How about nsloopup.
Does not work.
Teacher: 2 minutes left!
Saves the word document with the images in it. Export as pdf. Tries to access the directories of the school samba server. Does not work. It was not my fault tho. Our school server is in general very slow. It feels like they are not maintained and left alone like this in the dust from the 90s.
Friend gets the permission to put his document on a USB and give the USB to the teacher.
Sneaky me: Hey xyz, can you give me your USB real quick?
Gets bombed with "do you want to format the USB?" pop-ups 10 times. Fml. Skips in a fast way.
Transfers the pdf. Plug it out. Give it back.
After this we have had to give a presentation in politics. I am done.6
Life lesson learned:
Despite good intentions, don't overengineer the front-end, when time is heavily constrained and the release is scheduled and is communicated to media outlets immediately after.
A broken release just makes the client send around multiple emails per minute with tens of people in CC.
Shit happens... at least it was a bargain for them.
Just created my own publish-subscribe-based IoT protocol for the NodeMCU. It's like a simplified version of MQTT and pretty error-rich. (So it shouldn't be used in important cases). But the cool thing is that you can use a simple NodeMCU to host a server and don't need to set up a Mosquitto Server on a Linux Machine.
Will release on GitHub soon!
Also made an example Client in PHP!4
When you spend months putting together a major update for the original scope of a project, release the update to a client, and the first thing they say: "Where's that new feature I asked for last week?"
The project started as a series of individual prototypes. The client the wanted a beta app for a few selected clients, and someone had the great idea of just merging the prototypes into a single app. The attitude of the devs was always "whatever, this will be rebuilt for public release"
Over one year later, and after many different developers touched the project, the client wants it to go live, there was never a rebuild, and there won't be one until a few months after it goes live, and the project is buggier than it ever was.
A rebuild would have been quicker and safer than fixing the huge backlog of bugs, still the client won't accept a rebuild.
A few people already quit over this project and I think I will be the next one to hand in my resignation.
Whoo!! Client's satisfied with recent launch of product!! Still has little bugs to fix here are there, but general feedback was positive, stating it's "much smoother"
Our owner's other company sells products online (or has the ability to anyways). Their current site is 7+ years old WordPress/Woocommerce and is seriously outdated because the site breaks if you update anything so we've been told to make a new site (finally). They also said they were going to release a whole new line up of products. So the first thing I tried to do was get them to nail down their product line and how shipping was going to be configured. I was told to just use the shipping from the previous site.
Turns out those shipping rates don't use any sort of math or automation at all, there is literally a manually set shipping value for every single product for every single shipping location (30*60) and even values for different quantities. And there's no way to export these rates into a readable table because the plugins they use shove all the data into the postmeta table, I'm forced to go through and put the data into a spreadsheet so that I can attempt to organize it and hopefully find someone way to automate it. Owner claims at one point that he has a similar spreadsheet that's more up to date but for some reason refuses to send it over or put me in touch with the right people in the shipping department.
I've gone through the shipping rates with the old products and the new products and organized them as best I can and each time I've gotten done and shown them the spreadsheet with their products and shipping, they add or change something which requires me to basically wipe the slate clean and start over eating another 50 or so hours of my time, which with everything else really means another month+ to find time to work on it between other projects.
After about a year they finished their products and I finally finished the planning and got approval to build it out for the site. Small victory!!
After about 60 hours plugging these values into the database (only about 1/3 done) I get an email from their head of shipping who tells me the values in my spreadsheet are "terribly inaccurate, in some areas by $100+" and that the data should not be used anywhere.
So after something like a year and a half and 200+ hours of work, the data I've been using to plan all this isn't even accurate. I'm trying not to go crazy here but this kind of shit is unacceptable. When we're done with this I'm going to send the owner an invoice to show him how much money he wasted on this because nothing was planned and he just wanted it built. There's a fucking process for a reason, when you don't follow the process you fuck everything up. If a client had pulled this shit and turned their simple site into this much work they would have been dropped. I get constant emails asking when the new site will be done and every time my answer is "I'm still waiting for x items that I asked for last time you asked where we were." He gets a couple things on the list and sends them back and then goes unresponsive for weeks at a time.
Management has been telling me that I seem more stressed lately but only one of them understands what's going on here when I explain it. The rest say stupid shit like "why don't you automate it" or "make an intern do it." You won't let me hire an intern and even if I did, I'm not sure I could explain how the shipping works now to even trust someone else to do it. I'm hoping when the shipping guy gives me the new sheet that maybe there's some easier solution here because I'm ready to start shooting people.2
So here I am coming to the end of the week after getting The Porcupines big web project into production. Pulled a 38 hour straight from Sunday to Monday chopping wood to make the thing fly. Pulled in other programmers and content creators to get the site full of something we did not have a week before. The fun part was having the account manager right there for 30 plus hours and actually seeing what it take to save a project when the client just thinks "it's just code". Now the boss has is asking for a list of all the work out of spec as they are bitching about the extra cost. These were the clients who did not read the functional spec and raked me over the coals after release that the home page did not match the design (the home page matched the design). I warned my team this would happen. They get all swept up in the hype and We can win! frame of mind and you can bet when the bitching starts it will come back to the paperwork you did at the beginning and the change requests and productions systems reports so you can wave it in front of ungrateful clients and not end up sad. Make sure you keep notes and document all of the requests and changes from internal and external even if you do not have to. one day it will save your ass and you will be able to whip it out and be a smiling motherfucker.
After three months of development, my first contribution to the client is going live on their servers in less than 12 hours. And let me say, I shall never again be doing that much programming in one go, because the last week and a half has been a nightmare... Where to begin...
So last Monday, my code passed to our testing servers, for QA to review and give its seal of approval. But the server was acting up and wouldn't let us do much, giving us tons of timeouts and other errors, so we reported it to the sysadmin and had to put off the testing.
Now that's all fine and dandy, but last Wednesday we had to prepare the release for 4 days of regression testing on our staging servers, which meant that by Wednesday night the code had to be greenlight by QA. Tuesday the sysadmin was unable to check the problem on our testing servers, so we had to wait to Wednesday.
Wednesday comes along, I'm patching a couple things I saw, and around lunch time we deploy to the testing servers. I launch our fancy new Postman tests which pass in local, and I get a bunch of errors. Partially my codes fault, partially the testing env manipulating server responses and systems failing.
Fifteen minutes before I leave work on the day we have to leave everything ready to pass to staging, I find another bug, which is not really something I can ignore. My typing skills go to work as I'm hammering line after line of code out, trying to get it finished so we can deploy and test when I get home. Done just in time to catch the bus home...
So I get home. Run the tests. Still a couple failures due to the bug I tried to resolve. We ask for an extension till the following morning, thus delaying our deployment to staging. Eight hours later, at 1AM, after working a full 8 hours before, I push my code and leave it ready for deployment the following morning. Finally, everything works and we can get our code up to staging. Tests had to be modified to accommodate the shitty testing environment, but I'm happy that we're finally done there.
Staging server shits itself for half a day, so we end up doing regression tests a full day late, without a change in date for our upload to production (yay...).
We get to staging, I run my tests, all green, all working, so happy. I keep on working on other stuff, and the day that we were slated to upload to production, my coworkers find that throughout the development (which included a huge migration), code was removed which should not have. Team panics. Everyone is reviewing my commits (over a hundred commits) trying to see what we're missing that is required (especially legal requirements). Upload to production is delayed one day because of this. Ended up being one class missing, and a couple lines of code, which is my bad (but seriously, not bad considering I'm a Junior who was handed this project as his first task at his first job).
I swear to God, from here on out, one feature per branch and merge request. Never again shall I let this happen. I don't even know why it was allowed to happen, it breaks our branch policies. But ohel... I will now personally oppose crap like this too...
Now if you'll excuse me... I'm going to be highly unproductive and rest, because I might start balding otherwise after these weeks...
At the phone with the client, (some days before i sent him the release of the software he commissioned to me with 2 lines of instructions referred to the files name)
Him: I've got a problem installing the software can you help me?
I: Of course, what is the error message?
Him: some kind of error Driver SQL ODBC not found, i don't know...
I: Did you install the drivers?
Him: i'm a mechanic i don't....
I (interrupting him): The file is in the same folder as the exe, I mentioned that step in the mail:
Him: oh ok it's that i read the mail some days ago.
So Thursday our first beta client is supposed to go live. Tomorrow there is a team meeting to discuss the status. Team lead wasn't in at work last Thursday and Friday and gave me his work to finish, which I need to proceed with mine. I hardly made progress on it. So now I have to tell him about that tomorrow. And I'm dreading it so hard. More so because for some reason HR/support sits in on our meetings and will be on my ass again I'm not meeting deadlines. I did say last week it looked like it wouldn't be done in time but I was told it just needs to happen because the release date was already announced. So yeah the coming week is going to suck. And I'm on leave myself this coming Friday so I expect people to explode. I know I should just stop caring and get on with job searching but the whole injustice of being set up for failure by others and then being blamed really makes me mad.3
Extremely frustrated with the release process and versioning system at my current company. Don't know if this is same everywhere or the half ass release managers can't think of a better way here.
Basically for any client raised issue that can't wait for next release are built as a hotfix. However hotfixes are never bundled togather or shiped to other clients. This is causing a vicious chain, two clients raise two separate issues on same version. Instead of fixing them as single hotfix (however minor the issues) we create two hotfix versions for each with only their issue. A week later same clients come back with the issue the other raised. Once again instead of bundling what is now effectively same code we build hotfixes on top of the clients respective branches. We now have two branches to maintain with same codebase. No matter how serious issue, the hotfix is never made generally available and always created on client's specific hotfix version.
Now that was an example for only two clients, in reality we have released five patch versions of a product in last 2 years. Each product version contains about a dozen artifacts (webapps, thick clients, etc) with its own version. Each product version being shipped to various clients. Clients being big banks never take a patch of product even if it fixes their issues and continues requesting hotfix. We continue building hotfixes on client branch and creat ever increasing tech debt. There is never a chance to clean up or new development. Just keep doing hotfix after hotfix of same things.
To top if all off, old branches are still in svn while new in git. Old branches still compile with ant new with maven. Old still build with java 5,6,7 while current with 8. Old still build from old jenkins serve pipelines while new has different build server. Old branches had hardcoded integration db details which no longer exists so if tou forget to change before releasing it doesn't work.
Please tell me this is not normal and that there are better ways to do this? Apologies I think I rambled on for too long 😅5
Client: $importantThing is a go live feature now.
Me: Okay, but it would considerably postpone the release date.
Client: Oh well, then maybe after release. However, do $lessImportantThing for go live, no matter how long it takes.
First. I clarify my work schedule is from 7am to 4pm. I have a personal emergency so I must leave on time today.
Now my story: Today (finally) at noon they decide to publish the iOS and Android applications. The thing with the Android application is the other Developer is with a last minute improvement (since Monday) and is not over.
It's 2:45, the iOS app has already been sent for review, but Android is not. So when the Architect says that he already talked to the client and told him that everything is ready today, I asked the Developer if Android is already? and his response was "Almost I will finist at 3pm or 3:30".
(Hmmm) I'm worried about time so I say Ok, then Android will be published tomorrow! God he needs to finish the development, and I'm going to take new screenshot, do the merge with the development branch and everything that's need for a production release. So, the Project Manager says "Hell no! It will release today!" My answer: I have to leave at 4 and there is a lot of haste to do something so delicate.
I'm still waiting for an answer in slack from her.
Then the architect very "professionally" tells the other Developer to do it himself. It's almost 6pm and they still have not done anything
So I started a new job back in April with a the developer on a government project being developed by a reputable international organization, lets call them R. Once the project reaches a an acceptable release stage, maintenance, changes and integration into the eco system falls to me. This project started about 3 years ago and the original team from R was "changed" because they claimed the product was ready for go live when it wasn't.
My job since then has mostly been analyst and QA work identifying issues with conversations like this:
Me to Client: I don't think this feature is working as it should be.
Client: You're right.
R.dev: This feature is working according to signed off SRS and assumptions register.
Client: Yes but the SRS and assumptions are wrong.
Me: Facepalms. Oh this other feature isn't working correctly either, this should generate A according to SRS but I'm getting G.
R.dev: Yes but that would take a major change to the system.
Me: [Blank stare]
R.dev: Ok, we can give you E.
Client: OK we corrected the errors in the SRS and the assumptions register we've signed off on this, please use these going forward.
R.dev: OK we reviewed and made changes.
Client: Um, these are wrong the calculations are off.
R.dev: We did it according to your SRS and assumptions register.
Client: Oh, wait, these formulas are wrong.
Me & R.dev: [Blank stares furiously]
Client: The sponsor won't pay the next stage until you reach an acceptable release. Fix these critical issues and we can worry about the rest in support.
R.dev: ... OK, we will deliver by X date.
[7 Days to delivery of changes]
R.dev: We postponed development till (deliveryDate + 8) when we meet with the sponsor.
Me: But that's when we should start the next UAT for go live for the New Year...
I left a management job for this so I could code more. 180 issues later I still haven't seen the source code... fml
Silver Lining: Still gettin' paid though
Our client supposedly managed our Jira board yesterday in preparation for the release to live.
It was a mess. We have two people on this project - so our effective maximum workload is 10 days worth of tickets.
The current sprint plus the next have over 60 tickets in them, with the other "light" sprints having about 15 days worth in them.
I know you shouldn't get caught up over estimates too much, but they're in place for a reason.
The client really needs a reality check, and to be reasonable. When looking from a macro perspective he loses sight of all reason and scope, trying to grossly overfill what the two of us can handle.
A junior and student placement dev can only do so much.
I guess time will tell how realistic 16th April is..
How much of development is commenting out sections of code because the client hasn't sent you the data and next release uncommenting it?5
What the actual motherfucking fuck? What have I done so bad in my previous life to get this shit? Did I slay little cute puppies?
So I got a call from the client and he argued about how slow the system runs or that it happens that the copy commands fails.
It sounded interessting and I didn't know in what kind of rabbithole I'm going through.
The system is always in the year 2012 (don't ask why, it's just hardcoded ... another rant story).
Some of you maybe know that bug because it was very popular.
Wayne train, let's continue -> I saw that the copy command fails sometimes and that the system has a high CPU usage and futex lockups. Pretty strange and doesn't seem obivous why that is.
Sadly there are no logs in the system (not implemented and again ... another.fucking.rant.story.)
The system is kinda old and to patch it would mean to port shitty written programs and I don't have the time for that..
After searching and testing for weeks I finally found the fucking fuckidi fucked up problem.
A WRONG IMPLEMENTATION OF THE MOTCHERFUCKING LEAPSECOND CAUSED THIS SHITTY SHIT. A.FUCKING.LEAPSECOND. In all this time I questioned my OWN FUCKING SANITY! NOT EVERY FUCKING MINUTE HAS 60 SECONDS. THERE ARE SOME WITH 61!!
I'm just mad af. It's such a release to find the solution but it's so fucked up you just wanna jump of a bridge
Here if you are interested about this bullshit: https://bugs.launchpad.net/ubuntu/...
Told client in review meeting with missing PM (vacation) that the live release of their new website for the end of may is very optimistic and we probably should target a later date due to more change and feature requests.
1.5 weeks pass and the clients sends updated requests and also their new launch date: 18th if May.
Yeah sure also write your emails to the PM that is on vacation - like you’ve been informed of several times.
When deadlines get even shorter, I really envy not-agency people.2
I have so much to rant right now. So much. Life is pretty much a tight rope walk right now.
But the project I'm working on right now is annoying. I've ten days to release. It's a website on WordPress. They want complex animated crap using GSAP that fucks readability in the ass. I don't even know how to do animations. I don't JS damn it. Apparently readability is not what we want. We want attention grabbing. It's a fucking government initiative website for crying out loud. Why not put a carousel with my curated list of porn then? They also want the pages to be build using blocks of modules on a page builder so that the client can produce new pages without our help. I still don't have the final designs even. When I asked for the mobile designs, they told me to "just make it look not broken". Uggh.
They spent three weeks making some shit on Squarespace and now they expect me to finish the entire fucking thing with the slutty animations, disgusting text sizes and fucked up designs sense and symmetry in pretty much a week.
And the fucking fuck faced poopy pant regional manager had the balls to tell me I'm not being undersold if I accept his measly offer for a permanent position with a salary less than a 6k per year than what people in my school usually get. -_-5
3 weeks back took a bug..
Looked into it and found that it is exist in older version(say V1) as well.
Sent mail to client stating i can fix this in current version (say V2). Since V1 is already released and our current code stream is V2 and so if we fix in V2 , the code will not reach V1 code base.
**explained to client**
Client : I mean if you fix why it won't work in older release.
Me: Explains how code streams will work.
Client : Okay.. but it will support the functionality in V1 , right ?
Me: (*internally* are fucking kidding me? It won't work dumb ass.) No. It won't work in older versions. I am fixing it in V2.
client: okay.. Let's proceed.
Me: Done code changes. Send code to review. (we have to send review to upper level manager).
Manager1 : I didn't liked this part. can you change this ?
Me : sure. Done.
Manager1 : Now i liked it. Sent review to Manager2.
Me: why the fuck ? Are you not sure about my changes are good?
Manager 2: I liked it, but need some log changes.
Me: Fuckkkk...... Let me change this.. Done. Now can I promote those changes?
Manager2: No we need to send review to client manager as well.
Me: Goddammit.. Okay.. sent review.
*After a fucking week..*
Client Manager : Looks good. Push the code.
(This process took 18 days which would have been completed in 3 days if there is only one peer review)
Now the other guy from client whose tracking the bugs reported why it took so long to fix it.
I think my client manager is over paid and can't even know how his company code stream works. Fuck you . why client has these lazy ass old fucking "I don't look into my email" type people. God I hate these "I am in rich country" people.2
We're spending more time shipping dud code to close tickets from our biggest client than we are actually working on the next release.
So I tried to fix an app today that we made for a client ...
It's a Cordova project that's basically jus a wrapper for a certain section of the client's website that's displayed inside an iframe inside said app (with a bit of additional CSS and such). It's all working fine.
The problem is, said scrolling effect inside said iframe does not work inside the iOS version of the app (does, however, when the content of the iframe is viewed (by just visiting the URL) inside Safari), instead, the iframe just scrolls back to top.
So after five and a half hours of depression, anger and rage, also some repetetive cursing towards Apple (just like every time something has to do with their awful products), my boss walks in, looks at me and says:
"I'd be fine with it, if I just had to manually scroll instead".
If it wasn't 5pm already (I usually go home at 6), I would've just left the room / gone home or gotten my salad from the fridge to have something to release my anger on.
Seriously though, what the fuck!?
A client just replied to a two month old email telling him that the next release will contain a fix for a bug asking whether this release will fix that bug... Mkay then...
So here it is. Apple release, second round.
This time, uploads to AppStoreConnect took 3 hours and 40 minutes. Submission of the app was at 0.04, just after the planned launch day. Android submission tomorrow.
Tomorrow, and Friday are public holidays.
I'll have to work those, at best being able to not work on the weekend. The client has already told me he's calling me tomorrow morning to talk about things.
I don't want praise, but I'd like him to respect that while I may just be a lowly developer, I would like to have a life.
When are the happy times coming?
So, if anyone remembers my previous rants (or otherwise), the app I'm working on is finally going to release. We release in about a week and a half, despite having at minimum 10 days work + testing (not including all testing of aws migration that we still haven't fully completed) to even have an MVP.
This is all because the clients have been pushing a release date (16th July) in marketing. Oh, and the icing on the cake? Our boss agreed for a submission to app stores (back-end pending) on Friday (yes, in like 3 days) instead of the agreed next Wednesday date.
Side note: the client is coming over to our office for Thursday and Friday. Why? We are unsure.
What's the most insane deployment scheme you've had to work with? One client has a release schedule that deploys all major projects once a month(!). Bugfixes get deployed once a day (systemwide), so any issue that can't be verified until it's in production has at least a days delay when iterating.
Need some advise from all you clever devs out there.
When I finished uni I worked for a year at a good company but ultimately I was bored by the topic.
I got a new job at a place that was run by a Hitler wannabee that didn't want to do anything properly including writing tests and any time I improved an area or wrote a test would take me aside to have a go so I quit after 3 months.
Getti g a new job was not that hard but being at companies for short stints was a big issue.
My new job I've been here 3 months again but the code base is a shit hole, no standardisation, no one knows anything about industry standards, no tests again, pull requests that are in name only as clearly broken areas that you comment on get ignored so you might as well not bother, fake agile where all user stories are not user stories and we just lie every sprint about what we finished, no estimates and so forth, and a code base that is such a piece of shit that to add a new feature you have to hack every time. The project only started a few months back.
For instance we were implementing permissions and roles. My team lead does the table design. I spent 4 hours trying to convince him it was not fit for purpose and now we have spent a month on this area and we can't even enforce the permissions on the backend so basically they don't exist. This is the tip of the iceberg as this shit happens constantly and the worst thing is even though I say there is a problem we just ignore it so the app will always be insecure.
None of the team knows angular or wants to learn but all our apps use angular..
These are just examples, there is a lot more problems right from agile being run by people that don't understand agile to sending database entities instead of view models to client apps, but not all as some use view models so we just duplicate all the api controllers.
Our angular apps are a huge mess now because I have to keep hacking them since the backend is wrong.
We have a huge architectural problem that will set us back 1 month as we won't be able to actually access functionality and we need to release in 3 months, their solution even understanding my point fully is to ignore it. Legit.
The worst thing is that although my team is not dumb, if you try to explain this stuff to them they either just don't understand what you are saying or don't care.
With all that said I don't think they are even aware of these issues somehow so I dont think it's on purpose, and I do like the people and company, but I have reached the point that I don't give a shit anymore if something is wrong as its just so much easier to stay silent and makes no difference anyway.
I get paid very well, it's close to home and I actually learn a lot since their skill level is so low I have to pick up the slack and do all kinds of things I've never done much of like release management or database optimisation and I like that.
Would you leave and get a new job?2
I was so bored the other day, that I wrote a fat client in C# to calculate happy numbers. I used BackgroundWorker class, because I was hoping to be able to cancel the calculation process. It turned out I couldn't. Rats.
Out of pure frustation, I wrote the same program in Java using Swing and SwingWorker. Here, the cancel feature worked just fine.
And then I had this "Wait ... What?!" moment, when I realized, that one of the programs was incredible slow. So I rewrote both codes, so that they used the same algorithm and similar classes. I compiled the C# program as release and ran it stand-alone, while I started the Java application from within the eclipse IDE.
The C# program needed 42.681 seconds for 100,000 happy numbers, while the Java application completed the same task after 0.986 seconds. The result sets of both programs are the same.
Maybe I need a new PC (2007, 64 bit, 8 GB RAM, Windows 10). Or I'll get rid of C#.9
client kept changing in app for 6 months then complained that it took too much to finalize and other people might release the same app before his.2
Hi.. Is anybody familiar with the spring 5.x version with spring data. I am currently using spring 5.2.9 version and spring-data-mongodb 3.0.3.RELEASE. When i tried saving data i am getting below error. java.lang.NoSuchMethodError: com.mongodb.client.MongoCollection.insertOne(Ljava/lang/Object;)Lcom/mongodb/client/result/InsertOneResult;1