Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "i don't like this client"
-
Well, it happened. The stupidest request, no demand, I have ever, and most likely will ever receive...
Me: So what is it you're looking to do with your website.
Client: We're not showing up Facebook's home page. We need you to fix that. We have a budget of $10,000 to make this happen right now.
Me: As much as I'd love to take your money, that isn't something I can control. Every "home page" is profile-based, which technically isn't a homepage, but a "feed" that changes constantly. So say you create a profile on Facebook, only those you follow, and paid posts show up on your feed. What I can do however is use your budget to create and promote posts from your company page to show on users' feeds. If you're serious about marketing, we can start slow at $250/week, then work our way up or down based on results until your budget is exhausted, then re-evaluate the budget at that time. I can tailor a retainer for you based on the number of ads per week that you'd like to make.
Client: No, this is not what we're asking for at all.
Me: Okay...what is it you're looking for exactly? Run through this in as much detail as possible so I can get on the same page.
Client: We want to be on the main home page of facebook.com. We want our logo on that page when people sign up to make an account, linking to our website.
Me: That's simply not possible. That's Facebook's own home page. Nobody has a right to edit that other than Facebook itself.
Client: Bullshit. There's a Facebook developers section with APIs to edit and view Facebook's entire website. We would do it ourselves, but we signed up and don't understand how to change it in Chrome. That's why we need you and [referring client] said you were the best guy for our needs.
Me: That API has no control over Facebook's corporate data, including their own home page. That API designed ONLY for sections in which you are authorized to access or modify, such as your personal profile or created page for your business.
Client: We know that it can be done. If you don't do it, we'll find someone else who can.
Me: Well good luck with that, because the only way it would be remotely possible to do that WILL involve prison time, since that would be illegal. The only legal way to do it would be to buy Facebook, and they'll laugh you out of the building with that offer. But I'm done with this conversation because I have work to complete from clients that aren't delusional. Have a nice day! [hang up]
----
What. The. Fuck.26 -
One of our web developers reported a bug with my image api that shrunk large images to a thumbnail size. Basically looked like this img = ResizeImage(largeImage, 50); // shrink the image by 50%
The 'bug' was when he was passed in the thumbnail image and requesting a 300% increase, and the image was too pixelated.
I tried to explain that if you need the larger image, use the image from disk (since the images were already sized optimally for display) and the api was just for resizing downward.
Thinking I was done, the next day I was called into a large conference room with the company vice-president, two of the web-dev managers, and several of the web developers.
VP: "I received an alarming email saying you refused to fix that bug in your code. Is that correct?"
Me: "Bug? No, there is no bug. The image api is executing just as it is supposed to."
MGR1: "Uh...no it isn't. Images using *your* code is pixelated and unfit for our site and our customers."
MGR2: "Yes, I looked at your code and don't understand what the big deal is. Looks like a simple fix."
<web developers nodding their heads>
Me: "OK, I'll bite. What is the simple fix?"
<MGR2 looks over at one of the devs>
Dev1: "Well, for example, if we request an image resize of 300, and the image is only 50x50, only increase the size by 10. Maybe 15."
Me: "Wow..OK. So what if the image is, for example, 640x480?"
MGR1: "75. Maybe 80 if it's a picture of boots."
VP: "Oh yes, boots. We need good pictures of boots."
Me: "I'm not exactly sure how to break this to you, but my code doesn't do 'maybe'. I mean, you have the image from disk.
You obviously used the api to create the thumbnail, but are trying to use the thumbnail to go back to the regular size. Why not use the original image?"
<Web-Dev managers look awkwardly towards the web devs>
Dev3: "Yea, well uh...um...that would require us to create a variable or something to store the original image. The place in the code where we need the regular image, it's easier to call your method."
Me: "Um, not really. You still have to resolve the product name from the URL path. Deriving the original file name is what you are doing already. Just do the same thing in your part of the code."
Dev2: "But we'd have to change our code"
Mgr2: "I know..I know. How about if we, for example, send you 12345.jpg and request a resize greater than 100, you go to disk and look for that image?"
<VP, mgrs, and devs nod happily>
Me: "Um, no that won't work. All I see is the image stream. I have no idea what file is and the api shouldn't be guessing, going to disk or anything like that."
Dev1: "What if we pass you the file name?"
<VP, mgrs, and devs nod happily again>
Me: "No, that would break the API contract and ...uh..wait...I'm familiar with your code. How about I make the change? I'm pretty sure I'll only have to change one method"
VP: "What! No...it’s gotta be more than that. Our site is huge."
<Mgrs and devs grumble and shift around in their chairs>
Me: "I'm done talking about this. I can change your code for you or you can do it. There is no bug and I'm not changing the api because you can't use it correctly."
Later I discovered they stopped using the resize api and wrote dynamic html to 'resize' the images on the client (download the 5+ meg images, and use the length and width properties)22 -
Management : "How long you think it would take?"
Me : "now this is a rough estimate, but I think building the back-end and database alone could take 6-months minimum"
Management : "WHAT ARE YOU TALKING ABOUT? YOU ARE NOT SERIOUS"
me : "its a big proj..."
Management : "I thought it will be something like 10 days, already told the client it can be done"
me : "but we are not ready"
Management : "how are we not ready? we already have the virtual 3D shop, and we can use this ready-to-deploy eCommerce service as our data base "
... "you need to figure this out, this is not acceptable" he continued
* 2 Days Later -talking to my direct boss *
Boss : "since you don't know how to do it..."
me : "what ? I didn't say I can't do it, all I said it will take six months"
Boss : "yeah yeah, anyway there is this studio, a professional polish studio, we called them and they can do it, we will sign a contract with them, this will let you focus on the front-end. good?"
me : "well alright then"
Boss : "please write a doc, explaining everything needed from the backend"
-to me that was the end of it, took a long time to tell me they made the deal-
* 5 Months later *
- "Abdu, can you come here for a minute..."
- "yes boss?"
- "the document we asked you to do for the Polish studio, did you specify that we needed an integration with the API we are using for eCommerce?"
scared to death I answered : "why of course I did!"
I ran to my PC to check it out because I didn't know, I forgot because no one even comment on my doc. I check it out, and it was clearly explained... I got relaxed...
turns out they didn't even do what we asked them for. took them 5 months, and with no communication whatsoever. all their work was useless to us. complete dump waste.
----------------
never mentioned this until a year later... in a heat of moment when they were asking me to make an impossible task with no men and no time... I reminded them of this story... management didn't like it. but it was the truth. they didnt push this crazily this time13 -
So, since I hear from a lot of people (on here and irl) that Linux has a 'very high learning curve', let me share my experiences with the first time my dad touched Linux (Elementary OS) without me interfering at all! (keep in mind that he is very a-technical)
*le me boots the system* (I already did setup a user account for him and gave him the password).
Dad: *enters password and presses enter*
Me: "Hmm that went faster than expected."
Dad: "Uhm I know how to login son, it's not that hard and pretty obvious".
Me: "Alright, why don't you try to open up the default word documents editor on here! I'll be right back!"
Me: *Goes away and returns after a minute*.
Dad: *already a few test sentences typed in LibreOffice writer* it's going pretty well :)!
Me: "Oo how did you find that?!"
Dad: "Well, there's a thingy that says 'applications' so I clicked in and found it in the "Office" section, do you think I am blind or something?!"
Me: 😐. uhm no but I just didn't think you'd find it that quickly. Now try to install Chromium browser! *thinking: he'll fail this one for sure* I'll be right back :).
Me: *returns again after a minute or so*
Dad: *already searching for stuff through Chromium*
Me: "wait, how the hell did you do that so quickly, it's not the easiest thingy for most people".
Dad: "Jesus, it's not that hard! I went to the application browsing thingy, typed 'software' and then a sorta software store icon showed up so I clicked it and it opened a windows with a search bar saying something like 'search for applications/software'. clicked in it, typed 'chromium', saw it coming up, there was a very clear 'install' button, it asked for my password, I put it in and after a little it gave a notification that it was installed. Then I went to that application browsing thingy again and typed Chromium. Then I hit enter because it selected an icon called chromium...."
Me: O.o. Okay this is going very good, now open an email client and login to your email address!
Dad: *goes to application browsing thingy, types 'email', evolution icon shows up, dad clicks it, email address setup steps show up and dad follows them quickly. After about a minute, everything is setup.
I expected this to be a hard process for someone who dealt with Windows his entire life but damn, I underestimated it.
Asked him if he found it easy/what he liked about it:
"Well, it's very clear where I can find everything, default browser/email/word document editor programs are easy to find and that's about all I need so yeah, great system!"
I am proud of you, dad!77 -
Its Friday, you all know what that means! ... Its results day for practiseSafeHex's most incompetent co-worker!!!
*audience: wwwwwwooooooooo!!!!*
We've had a bewildering array of candidates, lets remind ourselves:
- a psychopath that genuinely scared me a little
- a CEO I would take pleasure seeing in pain
- a pothead who mistook me for his drug dealer
- an unbelievable idiot
- an arrogant idiot obsessed with strings
Tough competition, but there can be only one ... *drum roll* ... the winner is ... none of them!
*audience: GASP!*
*audience member: what?*
*audience member: no way!*
*audience member: your fucking kidding me!*
Sir calm down! this is a day time show, no need for that ... let me explain, there is a winner ... but we've kept him till last and for a good reason
*audience: ooooohhhhh*
You see our final contestant and ultimate winner of this series is our good old friend "C", taking the letters of each of our previous contestants, that spells TRAGIC which is the only word to explain C.
*audience: laughs*
Oh I assure you its no laughing matter. C was with us for 6 whole months ... 6 excruciatingly painful months.
Backstory:
We needed someone with frontend, backend and experience with IoT devices, or raspberry PI's. We didn't think we'd get it all, but in walked an interviewee with web development experience, a tiny bit of Angular and his masters project was building a robot device that would change LED's depending on your facial expressions. PERFECT!!!
... oh to have a time machine
Working with C:
- He never actually did the tutorials I first set him on for Node.js and Angular 2+ because they were "too boring". I didn't find this out until some time later.
- The first project I had him work on was a small dashboard and backend, but he decided to use Angular 1 and a different database than what we were using because "for me, these are easier".
- He called that project done without testing / deploying it in the cloud, despite that being part of the ticket, because he didn't know how. Rather than tell or ask anyone ... he just didn't do it and moved on.
- As part of his first tech review I had to explain to him why he should be using if / else, rather than just if's.
- Despite his past experience building server applications and dashboards (4 years!), he never heard of a websocket, and it took a considerable amount of time to explain.
- When he used a node module to open a server socket, he sat staring at me like a deer caught in headlights completely unaware of how to use / test it was working. I again had to explain it and ultimately test it for him with a command line client.
- He didn't understand the need to leave logging inside an application to report errors. Because he used to ... I shit you not ... drive to his customers, plug into their server and debug their application using a debugger.
... props for using a debugger, but fuck me.
- Once, after an entire 2 days of tapping me on the shoulder every 15 mins for questions / issues, I had to stop and ask:
Me: "Have you googled it?"
C: "... eh, no"
Me: "can I ask why?"
C: "well, for me, I only google for something I don't know"
Me: "... well do you know what this error message means?"
C: "ah good point, i'll try this time"
... maybe he was A's stoner buddy?
- He burned through our free cloud usage allowance for a month, after 1 day, meaning he couldn't test anything else under his account. He left an application running, broadcasting a lot of data. Turns out the on / off button on the dashboard only worked for "on". He had been killing his terminal locally and didn't know how to "ctrl + c a cloud app" ... so left it running. His intention was to restart the app every time you are done using it ... but forgot.
- His issue with the previous one ... not any of his countless mistakes, not the lack of even trying to make the button work, no, no, not for C. C's issue is the cloud is "shit" for giving us such little allowances. (for the record in a month I had never used more than 5%).
- I had to explain environment variables and why they are necessary for passwords and tokens etc. He didn't know it wasn't ok to commit these into GitHub.
- At his project meetups with partners I had to repeatedly ask him to stop googling gifs and pay attention to the talks.
- He complained that we don't have 3 hour lunch breaks like his last place.
- He once copied and pasted the same function 450 times into a file as a load test ... are loops too mainstream nowadays?
You see C is our winner, because after 6 painful months (companies internal process / requirements) he actually achieved nothing. I really mean that, nothing. Every thing was so broken, so insecure / wide open, built without any kind of common sense or standards I had to delete it all and start again ... it took me 2 weeks.
I hope you've all enjoyed this series and will join me in praying for the return of my sanity ... I do miss it a lot.
Yours truly,
practiseSafeHex20 -
Client: we need you to give us access to the code ASAP. We don't like this black box approach.
Me: You have always had access to the code. It is here on this bitbucket repo and your usernames have admin access.
Client: We want the code moved to our GitHub before EOD.
I check out how to move repos over and it's fairly easy.
Me: just give me access to create a repo on your GitHub account and you can have the code moved over.
Client: Sorry it's late in the day and we stepped out to get drinks. (It was 2:30 pm). Not sure why you think there is a rush on this, we'll handle it first thing next week.
Me: WTF14 -
Oh, man, I just realized I haven't ranted one of my best stories on here!
So, here goes!
A few years back the company I work for was contacted by an older client regarding a new project.
The guy was now pitching to build the website for the Parliament of another country (not gonna name it, NDAs and stuff), and was planning on outsourcing the development, as he had no team and he was only aiming on taking care of the client service/project management side of the project.
Out of principle (and also to preserve our mental integrity), we have purposely avoided working with government bodies of any kind, in any country, but he was a friend of our CEO and pleaded until we singed on board.
Now, the project itself was way bigger than we expected, as the wanted more of an internal CRM, centralized document archive, event management, internal planning, multiple interfaced, role based access restricted monster of an administration interface, complete with regular user website, also packed with all kind of features, dashboards and so on.
Long story short, a lot bigger than what we were expecting based on the initial brief.
The development period was hell. New features were coming in on a weekly basis. Already implemented functionality was constantly being changed or redefined. No requests we ever made about clarifications and/or materials or information were ever answered on time.
They also somehow bullied the guy that brought us the project into also including the data migration from the old website into the new one we were building and we somehow ended up having to extract meaningful, formatted, sanitized content parsing static HTML files and connecting them to download-able files (almost every page in the old website had files available to download) we needed to also include in a sane way.
Now, don't think the files were simple URL paths we can trace to a folder/file path, oh no!!! The links were some form of hash combination that had to be exploded and tested against some king of database relationship tables that only had hashed indexes relating to other tables, that also only had hashed indexes relating to some other tables that kept a database of the website pages HTML file naming. So what we had to do is identify the files based on a combination of hashed indexes and re-hashed HTML file names that in the end would give us a filename for a real file that we had to then search for inside a list of over 20 folders not related to one another.
So we did this. Created a script that processed the hell out of over 10000 HTML files, database entries and files and re-indexed and re-named all this shit into a meaningful database of sane data and well organized files.
So, with this we were nearing the finish line for the project, which by now exceeded the estimated time by over to times.
We test everything, retest it all again for good measure, pack everything up for deployment, simulate on a staging environment, give the final client access to the staging version, get them to accept that all requirements are met, finish writing the documentation for the codebase, write detailed deployment procedure, include some automation and testing tools also for good measure, recommend production setup, hardware specs, software versions, server side optimization like caching, load balancing and all that we could think would ever be useful, all with more documentation and instructions.
As the project was built on PHP/MySQL (as requested), we recommended a Linux environment for production. Oh, I forgot to tell you that over the development period they kept asking us to also include steps for Windows procedures along with our regular documentation. Was a bit strange, but we added it in there just so we can finish and close the damn project.
So, we send them all the above and go get drunk as fuck in celebration of getting rid of them once and for all...
Next day: hung over, I get to the office, open my laptop and see on new email. I only had the one new mail, so I open it to see what it's about.
Lo and behold! The fuckers over in the other country that called themselves "IT guys", and were the ones making all the changes and additions to our requirements, were not capable enough to follow step by step instructions in order to deploy the project on their servers!!!
[Continues in the comments]26 -
I'm at my seat during the regular morning routine of checking emails, planning the things I need to complete/study when my phone rings.
HR: Good Morning, can you come over to the conference room please ?
Me: Sure
I enter the conference room and on the other side of the table, I see a group of 3 HR Managers (not a very nice feeling), especially when it was 10 months into my first job as a Trainee Software Developer.
HR: The company hasn't been performing as expected. For this reason, we've been told to cut down our staff. We're sorry but we have to let you go. You've been doing a great job all along. Thank you.
Me: ---- (seriously ?!)
The security-in-chief 'escorts' me out of the premises and I hand over the badge. I'm not allowed to return to my desk.
This happened about 16 years ago. But it stuck with me throughout my programming career.
A couple of Lessons Learnt which may help some of the developers today :
- You're not as important as you think, no matter what you do and how well you do it.
- Working hard is one thing, working smart is another. You'll understand the difference when your appraisals comes around each year.
- Focus on your work but always keep an eye on your company's health.
- Be patient with your Manager; if you're having a rough time, its likely he/she is suffering more.
- Programming solo is great fun. However it takes other skills that are not so interesting, to earn a living.
- You may think the Clients sounds stupid, talks silly and demands the stars; ever wonder what they think about you.
- When faced with a tough problem, try to 'fix' the Client first, then look for a solution.
- If you hate making code changes, don't curse the Client or your Manager - we coders collectively created a world of infinite possibilities. No point blaming them.
- Sharing your ideas matter.
- Software Development is a really long chain of ever-growing links that you may grok rather late in your career. But its still worth all the effort if you enjoy it.
I like to think of programming as a pursuit that combines mathematical precision and artistic randomness to create some pretty amazing stuff.
Thanks for reading.14 -
Client: Where are we with the project, it's been a week and I see nothing.
Me: You asked me to do something that was not in the agreed scope of work, which has kept me from starting on the project.
Client: Do I need to plan out everything in advance on paper for you to get it done in a timely manner?
Me: Is that a serious question? Yes, you should. That's the whole point of creating a scope of work. It's to allow me to schedule out the time necessary to build out a product in a "timely manner".
Client: I don't appreciate your attitude. This is not how you should be doing business if you like making money.
Me: I don't appreciate your condescending, unreasonable, dickhead mentality that makes you think it's remotely okay to act like you're better than me. Money doesn't grant you the right to be a dickwad, and just because I'm being paid doesn't mean I have to put up with any level of arrogance or disrespect.
I am in this business to make money, but not at the cost of my dignity and self-respect. You will be receiving a full refund later today, not because I have to provide a refund, but because I never want to communicate with you ever again moving forward. Take your unacceptable bullshit somewhere else.14 -
I absolutely HATE "web developers" who call you in to fix their FooBar'd mess, yet can't stop themselves from dictating what you should and shouldn't do, especially when they have no idea what they're doing.
So I get called in to a job improving the performance of a Magento site (and let's just say I have no love for Magento for a number of reasons) because this "developer" enabled Redis and expected everything to be lightning fast. Maybe he thought "Redis" was the name of a magical sorcerer living in the server. A master conjurer capable of weaving mystical time-altering spells to inexplicably improve the performance. Who knows?
This guy claims he spent "months" trying to figure out why the website couldn't load faster than 7 seconds at best, and his employer is demanding a resolution so he stops losing conversions. I usually try to avoid Magento because of all the headaches that come with it, but I figured "sure, why not?" I mean, he built the website less than a year ago, so how bad can it really be? Well...let's see how fast you all can facepalm:
1.) The website was built brand new on Magento 1.9.2.4...what? I mean, if this were built a few years back, that would be a different story, but building a fresh Magento website in 2017 in 1.x? I asked him why he did that...his answer absolutely floored me: "because PHP 5.5 was the best choice at the time for speed and performance..." What?!
2.) The ONLY optimization done on the website was Redis cache being enabled. No merged CSS/JS, no use of a CDN, no image optimization, no gzip, no expires rules. Just Redis...
3.) Now to say the website was poorly coded was an understatement. This wasn't the worst coding I've seen, but it was far from acceptable. There was no organization whatsoever. Templates and skin assets are being called from across 12 different locations on the server, making tracking down and finding a snippet to fix downright annoying.
But not only that, the home page itself had 83 custom database queries to load the products on the page. He said this was so he could load products from several different categories and custom tables to show on the page. I asked him why he didn't just call a few join queries, and he had no idea what I was talking about.
4.) Almost every image on the website was a .PNG file, 2000x2000 px and lossless. The home page alone was 22MB just from images.
There were several other issues, but those 4 should be enough to paint a good picture. The client wanted this all done in a week for less than $500. We laughed. But we agreed on the price only because of a long relationship and because they have some referrals they got us in the door with. But we told them it would get done on our time, not theirs. So I copied the website to our server as a test bed and got to work.
After numerous hours of bug fixes, recoding queries, disabling Redis and opting for higher innodb cache (more on that later), image optimization, js/css/html combining, render-unblocking and minification, lazyloading images tweaking Magento to work with PHP7, installing OpCache and setting up basic htaccess optimizations, we smash the loading time down to 1.2 seconds total, and most of that time was for external JavaScript plugins deemed "necessary". Time to First Byte went from a staggering 2.2 seconds to about 45ms. Needless to say, we kicked its ass.
So I show their developer the changes and he's stunned. He says he'll tell the hosting provider create a new server set up to migrate the optimized site over and cut over to, because taking the live website down for maintenance for even an hour or two in the middle of the night is "unacceptable".
So trying to be cool about it, I tell him I'd be happy to configure the server to the exact specifications needed. He says "we can't do that". I look at him confused. "What do you mean we 'can't'?" He tells me that even though this is a dedicated server, the provider doesn't allow any access other than a jailed shell account and cPanel access. What?! This is a company averaging 3 million+ per year in revenue. Why don't they have an IT manager overseeing everything? Apparently for them, they're too cheap for that, so they went with a "managed dedicated server", "managed" apparently meaning "you only get to use it like a shared host".
So after countless phone calls arguing with the hosting provider, they agree to make our changes. Then the client's developer starts getting nasty out of nowhere. He says my optimizations are not acceptable because I'm not using Redis cache, and now the client is threatening to walk away without paying us.
So I guess the overall message from this rant is not so much about the situation, but the developer and countless others like him that are clueless, but try to speak from a position of authority.
If we as developers don't stop challenging each other in a measuring contest and learn to let go when we need help, we can get a lot more done and prevent losing clients. </rant>14 -
Client: I want the best.
Me: *starts designing a complex and pretty neat website*
Client: I don't like that. I want this. *shows me website design from 1998*
Me: *cries myself to sleep*4 -
Client: I want you to reverse engineer this piece of software!!
*posts some link to an exe on altervista along with some unrelated crap*
Oh and "I PAY"! (Because you can't even take that for granted anymore these days.)
Me: Alright, I'll look into it but I'm not a reverse engineering expert so don't expect too much.
*Closes Facebook*
Client, day after: Hey have you looked into it already? Have you finished it already?! HEY, RESPOND ALREADY!!!
Me (thinking): YEAH AFTER 1 DAY AND NO PAYMENT DETAILS WHATSOEVER, I INSTANTLY DROPPED EVERYTHING JUST TO PLEASE YOU, FILTHY RAT SACK!! You fucking wish, motherfucker. Down to lowest priority you go! And if I don't feel like doing it, how about I just drop your request and tell you to suck my fleshy snek, HOW ABOUT THAT HUH? Fucking piece of shit 😤12 -
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 ...
<audience-shouting>
DEALING! ... WITH! ... IDIOTS!
</audience-shouting>
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:
1) Ass
2) Hole
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,
practiseSafeHex14 -
I was hired as a senior software engineer. During handover I found out I'm actually replacing the CTO.
I queried why he was leaving and got a simple "just want a break from working" which I found odd.
Fast forward and now I also just want a break from work, permanently. This place has followed every bad practise and big no-no out there. Every bit of software is a built in house knockoff janky piece of crap that doesn't work and makes people's jobs 5000 times harder.
The UI looks worse than Windows 3.1, absolutely horrendous code formatting, worst database structure I've ever seen.
The mere mention of using a team communication tool results in being yelled at from the CEO whom communicates purely via email, who then gets annoyed when you don't reply because they sent the email to a client instead of you.
We get handed printed out "tickets" to work instead of the so called "amazing in house ticket system" built using PHP 5 and is literally crammed into an 800x600 IFrame. Yes a F$*#ing IFRAME!
It's not like we have an outdated TFS server that has work items we can use...
Why not push for changes you say. I have, many times, tried to suggest better tools. The only approval I've gotten is using PhpStorm. Everything else is shutdown immediately and you get the silent treatment.
The CEO hired me to do a job, then micromanages like crazy. I can't make UI changes, I can't make database changes, why? They insists they know best, but has admitted multiple times to not knowing SQL and literally uses a drag and drop database table builder.
Every page in the webapps we make are crammed into 800x600 iframes with more iframes inside iframes. And every time it's pointed out we need to do something, be it from internal staff or client suggestions, the CEO goes off about how the UI is industry leading and follows standards.. what in the actual f....
Literally holding on by a thread here. Why hire a CTO under the guise of being a senior developer but then reduce the work that can be done down to the level of a junior?
Sure the paycheck is really nice but no job is worth the stress, harassment and incompetent leadership from the CEO.
They've verbally abused people to the point they resign, best part is that was simply because the CEO made serious legal mistakes, was told about it by the employee then blamed it on others.21 -
So our company hired a new COO few months ago, and he oversees digital department as well
recently he called the digital department into his office to talk about a new campaign for a client, and client's mascot is a ladybug, so he goes like this
COO: So i was thinking, we need to make people more aware about the new branch opening
COO: I have a creative / innovative idea, we probably can get an award for this and I'm sure client will be really impressed with this. Why don't we put ladybugs on Google homepage, just walking around flapping their wings and stuff, i mean everyone visits Google right ?
Our Team: awkwardly looking at each other
Me: 😐😐😐😐
( I was confused what to think )
Then our designer calmly explained him why it wouldn't work while we were trying our best not to laugh
how the fuck someone like him manage to stay alive all these years and become a COO, i mean he doesn't have to know it all but damn this is common sense10 -
So I own a webshop together with a guy I met at one of my previous contract jobs. He said he had a great idea to sell product X because he can get them very cheap from another European country. Actually it is a great idea so we decided to work together on this: I do everything tech related, he does the non tech stuff.
Now we are more than 1 year in business. I setup a VPS, completely configured it, installed and setup the complete webshop, built 2 custom PrestaShop modules, built many customizations, built a completely new order proces (both front and back end), advertised quite some products, did some link building, ensured everything is in place to do proper SEO, wrote some content pages, did administration and tax declarations, rewrote a part of a PrestaShop component because it was so damn inefficient and horribly slow, and then some more. Much more.
He did customer relation management, supplier management and some ad words campaigns. Promised me many times to write the content for our product pages. This guy has an education in marketing but literally said: I'm not gonna invest in creating some marketing plan. I have no ambition in online marketing.
What?! You have the marketing knowledge and skills but refuse to use it to market our webshop and business? What the fuck is wrong with you?!
Today he says to me: 'Hey man, this is becoming an expensive hobby as we don't sell much and have lots of costs. I don't understand why I should be the one to write these content pages. Everything you did in the past 8 months can be done in less than 20 hours! You are a joke and just made it a big deal by spreading your work over so many months. I know for sure because I currently work at a company where I'm surrounded by front end devs! Are you fucking crazy?! You're a liar.'
He talks like this to me every 2 months or so while he can't even deliver the content for 1 single product in 6 fuckin' months! We even had to refund a few of our customers because Mr. client relations manager didn't respond to their e-mails within 1 fucking week!! So I asked him how could that have happened as you do the client relations and support. Well, he replied to me: 'Why didn't YOU respond to our clients? You don't log on in our back office at least once a day?!'.
Of course I do asshole. But YOU don't. He replied that I was lying just like I was lying about what I did for our business.
So, asshole, let's have a look at PrestaShops logs to see who's logging in daily. Well, you can probably guess who's IP was there in most of the entries. It wasn't his.
So, what the fuck have you been doing then?! You can't even manage to respond quickly to a client?!! We have maybe 50 clients and if we get 1 question a month by email it is already a lot. But you keep bitching, complaining and insulting me instead?!!!
Last time he literally admitted on a WhatsApp conversation that he had and still has the hope that he could just sit back and relax and watch me do ALL the work.
Well, guess what you fucking moron. That's not what we agreed upon. You fuckin' retard think you're so smart but you say EVERYTHING on WhatsApp! Including your promises to me. Thank you you fuckin' piece of dog shit because now I have hard evidence and will hand it over to my lawyer to make you pay every god damn cent for all the hours I've spent working on our business. Oh, and I'll take over the webshop and make it a success on my own because I know damn well how to get relevant traffic and thus customers.
You just go get yourself fucked in the ass without lubricant you fuckin' asshole. I have told you you shouldn't fuck with me because I take business very seriously. I even warned you when you were crossing a line again. Well, if you don't listen... You will pay for the consequences. I will be so damn happy to tell you 'I told you so' with a very very big smile on my face. That momemt WILL come, 'partner'.
Fuck you. You will be fucked. Count on that. Fucking asshole.8 -
Wow this one deserves a rant. Where should I even begin? I got a new job for over half a year now doing work in an agency. We're building websites and online shops with Typo3 and Shopware (not my dream, but hey). All fine you might think BUT...
1) I have been working on the BIGGEST project we have all by myself since I started working at this company. No help, nobody cares.
2) If something goes wrong all the shit falls back to me like "wHy DiDnT yoU WoRk MoRE?". Seriously? How should one dev cover a project that's meant for at least two or three.
3) The project was planned four years ago (YES that's a big fat FOUR) and sat there for 3,5 years - nobody gave a fuck. I got into the company and immediately got the sucky shit project to work on.
4) I was promised some time to get familiar with the projects and tech we use and "pick something I like most to get started". Well that never happened.
5) I was also promised not to talk directly to our customers. Well, each week I was bombarded with insults, a shitload of work and nonsense by our customers because (you guessed it) I was obligated to attend meetings.
6) The scheduled time for a meeting was 30 minutes, sometimes they just went on for over two hours. Fml.
7) Project management. It does not exist. The company is just out to get more and more clients, hires more god damn managers and shit and completely neglects that we might need more devs to get all this crap finished. Nope, they don't care. By the way: this is not like a 200 employee company, it's more like 15 which makes it even sadder to have 4 managers and 3 devs.
8) We don't use trello (or anything to keep track of our "progress"), nobody knows the exact scope of the project, because it was planned FOUR FUCKING YEARS AGO.
9) They planned to use 3 months on this project to get it finished (by the way it's not just an online shop, it has a really sophisticated product configurator with like 20 dependencies). Well, we're double over that time period and it is still not finished.
10) FUCK YOU SHOPWARE
11) The clients are super unsatisfied with our service (who would have guessed). They never received official documents from us (that's why nobody knows the scope), nor did they receive the actual screen design of the shop so we just have to make it up on the go. Of course I mean "I" by "we", because appearently it is my job to develop, design and manage this shit show.
12) My boss regularly throws me in front of the bus by randomly joining meetings with my client telling them the complete opposite of things that we discussed internally (he doesn't know anything about this stupid project)
13) FUCK YOU COLLEAGUES, FUCK YOU COMPANY, FUCK YOU SHOPWARE AND FUCK YOU STUPID CUSTOMERS.
14) Oh btw. the salary sucks ass, it's barely a couple of bucks above minimum wage. Don't ask me why I accepted the offer. I guess it was better than nothing in the meantime.
Boy that feels good. I needed that rant. But hey don't get me wrong. I get that dev jobs can be hard and sucky, but this is beyond stupidity that I can bear. I therefore applied for a dev job in research at a university in my dream country. Nice colleagues, interesting projects, good project management. They accepted me, gave me a good offer and I can happily say that in 6-7 weeks my current company can go fuck themselves (nobody knows the 10.000+ lines of code but me). Just light it up and watch it burn!20 -
One day I developed a simple website for a goldsmith who I already new for a year or so.
We discussed everything and agreed on a feature set, price and a deadline when it should be ready. Based on this we signed a contract and I started my work.
Unfortunately at the same time I lost most of my childhood friends. I moved to a new city and started to study computer science, which was awesome on the contrary.
This is where the horror began.
I was totally occupied by the studying, my partner, myself and by the shit of life.
It knocked on my door. The horror decided to pay me a visit.
"Had a look at your calendar recently? Just saying..."
Shit! The deadline came closer and closer everyday and the pile of work undone grew with it. At that point I had to do something. I don't know what it was or how I did it, but somehow I managed to finish the project just in time. I was totally not proud of it, but it featured what was required.
The day before I contacted my client, the horror knocked on my door again. He said:
"You really should have a look at your hard drive."
"Why? everything seems allright."
"Well, then look closer."
"Fuck."
"Right."
Well, there are backups at least, I thought to myself. I'll just recover the last state. That was an annoying thought, but nothing serious. That's just one or two days of w... - Wait, what? Where are my backups? What the actual fuck? Why is the zip file broken? Why doesn't the flash drive work anymore? FUUUCK!!
I was lost. It was a complete nightmare.
Each time my telephone rang the following days, my heart skipped a beat. Finally my client's name appeared on the display. I answered the call, my hands shaking.
"Hey there! I'm calling to discuss the website project with you."
"Well, about that..."
"Yeah, I know you put a huge amount of efford in it so I'm really sorry to say that I on the other hand can't effort the money. Actually I'd like to simply forget about this whole idea."
Seriously? What the fuck just happend? I suddenly noticed a sticky note infront of me reading:
"It was really fun to see you suffer, but I have to go! See ya
- The Horror"
"Hello, are you still there? Do you hear me?", yelled a voice through my phone.
"Uh, yeah. You know, that project was a lot of work and... but you know what? It was actually a pretty fun exercise and I'm doing well over here, so because it's you I'd agree."
I heared a reliefed sigh from the other end of the line.
"Really good! I owe you something! Bye!"
What. The. Fuck.14 -
Client: why hasnt anything been done for the new site?
Me: because you never paid for the last one thats been put into production
Client: yeah but that was a smaller simple site. I need this one up and done already
Me: it'll be worked on when I get paid for my previously worked time for you.
Client: but that was a month ago. I don't understand why you are asking for payment now
Me: because you never paid me for last months work!!
Client: but its may now
Me: holy shit, -clients name-, I know very well what month it is and dont need a lesson. I also know better than to work for free. I have bills to pay just like you and everyone else so until you have paid the last invoice, I'm not lifting a finger for you. That includes answering your calls
Client: oh well why didnt you just say that to begin with
Motherfucking fuck people are horrid and dumb and make me violent6 -
Ok, so I have a SAAS website where users pay a daily fee to use my platform as there fundraiser landing page.
A new client comes, asks for a discount, and got a 50% off because his brother was a previous client.
Him: Can you please add a list of the days of the year so a donor can donate a day?
Me: Sure, sounds like a good idea, and will probably take me about a week to implement with testing etc. And so I want $$ (hourly rate * one week) for the work.
Him: Don't bluff me I understand a bit in programming, it shouldn't take you more than an hour, and I am paying you, so you should do it for free.
Me: Ok, here is a fair deal, since you understand in programming, build it for me, I give you two weeks and I will pay you double what I am asking for.
Him: I don't understand enough to do it myself, I just estimated how much work it is.
Me: Forget about it, if you want me to build you this feature, you pay. If not you can go to my competition happily.
Who needs bad clients at all?
Why do they think they know everything?
And why don't they understand that time is money?5 -
I usually don't work for indian clients. But when I do, they make sure I don't get paid.
Some highlights from my last project,
Client: Do you know ERPnext?
Me: No, but I am good at python.
Client: My boss wants me to find a guy who can create barcode generator for erpnext.
Me: I can use pyBarcode to do it.
This is exciting I thought. I get to learn a new framework. Start working on it. Not an hour passes by,
Client: hey can you remove this menu item?
Me: Which one?
Client: Also can you add the dashboard icons to left sidebar? Like Odoo? Do you know it? It is also python based.
Me: Then why don't you just use Odoo instead?
Client: My boss wants it. He doesn't understand computers. He is pissing mr off.
Me: Then how come he suggested erpnext?
Client: His friend told him.
*experience mindfuck*
For the next 3 days he has me working on these UI tweaks, never mentions barcode again.
But I finish the barcode stuff. Tripple check everything to make sure they work. Tell him to check so I can get paid. Guy asks his boss to check.
Boss > Client: It doesn't work
Me: What doesn't work?
Boss > Client: Everything!
Client: I actually tested everything and they work. My boss doesn't know how to use it. He is very old.
Makes me make more changes and finally when I ask for the work done so far,
Client: Boss didn't come to office today. I'll get you paid. Please try to understand my situation.
Me thinking, "mofo your boss didn't hire me,l. You did". But I keep calm and tell him I won't work until I get paid 50%.
3 days passed. No reply. Set his skype status to "Away" forever.
*spidey sense tells me I'm not getting paid, again*
U am beyond pissed and burnt out. I fucking wish there was a mafia I can request to collect my fucking money from them.20 -
1. Do you know why my computer is so slow?
2. What cellphone do you recommend me to buy? (They always end up buying the cheapest)
3. What do you do at work? (Answer: "I create applications". Anything more complex than that is not going to be understood or they will loose interest)
4. Something is wrong with the: [TV, Cellphone, microwave, etc.]. Could you please take a look? (Believe or not, if something works with electricoty, my family thinks I can fix it).
5. Is it true that if I send this WhatsApp message to all my contacts I will have more options?
6. I need to build an application that (pretty much The Matrix), how much time do you need and how much would cost? Don't you dare to give me wrong numbers. (We have to see the future)
7. (Continuing the previous point, a non-technical client) I don't think that would take so much time/money. (Every time)
8. I want to use the latest Front-End frameworks. I want to see all those beautiful animations in my page and that it runs smoothly... I also need that it runs in IE 5.
9. So, you have been working in the back end? If you don't have a screen to show to the client is like you didn't do anything in this sprint.
10. Why haven't you built and million dollar application? Everybody is doing that right now....
Yep, those are only a few downsides of our profession if we count family, friends and even co-workers. But I can't imagine myself doing anything else.6 -
I have a client (a friend of a friend of a friend) who came to me to build them a "simple" booking solution for their home cleaning business. Easy enough, I first thought.
Having taken a deposit based on my initial quote and contracts all signed, roll on exactly 8 months to where I find myself today.
It turns out, there is no cleaning business as the business will be totally reliant on the website. The original goalposts have now been moved to a completely different fucking country. The (now) required functionality has STILL yet to be finalised (I told client I'm not writing another line of code until EVERYTHING has been mapped out and made crystal clear), as every single face-to-face meeting / back and forth email turns into the client requesting hundreds more brilliant, essential features that make absolutely ZERO fucking sense. And now, to top it all off and push me into writing my first ever rant on here, I've just received an email from the client this morning saying "what I would like to have is like an online restaurant live booking system". WTF?!?!?
I work from home and have only my dog for company today, so please don't judge me. Just needed to let it all out.11 -
I realize I've ranted about this before, but...
Fuck APIs.
First the fact that external services can throw back 500 errors or timeouts when their maintainer did a drunk deploy (but you properly handled that using caching, workers, retry handlers, etc, right? RIGHT?)...
Then the fact that they all speak a variety of languages and dialects (Oh fuck why does that endpoint return a JSON object with int keys instead of a simple array... wait the params are separated with pipe characters? And the other endpoint uses SOAP? Fuck I need to write another wrapper class around the client...)
But the worst thing: It makes developers live in this happy imaginary universe where "malicious" is not a word.
"I found this cloud service which checks our code style" — hmm ok, they seem trustworthy. Hope they don't sell our code, but whatever.
"And look at this thing, it automatically makes database backups, just have to connect to it to DigitalOcean" — uhhh wait...
"And I just built this API client which sends these forms to be OCR processed" — Fuck... stop it... there are bank accounts numbers on those forms... Where's that API even located? What company?
* read their privacy policy *
"We can not guarantee the safety of your personal data, use at your own risk [...] we are located in Russia".
I fucking hate these millennial devs who literally fail to get their head out of the cloud.
Somehow they think it's easier to write all these NodeJS handlers and layers around some API, which probably just calls ImageMagick + Tesseract on the other side.
If I wasn't so fucking exhausted, I'd chop of their heads... but they're like hydra, you seal one privacy breach and another is waiting to be merged, these kids just keep spewing their crap into easy packages, they keep deploying shitty heroku apps... ugh.
😖8 -
The most pissed off I've been at work?
Client X came to us for a website.
We secretly outsourced the work.
Client X is coming for a visit in 10 mins...
MD to me: "I've told them your lead dev on this. They're not super-technical so if they ask you about the project just tell them it's going well."
Now I'm not a comfortable blagger, I don't have that kind of confidence, so to ask me to lie like this makes me feel really stressed and uncomfortable. Furthermore, I had literally no idea about any aspect of the work we were supposedly doing for this client. I can barely contain my panic but my colleagues help me piece together a basic understanding.
The MD returns: "They're here now. Can you quickly go and check that the toilets are clean."
WHAT THE FUCK!? The little prick. I'd knock him out if wasn't so meek and pathetic. I tell myself that I'm being helpful and nice but in truth I'm just his fucking doormat and he has zero respect for me.
I have no problem cleaning stuff (we all basically tidy up behind us) but this is something he could have done. Furthermore, who cares? None of us leave the loos with piss on the floor and shit smeared across the walls. They're never anything less than client-ready so to ask me to check means that he's already checked them himself and one of the loos is not quite shiny enough.
The reader may feel that this is no big deal (and in some ways you're right) but everything about this scenario was fucked up. The MD had embroiled the whole company in a lie and assumes we're all okay with that, then to add insult just nonchalantly orders me to clean the bogs. The cunt.
FWIW The client didn't ask to talk to me or use the toilet during their visit.8 -
I once had a client who wanted a system where no matter what type of file someone uploaded we'd make a PDF out of it. I don't mean "print to PDF", I mean like a straight conversion. A picture, a doc file, a speadsheet, an MP3, a video, a CAD file, a .ivt file format you and I make up right now and tell no one else about for storing Iowan votes, anything.
I told him that was impossible.* There are indeed things out there where you can print to a pdf, but it would mean that a program that knows what a .grml file is, and how to represent it on paper, assuming it even can be, is involved in the middle.
He refused to believe me, and found a company where the sales person swore up and down their product could do it. I said "then you explained it wrong" and we went back and forth. It culminated in me being put in contact with THEIR programmer. I explained what he was looking for. Their programmer replied along the lines of "but that's impossible, and also what would a PDF of half these examples even look like?" I basically said "I know, but your guy is telling my guy you can do this, so you need to tell your guy to STFU before we ALL get roped into trying to convert Duke Nukem maps and zip files full of dlls to pdfs."
Luckily it finally died after that, but the whole ordeal took months.
*I'm being direct/blunt for the sake of brevity when recapping what I said, just fill in the usual "talking with a client niceties"12 -
In my opinion, business as usual.
1. Work from home if possible. Cars fuck up the environment and no one likes traffic jams, use transportation sparingly. Pandemic or not.
2. I never want to shake the filthy sweaty hands of untrusted peasants, I don't care if you're a CEO representing our biggest client. An acknowledging nod is sufficient.
3. Why the FUCK do I feel sneeze droplets raining down the escalator? I don't care WHAT you're infected with, just sneeze in your elbow. No, don't sneeze in your hand either you dimwitted mongrel, because too many people insist on ignoring rule 2.
4. The news just taught you how to wash your hands? You mean, you didn't learn that in elementary school?
5. Pandemic or not, if you're sick, fucking stay at home. Why do people suddenly need a "policy" for this? Wasn't this always the common sense rule? Employers who don't send sick workers home actively sabotage their own business, even when it's "just a mild flu".
6. Keep some distance from me in public whenever possible. Again, pandemic or not... It's called personal space.
7. I understand that wearing mouth masks is not culturally integrated in the west like it is in Japan, but maybe it should be. Not for egocentric self preservation when you're healthy, but out of politeness to the public when you're sick. They actually work much better for that purpose, and it decreases the chance I will break your neck when you violate point 3.
I'm not a total germaphobe. I'll gladly engage in a filthy orgy with a dozen friends... As long as they've showered, aren't coughing, and don't have snot running down their chins.
The general hygiene level of the population is so fucking awful.
Pandemic, or not, it doesn't matter.27 -
Ok, so I don't work yet and so I've never had to deal with any clients but based on the rants i have read this is how stupid I imagine most of them are.
Dev: Hey, would you like a chocolate bar?
Client: Yeah, sure.
Dev: here:
*hands chocolate bar over*
*client holds it in his hands, opens it and eats it*
Client: Tastes great
Dev: Ok, nice. So about the payment of the project...
*Clients face is swollen and he falls to the ground*
Dev: uhh, what are you doing?
Client *coughing*: Were.. were there nuts in the chocolate bar?
Dev: uhmm, yes. didn't you look at it?
Client: why didn't you tell me??!?!?!? I am allergic to nuts!!
Dev: uhh, I didn't know that. But srsly, did you not look at the wrapping of the fucking chocolate bar??!
Client: I am going to sue you!! You will go to prison!
Dev: Fuck off *leaves the room*
Image of the chocolate bar:5 -
At the data restaurant:
Chef: Our freezer is broken and our pots and pans are rusty. We need to refactor our kitchen.
Manager: Bring me a detailed plan on why we need each equipment, what can we do with each, three price estimates for each item from different vendors, a business case for the technical activities required and an extremely detailed timeline. Oh, and do not stop doing your job while doing all this paperwork.
Chef: ...
Boss: ...
Some time later a customer gets to the restaurant.
Waiter: This VIP wants a burguer.
Boss: Go make the burger!
Chef: Our frying pan is rusty and we do not have most of the ingredients. I told you we need to refactor our kitchen. And that I cannot work while doing that mountain of paperwork you wanted!
Boss: Let's do it like this, fix the tech mumbo jumbo just enough to make this VIP's burguer. Then we can talk about the rest.
The chef then runs to the grocery store and back and prepares to make a health hazard hurried burguer with a rusty pan.
Waiter: We got six more clients waiting.
Boss: They are hungry! Stop whatever useless nonsense you were doing and cook their requests!
Cook: Stop cooking the order of the client who got here first?
Boss: The others are urgent!
Cook: This one had said so as well, but fine. What do they want?
Waiter: Two more burgers, a new kind of modern gaseous dessert, two whole chickens and an eleven seat sofa.
Chef: Why would they even ask for a sofa?!? We are a restaurant!
Boss: They don't care about your Linux techno bullshit! They just want their orders!
Cook: Their orders make no sense!
Boss: You know nothing about the client's needs!
Cook: ...
Boss: ...
That is how I feel every time I have to deal with a boss who can't tell a PostgreSQL database from a robots.txt file.
Or everytime someone assumes we have a pristine SQL table with every single column imaginable.
Or that a couple hundred terabytes of cold storage data must be scanned entirely in a fraction of a second on a shoestring budget.
Or that years of never stored historical data can be retrieved from the limbo.
Or when I'm told that refactoring has no ROI.
Fuck data stack cluelessness.
Fuck clients that lack of basic logical skills.5 -
When I opened my digital agency it was me and my wife as developers, I had no savings and I needed to get long contracts ASAP which luckily I did straight away.
Lovely client, had worked for them before as a consultant so i thought it would be a breeze. Let's just say the project should've been named "Naivete, Scope Creep and Anger: The revenge".
What happened is that when this project was poised to end I naively thought I would be able to close the job, so I started looking for a new full time consultancy gig and found one where I could work from home, and agreed a starting date.
Well, the previous job didn't end because of flaws in my contract the client exploited, leaving me locked in and working full time, for free, for basically as long as he wanted (I learned a lot the hard way at that time) and I had already started the new agreed job. This meant I was now working 2 full time shifts, 16 hours per day.
Then, two support contracts of 2 hours per day were activated, bringing my work load to 20 hours/day.
I did this for 4 months.
The first job was supposed to last one month, and I was locked into it, all others had no end in sight which is a good thing as a freelancer, but not when you are locked into a full time one already. I could've easily done one 8 hours shift and two 2 hours jobs per day, but adding another 8 hours on top of it was insanity.
So I was working 10 hours, and sleeping 2. I had no weekends, didn't know if it was day or night anymore, I was locked in my room, coding like a mad man, making the best out of a terrible situation, but I was mentally destroyed.
I was waking up at 10am, working until 8pm, sleeping 2 hours until 10pm, working until 8am, sleeping 2 hours until 10am, and so on. Kudos to my wife for dealing with account and project management and administration responsibilities while also helping me with small pieces of code along the way, couldn't have survived without the massive amount of understanding she offered.
In the end:
- I forcefully closed the messed up contract job and sent all the work done to another digital agency I met along the way, very competent people, as I still cared about the project.
- I missed a deadline on my other full time contract by 2 days, meaning they missed a presentation for Adobe, of all people, and I lost the job
- The other two support contracts were finished successfully, but as my replies were taking too long they decided not to work with us anymore.
So I lost 4 important clients in the span of 4 months. After that I took a break of one month, slept my troubles away, and looked for a single consultancy full time contract, finding it soon after, and decided I wouldn't have my own clients for a good while.
3 years since then, I still don't have the willpower or the resources to deal with clients of my own and I'm happily trudging along as a consultant, while still having middle of the night nightmare flashbacks to that time.2 -
!Story
The day I became the 400 pound Chinese hacker 4chan.
I built this front-end solution for a client (but behind a back end login), and we get on the line with some fancy European team who will handle penetration testing for the client as we are nearing dev completion.
They seem... pretty confident in themselves, and pretty disrespectful to the LAMP environment, and make the client worry even though it's behind a login the project is still vulnerable. No idea why the client hired an uppity .NET house to test a LAMP app. I don't even bother asking these questions anymore...
And worse, they insist we allow them to scrape for vulnerabilities BEHIND the server side login. As though a user was already compromised.
So, I know I want to fuck with them. and I sit around and smoke some weed and just let this issue marinate around in my crazy ass brain for a bit. Trying to think of a way I can obfuscate all this localStorage and what it's doing... And then, inspiration strikes.
I know this library for compressing JSON. I only use it when localStorage space gets tight, and this project was only storing a few k to localStorage... so compression was unnecessary, but what the hell. Problem: it would be obvious from exposed source that it was being called.
After a little more thought, I decide to override the addslashes and stripslashes functions and to do the compression/decompression from within those overrides.
I then minify the whole thing and stash it in the minified jquery file.
So, what LOOKS from exposed client side code to be a simple addslashes ends up compressing the JSON before putting it in localStorage. And what LOOKS like a stripslashes decompresses.
Now, the compression does some bit math that frankly is over my head, but the practical result is if you output the data compressed, it looks like mandarin and random characters. As a result, everything that can be seen in dev tools looks like the image.
So we GIVE the penetration team login credentials... they log in and start trying to crack it.
I sit and wait. Grinning as fuck.
Not even an hour goes by and they call an emergency meeting. I can barely contain laughter.
We get my PM and me and then several guys from their team on the line. They share screen and show the dev tools.
"We think you may have been compromised by a Chinese hacker!"
I mute and then die my ass off. Holy shit this is maybe the best thing I've ever done.
My PM, who has seen me use the JSON compression technique before and knows exactly whats up starts telling them about it so they don't freak out. And finally I unmute and manage a, "Guys... I'm standing right here." between gasped laughter.
If only it was more common to use video in these calls because I WISH I could have seen their faces.
Anyway, they calmed their attitude down, we told them how to decompress the localStorage, and then they still didn't find jack shit because i'm a fucking badass and even after we gave them keys to the login and gave them keys to my secret localStorage it only led to AWS Cognito protected async calls.
Anyway, that's the story of how I became a "Chinese hacker" and made a room full of penetration testers look like morons with a (reasonably) simple JS trick.9 -
My very first rant. I will try to make it count!
Recently my company had restructured with new GM who fired those who he didn't like and hired those who he did.
All ok I guess. And then...
We did a project for a big sportswear brand, interactive installation using WebSocket. My team developed the server with game engine and we also developed "shell front-end" with example code how to connect and interact with server.
Then we realized that our company was actually not hired by sportswear brand, rather by GM buddy-from-the-army tech vendor, who was hired by actual client.
Then, we also realized there is another company, that GM hired as freelancers, sitting at our office doing 'something'. And this 'other company' actually has same employees and address as GM's buddy company (meaning they are one entity with two names).
So.. what happened is that we get paid by party A, then we pay exactly the same amount to party B (which is actually same party A), and at the end... all our work was for free.
And then, this GM tells me I have to fire 2 developers from my team because we don't have enough business.
How did this guy even get to a position of this level?8 -
Since I was little I was fascinated by club light shows I saw on TV shows. I just couldn't find out how they made light react to sound, which were two completely unrelated things to me back then. But I wasn't dumb and somehow figured out that if I hooked some low energy fairy lights to my amp and turned the bass up, they would lightup to the beat.
3 fried fairy lights and angry parents for to loud music later I swore to myself that I would someday build something that could light up my whole room and react to the music I was playing.
I started coding about the age 13 (turned 20 a month ago) with some old school bat scripts. But I wanted something that would generate a .exe so I googled and ended up installing Visual Studio Express (again angry parents for installing without asking) and started copying my first VB.Net program together. From there no one could stop me. I wanted to archive something with an application and googled until I found what I needed and learned to code this way.
I learned writing decent vb.net code and itvwas about this time I came into contact with IRC. I lurked arround there and this is were I came into contact with Linix servers, because I wanted to code IRC (eggdrop) bots, so I learned TCL and got used to Linux. Time passed and I ended uo being a Global OP on some network back then.
I did go further, coded Minecraft Mods, thus Java, changed back to C#, learned PHP and started setting things up on my VPS, Mails server, web server, etc.
Nowadays I work as a Systemadmin / Developer Hybrid, earning my first real money doing what I love to do and guess what? In the meantime I proved myself I can accomplish what I wanted as kid. I bought some Club LED DMX capital lights and programmed a controller for them which can control them in C#, but in a way I can run it on my raspi using mono. I also coded a client which runs on windows which uses some native libraries to calculate the dominant color of the shown picture in realtime (Handels 24fps 1080p) and uses the lights as ambient light, like you see them behind TVs sometimes.
The same app uses Bass.NET and an algorithm to dedect a beat in realtime and switches the light colors. Exactly what I wanted as akid, but better.
I can even control the lights via the new Google Assistant and/or Tasker.
Feels fcking good.
Some of my work lies on github among other, mostly trash: https://github.com/Kimmax - didn't updated there in a while tho.
I plan on writing a new free opensource plugin based modular home automatication server and pretty sure could use some helping hands..
I don't know why I wrote all this, just felt like it.
Also: first Rant
Please don't kill me for errors in the text, I'm to lazy to read through it again right now :P8 -
3 rants for the price of 1, isn't that a great deal!
1. HP, you braindead fucking morons!!!
So recently I disassembled this HP laptop of mine to unfuck it at the hardware level. Some issues with the hinge that I had to solve. So I had to disassemble not only the bottom of the laptop but also the display panel itself. Turns out that HP - being the certified enganeers they are - made the following fuckups, with probably many more that I didn't even notice yet.
- They used fucking glue to ensure that the bottom of the display frame stays connected to the panel. Cheap solution to what should've been "MAKE A FUCKING DECENT FRAME?!" but a royal pain in the ass to disassemble. Luckily I was careful and didn't damage the panel, but the chance of that happening was most certainly nonzero.
- They connected the ribbon cables for the keyboard in such a way that you have to reach all the way into the spacing between the keyboard and the motherboard to connect the bloody things. And some extra spacing on the ribbon cables to enable servicing with some room for actually connecting the bloody things easily.. as Carlos Mantos would say it - M-m-M, nonoNO!!!
- Oh and let's not forget an old flaw that I noticed ages ago in this turd. The CPU goes straight to 70°C during boot-up but turning on the fan.. again, M-m-M, nonoNO!!! Let's just get the bloody thing to overheat, freeze completely and force the user to power cycle the machine, right? That's gonna be a great way to make them satisfied, RIGHT?! NO MOTHERFUCKERS, AND I WILL DISCONNECT THE DATA LINES OF THIS FUCKING THING TO MAKE IT SPIN ALL THE TIME, AS IT SHOULD!!! Certified fucking braindead abominations of engineers!!!
Oh and not only that, this laptop is outperformed by a Raspberry Pi 3B in performance, thermals, price and product quality.. A FUCKING SINGLE BOARD COMPUTER!!! Isn't that a great joke. Someone here mentioned earlier that HP and Acer seem to have been competing for a long time to make the shittiest products possible, and boy they fucking do. If there's anything that makes both of those shitcompanies remarkable, that'd be it.
2. If I want to conduct a pentest, I don't want to have to relearn the bloody tool!
Recently I did a Burp Suite test to see how the devRant web app logs in, but due to my Burp Suite being the community edition, I couldn't save it. Fucking amazing, thanks PortSwigger! And I couldn't recreate the results anymore due to what I think is a change in the web app. But I'll get back to that later.
So I fired up bettercap (which works at lower network layers and can conduct ARP poisoning and DNS cache poisoning) with the intent to ARP poison my phone and get the results straight from the devRant Android app. I haven't used this tool since around 2017 due to the fact that I kinda lost interest in offensive security. When I fired it up again a few days ago in my PTbox (which is a VM somewhere else on the network) and today again in my newly recovered HP laptop, I noticed that both hosts now have an updated version of bettercap, in which the options completely changed. It's now got different command-line switches and some interactive mode. Needless to say, I have no idea how to use this bloody thing anymore and don't feel like learning it all over again for a single test. Maybe this is why users often dislike changes to the UI, and why some sysadmins refrain from updating their servers? When you have users of any kind, you should at all times honor their installations, give them time to change their individual configurations - tell them that they should! - in other words give them a grace time, and allow for backwards compatibility for as long as feasible.
3. devRant web app!!
As mentioned earlier I tried to scrape the web app's login flow with Burp Suite but every time that I try to log in with its proxy enabled, it doesn't open the login form but instead just makes a GET request to /feed/top/month?login=1 without ever allowing me to actually log in. This happens in both Chromium and Firefox, in Windows and Arch Linux. Clearly this is a change to the web app, and a very undesirable one. Especially considering that the login flow for the API isn't documented anywhere as far as I know.
So, can this update to the web app be rolled back, merged back to an older version of that login flow or can I at least know how I'm supposed to log in to this API in order to be able to start developing my own client?6 -
Story time!
A little over a year ago I was in the hiring process with a new company and countered their initial offer. I was told by the CTO that it was no problem and they would get back to me soon.
A couple days go by and I'm then informed that they're hiring a new IT director and would like me to interview with him as well. It felt kinda lame since I'd already been offered the job but I rolled with it.
When I showed up to the office for an interview I tried to call and let them know I was there and couldn't get a hold of anyone. 30 minutes later I get a call from the CTO saying they couldn't find the new IT director and when they got him to answer the phone he said he had left early and would call me to do a phone interview.
Obviously the whole experience so far has been pretty lame but I stuck with it because I knew the CTO personally. I did the phone interview and quickly realized this dude was a prick, and would be a terrible boss, but I spoke with the CTO again who told me to stick with it and eventually I did get the job.
Fast forward about a month and it's clear the new director is trash. He literally bragged about firing a dude over an accidental outage (wtf!?).
He had the technical experience you'd expect of a junior help desk and his management skills were pretty clearly sub-par.
He was also, for whatever reason, completely unable to communicate with the only woman on our team. When assigning work he would always feel the need to ask if she could 'handle it' rather than just assigning it to her like it's done for everyone else. He was pretty clearly sexist.
The whole team hates this dude by this point but he's somehow managed to woo the executives into thinking he shits gold.
I was helping him set up a Python venv on his machine when I noticed another VPN client installed which certainly piqued my interest. After a bit of digging it was clear he was using company time and company equipment to continue working for his previous employer.
We turned over logs and he was fired the next day. He tried to add me on LinkedIn afterwards and I have never declined something quicker.
Moral of the story is don't be a dickhead.1 -
Motherfucking WordPress coupled with motherfucking sales people.
If you promise the client something, please fucking relay it via the correct process (i.e the fucking ticketing system that took me a month to write for the company - it's seriously just a click away on your desktop.). "I told your boss" is not a fucking apt excuse.
My boss forgets, and well, doesn't give a fuck about procedure either.
Now you phone my boss and he phones me, on a fucking Sunday evening, telling me that the client was promised a website by tomorrow morning at 10AM. You tell me this at fucking 9PM.
Why didn't you tell me earlier? How the fuck am I supposed to shit out something I would be proud of in a few hours? Nevermind me fucking up my sleeping routine; how the fuck?
Conversation went like this:
"xyz was promised this site by sales person fuckTwit, I need this live by Monday morning. I have sent you a few images. Make it in WordPress, client says they want a 'tangy looking theme'.
Me: it's a bit unrealistic requesting this, is there no way we can extend the time so I have time to create this?
Also, what do you mean by 'tangy'?
Boss: don't know. Make it happen. No excuses.
What the fuck is a tangy theme? When I become a webDev at the company? More importantly, fucking WordPress?!
Now I'm sitting on this shit, tired as a manatee in mating season, and using goddamn WordPress.
I have to halt my irritation, because I get severely irritated when I'm tired, I have to restrain myself from telling the involved parties tomorrow to install the FuckYourself WordPress plugin, coupled with a resignation letter.
Same sales person got me in shit a while ago, because I refused to give him access to the network to download fucking cartoons. Sales director went and moaned that his bitch (the sales person) needs this for a presentation. Yeah fucking right.
Go Snorkelling in a sewer truck you egotistic, megalomaniacal, indecent, outrageous, horrible motherfucker of a person.
Time to develop a fucking website with, oh, a company profile pamphlet.
Times like this I keep telling myself, "my time will come, my time will come".14 -
I was working as a contractor for a client who just got enough funding to hire a full-time dev. I lovingly referred to him as "Mr. Koolaid" because he was obsessed with whatever the newest hotness was and cried constantly about how the 3-year-old code-base didn't use The Next Big Thing(tm). This was my first interaction with him:
Mr. Koolaid: I'd like access to the github repository. My username is xxxx.
Me: We currently aren't hosting the code on github. If you send me your public ssh key, I'll get you access to the private server.
Mr. Koolaid: I'd like to access the github repository.
Me: It's not on github; send me your public key and I'll get you access.
Mr. Koolaid: Can we skype real quick? You don't need my public key to grant me access to the github repo.
*Mr. Koolaid proceeds to forward me github's documentation on adding users to an organization and the documentation for adding users to a private repo. The email is written in a very passive-aggressive tone.*
ಠ_ಠ9 -
Boy, this Monday mornig was crazy...
At 7 am, as I just left my flat, I received an ultra urgent email from the CEO of a company we exchanged the fileserver for, that the network shares are not available.
I instantly turned around, went back to my flat, fired up my HAL9000 supercomputer and connected remotely.
4 levels deep (PC => VPN => Remotedesktop => vSphere Client => VM) I felt like I was in the movie Inception and tried to figure out what happened.
I don't know why, but in the logs it said that the fileserver VM was down since 4am. Holy sithlord... why?
After restarting and the usual problems with Windows Network Names, everything was back online.
My special thanks go to Mr. Coffee, who is always a great companion during monday mornings, Mr. VPN, the great fellow who invented the VPN and last but not least "The Internet" for connecting me to a world of binary, where every idea finds a listener and where Ajit Pai can be memed without concequences.
FUCK YOU Ajit. Harlem Shake is so 2013.2 -
Let's see here, we have:
🤡 Creepy Cackle Guy: watches videos all day and cackles like a hyena, plus constantly farts, and complains a lot. He gets everyone gassed up, no pun intended.
😤Bitchy PM: argues with you about every little thing, lies to pad her metrics while screwing the dev's metrics over. Also lies about what clients say to force launch or what she feels client should do. Rude to clients & co-workers. Runs and tattles to higher ups when people call her out on her shit. Nobody can stand her, she get's the entire office upset.
🙉Darth Vader: I don't think this one needs explaining. He breathes SO freaking loud you can hear it across the room. He also won't talk to anybody. Ever.
🤐The Non-Stop Flapper: nice person, but chats you non stop about their mundane life events, even when your status is set to busy or they know you're swamped. Asks irrelevant questions all day, every day. Heart of gold but needs to reel in the chatting.
🤬 Mr.Rage: whines about EVERYTHING. I mean everything. Has also thrown his food on me once over a joke about pizza. Wants to move up to programming but cant program.
---
So between them all, I scream on the inside daily. 🙊😫😢13 -
This was not a client but my CEO himself. The website of the company was supposed to be made responsive. So, during the design phase I was explaining how how events should not be used to display ideal information as hover don't exist in touch devices. To this, he says, "Why don't you create something so that when the user has his hand over the phone(like an inch above, but not touched), it treats it like a hover".
The worst part is I still don't know if he was kidding or not!8 -
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 -
From my work -as an IT consultant in one of the big 4- I can now show you my masterpiece
INSIGHTS FROM THE DAILY LIFE OF A FUNCTIONAL ANALIST IN A BIG 4 -I'M NOT A FUNCTIONAL ANALYST BUT THAT'S WHAT THEY DO-
- 10:30, enter the office. By contract you should be there at 9:00 but nobody gives a shit
- First task of the day: prepare the power point for the client. DURATION: 15 minutes to actually make the powerpoint, 45 minutes to search all the possible synonyms of RESILIENCE BIG DATA AGILE INTELLIGENT AUTOMATION MACHINE LEARNING SHIT PISS CUM, 1 hour to actually present the document.
- 12:30: Sniff the powder left by the chalks on the blackboards. Duration: 30 minutes, that's a lot of chalk you need to snort.
13:00, LUNCH TIME. You get back to work not one minute sooner than 15.00
- 15:00, conference with the HR. You need to carefully analyze the quantity and quality of the farts emitted in the office for 2 hours at least
- 17:00 conference call, a project you were assigned to half a day ago has a server down.
The client sent two managers, three senior Java developers, the CEO, 5 employees -they know logs and mails from the last 5 months line by line-, 4 lawyers and a beheading teacher from ISIS.
On your side there are 3 external ucraininans for the maintenance, successors of the 3 (already dead) developers who put the process in place 4 years ago according to God knows which specifications. They don't understand a word of what is being said.
Then there's the assistant of the assistant of a manager from another project that has nothing to do with this one, a feces officer, a sys admin who is going to watch porn for the whole conference call and won't listen a word, two interns to make up a number and look like you're prepared. Current objective: survive. Duration: 2 hours and a half.
- 19:30, snort some more chalk for half an hour, preparing for the mail in which you explain the associate partner how because of the aforementioned conference call we're going to lose a maintenance contract worth 20 grands per month (and a law proceeding worth a number of dollars you can't even read) and you have no idea how could this happen
- 20:00, timesheet! Compile the weekly report, write what you did and how long did it take for each task. You are allowed to compile 8 hours per day, you worked at least 11 but nobody gives a shit. Duration: 30 minutes
- 20:30, update your consultant! Training course, "tasting cum and presenting its organoleptic properties to a client". Bearing with your job: none at all. Duration: 90 minutes, then there's half an hour of evaluating test where you'll copy the answers from a sheet given to you by a colleague who left 6 months ago.
- 22:30, CHANCE CARD! You have a new mail from the HR: you asked for a refund for a 3$ sandwich, but the receipt isn't there and they realized it with a 9 months delay. You need to find that wicked piece of paper. DURATION: 30 minutes. The receipt most likely doesn't even exist anymore and will be taken directly from your next salary.
- 23:00 you receive a message on Teams. It's the intern. It's very late but you're online and have to answer. There's an exception on a process which have been running for 6 years with no problems and nobody ever touches. The intern doesn't know what to do, but you wrote the specifications for the thing, 6 years ago, and everything MUST run tonight. You are not a technician and have no fucking clue about anyhing at all. 30 minutes to make sure it's something on our side and not on the client side, and in all that the intern is as useful as a confetto to wipe your ass. Once you're sure it's something on our side you need to search for the senior dev who received the maintenance of the project, call him and solve the problem.
It turns out a file in a shared folder nobody ever touches was unreachable 'cause one of your libraries left it open during the last run and Excel shown a warning modal while opening it; your project didn't like this last thing one bit. It takes 90 minutes to find the root of the problem, you solve it by rebooting one of your machines. It's 01:00.
You shower, watch yourself on the mirror and search for the line where your forehead ends and your hair starts. It got a little bit back from yesterday; the change can't be seen with the naked eye but you know it's there.
You cry yourself to sleep. Tomorrow is another day, but it's going to be exactly like today.8 -
Rant++
Just want to mention this mother fucker named Allen. Allen is a fuckin' badass. This guy fucks.
This bad mother fucker like single handedly wrote one of the best fuckin libraries for displaying tabular data, and threw in a shit ton of JSON capabilities just to make it that much fuckin' cooler.
And why? Because he fuckin fucks thats fucking why. I already told you.
And does this son of a fuck support his fucking product? You bet your sweet basement dwelling programming fucking ass that he does.
Dude works that support forum like he no doubt works that pussy. With full and complete knowledge and control, but with a gentle mature touch. Fuckin right.
Do you hate PHP? Well this fuck made a Node version? Do you hate Node? Use that shit with pure JS client side. This dude doesn't give a fuck. Don't have a table? Pass that shit JSON and GET A FUCKIN TABLE!!!
Some dipshit in your company needs to edit a database table but there's no way on sweet baby jesus's green earth you're giving that dumb fuck DB creds? Run that dumb fuck up a fully editable admin portal in like 5 fucking minutes because fuck him.
There are few things in my life I love. My corgi and my kids, and most days my wife.
But always fucking DATATABLES.
So, Allen Jardine... just wanted to give you and your product DataTables and Editor a fucking devRant shout out. It continues to be the one ray of light that works as expected and is extremely well supported when it doesn't and some days I just need that fucking consistency in my life man. So thanks.7 -
I was recuited to do devops work for a client. The project started in late '14. Until mid '15 I was forced to just sit there and do nothing. And I mean nothing. The ops team needed my help but the project lead didn't allow that (endless discussions). Somewhere around the end of '15 I could start to work and quickly learned that I had to report to two leads that couldn't disagree more on what to do and how to do it. I also learned that the companies mentality is "Clean me but don't get me wet". So the ops team demands a lot but is really uncooperative with everything. So I am currently sitting between three grindstones and everything I do is worthless. Because nobody agrees with anybody and I cannot fulfill my job for which I have been hired: Make ops more efficient because they are drowning in manual work. My job is further complicated by the following facts: This company uses no standard whatsoever but their own. Thru this they have created a Rube-Goldberg-Machine. But they think their system is the greatest in the world and the only one that makes sense. Which makes automation pointless because it is not maintainable. They call it diversity and they say that it is the clear reason why automation is not for them even though they schedule meeting after meeting in which they discuss about how to automate things. But in general they do just block everything useful and sabotage my work. And behind my back they make me the reason for the fail. Every real decision is blocked anyway. Also the ops guys think they are the leetest in the world. And everything they invent is above and beyond. If you ask them why they have over 400 VLANs for example (in a company of unter a thousand employees) they stutter and stumble because they cannot explain their complicated shit. They also change their decisions like underwear. Another really "kewl" thing they just did: They hired a devops engineer and everybody loves him. During the interview he said that he has no prior experience with devops whatsoever and it will take him around six month to get started on the basics of devops. I could go on for hours here about the insanity of this company that in my opinion will cease to exist within the next 5 years, if you ask me.
Long story short I am getting out of there by the end of march and will be on sabbatical shortly after because I am burned out. And I mean burned out. Not like "Oh I am burned out". I mean really burned out, with health problems and everything. Another external guy got out here last month because of the same health conditions.4 -
I absolutely love the email protocols.
IMAP:
x1 LOGIN user@domain password
x2 LIST "" "*"
x3 SELECT Inbox
x4 LOGOUT
Because a state machine is clearly too hard to implement in server software, clients must instead do the state machine thing and therefore it must be in the IMAP protocol.
SMTP:
I should be careful with this one since there's already more than enough spam on the interwebs, and it's a good thing that the "developers" of these email bombers don't know jack shit about the protocol. But suffice it to say that much like on a real letter, you have an envelope and a letter inside. You know these envelopes with a transparent window so you can print the address information on the letter? Or the "regular" envelopes where you write it on the envelope itself?
Yeah not with SMTP. Both your envelope and your letter have them, and they can be different. That's why you can have an email in your inbox that seemingly came from yourself. The mail server only checks for the envelope headers, and as long as everything checks out domain-wise and such, it will be accepted. Then the mail client checks the headers in the letter itself, the data field as far as the mail server is concerned (and it doesn't look at it). Can be something else, can be nothing at all. Emails can even be sent in the future or the past.
Postfix' main.cf:
You have this property "mynetworks" in /etc/postfix/main.cf where you'd imagine you put your own networks in, right? I dunno, to let Postfix discover what your networks are.. like it says on the tin? Haha, nope. This is a property that defines which networks are allowed no authentication at all to the mail server, and that is exactly what makes an open relay an open relay. If any one of the addresses in your networks (such as a gateway, every network has one) is also where your SMTP traffic flows into the mail server from, congrats the whole internet can now send through your mail server without authentication. And all because it was part of "your networks".
Yeah when it comes to naming things, the protocol designers sure have room for improvement... And fuck email.
Oh, bonus one - STARTTLS:
So SMTP has this thing called STARTTLS where you can.. unlike mynetworks, actually starts a TLS connection like it says on the tin. The problem is that almost every mail server uses self-signed certificates so they're basically meaningless. You don't have a chain of trust. Also not everyone supports it *cough* government *cough*, so if you want to send email to those servers, your TLS policy must be opportunistic, not enforced. And as an icing on the cake, if anything is wrong with the TLS connection (such as an MITM attack), the protocol will actively downgrade to plain. I dunno.. isn't that exactly what the MITM attacker wants? Yeah, great design right there. Are the designers of the email protocols fucking retarded?9 -
The education system is a fucking joke. How do you get through all the required courses and get to the capstone course where your one goal is to build a simple prototype of a project(like a simple website) for a real world client and not know HTML or CSS when you spent a whole fuckboy semester on a class dedicated to HTML, css, JavaScript and the teacher gave you the PHP. Not only that but you can't even figure out how to use a simple google search to look up the documentation on any of these topics or even the easy to follow tutorials littering the internet on how to use Bootstrap which is what we're fucking using to make it faster to develop the core logic of our app but all you fucking want to do is take shortcuts and create a PowerPoint presentation in google slides and make an easy project look like shit and make me and yourselves look like shit. But don't fucking worry, I'll code the whole thing in a fucking night because you didn't do your part of taking care of just the front end and planned for your incompetence and lack of questions or help. I know you're busy looking for a job for after you graduate but you can't even answer a simple programming question. Let me give you the solution on how to reverse a string, cuz you don't remember c# but it literally takes 30 seconds to google the solution that is everywhere. My project team is why no one takes a degree from this university seriously.9
-
*Working on a personal project*
Random guy:- it sucks :|
Me :- idgaf about what you think ..So please f off -__-
*Paid project*
Client :- what's this? This is ridiculous..I don't like it at all
Me:- okay , I'll do something about it .
-__- money changes everything3 -
#First
I joined a start up and worked after college hours as an intern over there. I would usually bunk my college and go to my internship. I had limited knowledge at that moment. I worked very hard over there because I wanted (still want) to gain practical knowledge.
Almost a month into it and I had to take a break from it because I had college work. Rejoined the same start up during my vacations. Worked quite a lot and learnt quite some stuff. I continued the internship after my one month vacation for another month once my college started. All this while I was not being paid, not even a little bit of allowance. But that didn't matter because I wanted to learn
Fast forward six months to November 2016. I have been placed in an MNC through my college placements. One day I get a call from this start up owner(we had become good acquaintances by then) if I was willing to work as a paid intern while I was working on the projects that the company landed (so I guess as a free-lancer) and as an unpaid intern while I was working on the company projects. I agreed. Jump to December. I have joined and started working on an Android project of this very big company.
At time point, I should inform you'll that I'm not very good at Android and that the company size is very small. Company owner plus the tech lead in one city (where I'm from) and another two full time employees in another city. Out of which one quit to start his own company apparently. The start up would primarily employ interns and provide exposure to them while getting their work done.
Back to the story. The tech lead vaguely assigns everyone their work. Everyone over here includes new interns and previous interns like me who will get paid some amount. 3-4 days into the project, the tech lead quits. The tech lead and the company owner call three of us and says that one of you will have to be a project manager for this project. And then both of them and 2 of my colleagues look at me. And I don't know what to say. I hesitate initially because it's too much responsibility but agree to it finally.
The next day I come to office and read about the project thoroughly and catch up with my colleagues about the progress. The entire day I'm panicking about what I'm going to do. In the evening, my boss tells me that we have to go for a meeting with the client for whom we are doing this project. At this moment, the shit out of me has been scared. Mostly because I don't know what the fuck am I going to do over there apart from being stupid and asking dumb questions. So we reach the client's office and wait for him. The entire time I'm thinking to myself that I'm going to drown this company by opening my mouth. Surprisingly, all the questions that I asked seemed legitimate and I asked a lot of questions. And so I didn't drown the company after all...phew!
It's been more than a week. And holy fuck! What a pain it is to manage people. Half of my time is spent on updating excel sheet about their progress, where are they stuck and what is needed. And the other half about thinking what the fuck am I doing or how am I gonna do it.
So to sum up, intern-turned-freelancer-turned-project manager who has no idea what the fuck is going on. Seems pretty crazy, don't you think.6 -
I'm a tech lead for a digital agency.
Digital agencies are universally known for being shite. Why? Because they typically push through sub-optimal code with very little testing over tiny deadlines for maximum profit. Maybe I've just had bad experiences but this is the 5th digital agency that I've worked at that does this bollocks.
I am currently sitting on a Teams call at 8:39pm because the fuckwit project/account managers are unable to face up to the big scary client and ask them terrifying questions like "Is this bug a blocker for the deployment?" or "We don't have enough time to fix/change these things, can we delay another day?". They just assume that A - We will work into the evening, and B - that all the issues are P1 and that we should all 'pull together' as 'team players' to get this done in time.
No, Me and my team have to work into the evening for seemingly free because these pricks can't do their jobs properly.
The funniest thing of all? When I speak to the CTO about overtime payment he tries to make me feel bad about "we don't typically pay for overtime..."
Fuck Everyone.
Time to find a new contract.11 -
This rant is particularly directed at web designers, front-end developers. If you match that, please do take a few minutes to read it, and read it once again.
Web 2.0. It's something that I hate. Particularly because the directive amongst webdesigners seems to be "client has plenty of resources anyway, and if they don't, they'll buy more anyway". I'd like to debunk that with an analogy that I've been thinking about for a while.
I've got one server in my home, with 8GB of RAM, 4 cores and ~4TB of storage. On it I'm running Proxmox, which is currently using about 4GB of RAM for about a dozen VM's and LXC containers. The VM's take the most RAM by far, while the LXC's are just glorified chroots (which nonetheless I find very intriguing due to their ability to run unprivileged). Average LXC takes just 60MB RAM, the amount for an init, the shell and the service(s) running in this LXC. Just like a chroot, but better.
On that host I expect to be able to run about 20-30 guests at this rate. On 4 cores and 8GB RAM. More extensive migration to LXC will improve this number over time. However, I'd like to go further. Once I've been able to build a Linux which was just a kernel and busybox, backed by the musl C library. The thing consumed only 13MB of RAM, which was a VM with its whole 13MB of RAM consumption being dedicated entirely to the kernel. I could probably optimize it further with modularization, but at the time I didn't due to its experimental nature. On a chroot, the kernel of the host is used, meaning that said setup in a chroot would border near the kB's of RAM consumption. The busybox shell would be its most important RAM consumer, which is negligible.
I don't want to settle with 20-30 VM's. I want to settle with hundreds or even thousands of LXC's on 8GB of RAM, as I've seen first-hand with my own builds that it's possible. That's something that's very important in webdesign. Browsers aren't all that different. More often than not, your website will share its resources with about 50-100 other tabs, because users forget to close their old tabs, are power users, looking things up on Stack Overflow, or whatever. Therefore that 8GB of RAM now reduces itself to about 80MB only. And then you've got modern web browsers which allocate their own process for each tab (at a certain amount, it seems to be limited at about 20-30 processes, but still).. and all of its memory required to render yours is duplicated into your designated 80MB. Let's say that 10MB is available for the website at most. This is a very liberal amount for a webserver to deal with per request, so let's stick with that, although in reality it'd probably be less.
10MB, the available RAM for the website you're trying to show. Of course, the total RAM of the user is comparatively huge, but your own chunk is much smaller than that. Optimization is key. Does your website really need that amount? In third-world countries where the internet bandwidth is still in the order of kB/s, 10MB is *very* liberal. Back in 2014 when I got into technology and webdesign, there was this rule of thumb that 7 seconds is usually when visitors click away. That'd translate into.. let's say, 10kB/s for third-world countries? 7 seconds makes that 70kB of available network bandwidth.
Web 2.0, taking 30+ seconds to load a web page, even on a broadband connection? Totally ridiculous. Make your website as fast as it can be, after all you're playing along with 50-100 other tabs. The faster, the better. The more lightweight, the better. If at all possible, please pursue this goal and make the Web a better place. Efficiency matters.9 -
>> this === rant
<< true
At beginning of this year, I only knew HTML, JS, and CSS so I just applied for offers like "Jr Apprentice Dev in Front-End"
In a interview call, the woman told me that they will send me a test asking about my JS and HTML5 knowledge.
When I look in my inbox, the mail subject says "Back-end Test".
Then I call the woman:
Me: "Hello, I have received the test mail, but maybe it's wrong. I applied for a Front-End position and the test is about backend! "
She: "Do you have skills in JS and HTML5?"
Me: "Yes!, and CSS3"
She: "Well, the test is about that. JS, jQuery, and HTML5"
Me: "..."
Me: "Sorry, that languages are Front-End. In the subject say 'Back-End' and Back-End is PHP, SQL, MySQL, Java, .Net... I don't know nothing about that. I only know HTML, JS, CSS."
She: "It's the same"
Me: "I sorry but it's not the same. Fron-End is client-side, what users sees. Animation, colors, FXs, buttons, forms... And Back-End is server-side, what users doesn't see."
She: "Well, JS, HTML, and CSS is backend for us. We call it that way too"
Me: "Sorry but that is wrong. I invite you to read some basic info. Now I am confused"
Of course that I am not confused. That idi0t was wrong.
Perhaps recruiters should take some info about areas where they are recruiting... (:T)3 -
Somebody asked on how to get started on Full Stack web application development.
This is how I got started.
Client side Web Application Development:
---------------------------------------------------------------
• Start with basic HTML, CSS and JS, JSON. For quick learning, see W3Schools for these topic or YouTube it.
• Get a local web server. "200 OK!" webserver chrome extension is a good start. (https://chrome.google.com/webstore/...)
• Learn Chrome Dev Tools to debug the pages. YouTube it.
• Get a good IDE. I am very happy with VSCode. You can use it for very serious WebApps.
• Start learning JavaScript language in depth, but just related to Web Browser related topic or you would get sucked in server side too early.
• Install node.js. Learn NPM package manager. Learn basic node commands.
• Learn complexity of JS file referencing, JS modules in browser. Just learn, don't use it yet, to understand the benefits of code bundlers.
• Learn Webpack code bundler.
• Learn how to make you simple site much faster and using in Mobile using "Progressive Web Apps".
• Now learn to make modular UIs. I love React. Focus on getting the UI code modulear. Create Single Page sites. (You are not there yet to create a Web App) “Create-React-App” started kit is a good starting point.
• Learn to create multi-page site using React-router.
• Learn application state management using Redux.
• Learn to create application decision engine using Redux-Saga.
Practice and master each stage.
Along above, learn git / GitHub (to learn from others code), find good web resources like Medium / Smashing magazine, good YouTube channels etc. I subscribed to some popular Udemy courses too.
Server side Web development:
------------------------------------------
:) First learn client side Web Application development. Server side learning is another story.3 -
//
// 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).
Changelog (v2.0.0-beta7):
- 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,
Good ranting!10 -
Client sends me support email concerning the CMS.
There's not enough details to go on, esp. browser info, so I ask her to fill out a support ticket.
She does, but doesn't enter any browser info, AND mistypes her email address so I have to correct it to reply to the right email.
I send her to whatbrowseramiusing.co and ask her to send the info to our support email address.
She emails support directly with these words: "I am using Google bowser".
I reply: click "Send to my designer" on whatbrowseramiusing.co and I give her exact steps to fill out the three form fields
She replies: "There is no 'Send to my designer', I only get the option to buy the domain."
I'm like "Whut?!" Did you mistype the URL? Why don't you click the link in the email? (Paraphrase)
This time I get an official email from whatbrowseramiusing.co, telling me that the client is using Safari 5.0.5. Which is five years old.
At that point I replied and said we really can't support this older browser, and included a link to the Firefox download page.7 -
I don't understand... How can people prefer complicated web pages with fancy design over the simple and effective design of your router configuration page?
I mean, look at it... It's beautiful. If I ever asked as a client to a developer to build me a website, it'd look just like this.13 -
I starten when I was 12 years old. I got bullied and got interested in computers. One day I crashed my dads computer and he reinstalled it. After that my dad made two accounts. The regular user (my account) and the Administrator user (my dads account). He also changed the language from Dutch to English. Gladly I could still use the computer by looking at the icons :')
Everytime I needed something installed I had to ask my dad first (for games mostly because there was no cable internet at that time). Then I noticed the other user account while looking over my dads shoulders. So I tried to guess the password and found out the password was the same as the label next to the password field "password".
At that point my interest in hacking had grown. So when we finally got cable internet and my own computer (the old one) MSN Messenger came around. I installed lots of stuff like flooders etc. Nobody I knew could do this and people always said; he is a hacker. Although it is not.
I learned about IP-address because we sometimes had trouble with the internet. So when my dad wasn't home he said to me. Click on this (command prompt) and type in; ipcondig /all. If you don't see an IP-address you should type in; ipconfig /renew.
Thats when I learned that every computer has a unique address and I started fooling around with hacking tools I found on internet (like; Subseven).
When I got older I had a new friend and fooled around with the hacking tools on his computer. Untill one day I went by my friend and he said; my neighbor just bought my old computer. The best part was that he didn't reinstall it. So we asked him to give us the "weird code on the website" his IP-Address and Subseven connected. It was awesome :'). (Windows firewall was not around back then and routers weren't as popular or needed)
At home I started looking up more hacking stuff and found a guide. I still remember it was a white page with only black letters like a text file. It said sometime like; To be a hacker you first need to understand programming. The website recommended Visual Basic 6 for beginners. I asked my parents to buy me a book about it and I started reading in the holliday.
It was hard for me but I really wanted to hack MSN accounts. When I got older I just played around and copy -> pasted code. I made my own MSN flooders and I noticed hacking isn't easy.
I kept programming and learned and learned. When I was 16/17 I started an education in programming. We learned C# and OOP (altho I hated OOP at first). I build my own hacking tool like "Subseven" and thats when I understood you need a "server" and "client" for a successful connection.
I quit the hacking because it was getting to difficult and after another education I'm now a fulltime back-end developer in C#.
That's my story in short :)3 -
Currently i have a small web dev project and i set up a live preview website so he cant see it developing and This literally Just happened
Client : hey, are you currently working on my website?
Me : Yes on my computer and working on it, can i help you with something?
C: yeah just a little bit, that logo on the top left are just a bit squeezed in size and stay like that since 5 days ago and it's bothering me, can you fix it?
Me : nah, its just a simple thing. give me a sec and try reload--
C: why is your voice echoing? Don't tell me you are coding in the bathroom
Me: ummm.. No... I guess...? (I Am)
C: 🤣
Me: sorry 😅4 -
I love how the Keybase Linux client installs itself straight into /keybase. Unix directory structure guidelines? Oh no, those don't apply to us. And after uninstalling the application they don't even remove the directory. Leaving dirt and not even having the courtesy to clean it up. Their engineers sure are one of a kind.
Also, remember that EFAIL case? I received an email from them at the time, stating some stuff that was about as consistent as their respect for Unix directory structure guidelines. Overtyping straight from said email here:
[…] and our filesystem all do not use PGP.
> whatever that means.
The only time you'll ever use PGP encryption in Keybase is when you're sitting there thinking "Oh, I really want to use legacy PGP encryption."
> Legacy encryption.. yeah right. Just as legacy as Vim is, isn't it?
You have PGP as part of your cryptographic identity.
> OH REALLY?! NO SHIT!!! I ACTIVELY USED 3 OS'S AND FAILED ON 2 BECAUSE OF YOUR SHITTY CLIENT, JUST TO UPLOAD MY FUCKING PUBLIC KEY!!!
You'll want to remove your PGP key from your Keybase identity.
> Hmm, yeah you might want to do so. Not because EFAIL or anything, just because Keybase clearly is a total failure on all levels.
Written quickly,
the Keybase team
> Well that's fucking clear. Could've taken some time to think before hitting "Send" though.
Don't get me wrong, I love the initiatives like this with all my heart, and greatly encourage secure messaging that leverages PGP. But when the implementation sucks this much, I start to ask myself questions about whether I should really trust this thing with my private conversations. Luckily I refrained from uploading my private key to their servers, otherwise I would've been really fucked. -
So… I released v2.0.0 of devRant UWP a few weeks ago.
Then I got a lot of reports of problems on Windows 10 Mobile and older (than 1809) versions of Windows 10 on Desktop.
I decided to resubmit v2.0.0-beta16 to the store, and try to find the issue in the update… I didn't find it.
The code seems the same as the working version (at least the part I try to test is 100% equal).
So it seems I fucked up the vs project.
This means that to find the issue I can spend weeks to search it over and over inside the latest project (using shitty emulators of older Windows 10 builds to debug it), or I could just restore it to the old v2.0.0-beta16 (released in august) and implement again every single new feature and fix (something like 5 new features, dozens of improvements, changes and bug fixes).
In any case, this will require a lot of time (which I don't have at this moment).
I'm really sorry for this inconvenience, I know some of you use my client daily (~3.000 users I guess), I'm really glad someone likes it, and thanks a lot for the awesome reviews and feedback, but stable v2 (v2.1.0 at this point) will be available not earlier than in February.
Probably some of you have already download v2.0.0 while it was available in the store, and maybe it works on your device (please let me know in the comments below if you did, how is it going, and also if you like the new features and improvements).
After this epic fail, and more than 1 year (way too much) of v2 public beta, I want to throw the current project in the trash, and start it from scratch.
Which means I will start to work on v3 as soon as you will see v2.1.0 in the store, making it faster, lighter and with better support for the latest Windows 10 (Fluent Design and not) features, dropping the support for the very old UWP API.
Thanks for your attention.
Have a good day (or night)!5 -
cw: I need a server to put my node backend
me: sure, I'll run a docker container for you
cw: nice, I've never worked with docker but I learn quickly, I'm already reading the Docker file docs
me: no wait, you don't need to learn anything, you'll be inside the container, so you only need an ssh connection and that's it
cw: this Dockerfile stuff is really complicated, it'll take me a while, but it's ok you don't have to worry, I like learning new things
me: you won't need that, just imagine it's a cloud server with Ubuntu installed, you only have to use it, I'll put node, git and ssh there for you
cw: ok got it, I'll have to learn the commands to run the docker, I'm on windows but I can use PowerShell and stuff I'll figure it out
me: ...
cw: ssh is a linux command right? does it have a push or publish option? how do you upload files there
me: ...you can use a ftp client but you'll need ssh to run the node server
cw: ok, I'm almost done with the Dockerfile, I only need to add git and nodejs, I'm starting to understand this thing...
me thinking: yeah keep doing that, you're such a crack, such a quick learner...
This son of a bitch is either a retard or is doing it on purpose and laughing at me the whole time, making my life so miserable, but I'm about to go insane with this dude, I'm proud of how I've been able to control myself, BUT ONE OF THESE DAYS I'LL LOSE MY COOL AND FORCE THIS MOTHERFUCKER TO DRINK A BIG POT OF BOILING, SALTY AND STINKING VOMIT WITH A SIDE OF STEAMING DIARRHEAL GREEN DOG SHIT WITH WHITE CHOCOLATE CHIPS WHILE I PUT MY OLD CRT MONITOR TO GOOD USE BY BEATING HIS FUCKING HEAD WITH IT!!!3 -
That's actually something that happened fairly recently.. just that I didn't have the energy left at the time to write it down. That, or I got my ass too drunk to properly write anything.. not sure actually.
So on paper I'm unemployed, but I do spend some time still on pretty much voluntary work for HackingVision, along with a handful of other people.
At the time, we were just doing the usual chit-chat in the admin channel, me still sick in my bed (actually that means that I wasn't drunk but really tired for once.. amazing!) and catching up to what happened, but unable to do any useful work in this sick state. So, tablet, typing on glass, right. I didn't have any keyboard attached at the time.
One of the staff members (a wanketeer from India) apparently had an assignment in a few hours for which he needed to write a server application in Java. Now, performance issues aside, I figured.. well I've got quite a bit of experience with servers, as well as some with client-server protocols. So I got thinking.. mail servers, way too overengineered. Web servers.. well that could work, I've done some basic netcat webservers that just sent an HTTP 200 OK and the file, those worked fine.. although super basic of course. And then there's IRC, which I've actually talked to an InspIRCd server through telnet before (which by the way is pretty much the only thing that telnet is still useful for, something that was never its purpose, lol) and realized that that protocol is actually quite easy to develop around. That's why I like it so much over modern chat protocols like XMPP, MQTT and whatnot. So I recommended that he'd write a little IRC server in Java. Or even just a chatbot like I attempted to at the time, considering that that's - with a stretch of course - a sort-of server too.
His fucking response however, so goddamn fucking infuriating. "If the protocol is so easy, then please write me down how to implement it in Java."
Essentially do his fucking work for him. I don't know Java, but as a fucking HackingVision admin, YOU SHOULD FUCKING KNOW THAT HACKERS CAN'T STAND LAZY CUNTS THAT CAN'T EVEN BE ASSED TO GOOGLE SHIT!!! If I wanted to deal with cunts like that, I'd have opened the page inbox with all its Fb h4xx0ring questions, not the fucking admin chat!
And type it on a goddamn fucking piece of glass, while fucking sick?! Get your ass fucked by a bobs and vegana horny fuck from the untouchable caste, because that's where you fucking belong for expecting THAT from me, you fucking bhenchod.
But at least I didn't get my ass enraged like that to say that to him in the admin chat. Although that probably wouldn't have been a bad thing, to get his feet right back on the ground again.1 -
Help.
I'm a hardware guy. If I do software, it's bare-metal (almost always). I need to fully understand my build system and tweak it exactly to my needs. I'm the sorta guy that needs memory alignment and bitwise operations on a daily basis. I'm always cautious about processor cycles, memory allocation, and power consumption. I think twice if I really need to use a float there and I consider exactly what cost the abstraction layers I build come at.
I had done some web design and development, but that was back in the day when you knew all the workarounds for IE 5-7 by heart and when people were disappointed there wasn't going to be a XHTML 2.0. I didn't build anything large until recently.
Since that time, a lot has happened. Web development has evolved in a way I didn't really fancy, to say the least. Client-side rendering for everything the server could easily do? Of course. Wasting precious energy on mobile devices because it works well enough? Naturally. Solving the simplest problems with a gigantic mess of dependencies you don't even bother to inspect? Well, how else are you going to handle all your sensitive data?
I was going to compare this to the Arduino culture of using modules you don't understand in code you don't understand. But then again, you don't see consumer products or customer-specific electronics powered by an Arduino (at least not that I'm aware of).
I'm just not fit for that shooting-drills-at-walls methodology for getting holes. I'm not against neither easy nor pretty-to-look-at solutions, but it just comes across as wasteful for me nowadays.
So, after my hiatus from web development, I've now been in a sort of internet platform project for a few months. I'm now directly confronted with all that you guys love and hate, frontend frameworks and Node for the backend and whatever. I deliberately didn't voice my opinion when the stack was chosen, because I didn't want to interfere with the modern ways and instead get some experience out of it (and I am).
And now, I'm slowly starting to feel like it was OKAY to work like this.10 -
Hey guys,
this rant will be long again. I'm sorry for any grammar errors or something like that, english isn't my native language. Furthermore I'm actually very sad and not in a good mood.
Why? What happened? Some of you may already know - I'm doing my apprenticeship / education in a smal company.
There I'm learning a lot, I'm developing awesome features directly for the clients, experience of which other in my age (I'm only 19 years old) can only dream.
Working in such a small company is very exhausting, but I love my job, I love programming. I turned my hobby into a profession and I'm very proud of it.
But then there are moments like the last time, when I had to present something for a client - the first presentation was good, the last was a disaster, nothing worked - but I learned from it.
But this time everything is worse than bad - I mean really, really worse than bad.
I've worked the whole week on a cool new feature - I've done everything that it works yesterday, that everything gets done before the deadline of yesterday.
To achieve this I've coded thursday till 10pm ! At home! Friday I tested the whole day everything to ensure that everything is working properly. I fixed several bugs and then at the end of the day everything seems to be working. Even my boss said that it looks good and he thinks that the rollout to all clients will become good and without any issues.
But unfortunately deceived.
Yesterday evening I wrote a long mail to my boss - with a "manual". He was very proud and said that he is confident that everything will work fine. He trusts me completly.
Then, this morning I received a mail from him - nothing works anymore - all clients have issues, everything stays blank - because I've forgotten to ensure that the new feature (a plugin) and its functionality is supported by the device (needs a installation).
First - I was very shoked - but in the same moment I thought - one moment - you've written an if statement, if the plugin is installed - so why the fuck should it broken everything?!
I looked instant to the code via git. This has to be a very bad joke from my boss I thought. But then I saw the fucking bug - I've written:
if(plugin) { // do shit }
but it has to be if(typeof plugin !== 'undefined')
I fucked up everything - due to this fucking mistake. This little piece of shit I've forgotten on one single line fucked up everything. I'm sorry for this mode of expression but I thought - no this can not be true - it must be a bad bad nightmare.
I've tested this so long, every scenario, everything. Worked till the night so it gets finished. No one, no one from my classmates would ever think of working so long. But I did it, because I love my job. I've implemented a check to ensure that the plugin is installed - but implemented it wrong - exactly this line which caused all the errors should prevent exactly this - what an irony of fate.
I've instantly called my boss and apologized for this mistake. The mistake can't be undone. My boss now has to go to all clients to fix it. This will be very expensive...
Oh my goodnes, I just cried.
I'm only working about half a year in this company - they trust me so much - but I'm not perfect - I make mistakes - like everyone else. This time my boss didn't looked over my code, didn't review it, because he trusted me completly - now this happens. I think this destroyed the trust :( I'm so sad.
He only said that we will talk on monday, how we can prevent such things in the feature..
Oh guys, I don't know - I've fucked up everything, we were so overhelmed that everything would work :(
Now I'm the looser who fucked up - because not testing enough - even when I tested it for days, even at home - worked at home - till the night - for free, for nothing - voluntary.
This is the thanks for that.
Thousand good things - but one mistake and you're the little asshole. You - a 19 year old guy, which works since 6 months in a company. A boss which trusts you and don't look over your code. One line which should prevent crashing, crashed everything.
I'm sorry that this rant is so long, I just need to talk to you guys because I'm so sad. Again. This has happend to frequently lately.16 -
I'm so close to giving up. Yesterday, I travelled 4 hours in one direction for a job interview for a graduate position as a web developer. As I arrived at the interview, I was welcomed by a senior dev and one of the HR people.
I sit down and they start explaining how everything will commence(standard procedure stuff) and afterwards hand me the technical test. At this time I am super calm cause I did my homework, checked out their products, their websites and knew right away what I was going to work on. As I turn the page, I see at the top with huge fucking capital letters "JAVA OOP test".
I take a minute and look back at them, like wtf is happening. Turns out that they are looking for a java dev. They picked me for the role because I had literally 1 fucking sentence in my CV and where I have said that I studied java in one semester of uni. FYI my entire portfolio, cv and cover letter are focused on JS, html, css both for client and server side.
As the fucking HR guy stood there and asked me "is there something wrong", I felt broken inside. For the first time in my fucking life I felt like I was done and couldn't continue anymore. I felt like this is some bitch-slap from karma about something but I still can't figure out what. I just walked out of there being unable to realize what happened.
I just feel like I should end my developer career before it has even started, just go do business analysis or something. Why the fuck would someone put a job description entirely talking about Angular, Less/SASS, bootstrap and jQuery and then say that is a Java dev OOP role. Who the fuck allows those people to take good salaries yet still deliver the up most shittiest quality service.
Before the interview, I checked out their websites which are simply horrendous with the comparability of a fucking baked potato. Idk really what to do, I don't mean to sound as a whiny little b.... but as I walked out of their office, I felt broken inside. Sorry for the long rant.8 -
There are three things in my workflow that I don't like:
1. Feature requests appearing out of thin air.
It's common to be handled work at 2pm that needs to be deployed by the end of day. Usually it's bug fixes, and that's ok I guess, but sometimes it's brand new features. How the fuck am I supposed to do a good job in such a short time? I don't even have time to wrap my head around the details and I'm expected to implement it, test it, make sure it doesn't break anything and make it pass through code review? With still time to deploy and make sure it's ok? In a few hours? I'm not fucking superman!
2. Not being asked about estimates.
Everything is handed to me with a fixed deadline, usually pulled off my PM's ass, who has no frontend experience. "You have two weeks to make this website." "You must have this done this by tomorrow morning." The result, of course, is rushed code that was barely tested (by hand, no time for unit or integration tests).
3. Being the last part of the product development process.
Being the last part means that our deadlines are the most strict. If we don't meet the deadline, the client will be pissed. The thing is, the design part is usually the one that exceeds its time (because clients keep asking for changes). So when the project lands on our desks it's already delayed and we have to rush it.
This all sounds too much like bad planning to me. I guess it's the result of not doing scrum. There are no sprints, no planning meetings, only weekly status update meetings. Are your jobs similar? Is it just usual "agency work"?
I'm so tired of the constant pressure and having to rush my work. Oh, and the worst part is we don't have time for anything else. We're still stuck with webpack 2 because we never have time to update it ffs.6 -
Client be like :
I want this feature to be added
No I don't,
No I want,
No I don't,
let me fuck you up then I will decide.1 -
I couldn't sleep. I was staring at the blinking cursor. A slow, comforting blinking. Like everyone else, I had become a slave to the JavaScript ecosystem. If I saw something like a new build system, or a new framework, I had to have it.
My client changed the requirements again. I'm in pain.
- "You want to see pain?" my colleague said. Go read Apple support forums. That's pain.
I became addicted. Every time I died and every time I was born again. Resurrected.
During the night, I was crying in the Apple forums for an official answer that would never come. During the day, I was surfing StackOverflow to fix my problems. You get "single-serving" friends there. They help you, you help them, and then you never see them again.
- "Then you install Stack and boom, you're done. It's that easy to go functional."
That's how I met him.
- "You know why they make so many javascript frameworks?"
- "No, why?"
- "So that they can distract you while they put backdoors in them. So that you don't have time to check all of their code".
- "You are by far the most interesting "single-serving" friend I've ever met"
Then, my hard disk died. Of course, I didn't have backups: nobody has enough space for all those node_modules folders. All my addictions, lost.
Then I wrote him. If you asked me now, I couldn't tell you why I wrote him. We chatted a lot.
- "It's late, I should really go search another hdd on ebay"
- "Ebay? You called me so you could have my old hard disk."
- "No, I..."
- "Come on."
He sent me his old hard disk. It was a 256MB hard disk, but it was fine for running Arch. Then he asked me to rant about my problems in front of him.
- "I want you to rant as hard as you can"
- "Are you serious?"
We ranted all night about our bosses and clients and their fucked up requests. We kept in touch, and after a while more people were ranting with us. Every week, he gave the rules that he and I decided.
- "The first rule of devRant is -- you don't talk about devRant. The second rule of devRant is -- you don't talk about devRant."
I like to think this is how devRant started. This might also be the reason why we never see @trogus, only @dfox. A lot of shit still needs to happen.8 -
You know. I have mixed feelings on the way people have been reacting to senzory's rant regarding the way he deals with clients. Some people believe that he is unethical, some people see it as just business(me included) but to see what the community says is somewhat interesting.
First, let me be clear on something: i have been fucked over by clients many times for being a nice guy and trying to play it nicely.
Because of this I am selective of who deserves good treatment and who gets to fuck off. But regardless of the client I do the same thing: regardless of who it is, nice or otherwise. If a project will take 1 week to complete then I tell them that it will take 3 to 4 weeks. Why? Well because I have many things on my plate, I am married and have two children, one lives with me and I try to spend as much time with them as I can. I work from 8 to 6, sometimes later and when I get home I sometimes don't do shit since at work I maintain the web services of 2 fucking college campuses.
I don't look for my clients. Through word of mouth they come to me. And being in a privileged position(there are about 5 devs here and they all suck) they can either do with my times and fees or can fuck off over the border where Pedro will do their shit on vbscript and classic ASP(which I like, but you know why this is not an option in 2018)
Apps can be sold for large quantities of money, regardless of what their use case is, if a company wants to outsource their apps to an external developer(such as yours truly) that means that they are willing to play the game. And that is what business is: a game, a survival game.
Where I live, a company will not think twice of firing a single mother for whatever reason. In the U.S of A, and specially in Texas, you can be fired for whatever reason. I have automated people's jobs without knowing it, I have made people lose their jobs and saved companies thousands with my apps. Things like that were not know to me, had I known that someone would have lost their jobs I would have tried differently.
If a company is willing to tell employees(loyal employees) to fuck off, then i do not regret charging what I do and hustling the way I do with rat faced dickheads that care not for people. If I could I would destroy entire companies here. But that is for another story.
I have been used, insulted, gambled with and have been lied to, to my face by these companies. Which has left me jaded.
Oh now, trust me. I am still highly optimistic and nice. And if someone has a small business and I can help them out, then I will lower my rate and give positive vibes in the hopes of making things better through karma. I want to see the best in people. But this does not stop me from being a shark and giving quotes the way I do.
Because companies, as an overall entity are not people with the best intentions(sometimes) and they will not take your kindness, they will take advantage if possible in an effort to save money. Its just dickhead business.
So why, as a professional and privileged developer that obtained his skills through intense study and practice, a wizard by all means, should lower to these nameless, Faceless entities?
Why should i give them the fairness they do not give others? Why should I play the high morale game and come out as a loser?
At the end of the day, I get to swim in my own pool of success, knowing that they did not get the chance to fuck me over
So if you tell me that you took advantage of your hard earned skillset, and built a cross platform app(which compiles to native binaries) and sold 2 products for one, I will tell you that you are an excellent player at their game. If you tell me that you finished before and got to charge for 2 weeks of work doing just 2 days I will say that you are an excellent time manager. And if you tell me that at the end of the day you managed to keep said customer I will tell you that you are a true professional.
There is a difference lads, in selling a product to big momma jamma's cajun restaurant, to the largest logistics company around.
Be nice to those that desserve it.6 -
Listening to professor tell stories about when he used to develop, is like listening old war stories.
Back when I was in university, this teacher would tell us different stories about his days as a developer. This was one of the last ones, and I think it has not changed much since then.
*Phone rings*
Professor: Hello?
Client: I don't know what the fuck you take me for!
Professor: Oh, hello Client_Name. What seems to be the problem.
Client: This doesn't work! There's nothing here!
Professor: Ok, do you see the program file?
Client: No. I just said that there's nothing here.
They proceed to go over the issue and how to get the program to run. Or at least show up on the PC. This goes on for about 30 minutes.
Suddenly my professor has a thought.
Professor: Have you tried inserting the Floppy disk from the other side? Try flipping it.
Client: ...4 -
Admin Access
Have you ever been in a position where you become the de-facto person who works with a certain tool, but are denied full admin access to that tool for no real reason?
Two years ago I was put on the Observability squad and quickly discovered it was my thing, implementing tracking and running queries on this third-party tool, building custom stuff to monitor our client-side successes and failures.
About a year ago I hit the point where if you asked anyone "Who is the go-to person for help/questions/queries/etc. for this tool", the answer was just me lol. It was nice to have that solid and clear role, but a year later, that's still the case, and I'm still not an admin on this platform. I've asked, in an extremely professional way armed with some pretty good reasons, but every time I'm given some lame non-answer that amounts to No.
As far as I'm aware, I'm the only dev on our team at all who uses custom/beta features on this site, but every time I want to use them I have to go find an admin and ask for an individual permission. Every time. At the end of 2020 it was happening once a month and it was so demoralizing hitting up people who never even log into this site to ask them to go out of their way to give me a new single permission.
People reach out to me frequently to request things I don't have the permissions to do, assuming I'm one of the 64 admins, but I have to DM someone else to actually do the thing.
At this point it feels very much like having to tug on the sleeve of a person taller than me to get what I need, and I'm out of ways to convince myself this isn't demoralizing. I know this is a pretty common thing in large companies, meaningless permissions protocols, and maybe it's because I came from IT originally that it's especially irritating. In IT you have admin access to everything and somehow nobody gets hurt lol-- It still blows my mind that software devs who make significantly more money and are considered "higher up" the chain (which i think is dumb btw) are given less trust when it comes to permissions.
Has anyone figured out a trick that works to convince someone to grant you access when you're getting stonewalled? Or maybe a story of this happening to you to distract me from my frustration?13 -
Coworker: so once the algorithm is done I will append new columns in the sql database and insert the output there
Me: I don't like that, can we put the output in a separate table and link it using a foreign key. Just to avoid touching the original data, you know, to avoid potential corruption.
C: Yes sure.
< Two days later - over text >
C: I finished the algo, i decided to append it to the original data in order to avoid redundancy and save on space. I think this makes more sense.
Me: ahdhxjdjsisudhdhdbdbkekdh
No. Learn this principal:
" The original data generated by the client, should be treated like the god damn Bible! DO NOT EVER CHANGE ITS SCHEMA FOR A 3RD PARTY CALCULATION! "
Put simply: D.F.T.T.O
Don't. Fucking. Touch. The. Origin!5 -
I tried writing this rant before, but I was (and still am) in too good of a mood so it was lengthy, meandering, and over-specific. so I'll summarize(ish).
summary:
* miscommunication
* working weekends
* incompetence and/or screwy integrations
summary of the summary:
* I can't fix someone else's mess if you don't talk to me!
Summary^3: #TODO: learn telepathy
Shortened rant:
Bossman at work signed up a very lucrative client by promising them something he couldn't deliver because he misunderstood and miscommunicated scope -- anti-fraud, if you've been following my rants.
Their signup (all four...) are screwy and cause issues and nobody knows why. I didn't write the code, have barely even glanced through it, and it uses a third-party (Clover) that's rather screwy.
Bossman has been asking me to do various things concerning the merchant, but has never been around to provide specifics, so I'm left to guess. I've done my best, but due to the aforementioned screwiness, I really have no idea what's going on. I just sort of muddled my way through.
Bossman also asked me, super late on Friday night (after 8:30pm), to rename one of the merchants because there are two with the same name (with different Clover creds, etc.) and that's just confusing. I didn't see the message because late and tired, and he didn't follow up or text/call me until two days later (today, Sunday). I also thought these were strictly for diagnosing and were de-listed. I had no idea the merchant was live and people were actually purchasing things for it. Had I known this I would have freaked out and demanded specifics on Thursday/Friday because wtf? debugging in production? with broken merchants? selling things for real money? scary bad? hello?
Anyway, I didn't see his message until he texted me about it at like 5pm today while I was about 2 hours from my computer. He's understandably frustrated, and I totally don't blame him, but fuck, miscommunication is a serious problem in this company, and that's amazing because it's so freaking small.
But the short version is that I'm likely going to get blamed for all this, Clover screwiness included. Bossman and I set up a call for 10am tomorrow and I'm positive he's going to try pinning it on me. Totally not going to let him, but his social is lv16+ while mine's like. 2 or 3. 😕 I'll see how it goes.
Really though, I should read @rutee07's book and just roast these fuckers.rant weekend work debugging in production miscommunication no call no text still my fault hope you see this it's urgent clover strip club3 -
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.
We have a single, massive constant class that probably has over 2000 constants, I don't care to count. Our SQL projects are a mess with tons of quick fix scripts to run pre and post publishing. Our folder structure makes no sense (We have root/js and root/js1 to make you cringe.) our javascript is majoritly on the asp.net pages themselves inline, so we don't even have minification most of the time.
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.rant code application bad project management annoying as hell bad code c++ bad client bad design application development16 -
This happened like 6-7 years ago when I used to do some logo and Web theme designs as a side job. There was this motel owner client who wanted me to make a website for him . he didn't give me much to go on except some themes he liked and some pictures of the motel. I finished the website on time but of course he didn't like it, he told me that he wanted it to be bluer(?). So I played with the colors a bit and showed it to him a couple days later, but now he didn't like the font that I used he wanted a font that stand out, like those Gotik ones; I politely told him it would not look professional when he refused I told him it would look like a teenage Lamer at Tumblr. After that he settled down for a less idiotic font. I finished the final cuts the next day and went to the motel to setup the website and show him how to use it. After a good hour of teaching him in the ways of the Internet I told him I needed my payment now. But the guy only wanted to pay half of what we agreed upon because I delivered it late and also didn't do his requests. I reminded him, that this is my job I worked hard for this. That he owed me what he promised. His counter argument was That all I do is press some buttons on a keyboard and that I don't know what working hard really means. That was the last drop. You see I usually have somewhat good pr skills but I can only tolerate limited amount of bulls*** at a time. So I deleted the www folder from filezilla and told him to go F*** himself and left. Never been a freelancer ever since2
-
A new guy was brought on to help with a particular part of my program.
He worked on it for a little while and got something working. But honestly the code hurts me. And not because I'm some arrogant prick, but because there's something about the way it's written that's really bothering me.
I was saying to my girlfriend that I don't mind people helping me out and adding new features. Usually they bring something to my attention that I otherwise would have never thought of.
However, in this case I was told to back off completely. This of course, makes sense, we don't want to be stepping on each other's toes. But now that he's sort of done, I've taken a look around at it is really getting to me.
They've placed redundant pieces of code in places that I would have never done. And objects have been made that seem to only match precisely one particular use case.
I had overhauled this program with flexibility in mind a while back, and now I feel like it's doing a 180 again simply because the client is getting impatient.1 -
A client literally just told us "I don't wanna be telling you what I want / require / need. I just want you to give me the best you got."
Like wtf.
The worst thing is they've got but loads of money so we really have to take them serious. They were born rich and probably had a servant as a child who did everything for them without them asking to, and they'll continue to get away with it because they'll continue to be rich and there'll be people like us trying to kiss their ass for some of that money. I hate myself for doing it. They want a system to basically spy on their customers, and I'm a huge advocate of privacy, but I'll still do it for the money. Fuck this world.6 -
Me : *trying to download latest version of android studio*
Google: "Your client does not have permission to get URL /studio/index.html from this server. That’s all we know."
Me: FUCK YOU GOOGLE
Me: *googles: دانلود اندروید استودیو* (which means download android studio)
*and downloads it from a random website*
It happens every goddamn time, why the fuck i can't download this shit !? Because these countries are fighting each other all the time! What did i do wrong in my life? I just want to download your fucking app to write another shitty app to continue my fucking life. I don't know shit about this wars happening, I'm just a dev like others all over the world.
Downloading an app, is that too much to ask? Well fuck you then.14 -
It was my internship and I've end up working on a law company specializing on Australian construction laws they're working on a website that will take care of all the paperworks for the contractors. They have a dev team who's working on it but they don't have a web designer. I was accepted for the job as an intern/web designer/tester. I was so happy that I've got a really cool internship as a designer but that's only for a second.
The hell starts on day one. They've told me that they're using agile workflow and that they need to make the website responsive. It was based on bootstrap and gosh their code was so broken. HTML tags overlay on each other, some are unclosed. I've tried to fix the problems and did a great job at that. Made the front page responsive and all laid out. When I went to the next php file it has a different header.php and footer.php and same problems apply and we're not even touching the worst.
They didn't use any version management and they're cowboying everything. Now that the website is on the staging server they use Cpanel text editor to edit the code! My headache started to pileup.
The Australian client asked me to provide icons and fix the colors of the website. Also the typography looks great already. I've fixed almost all the problems and I'm satisfied with the design when suddenly a new co-worker from a famous and expensive college was absorbed by the company. He worked as the marketing specialist who has no experience at web design at all. He told me to do this and that and the whole website changed. He bullied me for my skills in design (I'm an intern) and just took over the whole design. Everyone even the boss listen to him as if everything he say is right. He's skilled at design but not web design. He made the website look like a freakin movie poster.
All my works are for nothing, I got headache for nothing and I've got hated for nothing.
It was the day when I finished my internship. It was a long 3 months. After a month I've heard from my co-interns that the whole dev team was fired including the marketing specialist. Also the whole website is scrapped and has been rebuilt by a single guy who used WordPress which he did in only a month. -
Well, for starters there was a cron to restart the webserver every morning.
The product was 10+ years old and written in PHP 5.3 at the time.
Another cron was running every 15 minutes, to "correct" data in the DB. Just regular data, not from an import or something.
Gotta have one of those self-healing systems I guess.
Yet another cron (there where lots) did run everyday from 02:00 to 4ish to generate the newest xlsx report. Almost took out the entire thing every time. MySQL 100%. CPU? Yes. RAM? You bet.
Lucky I wasn't too much involved at the time. But man, that thing was the definition of legacy.
Fun fact: every request was performed twice! First request gave the already logged-in client an unique access-token. Second request then processed the request with the (just issued) access-token; which was then discarded. Security I guess.
I don't know why it was build this way. It just was. I didn't ask. I didn't wanted to know. Some things are better left undisturbed. Just don't anger the machine. I became superstitious for a while. I think, in the end, it help a bit: It feels like communicating with an alien monster but all you have is a trumpet and chewing gum. Gentle does it.
Oh and "Sencha Extjs 3" almost gave me PTSD lol (it's an ancient JS framework). Followed by SOAPs WSDL cache. And a million other things.5 -
Don't you hate it when your co-worker does dumb things, but thinks it's the "clean code" way?
The following is a conversation between me and a co-worker, who thinks he's superior to everyone because he thinks he's the only one who read the Clean Code series. Let's call him Bill.
Me: I think the feature we need is quite simple, our application needs to call this third party API, parse the response and pass it to the next step. Why do you need to bury everything under an abstraction of 4 layers?
Bill: bEcAuSe It'S dEcOuPlInG, aNd MaKe ThE cOdE tEsTaBlE
Me: I don't know man, you only need to abstract the third party api client, and then mock it if you want. Some interfaces you define makes no sense at all. For example, this interface only has 1 concrete implementation, and I don't think it will ever have another. Besides, the concrete implementation only gets the input from the upper layer and passes it down the lower layer. Why the extra step? I feel like you're using interface just for the sake of interface.
Bill: PrOgRaMmInG tO iNtErFaCe, NoT cOnCrEtE iPlEmEnTaTiOn!!!
Me: You keep saying those words, I don't think they mean what you think they mean. But they certainly do not mean that every method argument must be an interface
Bill: BuT uNcLe BoB blah blah blah...
Me: *gives up all hope*14 -
Got pretty peeved with EU and my own bank today.
My bank was loudly advertising how "progressive" they were by having an Open API!
Well, it just so happened I got an inkling to write me a small app that would make statistics of the payments going in and out of my account, without relying on anything third-party. It should be possible, right? Right?
Wrong...
The bank's "Open API" can be used to fetch the locations of all the physical locations of the bank branches and ATMs, so, completely useless for me.
The API I was after was one apparently made obligatory (don't quote me on that) by EU called the PSD2 - Payment Services Directive 2.
It defines three independent APIs - AISP, CISP and PISP, each for a different set of actions one could perform.
I was only after AISP, or the Account Information Service Provider. It provides all the account and transactions information.
There was only one issue. I needed a client SSL certificate signed by a specific local CA to prove my identity to the API.
Okay, I could get that, it would cost like.. $15 - $50, but whatever. Cheap.
First issue - These certificates for the PSD2 are only issued to legal entities.
That was my first source of hate for politicians.
Then... As a cherry on top, I found out I'd also need a certification from the local capital bank which, you guessed it, is also only given to legal entities, while also being incredibly hard to get in and of itself, and so far, only one company in my country got it.
So here I am, reading through the documentation of something, that would completely satisfy all my needs, yet that is locked behind a stupid legal wall because politicians and laws gotta keep the technology back. And I can't help but seethe in anger towards both, the EU that made this regulation, and the fact that the bank even mentions this API anywhere.
Seriously, if 99.9% of programmers would never ever get access to that API, why bother mentioning it on your public main API page?!
It... It made me sad more than anything...6 -
Disclaimer: Long tale of a tech support job. Also the wk29 story is at the bottom.
One time I was working tech support for a website and email hosting firm that was in town. I was hired and worked as the only tech support person there, so all calls came in through me. This also meant that if I was on a call, and another one came through, they would go straight to voice mail. But I couldn't hang up calls either, so, sometimes someone would take up tons of time and I'd have to help them. I was also the "SEO" and "Social Media Marketing" person, as well; managed peoples' social media campaigns. I have tons of stories from this place but a few in particular stick out to me. No particular order to these, I'm just reminiscing as I write this.
I once had to help a man who couldn't find the start button on his computer. When I eventually guided him to allowing me to remote into his computer via Team Viewer, I found he was using Windows XP. I'm not kidding.
I once had to sit on the phone with a man selling Plexus Easy Weight Loss (snake oil, pyramid scheme, but he was a client) and have him yell at me about not getting him more business, simply because we'd built his website. No, I'D not built his website, but his website was fine and it wasn't our job to get him more business. Oh yeah, this is the same guy who said that he didn't want the social media marketing package because he "had people to hide from." Christ.
We had another client who was a conspiracy theorist and wanted the social media marketing package for his blog, all about United States conspiracies. Real nut case. But the best client I've ever had because sometimes he'd come into the office and take up my time talking at me about how Fukushima was the next 911 and that soon it'll spill into the US water supply and everybody was going to die. Hell, better than being on the phone! Doing his social media was great because he wanted me to post clearly fake news stories to his twitter and facebook for him, and I got to look at and manage all the comments calling him out on his bullshit. It was kinda fun. After all, it wasn't _me_ that believed all this. It felt like I was trolling.
[wk29] I was the social media and support techie, not a salesperson. But sometimes I was put in charge _alone_ in front of clients for status meetings about their social media. This one time we had a client who was a custom fashion-type person. I don't really remember. But I was told directly to make them a _new_ facebook page and post to it every day with their hot new deals and stuff. MONTHS pass since I do that and they come in for a face-to-face meeting. Boss is out doing... boss things and that means I have to sit in with her, and for some fucking reason she brought her boyfriend AND HER DAD. Who were both clearly very very angry with me, the company, and probably life. They didn't ever say anything at first, they didn't greet me, they were both just there like British royal guards. It was weird as fuck. I start showing them the page, the progress on their likes goals, etc etc. Marketing shit. They say, "huh, we didn't see any of these posts at home." Turns out they already had a Facebook page, I was working on a completely seperate one, and then the boyfriend finally chimes in with the biggest fucking scowl, "what are you going to do about this?" He was sort of justified, considering this was a payed and semi-expensive service we offered, but holy shit the amount of fire in all three of them. Anyway, it came down to me figuring out how to merge facebook pages, but they eventually left as clients. Is this my fuck up? Is it my company's? Is it theirs? I don't know but that was probably the most awkward meeting ever. Don't know if it comes across through text but the anxiety was pretty real. Fuck.
tl;dr Tech support jobs are a really fun and exciting entry level position I recommend everybody apply for if they're starting out in the tech world! You'll meet tons of cool people and every day is like a new adventure.2 -
doNotMessWithITTeamInAFuckingProject();
Last night me with my team have a discussion with my project team. Currently we have a project for our insurance client building a Learning Management System. The project condition already messed up since the first day i join a meeting. Because since its a consortium project with multiple company involved, one of company had a bad experience with another company. It happened few years back when both of company were somehow break up badly because miss communication (i heard this from one of my team).
Skip..skip... And then day to day like another stereotype IT projects when client and business analyst doing requirements gathering, the specs seems unclear and keep changing day by day even when I type this rant I'm sure it will change again.
Then something happened last night when my team leader force our business analyst to re index the use case number (imho) this is no need to be done, and i know the field conditions its so tough for all team members.
So many problems occured, actually this is a boring problem like lack of dev resource, lack of project management and all other stereotype IT projects had. Its sucks why this things is happening again.
Finally my fellow business analyst type a quite long message in our group and said that he maybe quit because its too tired and he felt that the leader only know about push push pushhhhhy fcking pussy, he never go to the client site and look what we've done and what we struggle so far.
I just don't know why, i know this guy earlier was an IT geek also, but when he leading a team he act like he never done IT project before, just know about pushing people without knowing what the context and sound to me like just rage push!
Damnit, i maybe quit also, you know we IT guy never affraid to quit anytime from the messed up condition like this. Even though we were at the bottom level in a project, but we hold the most main key for development.
Hope he (my leader) read this rant. And can realize what happened and fix this broken situation. I don't know what to say again, im in steady mode to quit anytime if something chaos happen nearly in the future.
doNotMessWithITTeamInAFuckingProject();1 -
First day on my first job ever, the boss asks me what I want to do. I indicated that I had some experience with php and the yii framework (which was at some point very cool xD), so I wanted to start with something like that. And so it goes: after two days of watching laracasts (which is an awesome platform by the way! :O) I got assigned to a project.
Now the company I work at uses some kind of self built system that tracks how many hours are spent on which project, and compares that to how many hours was estimated implementing a feature would take. That's cool, but then I saw that for the project I was working on the time estimated was 5 work days. This was the estimate for both designing the interfaces and implementing both front and backend. I knew in advance that this was probably way to little time for me, but didn't want to come over as the new kid who can't do shit x)
Anyway, I started on the project and was having fun, but the biggest time consuming aspect of the project was not necessarily that I didn't have enough experience: it was that the developer who started this project and made most of the design choices had written some very messy code, without tests or apparently any refactoring. Also, everything was extremly inconsistent and not according to all the best practices I just watched in my laracasts spree.
So fastforward a little: we're way over the estimated hours. Yay. Now suddenly the boss comes by with an almost angry face that the client is becoming angry and we need to finish soon. He makes it entirely our (me and the front end guy) problem and I just decide to say nothing and try to work faster.
Now I'm stuck writing fugly code on top of more fugly code and when I mentioned to my front end guy that I was almost finished with feature but I only needed to finish up the tests, he said something like "oh just don't write tests, that'll take too long"... Is that really the mindset of this company?! No wonder the project I work on was in a very bad state.
Thanks to devrant I see now that I just need to say something if I know that I won't be able to complete something in a certain amount of time and that other people are just like me (thank god). :) I think I'll need to post more rants to vent my frustrations x)5 -
Greatest lesson I learned from myself. Work for yourself. Create your own business while you are working. Be your own boss. Don't rely in employment alone.
I got laid off today. My boss business is a digital agency. Our client stopped working with several agencies including us because of an order from their mother company to only use 1 agency. My boss has no choice but to let me go.
Even if you got the skills and you're doing good in your work, these things can happen. It is beyond our control. I like my company and my boss but reality hits hard. I thought I will be with this company for a very very long time. I want to settle here and build my business but still work together with my boss. I have so many plans that instantly disappeared.
Oh well just be strong and move on. Happy job hunting to me again. Maybe this is God's plan to teach me some things. For me to create my own business seriously while working.5 -
Warning: Long rant ahead!
So we built an amazing system for managing swarms of drones, and we have flown hundreds of hours, testing, etc.
Comes a client and says, that he wants to buy our system, but he wants to integrate it in a bigger system that is supposed to orchestrate many small systems.
Sounds like a deal.
So they send me on a week course (see previous rant: https://devrant.com/rants/2049071/...) to learn how to integrate our system in theirs.
I was sure that they have some API or something and it should be a breeze. but apparently they give us an SDK that includes all their files, and we have to build and run their entire system, and then build our own API inside of it!
And the reason we needed a week-long course, was to know all the paths where the XML configuration files exist!
So for the last month, I am hacking away inside this huge program, navigating thousands of files in a language I don't know, in order to build an API for their system, so that I can use it on our side.
Yesterday they informed us that a new version is available.
And sure enough, waiting in my inbox this morning was a link to download a new SDK.
No Changelog, No Instructions, Just a zip file with over 25,000 files.
So I phone my contact in their company to ask how exactly I am supposed to update their files, and his answer was: diff them!
WHAT! 25,000 files, half of them built by the c++ compiler, tens of configuration files scattered in different places, linking all the new libraries from scratch, are they crazy or what?
And then he tells me that they are working for 15 years this way. That's why everyone hates them I guess.
going to have a long day...
P.S. many more rants to come from this integration.4 -
You utter &@£#s. You give rediclious promises to clients without consulting Devs how long items will take, when issues with project are clarified with client months in advance you turn around week before last and do a massive U turn. Expect junior developers to be masters of Photoshop, flash, server side technologies and to get around and code the front end. Then developers who are putting in the over time already you demand a massive load of overtime extra and threaten us if we don't meet the deadline?! Sat here blood boiling. last guy here litrually rage quit because of issues like this and #&## I think I'm going to too, so hard to try stay professional! ##&##&# I have had it!2
-
Most ignorant ask from a PM or client?
Migrated to SharePoint 2016 which included Reporting Services, and trying to fix a bug in the reporting services scheduler, I created a report (aka, copied an existing one) 'A Klingon Walks Into a Bar', so it would first in the list and distinct enough so the QA testers would (hopefully) leave it alone.
The PM for the project calls me.
PM: "What is this Klingon report? It looks like a copy of the daily inventory report"
Me: "It is. The reporting service job keeps crashing on certain reports that have daily execution schedules."
PM: "I need you to delete it"
Me: "What? Why? The report is on the dev sharepoint site. I named the report so it was unique and be at the top of the list so I can find it easily."
PM: "The name doesn't conform to our standards and it's confusing the testers."
Me: "The testers? You mean Dan, you, and Heather?"
PM: "Yes, smartass. Can you name the report something like daily inventory report 2, or something else?"
Me: "I could, but since this is in development, no. You've already proofed out the upgrade. You're waiting on me to fix this sharepoint bug. Why do you care what I do on this server? It's going away after the upgrade."
PM: "Yea, about that. We like having the server. It gives us a place to test reports. Would really appreciate it if you would rename or delete that report."
Me: "A test sharepoint reporting services server out of scope, so no, we're not keeping it."
PM: "Having a server just for us would be nice."
Me: "$10,000 nice? We're kinda fudging on the licensing now. If we're keeping it, we will be required to be in compliance. That's a server license, sharepoint license, sql server license, and the dedicated hardware. We talked about that, remember?"
PM: "Why is keeping that report so important to you? I don't want to explain to a VP what a Klingon is."
Me: "I'm not keeping the report or moving it to production. When I figure out the problem, I'll delete the report. OK?"
PM: "I would prefer you delete the report before a VP sees it."
Me: "Why would a VP be looking? They probably have better things to do."
PM: "Jeff wants to see our progress, I'll have to him the site, and he'll see the report."
Me: "OK? You tell Jeff it's a report I'm working on, I'll explain what a Klingon is, Jeff will call me a nerd, and we all move on."
PM: "I'm not comfortable with this upgrade."
Me: "What does that mean?"
PM: "I asked for something simple and I can't be responsible for the consequences. I'll be documenting this situation as a 'no-go' for deployment"
Me: "Oookaayyy?"
I figured out the bug, deleted the 'Klingon' report, and the PM couldn't do anything to delay the deployment.4 -
TLDR: crappy api + idiot ex client combo rant // devam si duška
I saw a lot of people bitching about APIs that don't return proper response codes and other stuff..
Well let me tell you a story. I used to work on a project where we had to do something like booking, but better..crossbreed with the Off&Away bidding site (which btw we had to rip off the .js stuff and reverse engineer the whole timer thingy), using free versions of everything..even though money wasn't an issue (what our client said). Same client decided to go with transhotel because it was sooooo gooood... OK? Why did noone heard of them then?
Anyhow, the api was xml based.. we had to send some xml that was validated against a schema, we received another that was supposed to be validated againts another schema.. and so on and so on..
...
...
supposed..
The API docs were nonexistent.. What was there, was broken English or Spanish.. Even had some comments like Add This & that to chapter xy.. Of course that chapter didn't even exist yet. :( And the last documentation they had, was really really old..more than a year, with visible gaps, we got the validation schemas not even listed in the docs, let alone described properly.
Yaaay! And that was not everything.. besides wrong and missing data, the API itself caused the 500 server error whenever you were no longer authenticated.
Of course it didn't tell you that your session was dead.. Just pooof! Unhandled crap everywhere!
And the best part?! We handled that login after inspecting what the hell happened, but sent the notification to the company anyways.. We had a conf call, and sent numerous emails explaining to them what a 'try catch' is and how they should handle the not authenticated error <= BTW they should have had a handled xml response for that, we got the schema for it! But they didn't. Anyhow, after two agonizing days talking back and forth they at least set up the server to be available again after the horrified 500 error. Before, it even stopped responding until reset (don't ask me how they managed to do that).
Oh yeah, did I mention this was a worldwide renown company?! Where everybody spoke/wrote English?! Yup, they have more than 700 people there, of course they speak English! <= another one of my ex clients fabulous statements... making me wanna strangle him with his tie.. I told him I am not talking to them because no-one there understood/spoke English and it would be a waste of my time.. Guess who spent almost 3 hours to talk to someone who sounded like a stereotypical Indian support tech guy with a flue speaking Italian?! // no offence please for the referenced parties!!
So yeah, sadly I don't have SS of the fucked up documentation..and I cannot post more details (not sure if the NDA still holds even though they canceled the project).. Not that I care really.. not after I saw how the client would treat his customers..
Anywayz I found on the interwebz some proof that this shitty api existed..
picture + link: https://programmableweb.com/api/...
SubRant: the client was an idiot! Probably still is, but no longer my client..
Wanted to store the credit card info + cvc and owner info etc.. in our database.. for easier second payment, like on paypal (which he wanted me to totally customize the payment page of paypal, and if that wasn't possible to collect user data on our personalized payment page and then just send it over to paypal api, if possible in plaintext, he just didn't care as long as he got his personalized payment page) or sth.... I told the company owner that they are fucking retards if they think they can pull this off & that they will lose all their (potential) clients if they figure that out.. or god forbid someone hacked us and stole the data.. I think this shit is also against the law..
I think it goes without saying what happened next.. called him ignorant stupid fucktard to his face and told him I ain't doing that since our company didn't even had a certificate to store the last 4 numbers.. They heard my voice over the whole firm.. we had fish-tank like offices, so they could all see me yelling at the director..
Guess who got laid off due to not being needed anymore the next day?! It was the best day of my life..so far!! Never have I been happier to lose my job!!
P.S. all that crap + test + the whole backand for analysis, the whole crm + campaign emails etc.. the client wanted done in 6 months.. O.o
P.P.S. almost shat my pants when devRant notified my I cannot post and wanted to copy the message and then everything disappeard.. thank god I have written this in the n++ xDundefined venting big time issues no documentation idiot xml security api privacy ashole crappy client rant11 -
Absolutely hate these "moving up", "stairs of success", "we are so diverse!" stock photos all over the internet.
You feel like you are being subtle, fuck no. Unless your target audience is stupid as as fuck, this photos looks dumb and over the top. And what is up with this "diversity" all over the place? don't get me wrong, I am all for diversity. But learn how to apply it properly.
"Looks like we need a picture of a student. Oh no, we need to be diverse. Add 15 kids of 15 different ethincity in the same picture to make sure we looks diverse. Phew!"
And the animations. Holy fucking shite. Why is it that a cheap website immediatly means that your website needs to have 100 different animation in the front page.
Seriously, picture rolling from here and there. Text coming out of nowhere.Everything being squeezed and rotated. God damn it!
This is another reason I fucking hate these 1 click websites and shite like that. This fucking website was created with WiX and my God, it's a fucking nightmare.
Good news is client is recreating the website.3 -
Client: I want a new feature for my chat bot. It should be able to rap.
Me: ... k
*monologue: wait u w0t m8*
Also me: Can you please go more into the details? It should be able to rap. Ok. But how do you want it to look like? How "strong" should be the discrimination level, for instance?
Client: It should beat ass, yo.
Inner me -> core me: Let us just ignore him. We won't be able to do it, since he isn't really explaining his needs. "It should be able to rap". We are not wizards.
Core me -> inner me: Chill. We will just use some insult apis, combine it with cleverb0t api et voila.
Me: Alright. I got an idea for it. I can do it within this week. And if you don't like it, I will ofc do some changes to it.
Client: Hmmm... that's nice and good. But within 1 week?
Inner me: I can't do magic and pull that feature out of my fucking ass!
Clients... clients... clients...
0. Don't expect us to be done in a few days. We are also humans. And not fucking machines.
1. Do us (all devs on planet earth. -Microaggression in 3, 2, 1..) a favor and (kill yourself) learn how to request a feature.2 -
After I spent 4 years in a startup company (it was literally just me and a guy who started it).
Being web dev in this company meant you did everything from A-Z. Mostly though it was shitty hacky "websites/webapps" on one of the 3 shitty CMSs.
At some point we had 2 other devs and 2 designers (thank god he hired some cause previously he tried designing them on his own and every site looked like a dead puppy soaked in ass juice).
My title changed from a peasant web dev to technical lead which meant shit. I was doing normal dev work + managing all projects. This basically meant that I had to show all junior devs (mostly interns) how to do their jobs. Client meetings, first point of contact for them, caring an "out of hours" support phone 24/7, new staff interviews, hiring, training and much more.
Unrealistic deadlines, stress and pulling hair were a norm as was taking the blame anytime something went wrong (which happened very often).
All of that would be fine with me if I was paid accordingly, treated with respect as a loyal part of the team but that of course wasn't the case.
But that wasn't the worst part about this job. The worst thing was the constant feeling that I'm falling behind, so far behind that I'll never be able to catch up. Being passionate about web development since I was a kid this was scaring the shit out of me. Said company of course didn't provide any training, time to learn or opportunities to progress.
After these 4 years I felt burnt out. Programming, once exciting became boring and stale. At this point I have started looking for a new job but looking at the requirements I was sure I ain't going anywhere. You see when I was busy hacking PHP CMSs, OOPHP became a thing and javascript exploded. In the little spare time I had I tried online courses but everyone knows it's not the same, doing a course and actually using certain technology in practice. Not going to mention that recruiters usually expect a number of years of experience using the technology/framework/language.
That was the moment I lost faith in my web dev future.
Happy to say though about a month later I did get a job in a great agency as a front end developer (it felt amazing to focus on one thing after all these years of "full-stack bullshit), got a decent salary (way more than I expected) and work with really amazing and creative people. I get almost too much time to learn new stuff and I got up to speed with the latest tech in a few weeks. I'm happy.
Advice? I don't really have any, but I guess never lose faith in yourself.3 -
So when I was working for a web dev shop, one of the clients asked us to have a drop down of all the different combinations you can have for street types to appear on the address form of their shopping cart. So stuff like "Street", "St", "Drive", "Dr", "Lane", "Ln" etc. We told the client that it wasn't possible since the possible combinations and how some street don't all end with a type.
But the client was adamant about having this so we ended up building a section in the administration section to allow the client to add any new street type to a database table that will populate the dropdown.1 -
I might have told this in other rants, but this thing (requested from the client) is one of the worst thing I've ever done.
So we were developing a website to find the stores of a certain brand across the country, specifically: Italy.
In Italy, a lot of towns have accents and apostrophes in their name.
Client managers wanted ALL DATA to be capitalized, including letters with accents, but the client management was using Windows and Windows doesn't simply let you enter capital letters with accents from the keyboard, so the client requested to make a procedure to turn every apostrophe into an accent, therefore a town named like "CA' DEL BOSCO" would be "CÀ DEL BOSCO" (which is wrong) as they just couldn't bother copy-pasting from Word.
An important thing to notice is that most Italian towns with apostrophes don't have accents and most towns with accents don't have apostrophes, and that specific routine couldn't figure out what to exactly, so we ended up having all the stuff messed up.
The feature was a total SHIT, but the client was extremely happy with it, so we didn't even bother arguing with that.4 -
"four million dollars"
TL;DR. Seriously, It's way too long.
That's all the management really cares about, apparently.
It all started when there were heated, war faced discussions with a major client this weekend (coonts, I tell ye) and it was decided that a stupid, out of context customisation POC had that was hacked together by the "customisation and delivery " (they know to do neither) team needed to be merged with the product (a hot, lumpy cluster fuck, made in a technology so old that even the great creators (namely Goo-fucking-gle) decided that it was their worst mistake ever and stopped supporting it (or even considering its existence at this point)).
Today morning, I my manager calls me and announces that I'm the lucky fuck who gets to do this shit.
Now being the defacto got admin to our team (after the last lead left, I was the only one with adequate experience), I suggested to my manager "boss, here's a light bulb. Why don't we just create a new branch for the fuckers and ask them to merge their shite with our shite and then all we'll have to do it build the mixed up shite to create an even smellier pile of shite and feed it to the customer".
"I agree with you mahaDev (when haven't you said that, coont), but the thing is <insert random manger talk here> so we're the ones who'll have to do it (again, when haven't you said that, coont)"
I said fine. Send me the details. He forwarded me a mail, which contained context not amounting to half a syllable of the word "context". I pinged the guy who developed the hack. He gave me nothing but a link to his code repo. I said give me details. He simply said "I've sent the repo details, what else do you require?"
1st motherfucker.
Dafuq? Dude, gimme some spice. Dafuq you done? Dafuq libraries you used? Dafuq APIs you used? Where Dafuq did you get this old ass checkout on which you've made these changes? AND DAFUQ IS THIS TOOL SUPPOSED TO DO AND HOW DOES IT AFFECT MY PRODUCT?
Anyway, since I didn't get a lot of info, I set about trying to just merge the code blindly and fix all conflicts, assuming that no new libraries/APIs have been used and the code is compatible with our master code base.
Enter delivery head. 2nd motherfucker.
This coont neither has technical knowledge nor the common sense to ask someone who knows his shit to help out with the technical stuff.
I find out that this was the half assed moron who agreed to a 3 day timeline (and our build takes around 13 hours to complete, end to end). Because fuck testing. They validated the their tool, we've tested our product. There's no way it can fail when we make a hybrid cocktail that will make the elephants foot look like a frikkin mojito!
Anywho, he comes by every half-mother fucking-hour and asks whether the build has been triggered.
Bitch. I have no clue what is going on and your people apparently don't have the time to give a fuck. How in the world do you expect me to finish this in 5 minutes?
Anyway, after I compile for the first time after merging, I see enough compilations to last a frikkin life time. I kid you not, I scrolled for a complete minute before reaching the last one.
Again, my assumption was that there are no library or dependency changes, neither did I know the fact that the dude implemented using completely different libraries altogether in some places.
Now I know it's my fault for not checking myself, but I was already having a bad day.
I then proceeded to have a little tantrum. In the middle of the floor, because I DIDN'T HAVE A CLUE WHAT CHANGES WERE MADE AND NOBODY CARED ENOUGH TO GIVE A FUCKING FUCK ABOUT THE DAMN FUCK.
Lo and behold, everyone's at my service now. I get all things clarified, takes around an hour and a half of my time (could have been done in 20 minutes had someone given me the complete info) to find out all I need to know and proceed to remove all compilation problems.
Hurrah. In my frustration, I forgot to push some changes, and because of some weird shit in our build framework, the build failed in Jenkins. Multiple times. Even though the exact same code was working on my local setup (cliche, I know).
In any case, it was sometime during sorting out this mess did I come to know that the reason why the 2nd motherfucker accepted the 3 day deadline was because the total bill being slapped to the customer is four fucking million USD.
Greed. Wow. The fucker just sacrificed everyone's day and night (his team and the next) for 4mil. And my manager and director agreed. Four fucking million dollars. I don't get to see a penny of it, I work for peanut shells, for 15 hours, you'll get bonuses and commissions, the fucking junior Dev earns more than me, but my manager says I'm the MVP of the team, all I get is a thanks and a bad rating for this hike cycle.
4mil usd, I learnt today, is enough to make you lick the smelly, hairy balls of a Neanderthal even though the money isn't truly yours.4 -
Throughout the years I have completed many projects successfully. Some projects really stood out and were awesome to do. This is not about these projects. It is however about one of my very first projects for my first real software development client many years ago, somewhere around the year 2000.
I was working for some years at TNO, a well known Dutch organization, and the lady at the reception asked me if I could help her husband out because he was strugling to get some web app developed. So I said sure, I can talk to him and see what I can do.
So I went to their house and talked to her husband. They were living in a huge villa and turns out her husband owns an international flower export business for which he needed some web app for. So we had a nice talk and he showed me some software designs he got from a couple of different big companies. He asked me my opinion about these designs. I remember answering something like that it looks very fancy but for me it didn't make much sense.
He replied that it didn't make sense for him as well and was disappointed that these companies didn't seem to understand him properly. It took about 3 months to get these designs which he thought were useless. So, I asked him to explain me what he was looking for.
Actually a pretty simple thing. He was using paper forms to have his clients order the flowers they need. Think of them as Excelsheets with 3 columns with a list of flower names and besides each column a column for the amount required. He would go to the flower auction at 4 in the morning to collect all these filled in forms, manually aggregate them on new forms, and then go to buy the flowers ordered.
This man had many clients and truck drivers. Some of them only worked or ordered at specific days. It was also important that one could easily indicate which flowers were really important to get.
Then comes this 20 year old guy (me) who delivered a working prototype in 24 hours. You can imagine how happy this man was. He said: if you built this for me I will pay you 10K. In the meanwhile for fun you can borrow one of my sports cars if you want.
I took the deal, drove a big fat sports car for about 1.5 months, I delivered and the man payed me as promised.
The web app I developed is today still being used every day. I don't think there is any other project out there, at least not that I'm aware of, that I have worked on and is still being used today in its form as it was originally developed.4 -
Got my first Webdev job at a small marketing company, felt very lucky as I didn't have much experience. Turns out I'm the only one that could program. The other guys just use Wordpress. It felt wrong at first, using plugins instead of developing, but we got results and clients were happy. I felt like there was a lot less to this development thing than I'd previously thought! And so we continued.
But I noticed that some of our more plugin heavy sites (not made by me - these were made in some drag/drop Wordpress interface) were running slow. I mean 15 seconds load time slow. I joined devRant around the same time and discovered that no - this is not what normal development actually is. Wordpress seems universally hated. Thank god, because something seemed very wrong!
So with us getting complaints all over the place over page speed from relatively high-profile clients, I've gone and set up a script on a server that downloads the whole front end of these Wordpress sites and serves them up instead of the 'real' thing. Did I mention that there's basically no dynamic content on most of these sites? It works like a charm! I'm now trying to figure out how to get forms and route them into the real, hidden version of the site, as well as automatically updating the html views whenever the client changes anything in the Wordpress backend. Not sure if this has fixed the problem or just enabled bad practice, but I don't think I'm going to be able to stop the others from doing things this way...
For the record, yes there are plugins that do similar stuff but I thought it'd be nice to never use plugins again! And hey, I got to learn all about bash scripting so I can't complain.
For real though, I didn't quite realise how bad the Wordpress thing really was until I came here. Thanks for making me aware, all!7 -
I miss old times rants...So i guess, here it goes mine:
Tomorrow is the day of the first demo to our client of a "forward-looking project" which is totally fucked up, because our "Technical Quality Assurance" - basically a developer from the '90-s, who gained the position by "he is a good guy from my last company where we worked together on sum old legacy project...".
He fucked up our marvellous, loose coupling, publish/subscribe microservice architecture, which was meant to replace an old, un-maintainable enormous monolitch app. Basically we have to replace some old-ass db stored functions.
Everyone was on our side, even the sysadmins were on our side, and he just walked in the conversation, and said: No, i don't like it, 'cause it's not clear how it would even work... Make it an RPC without loose coupling with the good-old common lib pattern, which made it now (it's the 4th 2 week/sprint, and it is a dependency hell). I could go on day and night about his "awesome ideas", and all the lovely e-mails and pull request comments... But back to business
So tomorrow is the demo. The client side project manager accidentally invited EVERYONE to this, even fucking CIO, legal department, all the designers... so yeah... pretty nice couple of swallowed company...
Today was a day, when my lead colleague just simply stayed home, to be more productive, our companys project manager had to work on other prjects, and can't help, and all the 3 other prject members were thinking it is important to interrupt me frequently...
I have to install our projects which is not even had a heart beat... not even on developer machines. Ok it is not a reeeeaaally big thing, but it is 6 MS from which 2 not even building because of tight coupling fucktard bitch..., But ok, i mean, i do my best, and make it work for the first time ever... I worked like 10 ours, just on the first fucking app to build, and deploy, run on the server, connect to db and rabbit mq... 10 FUCKING HOURS!!! (sorry, i mean) and it all was about 1, i mean ONE FUCKING LINE!
Let me explain: spring boot amqp with SSL was never tested before this time. I searched everything i could tought about, what could cause "Connection reset"... Yeah... not so helpful error message... I even have to "hack" into the demo server to test the keystore-truststore at localhost... and all the fucking configs, user names, urls, everything was correct... But one fucking line was missing...
EXCEPT ONE FUCKING LINE:
spring.rabbitmq.ssl.enabled=false # Whether to enable SSL support.
This little bitch took me 6 hours to figure out...so please guys, learn from my fault and check the spring boot appendix for default application properties, if everything is correct, but it is not working...
And of course, if you want SSL then ENABLE it...
spring.rabbitmq.ssl.enabled=true
BTW i really miss those old rants from angry devs, and i hope someone will smile on my fucking torturerant marshall_mathers worklife sugar-free_tateless_cake_decorant_figure_boss missolddays oldtimes_rants5 -
Coming back here after years to rant about... myself.
TLDR: I fucked up and now have to call a thousand people as a dev, I'm not even getting paid for it and they all get crazy about a random ID that got assigned to them, so now I want to throw away all my electronics and become a skilift operator.
Stupid me deployed a project shortly before we have the largest amount of orders in the year. (Like 90% of yearly orders in a couple minutes cause they are sold out fast and people wait to order first)
I got this horrible legacy "plain self written framework php" project which I tried to upgrade state of the art.
There was one piece missing to upgrade everything and nicely deploy it to some fresh new servers which can handle the high load which peaks at the time orders open.
So I did it the day before orders open and... everything worked well! Nothing crashed.
I wrote my client to wait a little before he confirms the orders, since after confirmation each of the people who ordered will receive an email where they can choose a unique number which they'll receive as a sticker with the order.
Since it's an event my client is promoting, people will meet each other wearing those unique stickers and being able to identify each other online and in person with this number.
Suddenly my clients call me that "customers are complaining about that there is something wrong"
Turned out he confirmed all orders straight away and that part of the application which makes the number unique was broken on the update.
So everyone could chose any number (also taken ones) as his "unique" number.
In my panic, I told my client "It's my mistake, I'll deal with it of course and call the affected people in my free time, since it's my mistake you don't have to pay for it". (it's my largest client by far, am a freelancer)
Realizing when people can chose any number it'll not be a few ones who have the same, it's like almost everyone did chose "69", "1", "420", "88 (a scary amount of people)",... (with 69 being the number being chosen by most people btw, even more then "1")
So now I have to call about a thousand people telling them a new random ID will be assigned to them. I thought of course about mailing them, wrote a script that deals with the issue automatically, and FUCKED IT UP TOO so everyone is confused and the only way to deal with it is by a call basically.
And while I'm sitting here now for 2 days straight calling people in my free time about their random ID will have to change, I realized that some people are quite crazy about random ID's.
I'm talking about yelling and threatening because "is it too much to ask for a working website when ordering this expensive product".
I hate my life right now and am getting quite serious about throwing all my electronic devices away and become a skilift operator instead. Fuck the higher pay, it's not worth the shit, I wanna have only responsibility about one button to press while watching people fall on their face.5 -
You know the worst thing about being a freelancer? You're expected to wear every fucking hat and you don't get normal hours.
Over the past few days I have been working with a client of a client attampting to fix his server. He's running CentOS on VMWare and somehow ended up breaking the system.
Upon inspection there was no way to fix his system remotely. It wouldn't even boot in recovery mode. So we've been attempting to recover his data so that we can reinstall CentOS and not have to start completely from scratch.
So for the past 3 days straight I have been remotely logging in to a Debian Live CD and manually sending folders to a FTP server of his. He has somewhere close to 30 sites on this server, and upwards of 1 million files in total.
Yesterday either the system freaked out or he did something, but the entire fucking system stopped responding which forced me to reboot it, reinsert the live CD, reinstall evertything, and re-mount his broken systems drives.
Here we are 3 days in, we're still not done, and I'm getting slightly pissy because if you don't know Linux well enough to fix this shit yourself, you shouldn't be acting as your own sysadmin for 30+ sites.
Also, backups are a thing right? VMWare also has snapshots. I know the extra storage isn't cheap, but it's a hell of a lot cheaper than paying soemone like me $35/hr to go and fix all of your shitty mistakes.2 -
Dear client:
You have to think this is like building a house, so you have to spend time doing some serious thinking, so you come up with a (somewhat) good vision of what you want and what could possible change in the future... let me give you an example: let's say we were building a house and we are very close to finishing it, so you come up with the great idea of putting the kitchen where the living room is, and the bathroom in the second floor where the TV room was... if that happens, then I would tell you to go fuck yourself.
See dear client... there are pipes, wiring, and all sorts of stuff you don't see, that makes a house be a house... apply the same logic to building software and we'll be on the same page more often.
PS: I appreciate your business2 -
I wrote a node + vue web app that consumes bing api and lets you block specific hosts with a click, and I have some thoughts I need to post somewhere.
My main motivation for this it is that the search results I've been getting with the big search engines are lacking a lot of quality. The SEO situation right now is very complex but the bottom line is that there is a lot of white hat SEO abuse.
Commercial companies are fucking up the internet very hard. Search results have become way too profit oriented thus unneutral. Personal blogs are becoming very rare. Information is losing quality and sites are losing identity. The internet is consollidating.
So, I decided to write something to help me give this situation the middle finger.
I wrote this because I consider the ability to block specific sites a basic universal right. If you were ripped off by a website or you just don't like it, then you should be able to block said site from your search results. It's not rocket science.
Google used to have this feature integrated but they removed it in 2013. They also had an extension that did this client side, but they removed it in 2018 too. We're years past the time where Google forgot their "Don't be evil" motto.
AFAIK, the only search engine on earth that lets you block sites is millionshort.com, but if you block too many sites, the performance degrades. And the company that runs it is a for profit too.
There is a third party extension that blocks sites called uBlacklist. The problem is that it only works on google. I wrote my app so as to escape google's tracking clutches, ads and their annoying products showing up in between my results.
But aside uBlacklist does the same thing as my app, including the limitation that this isn't an actual search engine, it's just filtering search results after they are generated.
This is far from ideal because filter results before the results are generated would be much more preferred.
But developing a search engine is prohibitively expensive to both index and rank pages for a single person. Which is sad, but can't do much about it.
I'm also thinking of implementing the ability promote certain sites, the opposite to blocking, so these promoted sites would get more priority within the results.
I guess I would have to move the promoted sites between all pages I fetched to the first page/s, but client side.
But this is suboptimal compared to having actual access to the rank algorithm, where you could promote sites in a smarter way, but again, I can't build a search engine by myself.
I'm using mongo to cache the results, so with a click of a button I can retrieve the results of a previous query without hitting bing. So far a couple of queries don't seem to bring much performance or space issues.
On using bing: bing is basically the only realiable API option I could find that was hobby cost worthy. Most microsoft products are usually my last choice.
Bing is giving me a 7 day free trial of their search API until I register a CC. They offer a free tier, but I'm not sure if that's only for these 7 days. Otherwise, I'm gonna need to pay like 5$.
Paying or not, having to use a CC to use this software I wrote sucks balls.
So far the usage of this app has resulted in me becoming more critical of sites and finding sites of better quality. I think overall it helps me to become a better programmer, all the while having better protection of my privacy.
One not upside is that I'm the only one curating myself, whereas I could benefit from other people that I trust own block/promote lists.
I will git push it somewhere at some point, but it does require some more work:
I would want to add a docker-compose script to make it easy to start, and I didn't write any tests unfortunately (I did use eslint for both apps, though).
The performance is not excellent (the app has not experienced blocks so far, but it does make the coolers spin after a bit) because the algorithms I wrote were very POC.
But it took me some time to write it, and I need to catch some breath.
There are other more open efforts that seem to be more ethical, but they are usually hard to use or just incomplete.
commoncrawl.org is a free index of the web. one problem I found is that it doesn't seem to index everything (for example, it doesn't seem to index the blog of a friend I know that has been writing for years and is indexed by google).
it also requires knowledge on reading warc files, which will surely require some time investment to learn.
it also seems kinda slow for responses,
it is also generated only once a month, and I would still have little idea on how to implement a pagerank algorithm, let alone code it.4 -
I had spent the last year working on a online store power by woocommerce with over 100k products from various suppliers. This online store utilized a custom API that would take the various formats that suppliers offer their inventory in and made them consistent. Now everything was going swimmingly initially, but then I began adding more and more products using a plug-in called WP all import. I reached around 100k products and the site would take up to an entire minute to load sometimes timing out. I got desperate so I installed several caching plugins, but to no avail this did not help me. The site was originally only supposed to take three to four months but ended up taking an entire year. Then, just yesterday I found out what went wrong and why this woocommerce website with all of these optimizations was still taking anywhere from 60 to 90 seconds to load, or just timing out entirely. I had initially thought that I needed a beefier server so I moved it to a high CPU digitalocean VM. While this did help a little bit, the site was still very slow and now I had very high CPU usage RAM usage and high disk IO. I was seriously stumped the Apache process was using a high amount of CPU and IO along with MYSQL as well. It wasn't until I started digging deeper into the database that I actually found out what the issue was. As I was loading the site I would run 'show process list' in the SQL terminal, I began to notice a very significant load time for one of the tables, so I went to go and check it out. What I did was I ran a select all query on that particular table just to see how full it was and SQL returned a error saying that I had exceeded the maximum packet size. So I was like okay what the fuck...
So I exited my SQL and re-entered it this time with a higher packet size. I ran a query that would count how many rows were in this particular table and the number came out to being in the millions. I was surprised, and what's worse is that this table belong to a plugin that I had attempted to use early in the development process to cache the site. The plugin was deactivated but apparently it had left PHP files within the wp content directory outside of the actual plugin directory, so it's still executing scripts even though the plugin itself was disabled. Basically every time I would change anything on the site, it would recache the whole thing, and it didn't delete any old records. So 100k+ products caching on saves with no garbage collection... You do the math, it's gonna be a heavy ass database. Not only that but it was serialized data, so when it did pull this metric shit ton of spaghetti from the database, PHP then had to deserialize it. Hence the high ass CPU load. I had caching enabled on the MySQL end of things so that ate the ram. I was really desperate to get this thing running.
Honest to God the main reason why this website took so long was because the load times made it miserable to work on. I just thought that the hardware that I had the site on was inadequate. I had initially started the development on a small Linux VM which apparently wasn't enough, which is why I moved it to digitalocean which also seemed to not be enough, so from there I moved to a dedicated server which still didn't seem to be enough. I was probably a few more 60-second wait times or timeouts from recommending a server cluster to my client who I know would not be willing to purchase it. The client who I promised this site to have completed in 3 months and has waited a year. Seriously, I would tell people the struggles that I would go through with this particular site and they would just tell me to just drop the site; just take the money, just take the loss. I refused to, this was really the only thing that was kicking my ass. I present myself as this high-and-mighty developer like I'm just really good at what I do but then I have this WordPress site that's just beating the shit out of me for a year. It was a very big learning experience and it was also very humbling as well, it made me realize that I really don't know as much as I think I might. It was evidence that there is still so much more to learn out there, I did learn a lot from that experience especially about optimizing websites the different types of methods to do that particular lonely on the server side and I'll be able to utilize this knowledge in the future.
I guess the moral of the story is, never really give up. Ultimately things might get so bad that you're running on hopes and dreams. Those experiences are generally the most humbling. Now I can finally present the site that I am basically a year late on to the client who will be so happy that I did not give up on the project entirely. I'll have experienced this feeling of pure euphoria, and help the small business significantly grow their revenue. Helping others is very fulfilling for me, even at my own expense.
Anyways, gonna stop ranting. Running out of characters. If you're still here... Ty for reading :')7 -
This fcktard client that insist on using an iframe and demands support for browsers like IE7. You are costing me years of my life.
Fucking fuck of a Microsoft trying to protect people against tracking from 3d parties in an iframe in random ways in some versions of IE7. Or IE11 in IE7 compatibility mode.
If you are going to refuse sessions just do it! I got a fucking check and fix for that. Because these fuck faces friendly people at Apple like to refuse sessions on iPads and iPhone too. But we worked that out, because they are at least consistent. So a few dirty little hacks made it all Okay.
But no, Boo Hoo I'm Microsoft and I will throw a tantrum. I like my browsers to be like an magican, instead of an usefull piece of software. If you look in this page, or look here we got them. I got your sessions, safe and secure.
But when you need me, to verify that the user is allowed to access data we do a little hocus pocus and now they are gone. Nowhere to be seen or found again. Fun times free fucking magic shows all day long.
It's morning but maybe its time for a bottle of scotch. Maybe if I'm in the state as this browser. Where I don't know what I'm doing because I'm shitfaced drunk it will start working.
When in Rome do as the romans do.6 -
New episode on my clients being morons.
Got a call this morning:
Client: hello, we've got a problem here...
Me: tell me about it
C: well... Do you remember the 1200 account we loaded last week ?
Me: yes? What's wrong, we tested them, everything was alright.
C: yeah... But we just noticed we loaded them in the wrong status... Fix that!
Me: easy, we clear the database and load the correct data back.
C: NO WAY! We already worked on 3 accounts. Don't want to lose any of that. Just change the status, it's easy
Me: well not really, there's a lot more going on when you go from one status to another.
C: Don't care, just do it
So... now I need to delete the bad data, checking nothing else gets impacted in the application. And then reload that same data with the proper status this time.
As weird as this sounds like, this is the reason why I love my job. You get challenges like that every single day.4 -
Client: "We're not ready to be finished with the project but I don't want to pay you any more money to meet the terms of the contract we both signed, even though all my must-have changes led to more costs just like you had warned me they would."
Me: "Don't make any more changes, plez."
Client: "Imma make another change."
Me: "No. Stahp. Don't."
Client: "I added four new fields and probably a ton more business rules I don't care to understand."
Me: "Kill me. Just put this gun to my head and kill me."
Client: "That's not in our contract!"3 -
Want to make someone's life a misery? Here's how.
Don't base your tech stack on any prior knowledge or what's relevant to the problem.
Instead design it around all the latest trends and badges you want to put on your resume because they're frequent key words on job postings.
Once your data goes in, you'll never get it out again. At best you'll be teased with little crumbs of data but never the whole.
I know, here's a genius idea, instead of putting data into a normal data base then using a cache, lets put it all into the cache and by the way it's a volatile cache.
Here's an idea. For something as simple as a single log lets make it use a queue that goes into a queue that goes into another queue that goes into another queue all of which are black boxes. No rhyme of reason, queues are all the rage.
Have you tried: Lets use a new fangled tangle, trust me it's safe, INSERT BIG NAME HERE uses it.
Finally it all gets flushed down into this subterranean cunt of a sewerage system and good luck getting it all out again. It's like hell except it's all shitty instead of all fiery.
All I want is to export one table, a simple log table with a few GB to CSV or heck whatever generic format it supports, that's it.
So I run the export table to file command and off it goes only less than a minute later for timeout commands to start piling up until it aborts. WTF. So then I set the most obvious timeout setting in the client, no change, then another timeout setting on the client, no change, then i try to put it in the client configuration file, no change, then I set the timeout on the export query, no change, then finally I bump the timeouts in the server config, no change, then I find someone has downloaded it from both tucows and apt, but they're using the tucows version so its real config is in /dev/database.xml (don't even ask). I increase that from seconds to a minute, it's still timing out after a minute.
In the end I have to make my own and this involves working out how to parse non-standard binary formatted data structures. It's the umpteenth time I have had to do this.
These aren't some no name solutions and it really terrifies me. All this is doing is taking some access logs, store them in one place then index by timestamp. These things are all meant to be blazing fast but grep is often faster. How the hell is such a trivial thing turned into a series of one nightmare after another? Things that should take a few minutes take days of screwing around. I don't have access logs any more because I can't access them anymore.
The terror of this isn't that it's so awful, it's that all the little kiddies doing all this jazz for the first time and using all these shit wipe buzzword driven approaches have no fucking clue it's not meant to be this difficult. I'm replacing entire tens of thousands to million line enterprise systems with a few hundred lines of code that's faster, more reliable and better in virtually every measurable way time and time again.
This is constant. It's not one offender, it's not one project, it's not one company, it's not one developer, it's the industry standard. It's all over open source software and all over dev shops. Everything is exponentially becoming more bloated and difficult than it needs to be. I'm seeing people pull up a hundred cloud instances for things that'll be happy at home with a few minutes to a week's optimisation efforts. Queries that are N*N and only take a few minutes to turn to LOG(N) but instead people renting out a fucking off huge ass SQL cluster instead that not only costs gobs of money but takes a ton of time maintaining and configuring which isn't going to be done right either.
I think most people are bullshitting when they say they have impostor syndrome but when the trend in technology is to make every fucking little trivial thing a thousand times more complex than it has to be I can see how they'd feel that way. There's so bloody much you need to do that you don't need to do these days that you either can't get anything done right or the smallest thing takes an age.
I have no idea why some people put up with some of these appliances. If you bought a dish washer that made washing dishes even harder than it was before you'd return it to the store.
Every time I see the terms enterprise, fast, big data, scalable, cloud or anything of the like I bang my head on the table. One of these days I'm going to lose my fucking tits.10 -
Client - "hi, I got the mail. Is the app complete.......","...you've done this part?....","...have you done that blabla section..."
😑..I already wrote it in the mail that it is complete, dumbass. And Why don't u just flipping RUN it and see if this part and that section is working properly and tell me if your highness can spot something incomplete.
No I'm not overreacting. He acts like this all the time.2 -
This day I have received the most glorious news in e-pistolary form. For some years, I was suffering in support of a client who was, well, insufferable. My presence there paralleled the divine comedy in both essence and fact.
I opened the missive, expecting another plea to bail them out of whatever clusterfuck they found themselves in. Instead, what I found was something truly magical.
"Hey Human,
I hope this finds you well. I'm not sure if you remember a few years back, we were trying to decide between IBM Cloud and AWS. Well, after years of battling FF*, we're finally moving ahead with AWS. He failed one too many times to deliver anything visibly. After you left, there was no one left he could use to steal credit, ideas, and work.
FF is still pushing to have them use IBM cloud as a "warm backup" in the event "AWS fails." We will see where that goes.
I figured you'd like to know; you were the void in the wilderness for a long time. I don't want to think about how much time we could have saved if we had just listened.
PeeEm**"
This event represents a personal victory, albeit belated, over a few peoples' absurd amount of privilege. Towards the end, I was vicious about my contestation to the insanity of adopting a desperate hedge attempt-as-cloud offering from a failing company. Some examples:
// cloud 'strategy meeting'
Moi: What cloud platform are we looking at using?
FF: We're looking at IBM cloud and AWS as a second.
Moi: Why is that? I understand you're obligated to rep your offering first, but that decision doesn't seem to have the customer's best interest at heart.
FF: IBM cloud is a market leader; AWS isn't as good.
Moi: I see. I mean, that's the tech equivalent of the company's fleet management considering monkeys on tricycles as a strong competitor to service trucks, but I get what you mean.
// steering meeting
Director: Who can we look to as an example? Who is currently using the IBM cloud?
Moi: No one; they account for a single-digit portion of the actual cloud market. Their long game to sell you a "Hybrid Cloud," which means put some front end payload in a CDN, and buy n-frame units of IBM z servers for the DC with IBM gateway appliances acting as connective tissue. So it's not the cloud at all, really.
Director: How does it compare in cost?
Moi: It's generally 40% more expensive than other clouds, and it only goes higher as you option their software.
Director: What about Watson? I hear Watson is good?
Moi: It's a brand name. Most of the "Watson" product is just a facade on top of FOSS products like Spark, Hadoop, Elasticsearch, etc.
Director: Those were words. They sounded good. FF say it's good tho so we'll believe him because we're from the same city.
Moi: *deletes Director from LinkedIn*
Moral of the story: Never trust a vendor that only recommends their products.
*FF = FatFuck - an embarrassingly rotund individual whose girth is roughly equivalent to his height. He shit his way into an IBM architect position in his mid-20s purely due to winning the visa lottery. He had fake hair glued to his head for his wedding to hide his male pattern baldness; his arrange-married wife undoubtedly cries herself to sleep after sex.
**PeeEm - the then project manager, now portfolio manager of some satellite projects. An overall decent human being, capable.9 -
A follow up for this rant : https://devrant.com/rants/1429631/...
its morning and i have been awoke all night, but i am so happy and feel like crying seeing you people's response. :''''') Thank-You for helping a young birdie like me from getting exploit.
In Summery, I am successfully out of this trickery, but with cowardice, a little exploited and being continuously nagged by my friend as a 'fool'.
Although i would be honest, i did took a time to take my decision and got carried away by his words.
After a few hours of creating a group, he scheduled a conference call , and asked me to submit the flow by which my junior devs will work.
At that time i was still unclear about weather to work or not and had just took a break from studies. So thought of checking the progress and after a few minutes, came up with a work-flow, dropped in the group and muted it.
At night i thought of checking my personal messages , and that guy had PMed me that team is not working, check on their progress. This got me pissed and i diverted the topic by asking when he would be mailing my letter of joining.
His fucking reply to this was :"After the project gets completed!"
(One more Example of his attempts to be manipulative coming up, but along with my cowardice ) :/
WTF? with a team like this and their leader being 'me'( who still calls him noob after 2 internships and 10 months android exp), this project would have taken at least one month and i was not even counting myself in the coding part(The Exams).
So just to clarify what would be the precise date by which he is expecting the task, to which he said "27th"(i.e, tomorrow!)
I didn't responded. And rather checked about the details of the guy( knew that the company was start-up, but start-ups does sound hopeful, if they are doing it right) .A quick social media search gave me the results that he is a fuckin 25 year old guy who just did a masters and started this company. there was no mention of investors anywhere but his company's linkedin profile showed up and with "11-50" members.
After half an hour i told him that am not in this anymore, left the group and went back to study.(He wanted to ask for reasons, but i denied by saying a change of mind ,personal problems, etc)
Well the reality is over but here comes the cowardice part:
1)Our team was working on a private repo hosted on my account and i voluntarily asked him to take back the ownership, just to come out of this safely w/o pissing him off.
2)The "test" he took of me was the wireframe given by their client and which was the actual project we 5 were working on. So, as a "test", i created 15 activities of their client's app and have willingly transferred it to them.
3) in my defence, i only did it because (i) i feared this small start-up could harm my reputation on open platforms like linkedin and (ii)the things i developed were so easy that i don't mind giving them. they were just ui, designed a lot quickly but except that, they were nothing(even a button needs a code in the backend to perform something and i had not done it) . moreover, the guys working under me had changed a lot of things, so i felt bad for them and dropped the idea of damaging it.
Right now am just out of sleep, null of thoughts and just wondering weather am a good person, a safe player or just a stupid, easily manipulated fool
But Once again My deepest regard from my heart for @RustyCookie , @geaz ,@tarstrong ,and @YouAreAPIRate for a positive advice.
My love for devrant is growing everyday <3 <3 <3 <35 -
probably the one who sent me 3 mails within 10 minutes regarding 3 different positions, and all were addressed to someone else (Hello, Mr. Completely Different Name), so i replied telling him that's not me, and gave him the info to fix it in their db. he apologized profusely and said he fixed the error.
Next day I got two mails for another two positions, with the same incorrect name.
Or the one with whom I had half an hour phone "interview" for a specific position, they couldn't answer even the most basic technical question about the project, but invited me to an in-person interview and said my questions will be answered there, the phone interview was just to make sure they don't send completely offtopic people to the interview with the client (so far acceptable).
On the in-person interview, it was partially a repetition of the phone one, but okay, lady from the company is talking to me first time in her life. We get to the part where I can ask my questions, so I ask those basics about the project again, and her answer is:
"Oh, i don't know, i'm not a technical person, you'd have to ask that to the technical person from the company, I'm an hr person from the recruiting company."
"Wait... so... not only was this whole meeting a waste of my time, but you also lied about what it is, when you scheduled it with me on the end of the phone interview?"
"Well... it wasn't a waste of time, we like to meet the candidates in person before we forward them to actual interviews in the company, to make sure that they're not completely offtopic."
"... and how exactly do you think you'd be able to evaluate that, since you're not at all a technical person and know nothing about the project??"
" Well, i talk to programmers a lot, so i've picked up quite a bit of the terms."
...7 -
If your client doesn't know what the fuck he wants to see on his website even with all text and images included - don't take this fucking job.
They will let you choose a template and you end up switching it 5 times. "Oh we don't like it. What else do you have? Oh, this looks better." Next day "We don't like this theme anymore. We want to switch to what we had before."
If people can't draw their home page on a paper I tell them go fuck yourself straight in a face. I always put these people on my reference list so my future clients know I'm straightforward, not lazy, not low skilled, but honest with dumbasses like some of my previous clients.
You are asking for a basic website with 5 pages, you have a shitty budget and then I have to customize the entire theme and tweak every fucking possible element in CSS, HTML and PHP. Go fuck yourself. All you get for your money is WordPress with 15 min consultation how to copy paste your shit and save it. Never do fixed budgets, never work on projects like this if it's under $500-1000. Meet with the client to understand him/her better and see if he is a jackass-perfectionist or a chill person who won't be picky.
That's my memories of being a freelancer, trying to get any job for any budget just to build my portfolio. Never going back to this, at least not for small businesses with less than $5,000 budget. Reading people before you start working with them is a good thing.undefined idiot clients clients from hell hate it hatred freelancing freelance madness rants rant wordpress2 -
As a freelancer I get side requests from bigger development companies from time to time that don't have the time or capacity to deal with it themselves.
So usually the employees are pretty friendly but they do not like to read any of the documentation I send with the code. They call me up with stupid questions that are usually answered in the documentation.
I had sent them everything they had requested last Thursday so they called me on Friday to ask the usual stupid question. However, this time I had beforehand decided to have some fun! I told them I had to leave for the weekend and to call me back on Monday. Of course they called me during the weekend, but I didn't answer. So they called me today.
What I had done before handing it all in was I had named the methods that I wrote illogically, while stating and explaining the whole situation in the documentation extra clearly.
So I answered the call today and the first thing they did was apologize. Since I didn't answer their calls during the weekend they finally realized that the best way to go is reading the documentation instead of calling me all the time. They were freaked out at first because they thought there was something completely wrong with the code and they had to tell their client that the deadline had to be pushed back.
We are all good now :)6 -
I am beginning to hate the relationship between email and my clients. I never thought it would come to the point where email is the worst communication platform I've ever used because some of my clients simply don't know how to use it properly.
I have one client who never uses the subject header in his emails. This makes conversational threads very difficult to follow, and I can't just scan the inbox I have for him. I have to actually do searches on my emails just to find recent conversations.
For some reason nobody knows how to start a new email thread. I have multiple clients that will just take the last email that I sent them, regardless of what it's about, and start a new conversation completely unrelated to the other email by hitting"reply". I end up with email threads that are 60 to 100 emails long and contain many different subjects, which again makes it hard to find anything. Never mind that they've usually put two or three important attachments, or username password combinations, or other valuable information in there amongst all the noise.
Worst of all, I have a few clients and co-workers who insist on starting a new email thread whenever anything about a particular issue comes up. This means that just today I have five separate email threads about the same goddamn issue from the same damn person. Am I supposed to respond to each thread with the same damned information? One of these people is supposed to be both a media consultant and an SEO expert and really should know better. Also, if you do actually send me an email with a subject like "the robot.txt error", please don't give me one sentence about that and five paragraphs about what color you'd like the background to be. That's ridiculous. How the hell am I supposed to find that later? Especially since we already discussed this in the other email that sitting in my inbox.
I swear I am setting up a bug tracking system simply so that my clients can log in and leave me bug reports, and feature requests, and will stop filling up my poor email boxes with what amounts to piles and piles threads that I have to sort through.
For a person who suffers with a form of ADD this is extremely frustrating. Why is it so difficult for my colleagues and clients to write good emails with good subject lines, and reply to the right damn emails?
Am I just being too anal, or does this bother others as well?16 -
Who the fuck sends good morning images to strangers?!
And there was this person who sent me images of good morning quotes out of blue on WhatsApp. I have never met or know this guy and vice versa. I was very creeped out.
I didn't recognise the phone number initially, but later I figured out that this person might be an employee of my ( relative ) client and he was using the mobile number assigned for the business like his personal WhatsApp account with his own profile picture and all. Very unprofessional.
He sent me similar messages for a week and I didn't bother to open the messages. I'm gonna pretend like I don't recognise the phone number. Anyways, his messages have stopped.
I hope I'll never have to face him or have any business discussion with him. I'm never ever gonna visit this relative client at his place as long as he is an employee there.6 -
Client comes to me.
Client: So my business is colour matching, people visit me and I help match outfits they should wear that works with their hair and eye colour etc.
Me: Ok... and?
Client: Well. I'd like to do this online, someone sends a photo in and I assess it and send them a colour palette back.
Me: Right... How are you going to calibrate this?
Client: What do you mean?
Me: Well, it's a nigh on impossible task to ensure the exact tones and hues they send you in their photo to what you see, and likewise what you send back might look very different based on their brightness and contrast. Colour science is actually quite hard.
Client: But I don't understand they just send a picture right?
Me: Yeah, they can send one, but are you going to have a consistent baseline for your laptop, can you guarantee the brightness is at the same level each and every time?
Client: No... Why would that matter?
Me: I'm bored now, I'm not gonna take this project. -
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 -
For the last week or so I've been writing a userbot for Telegram. Completely from scratch, plus Telethon to not reinvent the wheel entirely. I'm coming from the codebase of an existing userbot.
That userbot is written by a good friend of mine, who makes 6 figures, and whom I respect greatly. However the code is a steaming pile of shit. Now that is not his fault, he largely inherited that code too, tried to fix it, failed, gave up.
I am reimplementing it entirely. I'm only looking at the modules, trying to understand them, and copying over the necessary bits and changing them where necessary. But I've come across some nasty shit.
Userbots often edit existing messages from real Telegram clients. They're kind of like a login to your account, but with a program rather than a regular client. You send a message from a real client, it sees it and does whatever it needs to, and edits your message to give you feedback. Which is great.
However, there's no need to do simple string edits by importing "re". So why do you? Because you're an idiot, that's why. The old bot is based on Paperplane, which in turn is based on Telethon. Why do I see function calls to Telethon in some places and Paperplane in others? Because you're an idiot, that's why. Why does the dig module fail to even give correct answers? Because you know nothing about the DNS, that's why. And you didn't learn about RRs before implementing it.
And don't you tell me that this code is shit, and this bot is slow only when I run it on a fucking Pentium. I run this shit on an i7 and CPU isn't even the issue - memory, disk and such are. If you had any clue whatsoever about efficiency, you would've known because it's blatantly obvious. There's a reason why my machines rarely go past 5% CPU utilization. It's the fastest component in the entire fucking system.
When users come and say.. hmm this application of yours, it consumes a lot of memory. It takes a long time to do X and Y and I don't quite understand why, it seems illogical. Then maybe you should go look at your code, like you would look at yourself in the mirror. And then you fucking go fix it so that I don't have to. You're an engineer just like I am. And I am not even a dev proper - I'm a sysadmin by trade. Why should I have to fix your shit for you?1 -
Guys what I want to know is how do you secure your code so that they pay you after you deliver the code to them?
So recently I was in this internship that I secured with an over-the-phone interview and the guy who was contacting me was the CEO of the company (I'm going to refer to him as "the fucking cunt" from now on). He asked me to do some OCR and translations and I managed to write a few scripts that automate the entire process. The fucking cunt made me login remotely to his desktop which was connected to the server (who the fuck does that) and I had to operate on the server from his system. I helped him with the installation and taught him how to use the scripts by altering the parameters and stuff, and you know what the fucking cunt did from the next day onward? Dropped contact. Like completely. I kept bombing emails upon emails and tried calling him day after day, the fucking cunt either picked up and cut the call immediately on recognising its me or didn't pick up at all. And the reason he wasn't able to pay me was, and I quote, "I am in US right now, will pay you when I get back to India." I was like "The fuck was PayPal invented for?" Being the naive fool that I was, I believed him (it was my first time) and waited patiently till the date he mentioned and then lodged a complain in the portal itself where he had posted the job initially. They raised a concern with the employer and you know what the fucking cunt replied? "He has not been able to achieve enough accuracy on the translations". Doesn't even know good translation systems don't exist till date ( BTW I used a client for the google translate API). It has been weeks now and still the bitch has not yet resolved the issue.And the worst part of it was I got a signed contract and gave him a copy of my ID for verification purposes.
I'm thinking of making a mail bomb and nagging him every single day for the rest of his life. What do you guys think?7 -
Me: "So, this is a new way to show to your clients the daily menu using a QR Code and..."
Client: "I like it. I wanna buy it."
Me: "What?"
Client:"This QR-thing. I wanna be the only one using it"
Me:"But you can't buy the QR Code technol..."
Client:"Don't bother me. I want it. And when I want it, I get it. I can pay, you know."
Me:"Ehm......Oooook."
Me: "It's 10$ for every QR Code that we, and only we, will create! But, hey! Shhh!!"6 -
Email from Client:
Hi, we'd like this and that done to our website. I know you aren't finished building it yet but I believe we can change what we agreed upon.
Me:
Let me see what I can do, I'll try squeeze in some of those changes but the bigger ones I'll have to check with the boss.
Boss:
Yes, we can do those changes at an additional cost, quote them $1000 (example)
Me to client:
Hi there, yes we can do that but we have to charge $1000 for those additional changes that weren't initially agreed upon, and we'll need an extra week on the deadline.
Client:
Oh no no no... I know how this works. If I wanted to do this myself I would. You will do the work and get it finished in time, and I will only pay you $200 for it. I don't like being scolded for money.
Me and Boss: Yeah.... this isn't working out. Please find a new company to deal with.
Conclusion, this client was always giving us problems and telling us how we should be charging and how we should be doing our jobs. It was so satisfying to just them let go.4 -
I don't understand how is possible that programmers today are developing applications that are storing plain password in the database.
I know it's kinda boring topic since everybody here is talking about it this week, but it's really confusing to me.
Every now and then some DB gets hacked, millions of passwords are leaked and then you have developers, who should be smart and logical people, who decide to do that.
Ok, maybe the project deadline was close or something similar, but I think there is no excuse for something like that. No matter how close or behind deadline project is, you should always be able to explain to your boss/client what could happen.3 -
I've worked in a lot of customer service jobs and the more i have to deal with client, the more story starting to pile up. But something always come back and it's frustrating. The entitlement people have. I work as a Technical Support agent and for the most part i'm actually happy to help people with fixing their problems. But once in a while i always get that idiot that doesn't do anything i told him, blame me because "my fixes" don't work or just straight up don't listen to me and think they know better. Why the fuck do you call me if you need help if you're going to ignore everything i say and act like a fucking children. I'm not the one that call for technical support.
I know this place is more for Dev, but i'm sure those kind of things happen all the time when a client think he know more than the dev themselves...1 -
I'm fed up with you guys ranting about what you SHOULD HAVE said, but instead just walked out, said something cowardly, or nothing at all...
For fuck sake, grow a pair and stand up for yourself! Noone else will...
I get it, this place is a nice vent, people understand, it's not face-to-face, it's easy. But the sheer number of you that had a clear chance to be grow, and ran for the door is alarming.
I also get it, it's mostly difficult to talk back to a client/boss/professor. But there's a few steps between FUCK YOUR FUCKING DIPSHIT FACE and running to the corner to post a rant here.
Find the right words. You don't have to sware, be civilized, but take a stand, present your arguments, present facts and proofs. Don't give in to their scare tactics, earn that respect you need and deserve! Then come here like a winner and share it with us.
It has become quite a tradition here to sware in all caps and then say that's what you should have said, but didn't. From now on, I'm -- these posts to give my two cents in an attempt to make this a community of winners ranting about a stupid world. Not a community of cowards ranting how world is scary.6 -
I fucking hate Electron, what ever happened to developing software natively? It's not like you have to stick to dot Net and C# or whatever, there's literally Lazarus or Delphi, which, at least Lazarus, not only is open source but also supports all major platforms.
Even Python has GTK, Qt and Pywin32 or whatever its called. While not exactly cross platform, it's still not eating up 1GB of RAM when you launch it.
I don't care if Bob from across the street uses it because he's too lazy to learn anything new, but when huge companies like fucking Discord (valued at 10B dollars) use it, it's insane.
More than once has Discord had a memory leak and was reaching upwards of 6.5GB of RAM usage.
Whats the most popular code editor? VSCode, Electron.
Chat client? Discord, Electron.
Wanna use something other than Discord? Maybe Matrix? Well guess what, while they do have multiple clients, the most developed and usable one is Element, yeah, Electron.
Slack? Electron
My crypto wallet? Exodus, Electron.
I genuinely don't think 16GB of RAM is enough nowadays. Thankfully I'm running a very minimal install of Arch Linux and do most of my work in a KVM, but it still hurts my brain.
By the way things are looking nowadays, We'll be using Javascript for Kernels soon.
Thanks for coming to my Ted Talk.
Also apparently the filter on this site sees ". net" as an url.10 -
Today, I was so certain that all the functionalities were implemented to handle some webhook calls from a third-party service. It's a script I wrote that has been running for 2+ years uninterrupted or without any issues.
We got some "complaints/notices" today that some "special" actions weren't registered, so I thought that the third-party service just didn't send those actions via their webhook. After some research I found a part where they explained that those actions trigger the webhook like any other action etc. So..
First thought: "okay, maybe they implemented that at a later stage" (was not the case)
Second thought: "maybe this is not what the client meant" (it was)
Third thought: "Then it should have been implemented" (it wasn't)
Okay, time to look at the code to see where this could get handled but apparently isn't. All the actions look good, nice, clean handeling etc, nicely documented code (gave the 'past-me' mentally a high-five)..
I scroll further down to that specific action and it was quiet obvious why it didn't work.. I just see an empty function with the comment:
"//TODO: maybe handle this action one day. don't know what this does atm, probably unused.. Will take a look at it next week.."
.. :D
I took my 'high-five' back..I just needed to copy-paste some other code and change 1-2 parameters..1 -
Recent conversation with a client for our SaaS product.
Client: So why can't we delete this information.
Me: We want to able to know who made a change to the data to avoid getting into trouble with the law.
Client: Does that mean you can see all the data on our account?
Me: (I know where she is going but let me stall)..You are the only one with access to your account. If I don't know your password, I can't access your data.
Client: But you sound like you can see the information in the cloud.
Me: (Laughs softly and segued).. The additional features you requested would be.......
Someone needs to read the T&C... -
So I am finally plunging into continuous integration. If I make one more deploy script mistake, I've lost enough time to merit having learned a better solution than bash scripting calling git and rhc and py files I wrote. I have failing tests that are failing because they weren't updated after the million and a half urgent changes in the past 2 months, so it's time to act like I am a TDD fanatic and write the tests correctly. So much work. All from me listening to the constant req changes, listening to the urgency, letting non-devs get under my skin if you will. I'm optimistic in all the wrong places - I think I can write that by end of day let's try it. I'm lazy in the wrong places - I think that I can write that test later, because all I changed was XYZ (which took all night but I said I'd get it as close as possible didn't I?). And I think these handful of bash scripts are good enough to make sure I run tests? But remember, I didn't write the tests or I didn't go back and update them. Or the tests that fail, I'm too lazy. And so much of the tests, I would need to use, idk selenium for, and damnit if I really don't want to dig for element IDs to wait for every time I need an AJAX call.
Okay wow, I really did rant here. And discredited myself a bit lol I need to ignore the wrong lazy and embrace the right lazy. Protect myself from myself and from contributors. It really is, up to me now, to rescue myself from my bad habits. Bad habits perpetuated by clients urgency every day, to change things, that should have been finalized in November if we wanted a stable flipping system in January. It feels like the blind (client) leading the blind (me, when I do dumb shit like rush features out the door half tested).
Anyway all this came out, because I have been reading about continuous integration and stumbled upon this quote. And thought someone might laugh at the anachronism like I did2 -
When bugs are seen by the client and boss therefore asks me "did you know about this bug?", what I'd really like to answer is:
"well shit, no! I would have solved that or at least told you about it, don't you think? what kind of fucking question is that?"
But then I just answer "no, lemme check"2 -
In my work we have this big client who is really concerned about security.
We can't even access the DB from our machine, so they gave us some shitty, heavy as hell, laptops. It's ok, i don't like the ideia but ok.
But in this laptop have a super fucked up windows 7 that have almost everything blocked, we can't even install the fucking sdk(java) to work without asking the company's "IT guy".
On top of that, to access the DB from outside this client we need a VPN, it's ok, I understand, but the fucking VPN drop connection every 5 fucking minutes.
Yesterday I spent fucking 6 hours to run 2 ten minutes queries that we needed to make a report for this fuckers.
I sit in front of a big window, I really felt the will to throw their laptop right through it.3 -
WE TEST ON THE STAGING SITE. I DON'T BUST MY ASS WITH A SEPARATE STAGING API AND HTTPS://STAGING.WHATEVERTHEFUCKYOUWANTOBUILD.COM/..., SO THAT YOU CAN MESSAGE ME THAT NOTHING IS WORKING. THAT IS BECAUSE YOU ARE NOT ON THE STAGING SITE. IF I HAVE TO REMIND YOU AGAIN, I AM NEVER TALKING TO A NON TECHNICAL PERSON AGAIN
THIS IS THE FIFTH TIME. ITS LITERALLY LIKE A BROKEN RECORD SO WHY DO I EXPECT ANYTHING TO CHANGE, EVERY CLIENT IS THE SAME, EVERY TIME, GOD I HATE IT MAKE IT STOP4 -
Anyone reading these emails we are sending?
I work at a small place. A few users are using an application at our place that I develop and maintain. We all work remotely.
I announce by email to these few users a new version release of said application because of low level changes in the database, send the timeline for the upgrade, I include the new executable, with an easy illustrated 2 minutes *howto* to update painlessly.
Yet, past the date of the upgrade, 100% of the application users emailed me because they were not able to use the software anymore.
----------------
Or I have this issue where we identified a vulnerability in our systems - and I send out an email asking (as soon as possible) for which client version users are using to access the database, so that I patch everything swiftly right. Else everything may crash. Like a clean summary, 2 lines. Easy. A 30 second thing.
A week pass, no answer, I send again.
Then a second week pass, one user answers, saying:
> well I am busy, I will have time to check this out in February.
----------------
Then I am asking myself:
* Why sending email at all in the first place?
* Who wrote these 'best practices textbooks about warning users on schedule/expected downtime?'
*How about I just patch and release first and then expect the emails from the users *after* because 'something is broken', right? Whatever I do, they don't read it.
Oh and before anyone suggest that I should talk to my boss about this behavior from the users, my boss is included in the aforementioned 'users'.
Catch-22 much ? Haha thanks for reading
/rant7 -
this happened two months before,
there's a UI designer guy at my office when I was about to leave the office he gave me a web page UI which has to be done by the next day.
Next day I started working on that page when I was halfway done he came to my desk and said: "there're some changes in design, the client doesn't like this part and this."
I'm like, why the fuck you didn't take client confirmation on the first place that's a fucking basic and first thing need to do. Just like the client you are a fuckin idiot. And now we don't hang out anymore. -
Too many to count, but this one useless meeting stands out the most.
I was working as an outside dev for software corporation. I was hired as an UI dev although my skill set was UI/engineer/devops at the time.
we wrote a big chunk of 'documentation' (read word files explaining features) before the project even started, I had 2 sprints of just meetings. Everybody does nothing, while I set up the project, tuned configs, added testing libraries, linters, environments, instances, CI/CD etc.
When we started actual project we had at least 2 meetings that were 2-3 hours long on a daily basis, then I said : look guys, you are paying me just to sit here and listen to you, I would rather be working as we are behind the schedule and long meetings don't help us at all.
ok, but there is that one more meeting i have to be on.
So some senior architect(just a senior backend engineer as I found out later) who is really some kind of manager and didn't wrote code for like 10 years starts to roast devs from the team about documentation and architectural decisions. I was like second one that he attacked.
I explained why I think his opinion doesn't matter to me as he is explaining server side related issues and I'm on the client-side and if he wants to argue we can argue on actual client-side decisions I made.
He tried to discuss thinking that he is far superior to some noob UI developer (Which I wasn't, but he didn't know that).
I started asking some questions and soon he felt lost and offended. We ended that discussion with conclusion that I made my own decisions on the client-side. That lasted less than 10 minutes.
So I just sit there and eat popcorn for next 4 and half hours listening to their unnecessary discussions where some angry manager that did programing decades ago wanted to show that we are all noobs and stupid.
what a sad human being.
what a waste of time, but hey I got payed for this 5 hour meeting.1 -
There's little irritations that happen when working with clients over time that let you know that they're stuck in the past and definitely not the kind of client you want to have long term.
My personal favorite example:
"Can we put an icon that shows the weather on the banner of the website?"
Note: I don't make "websites," information portals, content pieces, etc.
It doesn't to matter what type of application it is; time tracking, HR, mortgage application, industrial control system, etc. I don't know why, but every single client I've ever had where I've been saddled with one or more people who have no business being anywhere near the term "stakeholder" asked for this stupid, banal, 1995 web portal fuckery. Their shitty little mushroom stamp contribution wasting everyone's time.
What's worse, they want it be prominent in the screen real estate. It can't just be a responsibly sized waste of space like the screenshot's top example (from a company whose entire business is weather, nonetheless). No, it has to be the busiest fucking thing in the control space, as in the example inferior.
Or maybe I'm just wrong and people desperately want to know if the sky is going to piss on them if they leave the cave.
Anyone else have a pet peeve in regards to recurrent, pointless functionality?2 -
Sorry, need to vent.
In my current project I'm using two main libraries [slack client and k8s client], both official. And they both suck!
Okay, okay, their code doesn't really suck [apart from k8s severely violating Liskov's principle!]. The sucky part is not really their fault. It's the commonly used 3rd-party library that's fucked up.
Okhttp3
yeah yeah, here come all the booos. Let them all out.
1. In websockets it hard-caps frame size to 16mb w/o an ability to change it. So.. Forget about unchunked file transfers there... What's even worse - they close the websocket if the frame size exceeds that limit. Yep, instead of failing to send it kills the conn.
2. In websockets they are writing data completely async. Without any control handles.. No clue when the write starts, completes or fails. No callbacks, no promises, no nothing other feedback
3. In http requests they are splitting my request into multiple buffers. This fucks up the slack cluent, as I cannot post messages over 4050 chars in size . Thanks to the okhttp these long texts get split into multiple messages. Which effectively fucks up formatting [bold, italic, codeblocks, links,...], as the formatted blocks get torn apart. [didn't investigate this deeper: it's friday evening and it's kotlin, not java, so I saved myself from the trouble of parsing yet unknown syntax]
yes, okhttp is probably a good library for the most of it. Yes, people like it, but hell, these corner cases and weird design decisions drive me mad!
And it's not like I could swap it with anynother lib.. I don't depend on it -- other libs I need do! -
I'm quite a vengeful person, I'm sure I get the wrong end of the stick sometimes to.
In the last few years of my life I've been trying to not act and "be mature" about the situation.
There's still times I fall of the wagon but generally I have shrugged it off...
But do you know how I feel like now!? That I've been walked all over people are taking me for granted. People think they can get away with lying and messing me about.
Quite honestly I don't know how to act your always meant to rise above the situation. When all I can think of is how I could fuck up the thing they did.
And people go well just protect yourself but that means I'm not open and honest myself and that's what I fucking hate to begin with!
Today I'm feeling vengeful because a client didn't pay until the last second. They wanted the website for next to nothing. And took a year to pay. Now they have gone and paid a tonne on a new site ! Because they went well what you did was shit "effectively"
Granted it was but you don't spend a few hundred quid and expect to get everything. I gave them what they paid for.
Everyone is expecting something for nothing 🙄 I get that's just the life of companies directors
But it pisses me off I try to do everything truthfully on the up an up and they would prefer a group of liars
Oh front page of Google yes we can do that for free
Oh yes the greatest animation look!
😤 And I'm meant to sit here and be like yeah that's cool. I mean at this point what reason do I have to be open and honest if shit stains like that exist!
What pisses me off more is that I'm trying to rise above. I don't think I should I think I should ruin their fucking day and be done with it. I have the capabilities.... But I know "it ain't legal"
Then people go on about well if you don't like the rules help them get changed ...
I've tried the political route they are all far worse 😐 they are ignorant cunts. That's the truth! I can't stand to be around half of them 🙄
So here I am ranting to not fuck up someone's day , trying to rise above 😔 -
If they followed my suggestion and went straight to debugging the server issues they would have been solved it from week 1 and everyone would have thought the migration had a minor performance hiccup. In fact, we have already done such at least twice before and nobody batted an eye.
Instead they self-labelled the migration a failure on first error, setting the stage for apologizing to the client, and put themselves on the spot for a whole staging / production signoff, replication / backup worfklow, almost a blue-green "seamless" deployment reminiscent of DigitalOcean.
Well they're not DigitalOcean, and anyone who has spent any time understanding users knows they will not participate in "new system" tests long enough to find or report issues.
So of course the migration stretched out to almost three months up until the whole reason for the migration - the rapidly escalating risk of the old provider disappearing - hit like a freight train and now they have to go through the problem of debugging the server like I told them to on week 1. Only this time they've set the client mindset against it, lost any chance of reverting, have had grave risk for data loss, and are under pressure to debug other people's code in real-time.
This is why I don't trust devs to do ops. A dev's first solution to any problem is to throw tech at it. -
The more I work with performance, the less I like generated queries (incl. ORM-driven generators).
Like this other team came to me complaining that some query takes >3minutes to execute (an OLTP qry) and the HTTP timeout is 60 seconds, so.... there's a problem.
Sure, a simple explain analyze suggests that some UIDPK index is queried repeatedly for ~1M times (the qry plan was generated for 300k expected invocations), each Index Scan lasts for 0.15ms. So there you go.. Ofc I'd really like to see more decimal zeroes, rather than just 0.15, but still..
Rewriting the query with a CTE cut down the execution time to pathetic 0.04sec (40ms) w/o any loops in the plan.
I suggest that change to the team and I am responded a big fat NO - they cannot make any query changes since they don't have any control on their queries
....
*sigh*
....
*sigh*
but down to 0.04sec from 3+ minutes....
*sigh*
alright, let's try to VACUUM ANALYZE, although I doubt this will be of any help. IDK what I'll do if that doesn't change the execution plan :/ Prolly suggest finding a DBA (which they won't, as the client has no € for a DBA).
All this because developers, the very people sho should have COMPLETE control over the product's code, have no control over the SQLs.
This sucks!27 -
What a 'nice' feeling.. 15 mins before the conf call with a client, a coworker comes to me to ask how some feature is working. OK, wouldn't be a problem if it wasn't him developing it.. O.o I just know he was working on this, no details, no nothing.. Don't even know where in GUI to find the dialog in question.. So I asked him if he tested it and if it is working like he descirebed to the customer.. Guess what?! He didn't know the answer to either question.. nice... O.o
-
Client contacts our company that his site is down, we do some investigating and the only way we can access the site is on a mobile phone. From the office computers the site never loads and times out. Since we don't host the site and I've never logged into it before I don't have a lot of details so I suggest they contact whoever hosts their site. This is where things get weird.
Client tells me that the site is hosted on someone's home server. I tell him that this is quite strange in 2018 and rather unlikely and ask if he was ever given access to the site to log in or if he has access to his domain registration, GoDaddy.
He says he doesn't understand any of this and would rather I just contact his current developer and figure it out with him. We agree that he needs to get access to his site so we are going to migrate it once I get access to it.
I email his current developer letting him know the client has put me in contact with him to troubleshoot the issues with the site. I ask him some standard questions like: where is the site hosted? Can you access it from a computer? Do you have some security measures in place to block certain IP ranges? Can you give me from access to get the files? Will you send me a backup of the site for me to load up on my server?
*2days pass*
Other dev: Tell me the account number and I'll transfer the domain.
Me: I'll have to get back to you on that once I talk to the client and set up his GoDaddy account since we believe the business owner should own their domain, not their developers. In the meantime you didn't answer any of the questions I asked. Transferring the domain won't get the site on my server so I still need the files.
*3 days pass*
OD: You are trying the wrong domain. The correct domain is [redacted].com I'll have my daughter send you the files when she gets in town. We will transfer the domain to you, the client will forget to pay and the site will go down and it'll be your fault.
Me: I appreciate your advice, but the client will own their domain. I'm trying to get the site online and you have no answered any of my questions. It's been a week now and you have not transferred the domain, you have not provided a copy of the site, you have not told me where the site is hosted. The client and I are both getting impatient at this point when will we receive a backup of the site and the transfer of the domain?
OD: Go fuck yourself, tell the client they can sue me.
If the client is that terrible, wouldn't you want to hand them off to anyone willing to take them? I have never understood why developers and agencies try to hold clients hostage by keeping their domain or website and refusing access. From what I can tell this is a freelance developer without a real company so a legal battle likely isn't going to go well since the domain is worthless to him as the copyright to the name is owned by the client. This isn't the first time we've had to help clients through this sort of thing.4 -
So we've got a gif that doesn't show up in our React Native application. Of course, the designers assume it's me: "are you sure the gif is in the codebase? how are you using it in your component"? yeah ok boomer. I'm like, look at this other gif, works fine. "oh" So I tell them, double check the export options on how you are building the gif, maybe there is something there. so now they are asking ME for those export options. I'M A DEV, NOT A DESIGNER, DO YOUR JOB AND FIGURE IT OUT. I DON'T EVEN KNOW WHAT PROGRAM YOU ARE USING
oh as an aside, I was putting up a website for a client and they are like "my logo is quite similar to many others, is this something to worry about legally?" OH, SO NOW I'M A LAWYER TOO??!!?!? WHAT IS WRONG WITH YOU PEOPLE GOOGLE IS LITERALLY IN FRONT OF YOU
why do people continually think just because we can code we are fucking designers / lawyers / astronauts
/ god?
man this pisses me off - i think of that draw red lines with blue ink expert video, in the end, just smile and nod: "i can do... absolutely anything... trust me, I'm an expert"4 -
!dev
I had semi-jokingly changed my username from dextel2 to nothappy, because of that one bad day.
But, it is now when I realized that I am actually NOT HAPPY, things are lately rough, I am constantly scared for no reason, I doubt my skills, I doubt myself for no reason, and top of that there's always a chance for another epileptic attack.
I tried and keep trying to distract myself from negative thoughts but the more I try the more I fail, I've become distant with my younger brother, for the record I'm very overprotective about him. I don't even know if he feels the same, as this year ends or every day passes by I feel changed from my past self (not in a good way).
Switched my first job to get another good job, turns out they don't even have any projects and I'm just a guy they are showcasing like they have ONE amateur developer and we are looking for an entire project and it did work for one client which I'm gonna deny personally because the client is not clear about the project itself, I do not care about the consequences, my heart lies in academics and I'll put my 100% in academics, shall I'm kicked.
A lot has happened in this year, but this one is/was unique and very hard to process. I've always been joyful, sarcastic, funny, you name it, but all of it has just vanished, don't know why. I'm also becoming distant from my ONLY 3 friends and parents.8 -
Many years ago, when I moved from a semi-experienced developer to an absolute beginner project manager at another company, my very first project was an absolute clusterfuck.
The customer basically wanted to scrape signups to their EventBrite events into their CRM system. The fuckery began before the project even started, when I was told my management that we HAD to use BizTalk. It didn't matter that we had zero experience with BizTalk, or that using BizTalk for this particular project was like using a stealth bomber to go down to the shops for a bottle of tequila (that's one for fans of Last Man on Earth). It's designed to be used by an experienced team of developers, not a small inexperienced 1-person dev team I had. The reason was for bullshit political reasons which I wasn't really made clear on (I suspect that our sales team sold it to them for a bazillion pounds, and they weren't using it for anything, so we had to justify us selling it to them by doing SOMETHING with it). And because this was literally my first project, I was young and not confident at all, and I wanted to be the guy who just got shit done, I didn't argue.
Inevitably, the project was a turd. It went waaay over budget and time, and didn't work very well. I remember one morning on my way to work seriously considering ploughing my car into a ditch, so that I had a good excuse not to go into work and face that bullshit project.
The good thing is that I learned a lot from that. I decided that kind of fuckery was never going to happen again.
A few months later I had an initial meeting with a potential customer (who I was told would be a great customer to have for bullshit political reasons) - I forget the details but they essentially wanted to build a platform for academic researchers to store data, process it using data processing plugins which they could buy, and commersialise it somehow. There were so many reasons why this was a terrible idea, but when they said that they were dead set on using SharePoint (SharePoint!!!) as the base of the platform, I remembered my first project and what happened.
I politely explained my technical and business concerns over the idea, and reasons why SharePoint was not a good fit (with diagrams and everything), suggested a completely different technology stack, and scheduled another meeting so they could absorb what I had said and revisit. I went to my sales and head of development and basically told them to run. Run fast, and run far, because it won't work, these guys are having some kind of fever dream, it's a clusterfuck in the making, and for some reason they won't consider not using SP.
I never heard from them again, so I assume we dropped them as a potential client. It felt amazing. I think that was the single best thing I did for that company.
Moral of the story: when technology decisions are made which you know are wrong, don't be afraid to stand up and explain why.3 -
TL;DR: I don't like working with 'most' Indian people. And some stories supporting that written below:
=====================================
A client calls me directly to get features/fixes done on their site. No middle management shit at the company I was working at, at the time.
So I quit the company, but the client has my phone number. So he starts texting me to get more work done. I tell him "I work for money, if you can pay me that, I'll do all the work you ask of me".
They praise my blunt-ness and say they will discuss it. And I never heard from them ever again!
=====================================
Client reaches out to me and gets me to work for them for 2 hours/day and pays me INR 8,000 (about 95 USD) a month. I say fine, I'll do the work.
I do the tasks as they say for 3 months then I ask for a raise to INR 10,000.
They start pointing out mistakes in my work, and they say they're not seeing the "dedication" in me. Only when I asked for the raise. Not before that, mind you.
=====================================
Vice President of the company tells me that he saw me in his dream the night before.
I've told this one before so I just threw that in.
=====================================
At the end, I do like some Indians that I work with. It's just that most of them try to massively underpay you, or want to get the most work out of you as fast as possible and sometimes both.7 -
I've been working for a company as freelancer for almost a year now .
Anyway 4 to 5 months ago I've finished what I was supposed to do and the CEO called me to help him finish a project . This project took way more then it's suppose to be (more then 2 years instead of 6 month) and this is because it was designed and written by the devil himself as the most evil thing on earth. Adding to that the constant demands and changes given by the client kept this project always in a mess. When I agreed to help they gave me a list of the remaining tasks, just finish them and we're done .
A month and a half later , we've had a meeting with the client to present what I thought was the last version of the project , and as usual he kept on adding changes and new features .
Another month later I completed those changes and told the company I'll be quitting working with you because I found other opportunities .They told me we'll just do this last meeting and we're done . But guess what ? BINGO same fucking thing happens but this time with big changes and the client wants it in like 2 to 3 weeks.
Now the CEO is begging me to complete these tasks before leaving (because he won't get the final check if I don't ) and on the other hand I've got a lot of the other work to do and it's really hard to setup a schedule for everything .2 -
That's it, where do I send the bill, to Microsoft? Orange highlight in image is my own. As in ownly way to see that something wasn't right. Oh but - Wait, I am on Linux, so I guess I will assume that I need to be on internet explorer to use anything on microsoft.com - is that on the site somewhere maybe? Cause it looks like hell when rendered from Chrome on Ubuntu. Yes I use Ubuntu while developing, eat it haters. FUCK.
This is ridiculous - I actually WANT to use Bing Web Search API. I actually TRIED giving up my email address and phone number to MS. If you fail the I'm not a robot, or if you pass it, who knows, it disappears and says something about being human. I'm human. Give me free API Key. Or shit, I'll pay. Client wants to use Bing so I am using BING GODDAMN YOU.
Why am I so mad? BECAUSE THIS. Oauth through github, great alternative since apparently I am not human according to microsoft. Common theme w them, amiright?
So yeah. Let them see all my githubs. Whatever. Just GO so I can RELAX. Rate limit fuck shit workaround dumb client requirements google can eat me. Whats this, I need to show my email publicly? Verification? Sure just go. But really MS, this looks terrible. If I boot up IE will it look any better? I doubt it but who knows I am not looking at MS CSS. I am going into my github, making it public. Then trying again. Then waiting. Then verifying my email is shown. Great it is hello everyone. COME ON MS. Send me an email. Do something.
I am trying to be patient, but after a few minutes, I revoke access. Must have been a glitch. Go through it again, with public email. Same ugly almost invisible message. Approaching a billable hour in which I made 0 progress. So, lets just see, NO EMAIL from MS, Yes it appears in my GitHub, but I have no way to log into MS. Email doesnt work. OAuth isn't picking it up I guess, I don't even care to think this through.
The whole point is, the error message was hard to discover, seems to be inaccurate, and I can't believe the IRONY or the STUPIDITY (me, me stupid. Me stupid thinking I could get working doing same dumb thing over and over like caveman and rock).
Longer rant made shorter, I cant come up with a single fucking way to get a free BING API Key. So forget it MS. Maybe you'll email me tomorrow. Maybe Github was pretending to be Gitlab for a few minutes.
Maybe I will send this image to my client and tell him "If we use Bing, get used to seeing hard to read error messages like this one". I mean that's why this is so frustrating anyhow - I thought the Google CSE worked FINE for us :/ -
Normally I don't give a shit when I lost a job opportunity.
But dude, this year everything is bad as fuck. I moved out (yet again) to marry and start a new life.
And as I said a previous Rants, I got a client that just made me lost another client when they started to get shady. For almost a god dam month now, I can't find even a crappy job.
This never happened. I got more than 10 opportunities. A handful of interviews, a few tests and none of them gave me a job.
Now I have one week to get married.
The money I saved whent to all expenses. And now my anxiety is kicking in like it never did in years.
I really don't know what to do and I
can't fucking sleep.10 -
long time listener, first time caller. I love designers. seriously. I love getting a nice juicy Figma file and not knowing how the heck I'm going to do half the wild stuff in it, but it's beautiful, so I'll figure it out. Go ahead, send it to the client. But designers who learn how to use something like Elementor or one of those crappy kitchen-sink themes, call themselves developers, and win work with clients I share with them. I'm the one fixing everything when that crap breaks. I would never in a million years present myself as a designer, even though I know I know a damn sight more about design than they do about dev. I get it, everyone needs to make a buck, but every time this happens it makes me sick to my stomach. We're on the same team. I always, ALWAYS, go to the mat for good design. Why don't more designers have an equal amount of respect for us? Design phase always goes over deadlines and we always have to pick up the slack to make the hard launch date. Well, now I'm just rambling.1
-
"Suggest an AV/AM product, Avast refuses to install."
I do malware research as a hobby and have for a while, so I can generally spot when something's up before I even run a program. If i'm unsure about it (or know something's up and wanna see its effects for S&Gs) I throw it into one of a variety of VMs, each with a prepped, clean, standardized "testing" state.
I see no point to AV/AM products, especially as they annoy me more than anything since they can't be told not to reach into and protect VMs (thereby dirtying up my VM state, my research, crashing the VM hypervisor and generally being *really* annoying) and they like to erase samples from a *read-only, MOUNTED* VHDX.
However, normal people need them, so I usually suggest this list:
• MBAM is good and has a (relatively) low memory footprint, but doesn't have free realtime protection.
• Avast is very good as it picks up a lot, but it eats a FUCKTON of resources. It also *really* likes to crash VM hypervisors if it sees anything odd in them.
• AVG is garbage. Kill it with fire.
• Using Windows Defender is like trying to block the rain with an umbrella made of 1-ply toilet paper.
• herdProtect is amazing as it's basically a VirusTotal client but it's web-based and not currently available to be downloaded. (Existing copies still work!)
• Kaspersky. Yes, it spied on US gov't workers. No, they don't care about anyone BUT US gov't workers. Yes, it's pretty good.
• BitDefender: *sees steam game* "Is this ransomware?"
hope this helps10 -
I love it when asshats, that wear testicles for sunglasses, like to ask me a question about my past experience with a given technology. Let's call it "X". After I've said my piece about the desired effect "X" was supposed to achieve, and describe the environment/scope where "X" was used, and describe the pain points I've encountered with it or the headaches "X" has caused in those environments, these camel spunk garglers then try to immediately rebut me by saying that every one of the times they've set "X" technology up it's worked just fine.
So, I kindly remind them that my past experience was in large enterprises where "X" technology just doesn't scale well so I've seen some issues with it.
Spunk Gargler: "Hmmm, must've just not been setup correctly."
I lose my shit (internally of course because I can't afford to be without a job right now.) and say, "I'm not so sure that it wasn't setup correctly, I just don't think that 'X' works properly at the scale of 500+ employee environments well. You've only ever set it up in small offices of like - what, 20 users?"
Shitlord McHerp-a-Derp who's Drunk on Spunk: "Maybe, but it just sounds like a bad configuration was causing those issues to me."
He shuffled back into his office shortly after I basically told him he's a fucking chump playing small team tactics and I've seen shit at scale so I've seen first hand what does and does not work well.
I'm writing this because this is the same fucking imbecile that has only ever encountered a /23 network once before from a client they inherited from a previous MSP team and they didn't know how to "safely change it" to a /24 so they just left it in place.
(BTW, just for the non-networking guys/gals out there, I'm sure you've already guessed it, but a /23 network is NOT a fucking problem!)
These puffy cancerous taint boils that call themselves IT engineers are the fucking problem!
I'm not a dev by trade or training, but trying to learn DevOps, and I can totally see why Dev teams can/sometimes get pissed with infrastructure teams... infrastructure/helpdesk side of IT is full of these fucking meat heads.1 -
The only type of client I like being, is a hostile one.
That's why I intend to answer every question of the dev team, with a question.
"So would you like this banner to be blue, or green?"
Does green evoke the same emotions as blue?
"Probably not, but we're asking you so we know how to finish the design..."
Does a design have a will of its own?
"Ok... What do you think about the new e-mail feature?"
Does anyone use e-mail nowadays?
"There are plenty of people who use e-mail professionally."
Are you a professional?
"I don't think this collaboration is going to work out"
Are we done?
(Parody of Ron Swanson) -
A long long time ago ( 2007 I think ) I worked for a company that made landing sites, so basically an email campaign would go out, users would be sent to a 1 page website with a form to capture their data, ready to be spammed even more. You know how it was back then.
So I worked with a guy who we had just hired, I didn't do the hiring but his CV checked out, so I gave him one of my tasks. Now most pages were made with js and html, with a PHP backend ( called with Ajax). Now this guy didn't know PHP so I was like all good, ASP works too at the end of the day we don't judge, we do like 2 or 3 of these a day and never look at them again. So he goes of and does is thing.
3 weeks later, the customer calls up to me they still haven't received their landing page. Ok so he probably forgot to email the customer np, I tell him to double check he has emailed the customer. Another week goes by end the customer calls back, same problem. At this point I'm getting worried, because we're days away from the deadline and it was originally my task.
So I go back to the guy and I tell him I want that landing page so I can send it myself, half thinking to myself that we had a freeloader, that guy that comes in to companies for 3 weeks, doesn't work, but still cashes his pay. But no, this was much worse.
So he tells me he has finished yet. I ask him why, what's the blocker ? You had 4 weeks to tell me you were blocked and couldn't progress. And his answer was simply, because I wasn't blocked I have been working on it this whole time. So I tell him to zip his project up and email it to me. We didn't do SVN or git back then, simply wasn't worth it. So he comes back to me and says the email server is telling him attachments can't be bigger then 50mb. At this point I'm thinking he didn't properly sized the art or something, so I give him a flash drive to put it on.
When I then open the flash drive, the archive is 300mb, thinking to myself, the images weren't even that big to begin with.
So I open it up, and I don't even find any images, just a single asp page. About 500mb. When I opened that up and it finally loaded, I saw the most horrendous things ever.
The first 500 lines was just initializing empty vars. Then there was some code that created an empty form with an onChange event that submits the form. After that.. it was just non stop nested if's. No loops, no while, for, foreach, NO elseif's, just nested if's, for every possible combination of the state the form could be in. Abou 5000 of them, in a single file. To make matters worse, all the form ( and page ) layout was hardcoded in the if's. Includes inline css, base64 encoded images, nothing but as dynamic, based on the length of the form he changes the layout, added more background etc. He cut the images up for every possible size of the page and included them in the code.
I showed it to my boss, he fired the guy on the spot. I redid the work from scratch, in under 4 hours. Send it to the client. they had no ammends to make, happy as Larry. Whish I kept the code somewhere.
Morale of the story, allways do a coding test on interviews, even if small things just to sanity check.3 -
As I already said on devrant, I'm a freelance web developer and I also often sell my services for teaching, loving that. Currently I'm teaching PHP with 30 students and it's going very well.
But yesterday, I received an offer for giving another course next month, this time on HTML and CSS, for a company I don't know yet. Almost every line of this email is wrong, outdated by 20 years, or just basically meaningless...
So I thought I could do my best to translate this as close as possible to the original, preserving the wrong formulations too, just for you devranters fellas.
"Hello,
I have an offer for a 2 days course for 5 people (level 1+ and/or 2), on HTML5 and CSS3. Below, the program :
1. XHTML AND CSS2 INTRODUCTION
Advantages and benefits of change
Understanding compatibility for different versions of browsers
HTML, XHTML, CSS edition tools : presentation of the different tools
The CSS language : different types of selectors : class of selector, identifier of selector, contextual selectors, grouped selectors
Blocks of text, boxes of text
The CSS1, CSSP, CSS2 properties
Relative and absolute measures units
2. LAYOUT TECHNIQUES
Full CSS, XHTML websites demo
Positioning with the position property, positioning with the float property
Columns creation
Layout for forms
Layout for data tables
Layout for menus
3. INTRODUCTION TO SVG (SCALABLE VECTOR GRAPHICS)
Role and importance of SVG
Using SVG on client side : basic shapes
SVG structure of document, tags examples
Using CSS styles with SVG
Different integration methods for SVG in a XHTML document
4. OPTIMISATION OF JAVASCRIPT CODE
Introduction to DOM and Javascript
Access to document objects : different access techniques, using this keyword, create elements dynamically
Positioning elements with the help of Javascript : positionning elements relatively to the mouse, move elements
Show/hide elements for creating hierarchical menus
Code optimisation techniques : using objects, objects litterals, loops optimisation
Can you please give me your availability ?"
Seriously...
CSS-fucking-1 ! Is it a course for dinosaurs ?
...And if only my rant was just about the program...
It's totally impossible to cover all these subjects in only 2 days with people of different levels and experience.
The guy exactly said to me : "don't worry about the program, it's an old text but they agreed to it anyway. They just want to learn HTML and CSS, some of them already know it but want to learn more, and the others are total beginers.".
And here is the meaning for the "(level 1+ and/or 2)" part in the email.
So... Surprizingly, I accepted the offer, but asked for at least a 3rd day. I'm waiting for their answer, but I'll do it anyway, adapting the course content to the actual students knowledge. I need the money, after all.
Wish me luck...
It's just sad that these formation companies are selling bullshit to clients that just want to learn something useful. It's too often like that, they sell shitty/useless programs and we have to catch up in real time with students that don't understand why they don't learn what was told to them.3 -
I used to be a sysadmin and to some extent I still am. But I absolutely fucking hated the software I had to work with, despite server software having a focus on stability and rigid testing instead of new features *cough* bugs.
After ranting about the "do I really have to do everything myself?!" for long enough, I went ahead and did it. Problem is, the list of stuff to do is years upon years long. Off the top of my head, there's this Android application called DAVx5. It's a CalDAV / CardDAV client. Both of those are extensions to WebDAV which in turn is an extension of HTTP. Should be simple enough. Should be! I paid for that godforsaken piece of software, but don't you dare to delete a calendar entry. Don't you dare to update it in one place and expect it to push that change to another device. And despite "server errors" (the client is fucked, face it you piece of trash app!), just keep on trying, trying and trying some more. Error handling be damned! Notifications be damned! One week that piece of shit lasted for, on 2 Android phones. The Radicale server, that's still running. Both phones however are now out of sync and both of them are complaining about "400 I fucked up my request".
Now that is just a simple example. CalDAV and CardDAV are not complicated protocols. In fact you'd be surprised how easy most protocols are. SMTP email? That's 4 commands and spammers still fuck it up. HTTP GET? That's just 1 command. You may have to do it a few times over to request all the JavaScript shit, but still. None of this is hard. Why do people still keep fucking it up? Is reading a fucking RFC when you're implementing a goddamn protocol so damn hard? Correctness be damned, just like the memory? If you're one of those people, kill yourself.
So yeah. I started writing my own implementations out of pure spite. Because I hated the industry so fucking much. And surprisingly, my software does tend to be lightweight and usually reasonably stable. I wonder why! Maybe it's because I care. Maybe people should care more often about their trade, rather than those filthy 6 figures. There's a reason why you're being paid that much. Writing a steaming pile of dogshit shouldn't be one of them.6 -
First time posting, hopefully I got this right!
So, we have that fabulous application that lets you update translations at will directly from within it. Of course, we also ship basic translations in perfectly indigestible PO files.
That particular client *really* wants to have his translations updated before going on-premise, but it would be too much of a hassle to put that in a CSV and import it into the app. Better ask the only developper on the project to update all PO files one after the other just because "we don't like that word, we'd prefer to see that perfect synonym there". Also, the rest of the project - aka the actual development - should not be delayed because of this.
And of course the translations are provided in the form of screenshots of part of the application with words highlighted in yellow over a white background. Good luck finding the right string in the right file.3 -
company lands huge enterprise project
promises client to deliver it in MIN_TIME_REQUIRED/4
No architect, no technical lead, no seniors, no designer just juniors and interns in the project.
all the project time wasted by manager making shit decisions and not giving a fuck what devs have to say about how project will be disaster if goes like this.
Now the project is officially under raging fire
Boss to dev : What happend to the project. Why are things not working?
Dev: You made decisions not us.
Boss: I don't buy it. Work 24hrs until this is done.
Dev: F*** you and this project. I am resigning. -
ZNC shenanigans yesterday...
So, yesterday in the midst a massive heat wave I went ahead, booze in hand, to install myself an IRC bouncer called ZNC. All goes well, it gets its own little container, VPN connection, own user, yada yada yada.. a nice configuration system-wise.
But then comes ZNC. Installed it a few times actually, and failed a fair few times too. Apparently Chrome and Firefox block port 6697 for ZNC's web interface outright. Firefox allows you to override it manually, Chrome flat out refuses to do anything with it. Thank you for this amazing level of protection Google. I didn't notice a thing. Thank you so much for treating me like a goddamn user. You know Google, it felt a lot like those plastic nightmares in electronics, ultrasonic welding, gluing shit in (oh that reminds me of the Nexus 6P, but let's not go there).. Google, you are amazing. Best billion dollar company I've ever seen. Anyway.
So I installed ZNC, moved the client to bouncer connection to port 8080 eventually, and it somewhat worked. Though apparently ZNC in its infinite wisdom does both web interface and IRC itself on the same port. How they do it, no idea. But somehow they do.
And now comes the good part.. configuration of this complete and utter piece of shit, ZNC. So I added my Freenode username, password, yada yada yada.. turns out that ZNC in its infinite wisdom puts the password on the stdout. Reminded me a lot about my ISP sending me my password via postal mail. You know, it's one thing that your application knows the plaintext password, but it's something else entirely to openly share that you do. If anything it tells them that something is seriously wrong but fuck! You don't put passwords on the goddamn stdout!
But it doesn't end there. The default configuration it did for Freenode was a server password. Now, you can usually use 3 ways to authenticate, each with their advantages and disadvantages. These are server password, SASL and NickServ. SASL is widely regarded to be the best option and if it's supported by the IRC server, that's what everyone should use. Server password and NickServ are pretty much fallback.
So, plaintext password, default server password instead of SASL, what else.. oh, yeah. ZNC would be a server, right. Something that runs pretty much forever, 24/7. So you'd probably expect there to be a systemd unit for it... Except, nope, there isn't. The ZNC project recommends that you launch it from the crontab. Let that sink in for a moment.. the fucking crontab. For initializing services. My whole life as a sysadmin was a lie. Cron is now an init system.
Fortunately that's about all I recall to be wrong with this thing. But there's a few things that I really want to tell any greenhorn developers out there... Always look at best practices. Never take shortcuts. The right way is going to be the best way 99% of the time. That way you don't have to go back and fix it. Do your app modularly so that a fix can be done quickly and easily. Store passwords securely and if you can't, let the user know and offer alternatives. Don't put it on the stdout. Always assume that your users will go with default options when in doubt. I love tweaking but defaults should always be sane ones.
One more thing that's mostly a jab. The ZNC software is hosted on a .in domain, which would.. quite honestly.. explain a lot. Is India becoming the next Chinese manufacturers for software? Except that in India the internet access is not restricted despite their civilization perhaps not being fully ready for it yet. India, develop and develop properly. It will take a while but you'll get there. But please don't put atrocities like this into the world. Lastly, I know it's hard and I've been there with my own distribution project too. Accept feedback. It's rough, but it is valuable. Listen to the people that criticize your project.9 -
Alright sit down boys this is gonna be a good tale (also a long one).
I'm currently developing a wordpress site for a Client. Everythings works well enough, I had a few "wtf is this shit" moments. Now we decided to give him access to the wp site so that he can see and change (I know, I know don't judge me pls), so I set up tunneling with ngrok, but that PIECE OF SHIT WP DIDN'T WORK ANYMORE. You asking why? Oh I'm telling you why, wp uses ONLY absolute paths. Well fuck, I ain't gonna touch that piece of shit php code, so I installed a plugin and shit was working.
In short, after a few fucking HOURS that shit finally worked. Well that would be a great fucking end for our little tale right? Yeeeeaaah no, I shit you not, it gets even better!
After a few days my client gets back at me that he can't enter fucking wp-admin to work on the text an stuff (again pls don't judge me for granting him access to the backend of wp during development). So I checked it out and that piece of shit didn't work. If anyone would happen to know why, I would be grateful bc for the love of spagetti monster I HAVE NO FUCKING CLUE!
So I said to myself well fuck this shit and put it on a webhoster. Uploaded all the files, and migrated the db. Sounds like it finally worked right? Well guess again buddy. So I needed to go to the database, updated values manually for wp to have the correct url and then still needed to force it to refresh every fucking link.
As it finally works now, this tale is also finished then and I really hope that part 2 is never ever comming!
Sorry for the (somewhat) long rant but this is some next generation bullshit. -
Client: I need you to integrate with this API.
Me: ok cool, but what are we doing with it (where does the data go/styling)?
Client: what do think we should do?
Me: well it would be really cool if we did it like this *short and sweet explanation of really cool functionality and design*
Client: I LOVE IT! Let's do it, oh also I need it done by tomorrow...
Me: *GOD DAMNIT, why do you always do this...don't you dare say ok* ok, yeah I can totally do that.
...now at the market stocking up on redbull2 -
Is It correct to stop any development job because the client stopped paying? What are pros and cons about it? I think it is good, you won't work for free but I've heard some people say "It's better someone owes you money rather to have no job". I really don't like that point of view. Any other industry stop it's activities when you stop paying them... However I'm asking this because what happens if that client is a big client? Say... Walmart. Would you keep working on it's project even when it's not paying?11
-
My client might just make our designer ragequit. 30 days ago he said: ohh this login page looks empty, I want images in the background. 15 days ago he said: I like the images, but change this part and this part. Today he said: I don't like any of the imagea, get rid of them. ლ(ಠ益ಠლ)3
-
Modern technology is absolutely bullshit
I can't even
Now my keyboard on my phone is even too broken to complain about it
I wanted to look at someone's post history on a forum
To do so the forum wants an account. Ok. So I gave it my old junk Hotmail account during sign up for it to send me an email confirm so I can make the account so I can search. Well I'm refreshing this account for this confirm account email through the Gmail app on my phone because who even checks emails on computers anymore
Turns out, aside from this Hotmail spam email account having a lot of junk emails (it is my junk email account), there's this little pop-up that happens SOMETIMES claiming that it can't sync. I checked inbox and spam and the email isn't in there. So 1 out of 10 times I refresh there's this little "cannot sync" message that pops up and I click it. It claims my storage on my phone is too full to sync. Ok.
So I go try to find storage through the settings in my phone. It doesn't exist as a category anymore apparently. Thankfully phones have a search feature now -- because we can't have sane settings anymore so here's a search feature. First result it gives me is just device info. That's useless. It's just the hardware specs for my phone
Second it shows storage. 90% full apparently. That's odd. I have 132 gb. Thankfully it subdivided it by what's taking up space but it doesn't make much sense and a bunch of the categories don't open to anything
Apparently the fucking android operating system is 32 GB now? Well you're fucked if you wanna remove that. Apparently years of photos and videos is 20 gb, I can back those up and delete them. Similarly I have downloads in folders, and that's about 20 gb
Why are there 20 GB of apps? I literally have no apps!
Part of apps? Wtf is Gboard and why is it a gig
Why is my WEATHER APP using a gig of storage?
And none of the apps can I remove the storage they're using. The cache is like 600kb, and I can delete all data and it's using like 60 MB. So the fucking weather app executable itself is a gig of space? Wtf?
I deleted the data for Gboard and turns out that's the keyboard. So now all my keyboard settings are fucked.
Thankfully I wrote syncing scripts ages ago to sync various folders from my phone to my external HDD. I just had to connect it to the laptop and run the script on the external HDD. Problem? Well turns out no matter what I do I can't get the laptop to connect to the phone if it's USB file transfer mode. I can do photos. But this is gonna be more than photos.
So I do my sync backup script from the laptop to the external HDD. This will sync the camera, since I have sync thing sync my laptop and phone all the time, so I can just sync the laptop to the external HDD and then delete the older photos and get 20gb. Quick fix for now
Why do I need this quick fix?
Well
Get this
I've been having issues with my Gmail client for ages. It just won't display new email notifications which is really annoying because I need to know when emails get sent to me.
Now I'm thinking, maybe I can de-sync older emails and have more storage space maybe? But that's not an option anywhere. Actually, I can't even unconnect an email address from my phone. Gmail doesn't even let you do that
What the flying fuck is the state of modern technology
Now I have to go figure out what my fucking settings were for my stupid phone keyboard
The 90s were much fucking saner than this garbage. I don't need a 32 GB operating system on a phone. Is this fucking windows 8? And let me fucking tell YOU how many fucking emails you should sync to my phone. Holy shit what the fuck is all this
At least my Linux scripts fucking work like I wrote them12 -
GODDAMN I HATE WIX!
I feel angry. I feel like smashing the developer's face who programmed this piece of shit editor. Everything I touch there just breaks and moves on its own. I fix the header, save, come back the next day and everything is shifted 5 pixels. WTF!?!
Plugins that they developed in-house aren't even compatible with their own systems. Custom code disappears suddenly. Editor doesn't allow two people to edit at the same time, resulting in lost work.
Seriously FUCK WIX.
Don't ever even consider touching this nightmare of an editor.
I could literally have hard-coded the entire site in React or Vue faster than building it in this editor, but my client wants the ability to edit things on their own later.
WIX: Not even once.4 -
A continuation of the worst idiot that I worked for, in possibly the worst project of the world. ( The guy who said youtube watching doesn't cost data, downloading the videos offline does)
Guy sends me a template for a patent application.. I ask him why, and he's all secretive until he takes me into a meeting with the patent officers of the organization to reveal his grand plans.
Here goes his idea. He wanted to file a patent for a sonar made for large vehicles in India. His idea was that people in India are used to overtake busses while they turn and they are overrun by the large vehicles. True to some extent but a completely overkill solution for a minor issue that could be solved by educating the masses. I try to explain this to him, and he's pissed off. Starts throwing random, made up stats at me saying 2000 people die everyday on every street. I'm like WHAT??? I look at the patent officer, and he gives me that "don't look at me dude, I'm just here for any questions about the patent process" look. He's busy doodling in his notebook while I try everything possible to invalidate the stupid idea my client has barfed all over the meeting room and the attendants. I even bring out the technical challenges leaving aside the practicality of the nonsense. I asked him how to distinguish between a pedestrian, a parked vehicle, a dog, a cow.. To which he responds with an on the spot thoughtless answer. Heat signatures!! In 5 minutes we went from sonar to heat maps in a tropical country such as India.. He now wants a hybrid solution.
He was about to start yelling when I caved in on the condition that I want nothing to do with the idea after I finish the patent application.. Made up some document and sent it to the asshole, only to never hear about it again.. Thank god for that.. R&D my ass..7 -
TL;DR; do your best all you like, strive to be the #1 if you want to, but do not expect to be appreciated for walking an extra mile of excellence. You can get burned for that.
They say verbalising it makes it less painful. So I guess I'll try to do just that. Because it still hurts, even though it happened many years ago.
I was about to finish college. As usual, the last year we have to prepare a project and demonstrate it at the end of the year. I worked. I worked hard. Many sleepless nights, many nerves burned. I was making an android app - StudentBuddy. It was supposed to alleviate students' organizational problems: finding the right building (city plans, maps, bus schedules and options/suggestions), the right auditorium (I used pictures of building evac plans with classes indexed on them; drawing the red line as the path to go to find the right room), having the schedule in-app, notifications, push-notifications (e.g. teacher posts "will be 15 minutes late" or "15:30 moved to aud. 326"), homework, etc. Looots of info, loooots of features. Definitely lots of time spent and heaps of new info learned along the way.
The architecture was simple. It was a server-side REST webapp and an Android app as a client. Plenty of entities, as the system had to cover a broad spectrum of features. Consequently, I had to spin up a large number of webmethods, implement them, write clients for them and keep them in-sync. Eventually, I decided to build an annotation processor that generates webmethods and clients automatically - I just had to write a template and define what I want generated. That worked PERFECTLY.
In the end, I spun up and implemented hundreds of webmethods. Most of them were used in the Android app (client) - to access and upsert entities, transition states, etc. Some of them I left as TBD for the future - for when the app gets the ADMIN module created. I still used those webmethods to populate the DB.
The day came when I had to demonstrate my creation. As always, there was a commission: some high-level folks from the college, some guests from businesses.
My turn to speak. Everything went great, as reversed. I present the problem, demonstrate the app, demonstrate the notifications, plans, etc. Then I describe at high level what the implementation is like and future development plans. They ask me questions - I answer them all.
I was sure I was going to get a 10 - the highest score. This was by far the most advanced project of all presented that day!
Other people do their demos. I wait to the end patiently to hear the results. Commission leaves the room. 10 minutes later someone comes in and calls my name. She walks me to the room where the judgement is made. Uh-oh, what could've possibly gone wrong...?
The leader is reading through my project's docs and I don't like the look on his face. He opens the last 7 pages where all the webmethods are listed, points them to me and asks:
LEAD: What is this??? Are all of these implemented? Are they all being used in the app?
ME: Yes, I have implemented all of them. Most of them are used in the app, others are there for future development - for when the ADMIN module is created
LEAD: But why are there so many of them? You can't possibly need them all!
ME: The scope of the application is huge. There are lots of entities, and more than half of the methods are but extended CRUD calls
LEAD: But there are so many of them! And you say you are not using them in your app
ME: Yes, I was using them manually to perform admin tasks, like creating all the entities with all the relations in order to populate the DB (FTR: it was perfectly OK to not have the app completed 100%. We were encouraged to build an MVP and have plans for future development)
LEAD: <shakes his head in disapproval>
LEAD: Okay, That will be all. you can return to the auditorium
In the end, I was not given the highest score, while some other, less advanced projects, were. I was so upset and confused I could not force myself to ask WHY.
I still carry this sore with me and it still hurts to remember. Also, I have learned a painful life lesson: do your best all you like, strive to be the #1 if you want to, but do not expect to be appreciated for walking an extra mile of excellence. You can get burned for that. -
FUCK MICROSOFT!!! WHAT THE ACTUAL FUCK!?!?!?!? WHY IS THIS EVEN A THING!?!?!?!?
WHYYYYYY HAVE WE GOT A FUCKING DARK THEME IF WHEN I ADD ANNOTATIONS IN SSIS IT'S HARDCODED COLOURS.
No...seriously...not only am i doing this bullshit waste of time redundant annotations for some bullshit client that thinks they know shit but when I use the dark theme like a normal person, if you go back to a normal theme, all annotations in white.
Just finished like 30 packages on this slow ass remote connection and now all these backward ass people that use light themes (like everyone but me) can't see anything written.
Fuck you Microsoft!!!!! Soooooo many fucks for you right now....don't even know how to express the fucks.4 -
I was once handed a very old PHP project that I had to make some changes to. I thought it would be a piece of cake. But the moment I looked at the code, I knew it wasn't going to be easy. It was so poorly written, it took me hours to figure out what was actually going on. Now these were the times when I was already quite disturbed mentally and emotionally, and this shitty PHP code only made it worse. At one point, I was like, fuck this shit I'm gonna quit this job.
Thankfully, the client soon emailed that the requested changes weren't needed anymore.
I personally have nothing against PHP. I have created some amazing stuff with it. But it's the programmers that don't follow the best practices that piss me off. I mean, how fucking hard can it be to write clean code. You might save your time today by taking shortcuts but you'll make life hell for the people who might have to maintain your code in the future. -
Salespeople telling clients "Your site doesn't need a privacy policy/cookie policy since you don't actually sell anything on your site."
Wrong wrong wrong WRONGITY WRONG WROOONNGGGG!!!!!
Client to PM to me: "Well Jim said we don't need those on this site."
Me: "Well Jim is misinformed, since we use Google analytics, Facebook Pixel, and contact forms, you need to have both a privacy and cookie policy."
PM to client: "We'll find you a template you can use to get started, it'll cover most of what you need."
Me to PM: "we will do no such thing, we can send them a few links explaining why they need these, but they should consult a legal professional and cover their asses for their own business practices. I can provide any technical details they may need like what data the cookies collect if necessary."
PM to me: "well I'll just find something for them then."
*In my head* please just go crawl in a hole and die.4 -
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 -
I've been trying for the last 3 months to land my first development job. I have a good (over 3 years) amount of experience, but no industry experience and no degree. So it's been a uphill battle. Currently working at a call center making garbage and most of my time and energy is invested into this. Currently am not mobile so most of my money is being geared towards that. It's just frustrating to see all these over glorified job postings that ask so much for just entry levels. I haven't even gotten a damn interview, I feel like in houston it's either you have a degree or you are not even considered for just a fucking interview. If I can get at least one they will be able to see my drive, persistence and skills that have been developed overtime. And fuck recruiters, have been interfacing with them over linkedin and not one of them seemed eager (initially yes) to land me an interview. Most of these fucks don't even fucking understand the technology or buzzwords that are on the job posting. If I were a recruiter I would at least put a little research into what the different technologies are so the process will seem less abstract. The tech will have more meaning and maybe I would be able to get a better success rate with clients if I knew what was really required of them. Not just looking at xyz and seeing if client has experience with them, but really see if they know what they are; that way I will have more confidence sending them into an interview. But of course that's not how it works. "Oh yeah Java and javascript are very similar"... get the fuck out of here.13
-
I'm finishing up the most depressing client engagement ever. Ultimately it all traces back to their worthless Expert Beginner EA who thinks he's a genius but can't write code. I don't mean that he's not great at it. It's some of the worst I've ever seen by a person in his position.
In the time I have left here I could do so much to help them clean this stuff up so that future developers could ramp up more easily and there wouldn't be tons of duplicate code.
But I've just given up. You can't help someone who thinks their code is perfect. I don't even bother suggesting stuff any more (like don't have two methods in a class - a "real" one and one for unit testing) because he gets mad or just says that's his "pattern."
If I have a useful improvement, first he'll want me to put all new code in some new library, which is fine as an end result but you don't start with putting single-use code in a library separate from where you're using it. You work with it for a while to see what's useful, what's not, and make changes. But, you see, he just loves making more libraries and calling them "frameworks."
He tells me what he wants me to name classes, and they have nothing to do with what the classes do. When you haven't done any development yet you don't even know what classes you're going to create. You start with something but you refactor and rename. It takes a special breed of stupid to think that you start with a name.
I've even caught the dude taking classes I've committed and copying and pasting them into their own library - a library with one class.
The last time we had to figure out how to do something new I told everyone up front: Don't waste time trying to figure out how you want to solve the problem. Just ask the EA what he wants you to do. Because whatever you come up with, he's going to reject it and come up with something stupid that revolves around adding stuff to his genius framework. And whatever he says you're going to do. So just skip to that.
So that's the environment. We don't write software to meet requirements. We write it to add to the framework so that the EA can turn around and say how useful the framework is.
Except it's not. The overhead for new developers to learn how to navigate his copy-pasted code, tons of inheritance, dead methods, meaningless names, and useless wrappers around existing libraries is massive. Whatever you need to do you could do in a few hours without his framework. Or you can spend literally a month modifying his framework to do the same thing. And half the time his code collapses so that dozens of applications built on his framework go down at once.
I get frameworks. They can be useful, but only if they serve your needs, not the other way around.
I've spent months disciplining myself not to solve problems and not to use my skills.
Good luck to those of you who actually work there. I am deeply sad for the visa worker I'm handing this off to. He's a nice guy and smart. If he was stupid then he wouldn't mind dragging this anchor behind him like an ox pulling a plow. Knowing the difference just makes it harder. -
!rant
May I suggest an email service?
I saw this post recommending the Vivaldi browser (https://devrant.com/rants/1544070/...) and there was a discussion a few days ago about how email providers snoop around and sell data. I can't find it anymore, but noone mentioned protonmail.ch there.
I just wanted to share my so far positive experience with protonmail. It's a fully encrypted email service that was first used internally by some Swiss academics. Now they made a product out of it with paid subscriptions and a basic, free account. They already open-sourced the front-end web client and are planning to do the same for the back-end in the future, which is really cool. Oh and they have really nice email clients for iOS and Android, which have higher ratings than gmail itself in the Play Store. But that might also be because only a special audience uses protonmail and not the regular guys.
So, I suggest that you register an account there even if you don't want to use it right now. The free account comes with 1 email address and storage limitations. But it's usable and ad-free. Since it's still quite the new service, many email addresses are available. Just like gmail in the early days. That's why I'm suggesting you go and register even if you don't need it now.
Oh and last but not least: I'm not affiliated in any way with protonmail, except for having a paid subscription. But I believe things making the internet a better place should be promoted and devrant is definitely the community with people thinking the same way I do. Have a nice day.9 -
Context: New to typescript. Writing a thing, doing it for work, good opportunity to stretch my dev legs. Using a propriety lib, alternatives not an option.
Rant begin:
SOOOO, who the fuck thought THIS was a good idea:
1. Lib has minified react in dev (because closed source) meaning no downstream errors AND the entire premise of the lib is that a widget is a react component, so I'm writing typescript react the entire time without downstream errors
2. SHIT docs. By that, I mean there's an API reference page that's so sparse there's literally a set of CRUCIAL interfaces that only say the word 'Interface' on them. That's it. that's what i get. It's an interface. NO FUCKING SHIT SHERLOCK, what the fuck is it though? What's its purpose? Is it an interface for a dog? A dog that has a 'shit' property? or a cat? or a cat eating dog shit? Nobody fucking knows - the docs sure as fuck don't care.
3. No syntax highlighting - editors, IDEs (i've tried a few) can't even find the lib inside this environment, so Code and everything else thinks I'm importing shit that doesn't even exist - so no error prediction, code completion based on syntax of the library, none of that.
4. There are some EXTREMELY basic samples - these samples exclusively use React classes - no function components, no hooks, nada - just classes and even perfect replicas of the sample code display erratic behavior like errors about missing props, so that's mostly FUCKING USELESS
5. And this... this is where the straw breaks the fucking camel's back... there's no... there's no hot reloading... Do you know what that (in conjunction with the previous 4 fuckups) means?
When I write anything or I fuck up (which of course I'm doing every time I write half a line because how the fuck?) I have to restart the client and server EVERY FUCKING TIME and manually test to see if the error (THAT ONLY GETS REPORTED IN THE LOCAL UI) is gone or different.
Then, once I see the error, it isn't an error: it's the minified React error-decoder link and guess what? It isn't really clickable a link OR copyable, meaning that every FUCKING time I get a new error, I have to MANUALLY TYPE A FUCKING 50 CHAR URL TO FIND OUT A GENERIC REACT ERROR MESSAGE WITHOUT A LINE NUMBER OR ANY FUCKING CONTEXT. I HAVE TO DO THIS CONSTANTLY TO SEE IF ANYTHING I'M DOING EVEN WORKS.
6. There's no github to complain to the maintainers or search for issues because it's NOT FUCKING OPEN SOURCE so there is literally nothing to be fucking done about it.
This is due in a week and a half, found out about it last Friday. How's your day going?
PS: good to be back after a long respite from dev ranting.1 -
I need guidance about my current situation.
I am perfectionist believing in OOP, preventing memory leak in advance, following clean code, best practices, constantly learning about new libraries to reduce custom implementation & improve efficiency.
So even a single bad variable name can trigger my nerves.
I am currently working in a half billion $ IT service company on a maintenance project of 8 year old Android app of security domain product of 1 of the top enterprise company of the world, which sold it to the many leading companies in the world in Govt service, banking, insurance sectors.
It's code quality is such a bad that I get panic attacks & nightmares daily.
Issues are like
- No apk obfuscation, source's everything is openbook, anybody can just unzip apk & open it in Android Studio to see the source.
- logs everywhere about method name invoked,
- static IV & salt for encryption.
- thousands of line code in God classes.
- Irrelevant method names compared to it's functionality.
- Even single item having list takes 2-3 seconds to load
- Lag in navigation between different features' screens.
- For even single thing like different dimension values for different density whole 100+ lines separate layout files for 6 types of densities are written.
- No modularized packages, every class is in single package & there are around 100+ classes.
Owner of the code, my team lead, is too terrified to change even single thing as he don't have coding maturity & no understanding of memory leak, clean code, OOP, in short typical IT 'service' company mentality.
Client is ill-informed or cost-cutting centric so no code review done by them in 8 years.
Feeling much frustrated as I can see it's like a bomb is waiting to blast anytime when some blackhat cracker will take advantage of this.
Need suggestions about this to tackle the situation.10 -
Been working on a new project for the last couple of weeks. New client with a big name, probably lots of money for the company I work for, plus a nice bonus for myself.
But our technical referent....... Goddammit. PhD in computer science, and he probably. approved our project outline. 3 days in development, the basic features of the applications are there for him to see (yay. Agile.), and guess what? We need to change the user roles hierarchy we had agreed on. Oh, and that shouldn't be treated as extra development, it's obviously a bug! Also, these features he never talked about and never have been in the project? That's also a bug! That thing I couldn't start working on before yesterday because I was still waiting the specs from him? It should've been ready a week ago, it's a bug that it's not there! Also, he notes how he could've developes it within 40 minutes and offered to sens us the code to implement directly in our application, or he may even do so himself.... Ah, I forgot to say, he has no idea on what language we are developing the app. He said he didn't care many times so far.
But the best part? Yesterday he signales an outstanding bug: some data has been changed without anyone interacting. It was a bug! And it was costing them moneeeeey (on a dev server)! Ok, let's dig in, it may really be a bug this time, I did update the code and... Wait, what? Someone actually did update a new file? ...Oh my Anubis. HE did replace the file a few minutes before and tried to make it look like a bug! ..May as well double check. So, 15 minutes later I answer to his e-mail, saying that 4 files have been compromised by a user account with admin privileges (not mentioning I knee it was him)... And 3 minutes later he answered me. It was a message full of anger, saying (oh Lord) it was a bug! If a user can upload a new file, it's the application's fault for not blocking him (except, users ARE supposed to upload files, and admins have been requestes to be able to circumvent any kind of restriction)! Then he added how lucky I was, becausw "the issue resolved itself and the data was back, and we shouldn't waste any more yime.on thos". Let's check the logs again.... It'a true! HE UPLOADED THE ORIGINAL FILES BACK! He... He has no idea that logs do exist? A fucking PhD in computer science? He still believes no one knows it was him....... But... Why did he do that? It couldn't have been a mistake. Was he trying to troll me? Or... Or is he really that dense?
I was laughing my ass of there. But there's more! He actually phones my boss (who knew what had happened) to insult me! And to threaten not dwell on that issue anymore because "it's making them lose money". We were both speechless....
There's no way he's a PhD. Yet it's a legit piece of paper the one he has. Funny thing is, he actually manages to launch a couple of sort-of-nationally-popular webservices, and takes every opportunity to remember us how he built them from scratch and so he know what he's saying... But digging through google, you can easily find how he actually outsurced the development to Chinese companies while he "watched over their work" until he bought the code
Wait... Big ego, a decent amount of money... I'm starting to guess how he got his PhD. I also get why he's a "freelance consultant" and none of the place he worked for ever hired him again (couldn't even cover his own tracks)....
But I can't get his definition of "bug".
If it doesn't work as intended, it's a bug (ok)
If something he never communicated is not implemented, it's a bug (what.)
If development has been slowed because he failed to provide specs, it's a bug (uh?)
If he changes his own mind and wants to change a process, it's a bug it doesn't already work that way (ffs.)
If he doesn't understand or like something, it's a bug (i hopw he dies by sonic diarrhoea)
I'm just glad my boss isn't falling for him... If anything, we have enough info to accuse him of sabotage and delaying my work....
Ah, right. He also didn't get how to publish our application we needes access to the server he wantes us to deploy it on. Also, he doesn't understand why we have acces to the app's database and admin users created on the webapp don't. These are bugs (seriously his own words). Outstanding ones.
Just..... Ffs.
Also, sorry for the typos.5 -
Fun day at work.
Client sends me requirements over WhatsApp voice notes.
Says he can't send email because hes too tired.
His Requirements don't make sense.
I figured out what he wanted and then rewrite the requirements using simple language and less jargon.
Hes not happy. I reduced two paragraphs of his "requirements" to a single sentence which make more sense.
His voice notes seem like rambling.
Ugh.
He comes up with features for this webapp that cannot be tested unless you build the companion app which is coming up later.
Now he wants us to design the screens for the app which we will have to use our designer for.
Expensive. Considering most of his app is not completely thought out.
I have no idea what to do now.
We still haven't completed the requirements.1 -
A client decided to give a refresh to his website. So he said he wanted me to take care of it. Curious because he has an IT guy full-time just for the website.
When I offered the hosting service too the IT guy got crazy, he started making a lot of questions like why should I take full control of the website. I replied that's optional, I can just deploy the website in the current server.
The client said, yes I want you to take care of everything.
IT guy again making questions about what database I'm planning to use, what framework, what version, bla bla bla.
At this point I said to my self: Well, maybe this guy made an awesome job. Probably he used a framework that I don't know. The database must be neat and tidy.
So, I go an check the current website... WordPress... Are you freaking kidding me? The IT guy getting crazy for a premium WP template? Why is he full-time anyway? Why is the client looking for someone else?1 -
From perfectly working scrum team to... Don't know what it is now...
Long story short - our SM left company and our team have ongoing "reorganization", our tester leaving at the end of this month, probably we will be out of tester for next month...
I don't mean reorganization, it's normal thing, but... It looks like it's slowly collapsing under bad head decisions (one of them is the reason why our tester is leaving)... Multiple "side" projects / tasks for ppl in team and problems with delivering sprint tasks on time because of it, context switching etc.
I fucking like this project, it gives me much opportunities to learn new things and design new features - it's up to us how we will implement it. Client is satisfied with our work and we worked for their trust for long time. But if things will be going same way as now, we will probably lose it.
How do you think, is it worth to try stay with this project? Or should I update CV just in case?6 -
*Dev is non-native english speaker
Dev: we need the VPN ip.
Me: the server ip or the connected device ip.
Dev: the server.
Me: gets the ip.
Dev: this doesn't work, is this the VPN ip ?
Me: Gives the device ip. Works.
Dev: OK. Works now.
Could have just asked for the client IP in the first place but s/he didn't know how to.
I have been trying to freelance for people who don't speak english as a first language and getting the Requirements is the hardest part of the job. 😫 .
P.S. Suggestions needed from remote freelancers. What's your workflow like.6 -
I need some advice, because I'm feeling like I'm getting ripped off by my company.
I'm a junior developer and this is the first company I've every worked at. I've been here for 1 1/2 year. I said in the first interview that I am proficient with a fullstack framework, for a rather niche programming language, but I don't want to do front end, because I'm not good at it and I generally don't like it.
I'm the sole coder working on a project that costs the client 100EUR/h. There are others, but they just organize the tasks I have to do. This project requires me to work a full stack of retardation server, that's a pain in the ass, not really compatible with this project and required hack after hack to be fixed. Finding bugs in this pile of shit often takes days of emailing around and asking for logs in hope something might pop up. I've had to scavage through threads saying the still bleed form the anus or have PTSD, beccause of this retarded stack. As you can imagine, I'm also responsible for all of the QA and obviously get shit for bugs. I'm supposed to remember every little detail I've done in this project at the end of the sprint, while also working on 2-3 other projects simutaniously.
I've developed some small servers with dashboard and api for apps on my own. I'm supposed to also do all of the QA so that my boss doesn't see any errors, because otherwise our clients have to be QA.
I have written a complicated chat system that is distributed across nodes. We've nearly missed a deadline of 6 days for this shit, because I've been put under preasure, because I estimated such a "large" amount of time for this.
Other things I've done include:
* Login/Registration on many projects
* Possibility to add accounts for subordinated, with a full permission system for every resource
* Live product configuration with server validation and realtime price updates
* Wallet & transaction system, dealing with purchases of said product and various other services offered on this platform
* Literally replaced the old, abandoned database framework from a project with a modern one.
I've made some mistakes during the WFH corona times, but this that doesn't mean you can put more preasure on me and pull stuff like this: https://devrant.com/rants/2498161 https://devrant.com/rants/2479761
Is all of what I'm doing and have to deal with worth the 9EUR/h salary?10 -
So someone from another team in the company asked on our public Slack channel if they can send a field they're sending for one client, for all clients, so they don't have to have a branch for that one client that sends it.
We're talking about a string of up to 20 chars, typically much less even connected to each record, of which we have let's say a million per month and each of those records has at least 30 columns, some of them being longer strings even.
A dev from my team responded that they shouldn't send it because, while no one uses it so it's not going to break anything, it will require extra storage.
This was not 20 years ago, this was today, in 2021.
I responded asking what storage does he foresee to be the problem, because I can't see where so I'd like to get more details.
Guess who got ripped to shreds because it's a bad thing to question members of the team in public....
This is just one in a long line of similar brainless idiocies I've had to deal with from this asshole.
And no, I'm not a junior dev or something, I'm transitioning out of the Principal Engineer role for that team (for this reason exactly, otherwise I'd stay as PE). And no, I'm not the transitioning the role to that asshole.
At least 3 people who have left the team because of this asshole.
Managers not helping either, responses like "Yeah, you're right, but you're reasonable, he isn't, so let's appease him until we can find a way to deal with him"...
I used to love being a developer, this asshole made me want to vomit at any mention of anything remotely dev related...
Hope y'all are reasonably happy with your jobs and, more importantly, don't have such an asshole around you! -
Discords update "policy" is really annoying.
I daily-drive Manjaro and discord refuses to allow you to log in with an older client version when they release an update.
Manjaro's stable takes about two weeks to catch up so when this happens I'm stuck looking for an alternative way to update.
Usually I go for the AUR or (if available) unstable branch package but today the AUR wasn't up-to-date yet when I encountered this problem.
This is a minor inconvenience and was fixed about an hour later when the AUR was updated with the newer discord-electron-bin but I just don't get discords game here?
Why not allow the previous client version to connect and alert users of an available update like any other sane chat application does?
You could go for a time period like two weeks or a month and AFTER that start forcing users to update. I don't get why they force it the instant they release the update.
Just wanted to share this annoyance here, maybe someone encounters this possibility when designing update cycles for their application. I urge you not to instantly lock-out older versions. It's annoying, useless and restrictive. Or if you do so, opensource it so repositories can immediately build from source and sync and don't need to wait for a maintainer to update the bin in the repo.23 -
Why some (ok, a lot of) sales and buying guys are there just to transform any service experience in something bad?
In my experience, most sales guys promises anything, with absurd deadlines and it's up to you to make it work. Things never get good enough and, after all, the client doesn't like the work, you don't like and the sales guy doesn't like you could not make a perfectly task.
Buying guys are even worse when buying services. Email 30 developers in BCC: "Hi, I need this done by tomorrow morning and I would like to know how much you charge for it. I need your proposals in the next 30 minutes". He closes the deal with the fastest and cheapest proposal.
These things make absolutely no sense to me. -
TL;DR Shit programer trying pass off stealing code as "Recycling"
Backstory:
Client hires senior dev. He lied and knows nothing. Has been causing havoc in production since day 1. My crusades to defend production have been without much success.
Since he wants to LITERALLY put his name on every big project, he finds any reason to make a new version of it (or make a slight astetic modification) to say he did something.
The client doesn't know or care about the programming side of things. Which means it is incredibly difficult to get him to understand the issues this brings. Not to mention that the "senior dev" is acting as a consultant to the client, altering the facts.
Story:
The piece of shit, is trying to make a new version of a big project. It was originally made by my mentor. Again, if you are using someone else's work to complete your own, I don't care. But if you take 99% of another person's work and then say...
"I took and existing project, which was similar to what I'm trying to make. Then I modified it to fit our needs."
Fuck you man!
You took someone else's work. Now you're trying to present it as your own. No references to our team. Again, there is literally nothing new about this project. It's exactly like the original. The client didn't even ask for this.3 -
(Part 1/2?)
Ohhh my god am I furious and this one's a gem.
Also I'm gonna namespoil all of the entities in my post. If this is against rant rules I'll reframe it.
So the story starts over an year ago. Me, being in a bad place, where I couldn't do a job due to external issues, wanted to try out an internship. Thought I could pull off a 5 hour shift and then attend to my problems.
THE INTERNSHALA ARC:
I apply to a bunch of applications on Angel, Internshala and Indeed.
I was contacted by a few handful of these places. One of them was called "ARCHITECTA SOFTWARE SOLUTIONS". These guys had arranged an online aptitude test for me which I promptly took.
I looked up this company and they seemed like a pretty okay big firm from the outset but didn't have many reviews on Glassdoor and likes of such. (first red flag). Post aptitude test, I was quite sure I fucked up and wouldn't get further contact. Surprisingly, a person from the company sends me his Whatsapp number over chat and asks me to save it. The message is worded like a bulk email (Starting with Hello everyone!!) which I thought was quite odd since the interaction from these platforms has always been a person-to-person contact for me. Since Internshala showed that only around 40 people applied for the position I was quite intrigued but attributed this to my lack of exp in internship operations.
THE WHATSAPP ARC:
I was contacted by the number on WhatsApp saying that they'd be interested in moving forward and I gave them my work experience details.
The person sends me over a development assignment to complete within a few days. The assignment consists of massive scope of details. I'm talking production level concept and implementation. Asks to me implement a custom emotion detection CV model (worded as "emotion camera" lmao), generate a 3d model (specified nowhere and expects to implement a mono-ocular system for the curious) and deploy it over AWS with a website to go along with it and also host that. The website should contain a VR ("360 rotatable") view that can explore the depth-map ("not worded as depth-map") of the face. My first assumption was that they had picked this work up for outsourcing and didn't bother to chip off parts so as to create an assignment out of it (I know very optimistic).
So I shoot it at him on WhatsApp asking which parts of the assignment should I do?
Him: So, which parts CAN you do?
I thought of it as an HR thing.
Me: I could do most of it but given the time-frame of the assignment and my applied position as a web developer it is perhaps out of scope for my application.
Him: Don't worry about the assignment. You can submit when you complete the whole assignment.
I was visibly angry over the stupidity of this man.
Me: This task is a Full-Stack + CV + VR task. It will take over two months to get working. Am I supposed to work on it for that long for an assignment?
Him: Okay just do the basic functionalities like add to cart. But also try to do the camera thing before next week.
At this point I'm sure that they are having trouble handling an eager client and they're offloading work to interns. So I do only the backend and minimal frontend and submit the assignment (a 2 day job done over a weekend).
Nothing. Empty. No messages since then. I tried sending in a Whatsapp message on the application and how to proceed. Then, if I could get to know if I have been rejected. Nothing.
And all this time I can clearly see the account is active as it pushes pretentious motivational quotes over it's Whatsapp status.3 -
FFS! Can I get a remote job as soft-dev?? I know a little bit of java, I mean I have a GitHub repo for a project if anyone wants to see what I'm doing.
If anyone knows or feel that can help me, please lend me a hand, I need to start working (to get real experience) and earn a little (prevent from starving in this fucking shithole country).
I'm not asking for money, I'm asking for a freaking job, a task, anything.
Little brief of my situation... I'm from Venezuela... Done!
Now for real, I'm a freelancer IT technician for almost 8 yrs, now I'm studying software engineering (8th Semester), I'm 31 years old, have a family (7 yrs old daughter, newborn baby boy), work is not flowing since the hourly price got high due to the economic crisis and clients are hiring people instead of outsourcing.
I'm not expecting to earn the minimum wage of UUSS, 150$/month can do the job! This due to the black market price of the USD (10X.000BsF so far), where 1$ represents the 1/8 part of the minimum wage here, to put it in perspective, toothpaste cost 200.000Bsf, 1/4 of the minimum wage.
Perhaps you will be asking yourself "Damn! so how do you do to survive!?" well, at least once a week a client calls and that saves the entire week, this isn't life my people, this is surviving... And if you don't believe me, I can show a receipt from the supermarket, and show you the average salary or my incomings.
Anyway enough drama and whining for today, I'm not doing this again in my life, I'm a person who achieves goals and earns what deserve (even this situation, I know that I deserve it for not thinking properly in the past, but we can't be victims of our past or do we?)
Here I leave my repo link, see the develop branch https://github.com/ajfmo/Sislic
I have touched HTML, CSS, JS, nodeJS, yarn, bower, Ubuntu both desktop and server, but what I really like is Java.
"Give a man a fish, and you feed him for a day. Teach a man to fish, and you feed him for a lifetime." - ancient Chinese proverb.6 -
~rant
I think we need to change way how websites deliver themselves to its users. This HTML CSS JS clusterfuck is just a huge PITA in the ass.
What is a website?
It's an application where users find, communicate or share information, can buy or sell their penis pumps and loads of shady stuff.
Why must a website (the delivered application) be split into multiple languages/scripts and lots of HTTP requests?
In my opinion, PWA is a start to make us look at websites more like apps as we are used to on the machine, but they don't solve the mess.
Per my experience, many people working on websites regularly confuse what's executed on the server and what is on the client. They send data to the client via XHR, for example full DB tables of private data, just to then filter it in their beloved Array.filter function.
You can tell those people again and again and this is why I start thinking that the Web, as we know it, needs a big change.14 -
Trying to make a deadline, waiting for more info from an analist so I can implement the science stuff correctly
Today I receive the email with the info I need. Email is cc'ed to the client. And it starts with complaining about me not having implemented the science stuff. The info I need is attached in this email. Arghgh, how am I supposed to do that if I don't have the information I need.
Apart from that she was testing in the production environment. How do you work with people like this.
But hey, I just got my devRant stickers ;) -
Trying to use authenticate a JWT token from an Azure service, which apparently needs to use Azure AD Identity services (Microsoft Entra ID, Azure AD B2C, pick your poison). I sent a request to our Azure admin. Two days later, I follow up, "Sorry, I forgot...here you go..."
Sends me a (small) screenshot of the some of the properties+GUIDs I need, hoping I don't mess up, still missing a few values.
Me: "I need the instance url, domain, and client secret."
<hour later>
T: "Sorry, I don't understand what those are."
Me: "The login URL. I assume it's the default, but I can't see what you see. Any shot you can give me at least read permissions so I can see the various properties without having to bother you?"
T: "I don't see any URLs, I'll send you the config json, the values you need should be in there."
<10 minutes later, I get a json file, nothing I needed>
<find screenshots of what I'm looking for, send em to T>
Me: "The Endpoints, what URLs do you see when you click Endpoints?"
<20 minutes later, sends me the list of endpoints, exactly what I'm looking for, but still not authenticating the JWT>
Me: "Still not working. Not getting an error, just that the authentication is failing. Don't know if it's the JWT, am I missing a slash, or what. Any way I can get at least read permissions so I don't have to keep bugging you to see certain values?"
T: "What do you need, exactly?"
Me: "I don't know. I don't know if I'm using the right secret key, I can't verify if I'm using the right client id. I feel like I'm guessing trying to make this work."
T: "What exactly are you trying to get working?"
<explain, again, what I'm trying to do>
T: "That's probably not going to work. We don't allow AD authentication from the outside world."
Me: "Yes we do. Microsoft Teams, Outlook, the remote access services. I can log into those services from home using my AD credentials."
T: "Oh yea, I guess we do. I meant what you are trying to do. Azure doesn't allow outside services to authenticate using a JWT. Sorry."
FRACK FRACK FRACK!!
Whew! Putting the flamethrower away.
Thanks devrant for letting me rant.3 -
I went to meet a client with our CTO. In the meeting we discuss the implementation of SAML SSO. Their SSO guys asked whether they need to build 2 trusts for our application because we have 2 modules that use SSO. Both the CTO and I were not sure because we did not have any prior experience of integrating SAML SSO. To act professional, we couldn't say we were not sure. So the CTO said we needed two trusts. I immediately added "We may only need one. Let us do a bit of investigation and confirm."
After the meeting I did the investigation and found out we really only needed one. So I sent out an email to tell the client, cc the CTO. 1 minute later I got the email from the CTO "why tell them one when I said two?". When it's an immediate response with only 1 line, I know I'm in trouble. So I called him and was ready to explain to him. I couldn't. Later I found out the time I was calling him, he was talking about this with the CEO.
I thought maybe I can explain to him when he's available. The next morning as I came to work, the CEO asked me to come to his office. He closed the door, and told me the first line the CTO told him the day before was "I want him (me) fired." I was so shocked. Having been working with the CTO for quite a while, I was surprised he said that without even communicating with me. Did I do something that wrong that you don't even bother to tell me what's wrong? I was not fired because the CEO at least asked what happened. He also understood I was actually making a better technical decision. But well, guess I shouldn't be making a decision when I had no power to. And even I believed the client heard my "let me investigate first" comment, the CTO didn't. I still got an unofficial warning. For that whole day because of the stress, I don't remember getting anything done.
Fuck that acting like profession and smart when you are not. I'd go down the path of becoming professional and smart instead. And fuck metting with clients. I'm a dev don't fucking dare to talk to me and get me fired. If you wanna talk, talk to the big guys who don't make us look bad like I did.
If you ask me today I still believe I haven't done anything wrong there. So fuck everything.2 -
DEAR NON TECHNICAL 'IT' PERSON, JUST CONSUME THE FUCKING DATA!!!!
Continuation of this:
https://devrant.com/rants/3319553/...
So essentially my theory was correct that their concern about data not being up to date is almost certianly ... the spreadsheet is old, not the data.... but I'm up against this wall of a god damn "IT PERSON" who has no technical or logic skills, but for some reason this person doesn't think "man I'm confused, I should talk to my other IT people" rather they just eat my time with vague and weird requests that they express with NO PRECISION WHATSOEVER and arbitrary hold ups and etc.
Like it's pretty damn obvious your spreadsheet was likely created before you got the latest update, it's not a mystery how this might happen. But god damn I tell them to tell me or go find out when the spreadsheet was generated and nothing happens.
Meanwhile their other IT people 'cleaned the database' and now a bunch of records are missing and they want me to just rando update a list of records. Like wtf is 'clean the database' all about!?!?!?
I'm all "hey how about I send you all records between these dates and now we're sure you've got all the records you need up to date and I'll send you my usual updates a couple times a day using the usual parameters".
But this customer is all "oh man that's a lot of records", what even is that?
It's like maybe 10k fucking records at most. Are you loading this in MS Access or something (I really don't know MS Access limits, just picking an old weird system) and it's choking??!?! Just fucking take the data and stick it in the damn database, how much trouble can it be?!!?!?
Side theory: I kinda wonder if after they put it in the DB every time someone wants the data they have some API on their end that is just "HERE"S ALL THE FUCKING DATA" and their client application chokes and that's why there's a concern about database size with these guys.
I also wonder if their whole 'it's out of date' shit is actually them not updating records properly and they're sort of grooming the DB size to manage all these bad choices....
Having said all that, it makes a lot more sense to me how we get our customers. Like we do a lot of customer sends us their data and we feed it back to them after doing surprisingly basic stuff ever to it... like guies your own tools do th---- wait never mind....1 -
So, I produce a monthly report for our customer service department each month, and this report includes various statistics related to our company's support performance. Two of the included statistics are the "Average Speed of Answer" (ASA for short) and the "Abandoned Call percentage" (ABD % for short) that are derived from client calls to support.
The formulae for these values are:
- ASA = time in seconds all calls that were answered spent waiting to be answered divided by the number of answered calls - displayed as hh:mm:ss
- ABD % = number of abandoned calls minus those that were abandoned in under 10 seconds (referred to as "short abandoned") divided by the sum of total calls that were offered minus the sum of short abandons & transfers
These statistics are also included in a daily version of the same report that all Customer Service leadership personnel have access to.
Now, every single fucking month the same Sr. Manager always has some kind of "discrepancy" with the monthly report that ALWAYS boils down to his dumbass trying to average shit on the daily Excel reports for that month and it being different than what the monthly report is showing. Now, these reports ONLY display the calculated value for any calculated fields mind you - not the raw values of the DB fields used in said calculations.
This month I have to tell this shit-for-brains that you can't just take an average of ASA & ABD % from the Daily's and compare them to the Monthly numbers because their calculated fucking fields!!!
Come to think of it, this has been his issue for like the past 5 months, and I seriously can't fix stupid!
Sometimes I just wanna reply to his snarky ass, corporate bullshit emails like, "BRUH!, The only motherfucking discrepancy I can locate is your IQ and your fucking title - that shit don't correlate homie! Need to take that ass back to High School statistics or something!"
But I digress...
TL;DR
I have to deal with a Sr. Manager who doesn't fucking realize you can't average a calculated field from a daily report and think it's gonna match up with the monthly report. I believe he is borderline retarded, and I often wonder how he got the "Sr." In his title let alone "Manager".
Oh wait, this is corporate America - you just gotta kiss the most ass... never mind.4 -
So, my favourite language is Python, and for web developing I use Pyramid, and to stay in my "comfort zone" I use brython for client scripting, don't take me wrong, I love javascript, but for just a bit of performance lost I like being able to use all my pre-existing python code if I need to...
So, this was my first work experience, for a military industry, we had to make a service for uploading big files and sending them via email.
I heard one thing that shot me out of my "comfort zone" (I'll call it cf from now on)... "Use php"...
So, I already had written in php and I've always disliked it, perl-ish and broken as a bethesda game (i like bethesda games, but they are broken)
Another thing: javascript vanilla or jquery, never liked jquery either, so I decided to use vanilla js...
So, after 6 months of work, my partner and I finished it...
Well, more than one year later that mess we had to make to satisfy our boss' most absurd desires is not online yet, I search it on google every month, so yeah, 6 months of my life wasted (also, it was a "stage", so not only I didn't get any recognition, but they didn't give me any money) -
Freenas update from 11.1 to 11.2 beta 2
They added experimental smb direct / multichannel support, yay.
Me tries to connect to the smb share:
->Connection timed out 🤔
Tries something.
->Connection refused 😐
Google foo ....
->Nope, no connection 😔
"Failed to retrieve list of shares from server"
Reinstalls freenas to be sure it's not some janky install.
->Nope.
Google some more
->Nope 😭
*Like a year later*
Look into /etc/samba/smb.conf
Client max protocol = NTLM1
Motherfucker! 😬
Who thought that to be a good Idea!?
😠
It's the default Manjaro smb conf from the official repository by the way.
Seriously.
Didn't even know there was a setting for max client protocol.
Thought it was a server only config.
😵
Nope, some motherfucker trolled me long and hard this time. 😩
But back to getting smb direct working on my setup.
Thunar gvfs is like it's own completely separate thing.
Smb status, and all the other commands don't see any open connections anywhere.
Gvfs still connects fine to the share even though the smb.conf is deleted and everything else is complaining that there is no config.
On the one hand, it uses samba, on the other it's not actually.
Where the heck can I see the connection properties and wether rdma works or not?
Mother trucking, fracking, leg breaking piece of a dance type.1 -
8 months ago, me and my teammate developed an API and a web application for one of our client. The API was supposed to be consumed by mobile app which another team was working upon. Now my suggestion for the mobile team was to use something like ionic or react-native. This was purely to keep technical debt on lower side since hybrid apps don't deviate too far for both Android and iOS platforms. But mobile team went with the native apps and developed two separate apps which both have some differences.
The client didn't even use the iOS app since past 6 months. Now all of a sudden she reported several bugs and the person managing the mobile devs put that all on us. I tested some of the bugs and seems like the same feature is working on Android but not on iOS.
Came to know later that the iOS developer who was working on the app had resigned and left the company exactly 6 months ago. Right after the apps first launch. And since then mobile team hasn't put any replacement person for the project. That fucker was trying to buy some time by putting it all on us.
And now here I am, experimenting again with Flutter. So far it seems quite decent.3 -
Last week: Build out a landing page and contact form in Pardot. Deliver to client after a quick QA pass through.
Friday: Get nasty message from client via basecamp about how the entire page looks like complete crap. We're also very unprofessional and can't deliver a simple request, while we charge a premium for our services.
So I, wondering what I managed to screw up so horribly, hop on to the test page I sent them. Except, its different and looks like crap.
They edited the page after it was sent to them and are pissed it doesn't match the comps they sent over. So I edit it back - except for the form. The one they added selects and textarea boxes to. Fields they didn't include in their comp and there was no mention of them wanting to use.
Today: Phone call with client. Every single complain they have about the page template they delivered all goes back to one of 3 things.
1. Their designer doesn't know how to use their global styles in his designs. So when things match their global styles (as they specifically asked for) they don't understand why they don't match the comp in a side by side view.
2. They change their mind on a design after the page was built. They won't admit this is the case and want to blame someone else for it not looking the way they want it. You know, "Spirit and Style of their current site"
3. They're idiots.
So now, I put aside a much more fun React project for an Amazon owned grocery chain and work on this nonsense. -
fuck.. FUCK FUCK FUCK!!!
I'mma fakin EXPLODE!
It was supposed to be a week, maybe two weeks long gig MAX. Now I'm on my 3rd (or 4th) week and still got plenty on my plate. I'm freaking STRESSED. Yelling at people for no reason, just because they interrupt my train of thought, raise a hand, walk by, breathe, stay quiet or simply are.
FUCK!
Pressure from all the fronts, and no time to rest. Sleeping 3-5 hours, falling asleep with this nonsense and breaking the day with it too.
And now I'm fucking FINALLY CLOSE, I can see the light at the end of the tunne<<<<<TTTOOOOOOOOOOOOOTTTTT>>>>>>>
All that was left was to finish up configuring a firewall and set up alerting. I got storage sorted out, customized a CSI provider to make it work across the cluster, raised, idk, a gazillion issues in GH in various repositories I depend on, practically debugged their issues and reported them.
Today I'm on firewall. Liason with the client is pressured by the client bcz I'm already overdue. He propagates that pressure on to me. I have work. I have family, I have this side gig. I have people nagging me to rest. I have other commitments (you know.. eating (I practically finish my meal in under 3 minutes; incl. the 2min in the µ-wave), shitting (I plan it ahead so I could google issues on my phone while there), etc.)
A fucking firewall was left... I configured it as it should be, and... the cluster stopped...clustering. inter-node comms stopped. `lsof` shows that for some reason nodes are accessing LAN IPs through their WAN NIC (go figure!!!) -- that's why they don't work!!
Sooo.. my colleagues suggest me to make it faster/quicker and more secure -- disable public IPs and use a private LB. I spent this whole day trying to implement it. I set up bastion hosts, managed to hack private SSH key into them upon setup, FINALLY managed to make ssh work and the user_data script to trigger, only to find out that...
~]# ping 1.1.1.1
ping: connect: Network is unreachable
~]#
... there's no nat.
THERE"S NO FUCKING NAT!!!
HOW CAN THERE BE NO NAT!?!?!????? MY HOME LAPTOP HAS A NAT, MY PHONE HAS A NAT, EVEN MY CAT HAS A MOTHER HUGGING NAT, AND THIS FUCKING INFRA HAS NO FUCKING NAT???????????????????????
ALready under loads of pressure, and the whole day is wasted. And now I'll be spending time to fucking UNDO everything I did today. Not try something new. But UNDO. And hour or more for just that...
I don't usually drink, but recently that bottom shelf bottle of Captain Morgan that smells and tastes like a bottle of medical spirit starts to feel very tempting.
Soo.. how's your dayrant overdue tired no nat hcloud why there's no nat???? fuck frustrated waiting for concrete to settle angry hetzner need an outlet2 -
Today I spent 9 hours trying to resolve an issue with .net core integration testing a project with soap services created using a third party soap library since .net core doesn't support soap anymore. And WCF is before my time.
The tests run in-process so that we can override services like the database, file storage, basically io settings but not code.
This morning I write the first test by creating a connected service reference to generate a service client. That way I don't need to worry about generating soap messages and keeping them in sync with the code.
I sent my first request and... Can't find endpoint.
3 hours later I learn via fiddler that a real request is being made. It's not using the virtual in-process server and http client, it's sending an actual network request that fiddler picks up, and of course that needs a real server accepting requests... Which I don't have.
So I start on MSDN. Please God help me. Nope. Nothing. Makes sense since soap is dead on .net core.
Now what? Nothing on the internet because above. Nothing in the third party soap library. Nothing. At this point I question of I have hit my wall as a developer.
Another 4 hours later I have reverse engineered the Microsoft code on GitHub and figured out that I am fucked. It's so hard to understand.
2 more hours later I have figured out a solution. It's pure filth..I hide it away in another tooling project and move all the filth to internal classes :D the equivalent of tidying your room as a kid by shoving it all under the bed. But fuck it.
My soap tests now use the correct http client with the virtual server. I am a magician.4 -
So basically I am the computer guy in my office. If there is any hardware or software related problem, I am the guy who fix it or try to fix it in my own time.
Little bit of more backstory. Two month ago we got react native project from a client. My boss asked me if I want to do that project. he knew that I don't know react native but I want to learn it. So I said yes. I have worked over 12 hours per day to work on that project while learning react native ( I committed the final version to git today.)
Yesterday there was a meeting in our office about project deadlines and issue with current work and stuff. In that meeting one guy asked (this guy had personal beef with me) in rude way like why I am taking parts of pc and given other people. ( If there is any hardware issue, I use other parts from pc which are not currently in use. So basically a simpe resource allocation.)
I knew it was a targeted questio toward me but before I say anything, All people took his side. (I did all those repair after taking permission from my boss, so he did not take that question seriously.)
I spend lots of time fixing those problem so people work does not stop and this is the thank you I got in return. I did this over one and half year. Right now I am asking my self if I continue the work or not.
Note: I wrote this whole thing to get my anger out of me. Sorry for typos. I am little bit drunk and I am not good with English.2 -
It's been a little bit over two weeks since I quit my first job, thought I would share some stories 😁
I started my very first job in the middle of August (last year) and my duties were to fix some issues on front-end files. You can see my previous rants to see how long were these files 😐
So after 2/3 months I managed to get my shit done, started learning Vue on my own to implement it to new projects (and done it successfully) and learn something about shitty clients who don't know how to live and don't know what do they want.
When I quit the job on the last day of April, I was so happy to end it mostly due to this one specific client who were able to turn happy innocent coding of a great project into hellish shit. Plus there were some issues I noticed with some people I worked with (like they were sending these sexist memes which weren't funny at all 🙄)
TL;DR if you feel that your job post is not for you or that is doesn't make you feel happy or comfortable, don't be afraid to walk away. I did and I don't regret it 😉 -
So we finished our requirement ( barely) for a new client. Next is data modelling and system design.
We started with data modelling. Unfortunately the lead developer does not know the difference between database and data modelling.
me: hey bro, we'll do the database and stuff later, now let's focus on data modelling.
him: (acting like he knows) yeah I have developed a sample design for the "data model".
me: no this is database design.
him: what's the difference?
me: dude, they're totally different. Okay, simple explanation data model is what you want to store, whereas DB design is how you store it.
him: So, if I am not wrong, it's implied that you know what to store if you are talking about how to store it.
me: but you don't know what it is you want to store yet. And one of them precedes the other.
him: Okay, let's start with DB design.
me: What?????? you want to build a house without a plan??? That's it for me I am done !!!
I left the project yesterday, later I heard that, the team members are coders, who think that developing a software is all about coding and fixing errors. -
When freelancing, do you charge for estimations?
Situation is that I'm a sole android developer (4 years experience) and each time I encounter some agency or a client I feel like I'm between a rock and hard place.
Some of the clients come with ready with list of requirements and ready backend/design sketch and they want me to give them a rough estimate.
It's as if they expect me to take only 2-3 hours for estimation and that's it. But actually this was the second time where I had to spend around 10 hours investigating everything so I would be able to give a half decent estimation at least.
This particular client's project turned out to be a mess and I had to spend 10+ hours to estimate only 70% of his project. I asked him if he would be able to pay under a reduced tarrif and the client was shocked, started doubting my competence level and so on.
In the end I gave him a rough 400 hours estimate and he started complaining that others estimated only 200 hours for his project. So in the end I just wasted my time.
Now it's my bad that I voluntarely invested too much time in this estimate without notifying client prior that I might ask to pay for estimation, next time I will try to do this ahead of time.
It feels like only big agencies who have free resources have a competetive edge against sole freelancers, it really sucks wasting so much time to estimate half baked requirements and assets. Also most of these clients and agencies are purely lazy and most of the time they don't even plan signing, all they need is someone to estimate their work for them.
I'm thinking of starting to charge for estimations and communications in a form of consultations. Is that a good idea?8 -
I have found that once you work for a company where you have to implement everything in its raw form using the raw language and raw logic, you really have to know what you're doing and knowing some basic/medium programming and having some algebra knowledge doesn't cut it (unlike some people think).
I've been at two sides of the coin: I worked for a company that had everything in place, a framework that handled all edge cases and what not and I just had to focus on user stories, but I also worked for a company where I had to do everything manually.
For example, at the latter company I had to know Discrete Mathematics; truth tables to their most convoluted and disgusting form, having to be able to apply this on a late Friday night with a headache and lack of food and sleep with the PM stressing out.
I've had to deal with NOT AND OR AND OR AND OR AND branches or whatever, where an OR behaves like an AND and if you want a value between an AND AND and an OR, you'd have to do a NOT OR.. to think about latches, all in my head, sigh, anyway, within limited time constraints, without even having time to write tests, having to make sure that everything checks out while the client is breathing down my neck. Yeah, not such fun times.
I'm happy for those of you who can just write some moderately difficult logic but you don't have to break your head over doing everything manually, as if you're in the coding stone age and nothing is taken care of.
Companies like these make me want to run away.3 -
I don't like when client decide which tech use in the project. I got some weird tech request like:
1. Move existing database from postgresql to Hadoop because hadoop is Big Data (is kinda move from amazon rds to amazon s3 just why? have you index, cluster your postgresql table?)
2. Move from mysql to postgresql because mysql cause deadlock (maybe their previous developer just fucking moron)
In this situation we just explain why we don't use that and propose alternative solution. If they insist with their solution either ignore it or decide not continuing the project.5 -
Hm... Apparently I've been doing TDD all along... it's just that I don't save the tests in a seperate project.
I just keep editing Main() to test whatever i'm working on (each class).
Also the NJTransit site is sneaky as ****. It seems the devs know a bit about how to prevent site scraping by checking Headers and Client information...
Took all afternoon to get this test to pass....
it works in Chrome but not in my code... and even after I spoofed all the headers... including GZIP.... it wouldn't work for multiple requests...
I need to create a new WebClient for each request.... no idea how it knows the difference or why it cares... maybe it's a WebClient bug...
And this is only the test app. Originally was supposed to be built in React Native but that has it's own problems...
Books are too old, the examples don't work with the latest...
But I guess this also has a upside... learn TDD and React rather than just React... hopefully can finish this week...
I'm actually on vacation... yea... i still code like a work day... 10AM - 8PM....2 -
So i wasted last 24 hours trying to satisfy my ego over a shitty interview and revisiting my old job's codebase and realising that i still don't like that shit. just i am 25 and have no clue where am i heading at. i am just restless, my most of the decisions in 2023 have given very bad outcomes and i am just trying doing things to feel hopeful.
context for the interview story-----
my previous job was at a b2b marketing company whose sdk was used by various startups to send notifications to their users, track analytics etc. i understood most of it and don't find it to be any major engineering marvel, but that interviewer was very interested in asking me to design a system around it.
in my 1.2 years of job there, i found the codebase to be extremely and unnecessarily verbose ( java 7) with questionable fallbacks and resistance towards change from the managers. they were always like "we can't change it otherwise a lot of our client won't use our sdk". i still wrote a lot of testcases and tried to understand the working of major features.
BTW, before you guys go on a declare me an embarrassment of an engineer who doesn't know the product's code base, let me tell you that we are talking SDKs (plural) and a service based company here. their was just one SDK with interesting, heavy lifting stuff and 9 more SDKs which were mostly wrappers and less advanced libraries. i got tasks in all of them, and 70% of my time went into maintaining those and debugging client side bugs instead of exploring the "already-stable-dont-change" code base.
so based on my vague understanding and my even more vague memory from 1 year ago, i tried to explain an overall architecture to that interviewer guy. His face was screaming the word "pathetic" from his expressions, so i thought that today i will try to decode the codebase in 12-15 hours, publish a cool article and be proud of how much i know a so called martech system design. their codebase is open sourced, so it wasn't difficult to check it out once more.
but boy oh boy i got so bored. unnecessary clases , unnecessary callbacks static calls , oof. i tried to refactor a few classes, but even after removing 70% of codebase, i was still left with 100+ classes , most of them being 3000-4000 files long. and this is your plain old java library adding just 800kb to your project.
boring , boring stuff. i would probably need 2-3 more days to get an understanding of complete project, although by then i would be again questioning my life choices , that was this a good use of my 36 hours?
what IS a correct usage of my time? i am currently super dissatisfied with my job, so want to switch. i have been here for 6 months, so probably i wouldn't be going unless i get insane money or an irresistible company offer. For this i had devised a 2 part plan to either become good at modern hot buzz stuff in my domain( the one being currently popularized by dev influenzas) or become good at dsa/leetcode/cp. i suck bad at ds/algo stuff, nor am i much motivated. so went with that hot buzz stuff.
but then this interview expected me to be a mature dev with system design knowledge... agh fuck. its festive season going on and am unable to buy any cool shirts since i am so much limited with my money from my mediocre salary and loans. and mom wants to buy a home too... yeah kill me3 -
Client: Can you put all the add on products we sell into the MDSL (Master Daily Sales Log)
Why aren't you adding them to the new console system? It allows you to add them and tracks all actions on the sale.
Client: The Health Agents don't know how to do that, and I think the manger hasn't added them into the system....yup he didn't add them.
Me: So how are you tracking the addon products you are selling?
Client: I don't know. Can you just add them to the MDSL.
Me: I wrote the console system to replace the MDSL, why are you using the spaghetti code system I wrote 8 years ago?
Client: They like it better because of this one report they use.
Me: I rewrote that report for the new system and it even gives more info.
Client: But the owner doesn't trust it, because it shows conversions and sales instead of just sales.
Me: ...1 -
The fog of war over all that happened with my change of team is starting to dissipate.
3 people were involved and there were 4 different versions of the whole situtations, but from what I've been able to collect it looks like the company is expanding and one of the mail KPI for the current team leaders is how good they are at creating a NEW generation of team leaders, to take care of the new entries.
My previous team leader told me about all these new growth perspectives and the junior entries I could manage, knowing very well of the desire I have previously expressed of being a senior dev with my small group of juniors to teach.
I declined the offer, stating that this whole year has been exhausting. Every single time I've tried anything (using modules for new components on our old web client, tsdoc to document our types, suggesting technologies like ANYTHING BUT ANGULAR AND MONGO, telling how removing down migrations was a retarded move) my suggestions were either shrugged off or flat out refused. Let alone how every time I was proven right, except for angular but give it time and that will bite their tail as well.
Don't get me wrong: they are well withing their right when they take all those decisions, and more. But I DO NOT PLAN on selling a plethora of bad decisions to a new stack of devs as if they were the gold standard.
"I understand your reasons; you, as a company, need a well coordinated team all running towards a goal; loose cannons are harmful.
But now I need you to understand me: I do not agree with your technical direction. I never lied before and I will not start now. Promotions don't matter nearly as much as my integrity, and integrity in my world means speaking up about problems. Your position is perfectly valid, but mine is as well and they can't be reconciled. If I were you I'd make myself a favor and make sure IHateForALiving doesn't become a team leader; given your direction, I'm not the man you want right now".
As mentioned, one of the KPI for team leaders is how succesfull they are in finding new team leaders, and trying to turn me into one didn't end well; I love sharing knowledge, but being honest to myself is far more important to me. So this meant my previous team leader failed in a very big task, and thus was demoted? At the same time, I've been there for 2 years now so they're not really eager to replace me, but I'm under strict examination too as of now.5 -
That moment the client asks to add a single link to a header and you think: "easy enough". But then you notice their CSS.
Not a single f*cking class is used in the entire header, everything is done using :nth-child selectors etc... 🤬
Also, did I mention, the CSS is used for several headers, so adding an element to the header and modifying the CSS might break any other header in the application.
And this after they mentioned last week that they don't use a library like Bootstrap because it is too cumbersome.
I'm so mad right now, have been trying to fix this for half an hour. A task like this shouldn't take more than five minutes!6 -
I have just slept for a minimum of 5 hours. It is 7:47 PM atm.
Why?
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.
Check.
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.
Check.
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.
ipconfig /release
ipconfig /renew
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!
Fuck it.
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?
Him: sure.
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 -
Fucking fuck! How could I be so naive?
I just started my masters in Enterprise Software Development. It's basically the continuation of the CS BSc I finished this year. I don't consider myself a lazy and bad dev and I finished in the top 5-10% of the class - I say this not because I want to brag, I know I'm not the best, I know I have my defects, BUT I don't think that it's a good sign that all of us, my top graduate friends all full of hate and anger against this whole MSc after just a week. And... It's mostly one fucking egoistic teacher's fault.
Okay, all of us are working full time which is obviously tiring if you combine it with the university classes. But I still think I could manage this first week better, if I wouldn't fucking came to the same line of the faculty.
I deeply fucking hate that I've been naively thinking that the masters will be different after experiencing one of the worst teachers last year. It's fucking first week, and I can't change the specialization anymore, only give up. I wanted to fill up the void with some usefulness, but I just fucking messed it up.
This "beloved" teacher is from the industry, he has a lot of experience and started to teach recently. Which is not a problem, no! It should be a great thing by default. But the way he holds his courses is inaccaptable. I don't think I have the right to share everything, but the following stuff just grinds my gears... Like a fucking lot:
1) He brags about a lot of stuff. Like he made really good deals in the past. Why should we know, that he made a contract with a client for 20 million euros. Okay. Whatever. That doesn't help us, and I think that bragging makes him look like an egoistic scum.
2) I hate this one the most: he fucking says that we have a choice in the administrative stuff. He gives us some hope and offers the possibility to argument and come up with our own solutions for grading and etc. But oh boy, is this a false hope, a fake idea of free will. He already knows what the final solution will be and on what kind of decisions will we all "agree". He did this last year, he does it again. Fucking naiveness of mine...
3) Lastly, he decided, that we have to go to theatre with him, all of us. No exception. And I like the theatre. But only when it isn't forced. Why and how could you pair this up with the grade you give to your students? Because that's what he does.
FML. How can I already hate this? How can I already be fed up with all the stuff? Anyways, I'm signing the contract with the university tomorrow, so let the fun games begin... I know, I look like a whining little boy now, but I just fucking had to went it after this deep fried shit-day. I probably have to get some sleep, and everything's gonna be fine. Eventually, skipping classes might become necessary in order to bear all this shit.6 -
Have this iOS maniac/UI guy/hustler at my office. (Refers to my first Rant,he's the fucker who always try to shove his iPhone to my face.) Hats off to him for knowing how to generate passive income and his hustling skill. But I hate that fucker. He always like to start a debate. He's always doing his sidejobs all the time. He sells staff online(even fidget spinner). He also does wedding photo shoots. Heard from a friend, he's a mediocre photographer but gets client by giving his potential clients lower prices than his competitors. He got a few connections and somehow always doing websites for his own client by going to codepen and copy pasting JavaScript from here and there. He doesn't know shit about programming. That fucker doesn't even know about closures. He literally doesn't know shit. Yet try to debate about with us regarding programming (wtf?) Always trying to get us to help him with his side paid jobs -when he encountered an error,he will immediately bug us- sometimes would interrupt us while we are busy with the company's stuff. If we don't help, he would slightly mock by saying things like "it's ok...I understand you guys are not that experienced yet..etc". The senior dev was pissed off the other day and emailed a super detailed complaint to the HR.
Note : He gets paid more by his photoshooting jobs on the weekend, he's only at this job for his future citizenship application. That fucker. He's the type of fucker that will definitely gets rich but gets hated by everyone. -
First post yay!
I'm a "tech" lead for my team. The "tech" stands for technically, I can go on a whole different rant there but that's not why we're here today.
So we have a new PM on our side and a new PM on the client side. I've been working on this project longer than any of the devs and PMs have.
One of the tasks that my team does is validate and ingest data. It's pretty straightforward and it's fully automated. It takes minutes, and at most an hour, to complete this task. We get these tasks from users randomly and they don't have any schedule to it. It's FIFO basis and we just add it to our current sprint if we have bandwidth or add it to the next one if we don't. Not a big deal, no users have complained about it before, it's just business as usual. And we have a tracker of when we received it, how big it was and when it's been ingested. Super simple.
So now comes in the new client PM. He's been asking us to come up with timelines for these ingestions. My project's new PM is bending over to him and saying okay we'll come up with it, no problem. Well, there is a problem. We don't know that far in advance for when these tasks are coming in. Even if we did, now we're supposed to create timelines for a 10 min task? It literally is uploading a file and our system handles everything and I've explained that to my pm but he still is like well that's what they want. It takes less effort to do the ingestion than to make these timelines. It just means project managers bothering devs about timelines.
Idk how to deal with this. Thoughts? Any similar experiences?5 -
Ideas I've had over the years that could pan out and be useful:
SMS-DB: Stands for SMS-Data Burst. Used to allow those with low cell signal or no data plan to transfer data between a phone and some client via the standard SMS text space. Would be slow, but would act kinda like dial-up over SMS (as mobile lines are compressed on all service levels, even LTE, so traditional dial-up wouldn't work!) I have a general idea on how packets would be laid out, but that's about it so far...
everything2PNG: Allows one to transpose any file's data into a PNG with a 3 byte per pixel (full color RGB), which allows for a "compression" of sorts (about 91, 93% on preliminary tests) AND allowing further, more efficient compression of the resulting file. (Plus... it's just kinda cool to see files transposed as PNGs.) I actually have a simple transposer to go to PNG, but can't yet go back. Large files (around 600MB) use upwards of 4GB with efficient paging and other optimizations via NumPy so far, so it's not *viable* yet, but it's coming along nicely.
RPi-GPIO Interconnection Bus: A master/slave or round robin method to allow for Raspberry Pis to communicate using GPIO, which can help free up network bandwidth in RPi cloud computing clusters. At most, this'd allow for 4 bits used for pushing to the GPIO "bus", and 4 bits used for pulling from the "bus". 8 pins total are usually unused minimum, so either 3 or 4 pins for upload, 3 or 4 for download, and potentially 1 or 2 for commands, general non-data communication, etc. I made a version of this concept using Round Robin for a client, but it was horribly slow. (I also don't have distribution rights for the code, so i'm working from scratch.) Definitely doable. -
I once had to write a feature, which should allow the user to login and edit an appointment, which was automatically set. All the data we got, came from an incredibly unreliable API. And with incredible unreliable I mean like heisenbug-level unreliable.
The API spoke perfectly unreadable xml and was a horror to work with.
After a few weeks of me being messed with by this shit piece of an API, I finally got something which did kind of work sometimes.
Proper error handling has been added later and just before I was done, fixing all the flaws of their data management and nonsense status codes (not http status codes) which rarely correlated in at least some way with their data, our client said "scrap this, we don't want it anymore"
Many hours and effort gone, this thing worked almost perfectly. -
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 -
After many years, I am trying to learn to react and react-native again.
I went to react native and click on get started. I downloaded CRNA and created Hello World. It asked me to download Expo client.
I was like WTF is this expo? So I installed it on my Note 8 and run the app. This is awesome. I don't have to build the whole app. It did not require Android SDK.
I open the expo website and found lots of SNACKS by other people. I can see the live output of many libraries and I loved the whole thing.
Finally, I installed the Expo client on my iPad. There was no scan barcode option. I thought it was weird. I saw login option. So naturally, I log in and wait for it to show in Expo client. Still nothing.
Finally, google about it and found out that due Apple, I can not see other people example on expo anymore.
Why the fuck Apple has to kill something this awesome. I can not express my anger on this. -
Context:
I recently joined a team and we are working on a fairly large mobile app using RN, they started a month ago. And I noticed, they don't have any fucking tests and static typings like Typescript.
I have this pretentious team leader that acts like he's the BeSt dEveLopEr in ThE woRld, and act like he always know what he's doing. But in reality, he code like crap, the formatting is shit because the ESLint config is not working, he's not even aware of it until I've fixed it. He's using every BAD Practice available, unused variables and imports are scattered everywhere, etc. And the directory structure is crap and no consistency.
How can I convince this ignorant mofo to use tests and typescript? He believes that adding those will take us longer and cost more money to the client, based on my experience, this is not the case, it's only slow on the first 2 weeks and it is worth it in the long run.13 -
So, I work as a sysadmin junior (6 months and going), and in the past few months, I learned what my boss warned me about - Devs don't understand us admins, and we don't understand the devs.
We have this huge client who is about to migrate to our company (We do mostly server managment/Housing/Renting), and I am so gald I don't have to work on the migration myself!
Just hearing what the company devs say makes me facepalm: No, it won't work. It cannot work on just 3 machines (They use like... 20 in total), no, we won't get rid of our docker swarm, that's essential (Doing the absolute minimum in their infrastructure, just a fancy buzzword to lure people on. Though they've spent like 2 years developing the app that uses it, so they my not want to give it up).
I kid you not, once, they replied to an email that contained the phrase "To be afraid of/worried about" something during the migration, that something could break, not work, be unstable. 7 times.
Might not sound as bad, but it was a rather short mail, and when they're so afraid of everything, its kinda hard to cooperate with them.
My colleague literally spent this entire week mapping out /their/ infrastructure, because they were unable to provide us with the description themselves.
And as a cherry on top, they sent us a "graph" of relationships of all the parts of their infrastructure that was this jumbled mess of rectangles and arrows. Oh, and half of all the machines were not even in the graph at all! Stating that "We also have all this, but I really don't know how to ilustracte the interactions anymore"
Why do companies like that exist? If you build an infrastructure yourself, shouldn't at least someone know exactly how it works?1 -
I am working on a freelance project for a software dev startup. The api service endpoints given to me is so full errors that you can boldly say it's zero percent tested and you'll be correct. The project was meant to last for a week but now it's going to a month due to the errors I have encountered while working with the given API service, so more like a back and forth wait for an update kind of thing. I am close to done building the client but yes they cannot test my last update because someone updated the login endpoint which now returns 500 internal server error. I really want to vent out my frustration to this company without loosing them to the project but honestly i don't know how to do it.
Edit: Just for a side note, about the relationship this client is my former company.3 -
I'm writing a couple of tutorials on web development, nothing really professional, just my perspective on explaining things from scratch.
It's funny how quickly things get hard to explain.
You try to explain web frameworks and you have to differentiate between client side and server side frameworks.
But some people don't know what client or server means.
So you try to explain what the client-server model is.
But then the word model is not clear to some people, it's like a jargon word in software, so you have to give some kind of explanation for the word.
And so on.
This complexity and layering of terms is normal on every science, but I feel terms deserve proper explanation and disambiguation, which isn't usually done.
So far I don't feel a lot of things are as complex as they are considered in an atomical sense, they are complex in the sense of requiring understanding of layers that are very simple in themselves.
It is quite a challenge to be the least obscure, to give explanations with the least number of possible interpretations.6 -
I fucked up this time...
I got in a hackaton that I don't have the time for because I have 4 delayed projects...
Too late to get out as I'll fuck up my team, and I'm pretty late with the projects already.
I got in a month ago when I was relatively free, but now with each day new responsibilities arise and I feel like I'll never handle them.
About the projects, one is delayed because of broken communication with the client, one is huge and one is the silliest one I've seen in a while.
There are times when I just want to stop existing xD1 -
So I'm basically fucked.
There's a major bug on an SPA I developed for a client, but I can't reproduce it because I don't have a recent iPhone or iPad (the only ones I have a way too old and either way I can't debug them without a mac) and I can't reproduce the bug on my android.
To overcome this in the past I installed a hackintosh on my pc and used it's iphone emulator, but I fucked it up and had to reinstall all my OSs but was too lazy to reinstall macos. Now I don't remember how to install it anymore, idk where I downloaded the fucking mojave virtual box image and the macos bootable usb stick I have just doesn't work anymore (probably some missing kext or whatever).
I really do not know what I'm gonna do. There's this ios-webkit-debug-proxy thing that might help me, but it just looks like it's a hassle to install and since I don't know what I'm doing the chances of it working are pretty slim. I might try that but I'm fairly confident it won't work. And even if it does, I still can't install chrome on the iphone I own because it's too old and my dad probably won't let me upgrade it to a new version.13 -
I really don't like this trend of building command line applications for controlling some <buzzword> cloud app or <buzzword> framework.
Why should I need or want to learn the exact wording of your gcloud command, or the path to your Ng cli, or some ass-backwards AWS search syntax when I can get the same functionality from your web app, where I can use my FUCKING EYES to work out where the "Create Instance" button is and how to click it!!!??
Stop pushing your shitty python monolith of a client where possibilities for the above task range from:
- google-cloud instances --add "subfjfechye thiq"
To
- gcloud /create /type=INSTANCE "rogdhyuffhue"
"BuT iT mAkEs iT MoRe aUtomaTaBLe"
I DON'T CARE. What is the point when I can use a proper programming language instead of bash, with actual code-completion and syntax rather than the horrendous excuse for a suggestion system that is the Tab key where it probably doesn't even work in the first place and I have to copy and paste some mysterious dbus command buried in an old documentation page on the Wayback Machine using a utility I don't have installed and a broken URL?
Go away.8 -
This is more of an advice seeking rant. I've recently been promoted to Team Leader of my team but mostly because of circumstances. The previous team leader left for a start-up and I've been somehow the acting Scrum Master of the team for the past months (although our company sucks at Scrum generally speaking) and also having the most time in the company. However I'm still the youngest I'm my team so managing the actual team feels a bit weird and also I do not consider myself experienced enough to be a Technical lead but we don't have a different position for that.
Below actions happen in the course of 2-3 months.
With all the things above considered I find myself in a dire situation, a couple of months ago there were several Blocker bugs opened from the Clients side / production env related to one feature, however after spending about a month or so on trying to investigate the issues we've come to the conclusion that it needs to be refactorised as it's way too bad and it can't be solved (as a side note this issue has also been raised by a former dev who left the company). Although it was not part of the initial upcoming version release it was "forcefully" introduced in the plan and we took out of the scope other things but was still flagged as a potential risk. But wait..there's more, this feature was part of a Java microservice (the whole microservice basically) and our team is mostly made of JS, just one guy who actually works as a Java dev (I've only done one Java course during uni but never felt attracted to it). I've not been involved in the initial planning of this EPIC, my former TL was an the Java guy. Now during this the company decides that me and my TL were needed for a side project, so both of us got "pulled out" of the team and move there but we've also had to "manage" the team at the same time. In the end it's decided that since my TL will leave and I will take leadership of the team, I get "released" from the side project to manage the team. I'm left with about 3 weeks to slam dunk the feature.. but, I'm not a great leader for my team nor do I have the knowledge to help me teammate into fixing this Java MS, I do go about the normal schedule about asking him in the daily what is he working on and if he needs any help, but I don't really get into much details as I'm neither too much in sync with the feature nor with the technical part of Java. And here we are now in the last week, I've had several calls with PSO from the clients trying to push me into giving them a deadline on when will it be fixed that it's very important for the client to get this working in the next release and so on, however I do not hold an answer to that. I've been trying to explain to them that this was flagged as a risk and I can't guarantee them anything but that didn't seem to make them any happier. On the other side I feel like this team member has been slacking it a lot, his work this week would barely sum up a couple of hours from my point of view as I've asked him to push the branch he's been working on and checked his code changes. I'm a bit anxious to confront him however as I feel I haven't been on top of his situation either, not saying I was uninvolved but I definetly could have been a better manager for him and go into more details about his daily work and so on.
All in all there has been mistakes on all levels(maybe not on PSO as they can't really be held accountable for R&D inability to deliver stuff, but they should be a little more understandable at the very least) and it got us into a shitty situation which stresses me out and makes me feel like I've started my new position with a wrong step.
I'm just wondering if anyone has been in similar situations and has any tips or words of wisdom to share. Or how do you guys feel about the whole situation, am I just over stressing it? Did I get a good analysis, was there anything I could have done better? I'm open for any kind of feedback.2 -
So I was looking into phone app development again (as you do) and I'm working on a simple QoL app for me and my SO that will help us automate some home management and finances stuff. Naturally I delved down the rabbit hole deep and wanted to have push notifications so we don't have to check the app periodically to know when certain things happen... Oh boy... Why is mobile development so convoluted, especially if you don't want to rely on Google Services...
It seems that the most accepted way of doing this is Firebase (FCM). Well me being me, I refuse to use google services for this and I prefer self hosted solutions (for data privacy reasons) which eliminates most products out there.
It also didn't help that my framework of choice is Flutter/Dart, because fuck Android Studio and the insane buggy XML stuff and fuck Android and it's constantly changing APIs...
Well In the end I decided on a rather simple solution and self hosted an AMQP service (RabbitMQ in my case, as I have some experience with it already) and implemented a foreground service in android platform specific code on top of my flutter project to kickstart it and made my phone a queue listener... This now means I can push notifications from my server to the Messaging Queue and it will be pushed into my App automatically!
One thing I found out on this journey was that Android now kills most background services and enforces foreground services to have a visible notification in the status drawer... which I actually approve of. It's a bit annoying that you can start a reliable background service, but I'm absolutely on-board with long running processes started by my apps are constantly visible...
Long story short, I love reinventing all the wheels, especially if it's for free and private... And I also went to sleep at 2AM again because this took longer that I'd like to tune... but it works, and it's google free...
I'm thinking of trying to package this up as a flutter module later, but first I want to do testing on battery life and the general life cycle of the service. RabbitMQ says they have the client library optimized for long-lasting connections and it should be just using a tcp socket, which should pretty much be what all the push notification services are doing anyway. I'm also not completely satisfied with how the permanent notification looks.. it isn't collapsible like some of the other ones from other apps and it's about 2 lines high instead of single line... which is something quite annoying and I'm struggling to find any relevant docs on how this is done other than possible making a custom Notification Style... but I just can't believe that everyone is doing that.. there must be a built-in somewhere -_-... Ugh Android is hell...
Anyway, if any android devs here have some hints, tips and tricks on how to handle this type of background/foreground process stuff and I'm doing something wrong let me know, cause googling this shit is a nightmare too!6 -
client: "can you build out a staging server for us? here's all the code, everything you need"
me: "awesome, looking good, i have almost everything i need, just give me the credentials for the server, and I'll get started installing all the infrastructure"
client: "ok, try these!"
me: "doesn't work"
client: "this one?"
me: "doesn't work..."
client: "how about this one?"
me: "STILL NOT WORKING!!!"
imagine you want someone to do stuff on your server and you don't even know the root SSH password.... smh
why is this always a problem, use fucking 1password or something its 40 bucks a year, secure, and you can organize alllll your passwords. don't be a fucking boomer and write them on a piece of paper, or worse, apparently like my client, never know it or have it in the first place.5 -
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 -
Woke up early. Drank coffee and my mindset is so ready to do some work. After 30 minutes I'm so sleepy like a literal crash down and will sleep now. Body why you do this? I hate night shifts. It destroys my body clock. I hope weekends and mall hours are night shifts as well.
Also I hate company internal system project when I am assigned to a client and the client don't know that. I can't tell it to the client and my company can't tell also because my hours are 100% committed to the client. -
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... -
I hate it when my bosses approve of a design and then after some time ask me to make some annoying changes. I love programming, but I don't like being bothered by boring tasks.. and the worst part is that my bosses expect me to take care of building the backend, front-end, complete the design of the screens available, make up designs for the screens that are not, test the Web app, solve the bugs created the people who also worked on the project, solve the bugs created by me, and if something is not clear, to ask the client directly, like dude.. I'm just an intern here... and the most annoying of all this is when they take a screenshot of something they don't like and simply write: "change this".... CHANGE IT TO WHAT? if I knew what you would like I would have already done it!!!
-
Okay, yes, modsecurity WAF is amazing and all, but... When one tries to implement its rules atop an existing app that wasn't developed in accordance to the rules... That hurts.
How tf am I supposed to parse and present a 6.5GB / 22M line audit log to the client?! Just parsing that monstrosity once takes *minutes*, let alone doing any sort of sorting / analysis!
I feel sick. This is exactly why I am a sysadmin and not a programmer, I don't like writing analysis stuff, or programs more complex than a few hundred lines of bash... :|5 -
I'm so down that i didn't see the red circle with the cross to add a rant...
Why is that? Because several month ago i began a job with all my motivation & optimistic mood.
I was so glad that a compagny payed attention to my profil that it was the best day of my life. I wanted to improve myself and learn!
At this point i did'nt know yet that i will began to work with assholes.
In this fantastic world, designers are kings and you have to do magic to adapt one of their stupid static design on web.
Because the suprem king is the client and designs are validated.
And don't even ask for an fonctionel analysis they will laught at you!
I did everything that i could do to make things work, fast and good. One time i managed the end of a project all by my self (like said once Celine Dion). I maked the work of my colegue who was on holiday because she left with unfinished work. She said to me "it's easy". She liked to say that i maked lost her time because of my questions and that i need to search the answer by myself & work more and more and more. So i worked, day & night because i didn't have enough time. And other thing is that some persons loved to say "if you don't do that someone will need to do that for you"!
I'm a junior developer and i had acces to staging and prod environements and crashed it both several time... I needed to develope in one year the experience of a senior developer.
Every thing is my fault because i need to pay attention to things that i ignore.
Today i'm not glad, i learned a few things but can't remembered it because things went o fast for me and i can't memorized everithing. All i know is that i'm just happy to still be able to get out from bed.3 -
Client: I would like to subcontract for this area you don't have much experience in.
Me: Alright, sounds good.
Client: Ok, so you can get that job ad up on the sites you use (Upwork / ODesk) over the weekend and we can meet again the same time next week. Sound good?
Me:2 -
Ugh. So for one of my classes (Projects In Computer Science) we have to break up into groups; Around 4-6 people per group and build some software for different local companies in the city that I live in.
Well.... the company that my group chose is so damn frustrating. Essentially we are making a glorified Applicant Form system for their website (there's more to it than just that). So you would think that the company knew what sort of fields would be needed for these forms.... Well no, we are over a month into this project and still have barely began coding shit because they are so fucking slow to respond to our emails, don't pick up our calls, or put off doing absolutely anything related to our project! Our professor asked that we would have a written copy of the project requirements made and signed off by the client within the first 2 weeks of classes starting. Took them over a month to get around to that, and still even after signing off on the requirements said that they were missing key forms that we needed to account for... Its your damn fault for not telling us that. We completely wasted our time planning out the database and structuring the front-end/back-end to work for the forms they had given us, and now there's yet another one with inconsistent fields, meaning we need to rethink out most of our system to account for this data. We only have 3 months total, 1 which is already gone and practically wasted, and even still we don't have any sort of confirmation on what form fields we have to account for.
Fucking hell just spend a little bit of time for both our sake, and your own to get us the finalized forms fields and requirements for this project. Honestly at the rate things are going we probably wont be able to finish, which sucks ass since this project is perfect resume material.
Seriously this company desperately needs us to make them this program since their current system is absolute shit. They are literally getting a system that would cost upwards of $20,000 for free, yet they don't seem to care much that we probably wont be able to finish due to their faults. If we didn't have a time cap on this project I wouldn't really care, but the fact that we only have 3 months, plus school work in other classes, exams and a personal life, its making this project a lot more stressful than it needs to be.
Its not like we have a project manager either, so all the emailing and communication is being done by myself. Honest to god, all they have/had to do was sit down for 1 hour of time to decide what they all needed and we would probably have been able to finish this project.5 -
Follow-up rant to my company. Today's day is fairly good, so let's talk about infra.
We're building upon an existing open-source project which is not intended to be extended (e.g. plugins).
Our backend-team somehow hacked symfony into the app, which made the actual work a little bit less annoying. But on the other side, there is absolutely no automation. Everything is setup by hand and I need to upload my sources to my dev-server and watch what files exactly are overwritten. Because if not, I accidentally overwrite core sources which will break the whole app, no matter what. If I forget what file I wrongly overwrote, I have no choice but to setup the core from scratch and apply our sources on-top, AGAIN.
The first time setup took me almost five days.
Oh yeah and the team shares one dev server, so whenever I feel like fucking with a mate, I can easily fuck up his system, since everyone has root-rights.
We're required to use windows, but our dev is linux and I am the only knowledgable linux guy. They need cheatsheets (to be fair, I need my powershell-cheatsheet).
We market the same app with some additional functionality, but we also have clients which require their own stuff. This case has never been thought-out, since for these specific clients, we also modify some core-parts. Which makes it a real hassle to add a basic new feature to that special customer.
At least our frontend is somewhat decent. Simple and without critical thinking, but it works and is decently understandable. I'll rant about that for another day, it's still tedious.
I know I won't stay there for long since I start my own stuff, but it's sad. Nothing is perfect and they _do_ want to make it better, but it's the usual "there is no time, client first" talk. On the other hand, they tell that we should be more efficient, but there is no way to be without looking back at the fundamental structure and what takes us so long.
I don't think I am able to change anything here and as I heard from co-workers, they already look for something new.
cheers -
Stupid monkey-shit-eating faggot! Choke on a flabby, pulsating camel genital while the balls beating your ugly face. We supposed to be business partners, still all your promises mean a fucking cheesburger from a syphilitic pub you arrogant shame of humankind!!!! Did I say we don't have time for this or that project in time. FUCKING YES!!! Did you care. NO! Did I say write a proper contract with the client?????!!!! DID I?? Still I've done my best with everything beeing hell of a priority! Did I missed some bugs yeah I fuckin did. And after all the shit I have pulled you out you dare to fucking cry for the investors because the company not producing enough profit BECAUSE OF FUCKING ME?????? You peace of bloody phlegm!!! Where are we??!!! Clappy clap. In fucking kindergarden?!!! Okay I am done with this shit I dont care promising commision... I am out. Jobs in Hungary at a reliable company with decent humans?! I fucking hate this world full of people like this cockroach!!!!4
-
It seems to be the new trend : building "boxes" based on raspberry pi, including sensors to mesure any sort of thing, and sending data to a REST API.
Was contacted for a project like this, to make the backend for the project.
I ask to the client the credentials of the dev who will makes the embedded dev, to know the format of data I will receive and send to the "box", the client respond that "I don't need to know that", and, besides, they don't have any dev for this post for now, but I can begin the dev for the backend without that, not knowing data structure, and will receive all of that for half December, for a deadline in early January.
Tell the client that his project will never be done in the deadline, got ejected from the project, client is pretty sure he will find à dev who will do all the work in 2 weeks.
Fuckin' startup culture.1 -
Me and a couple of friends have this group on WhatsApp where we can share stuff that we do and maybe come up with new stuff to work on as well.
For giggles (honestly irritating to me) I'm gonna summarize some conversations on the group.
26/11
Me: Finally completed my first FPGA program, these devices are amazjng!
NO REPLY
28/11
Me: gonna make the Jacobs ladder thing today! Hope I don't get zapped
Anyone interested ?
NO REPLY
29/11
Me: hey here's a nice electronic circuit, try to analyze how this circuit oscillates (we're all ec 'engineers' well... soon at least)
NO REPLY
2/12
Friend: Guys creed 2 was amazing I don't mind watching it twice
F2 : Really? Why don't we go soon?
F3 : I'm in!!! What's the plan
F4 : how about tomorrow ?
....
3/12
F1 : Guys anyone have notes for X exam
F2 : here. {Link}
F3 : here. {Link}
F4 : how many of you are done ?
F5 : what are the important questions
(just a stupid aptitude test)
{Me} changes group title from X to Notes group
Let's give this another shot
6/12
Me: There's a conference on X technology by Y industry leader ..
Should we check it out ?
There's even a workshop on X
NO REPLY
Alright time to acknowledge my stupidity and my lack of brains for even belonging to this kind of social circle/COUNTRY
7/12
ME: New fortnite season is out
F1: woah it's crazy let's play
F2: already on it, client is updating
F3: are you shitting me? gonna get BROS laptop (i'm going to suck my brothers cock and take his computer)
F4: Hang on bro wait for me also call me on discord.
I hope you guys could stick through that. Well there's no crazy moral to this but if you're one of these guys just appreciate your friend for his efforts once in a while even at the cost of acknowledging your stupidity.
Also, words like BRO are instant triggers and I'll make sure I find you can kill you if you use it more than once every couple of sentences ( I have relatively high tolerance )1 -
Incoming rant.
I have 4 years professional experience at a small shop working on a web application for property and liability insurance. The application is ASP.NET with C# as the code-behind. I have a BCS and will finish my MSIS fall 2017. I have no idea why I have the degrees. I know that when I enrolled, it seemed like they would be a nice addition to an otherwise empty resume. I was lucky enough to land my first and only development job during my sophomore year of my undergraduate program. Is this enough experience to land a new job?
I feel like I'm learning nothing at my current job. The specs that come in seem very vague to me. When asked for clarification, there is often push back, and I don't know whether that's because I don't have enough experience to parse what the client means in the two sentence spec I got or if it's because the client does not actually know what they want.
I hate my current job. My productivity is low because I spend more time trying to figure out what the client wants and analyzing an 8 year old system that has 0 documentation. I know some of you will just say, "Suck it up" at this point, but I really want another job. The only thing I like about this job is that it's 100% remote. It also pays $60k a year, so a replacement should be at least that salary.
Most postings I see require professional experience of 5 years or more, and knowledge of other frameworks. I can work on getting knowledge of the other frameworks, but will have no professional experience with them. I don't live in an area with a lot of software development jobs, and the ones I see are for non-IT organizations that want 1 person to run a distributed system from 10 or more locations. A hospital system out here wants to pay $30k a year for a guy to be both software developer for new tools as well as the helpdesk and IT support guy that's on-call for four locations in the county. I made more than that before I got into the development industry, for less work, and would rather leave than settle for something like that.
I've thought about moving to somewhere near San Francisco or San Jose, but I have my daughter to think about. I have joint custody of her, and would have to give that up in order to move out of the county.
I like programming and using it to solve problems. I like designing architectures and how all the components will interface. I like designing and normalizing databases. I like taking part in coding competitions for employers that are well-known (Amazon, Facebook, Uber, Twitch, etc.), even though I often just place middle of the pack. When that happens, I feel like I'm an imposter in this industry.
I think I have the most fun just working on small projects for personal use. My latest is an assistant calculator for the game Transport Fever to figure out cargo throughputs per annum based on the in-game timing information. Past projects have also been small. Ones I could use in a portfolio are a sudoku solver desktop application, PC/Web game in Unity that is a 3D FPS remake of Duck Hunt that allows open world exploration but locks the camera's viewpoint for shooting events, and a building assistant for Rome II: Total War that maps out all the bonuses/perks of user-specified building combinations in provinces so users can record their long term building plans without using all their turns to see the final results.
I seem to be an unproductive, average developer who dabbles in projects here and there.
This is what I want from other Ranters. Just say something. I don't care if it is, "Suck it up and get better." It could be your tips for finding and securing a new position. It could even be empathy, if such a thing exists on the Internet. Whatever you want, just say something that will help get me thinking of what the next steps in my career should be.1 -
The magic Apple Support:
A few days ago, I suddenly couldn't login to iCloud on my mac. I thought it was something that would be gone if I would try turning it back off and on again. Didn't work. Used the mac without bothering about it. I was too lazy to call the Apple Support and it didn't annoy me that much.
A day later, suddenly Spark (my email client) didnt work either, it asked me all the time to re-login into one of the accounts but "an authentication error occured". At that point I thought it was a problem with the keychain. Because i don't use email that often and the last time I should pay 30€ if I wanted to call Support (out of warranty), I just started using email on my phone.
Yesterday, MS Office (yes I use it and I like this Microsoft Product and I'm an Apple fanboy) wouldn't login either. I didn't call them.
Today, I had finally time to call them. They didn't want to charge me since I selected an Apple-Id Problem (and I think the Support Hotlines are free to call idk). The call from Ireland came 2 times and the connection didn't work (thanks iPhone). The third time, the moment the Support guy said Hello iCloud worked. A few second later Office and Spark worked again too. I don't know how these coincidences happen. Anyway, I am just happy my stuff works again and I don't have to use Google Docs and write my mails on my phone. -
I started to like Typescript. It was like c# on the client. Then the amount of lines and functions grew, so it was time for modules. That's pretty much when it went like this for me:
https://hackernoon.com/how-it-feels...
I know it's a year later, but I don't think things have gotten much better since. That was pretty much exactly my experience this year.1 -
I thought I posted about this awhile back but I didn't. I'm glad since the story is so much better now.
6 weeks ago: Told I'm going to be on a super fun JAMStack build with lots of sexy animations. Sweet, this will be a fun build!
5 weeks ago: Find out what the timeline on this incredibly ambitious project is. I start raising flags cause everything needs to go PERFECT for this to not blow up and/or turn in to a dumpster fire.
4 weeks ago: Project "kicks off" with a meeting with the client. We find out that they've decided to do another round of revisions on their design comps, but we have what we need for sprint 1. We provide a list of all the assets/information we still need for sprint 1 success.
3 weeks ago: Still waiting on some assets for sprint one, but we're fumbling our way through. Still waiting on the PM to get around to doing their PM job and building out our backlog / gathering requirements for us.
2 weeks ago: Sprint 1's end date comes and goes. Still need assets from the client, I've personally asked them for the same asset 3 different times. Sprint 1 gets extended 1 week.
1 week ago: We deliver sprint 1 page templates, minus the resources we're still waiting for. Get chewed out by the client regarding the pages not looking like their comps (Yeah, no shit sherlock, you never sent us the assets)
This week: Working on Sprint 2 commitments. We have 2x as many page templates to deliver, per developer, as we had the first sprint. Still waiting on Sprint 1 assets. Don't have Sprint 2 assets. Wait, what about the global styles? They still haven't sent those to us yet either.
Requirements? Guess I'll spend valuable dev time tracking those down for myself.
Client? Well, they're pissed off we haven't hit our commitments yet.
Oh well, at least we have a pimple faced, fresh out of college, CS major, with no real development experience rolling on to this cesspool of a project.
Other devs? Well, we're out of fucks to give. Lets just watch this thing burn.
Oh, I forgot to add, we have 17 page templates to deliever between today (2/27) and 3/18. #NoFuckingWay -
TL;DR: I'm losing touch with reality and relatability and I am seeing it happen to me.
Context: As a dev, as we all do, I started with a low salary and was poor for the first 4 years of my career. I used to take pride in my poverty and because of it I faced difficulties in life.
Somehow because of that (and drugs), it gave me a fun personality and I was able to crack jokes about it and laugh it off. I was fun at parties.
But now, with moderate struggle, things are much better for me. I'm a YouTuber, I have clients and a full time job and I end up making the salary from just one client what I used to make in 2018 from a full-time office job.
Now, when anyone jokes about being poor and struggling, although I can still laugh with them, I pity them. I feel they are not working hard enough (even though I'm aware that I don't know their story, so it's a bad judgement and unfair).
I can no longer relate to my past self.
For me, I get sad about myself that I still don't have enough, while knowing I have more than what I could ask for.
I know this is not a good thing to happen to me, but it feels like I'm helpless. Sigh, I'm becoming a boomer aren't I?2 -
sorry about this, Feedback does not allow images. little bug I really don't know how but happens sometimes... sound like dumb client, see screenshot . Padding for filter without filter. iphone 5c4
-
My first project was a veterinary web app ( CRUD ) in a really small company, supposedly to replace the clients junk software, the client was a friend of the money guy of the company, after 18 months doing whatever the client asked, and monthly demos, that fucker said I don't like it, I wanted something equal to what I have been using just with internet connection.
At the same time there was other project to create the workflow of commercial orders with other friend of the money guy ( lol...) But in this case the guy was the salesman, Almost same history. When the technology director and the investor asked the sales guy he said " the client said he is not going to pay a shit, there are a lot of free apps for something like this", of course both of them got fucking mad and blamed us, they invested more than 3 millions ( Mexican pesos ) and got nothing in return. -
I'm a senior dev and on my new project, I am really working my a** off and enabling the other developers to concentrate on the work, while I'm handling all of the processes in the background for the client.
I couldn't really write code for a month now, but I'm okay with it because I can protect the team from dealing with all of these bs.
We have feedback discussions right now and I received something like: You are doing your job very well, but you are nagging too much about the client and the processes. Tbh I'm only complaining about this stuff behind the scenes and never in front of the client and compared to the past I reduced it by a lot.
Situations like that are so frustrating for me. I really had a good feeling that I'm on the right track and still people complain about characteristic aspects that are not happening on purpose.
I don't really invest much time into thinking if the voice/tone could have been improved.
Just needed to get this stuff out. Also, I am thinking about starting a rant book, so that I don't share any bad thoughts anymore with my colleagues /superiors3 -
When you go out to have a client meeting, then the client doesn't show up (and you only learn they won't show up after you have texted them twice).
Looks like I need to start sending out meeting reminder emails again.... -
MQTT - all I used to know about this is its name, untill few months back a client sent us some requirements which included MQTT. I opened its specification and I was fucking shocked! I am implementing almost similar protocol in most of my applications (which needs subscription based service) for last 3 years. I have developed IoT apps, remote monitoring systems, HMI systems using the same fucking protocol! Even I had implemented the same thing on HTTP using long polling a few years back!!
Now I feel like open sourcing my protocol. But I don't know where to start. Any help please?1 -
I'm so damn tired of being asked to set up "QC's" to check for data our client is supposed to be sending and alert them when it's considered "past due". Our customers pay us to manage and analyze the data they send us. If they don't send us data, that's their problem. Why all of a sudden is it my job to micromanage these people and remind them how/when to do their job?? I'm having enough trouble juggling all of the shit on our side of customer requests, but now I have to worry about making sure they handle the shit they are responsible for on their side?
Otherwise, if we don't remind them, then they yell at us like we dropped the ball. "Why didn't you tell us we didn't send you that data that we told you we were going to send!?"
But seriously. I get it. It's good customer service. And I'd rather someone alert me if I had a process break that was supposed to be sending data on a regular basis and I didn't realize it wasn't working how I intended. I get it. I'm just venting. I'm honestly more worked up about my ever growing backlog that I am never going to get caught up with at this rate. -
So I'm building this environmental monitoring system for one of the Labs to monitor Temperature and Humidity. the "software" that comes as part of the package with these sensors is really just a website you host yourself if you don't choose the cloud option. No big deal really, (see my previous rant about getting windows server through SSC) I setup IIS and get the "software" registered get a couple sensors running looks good. However I don't like the error messages that popup because it's unsecured. do some reading and I find out that most browsers will give you a warning if your not using HTTPS even if it's for internal use only. OK we'll how hard can it be in implement encryption, turns out it's not that hard and you can do it for free how with letsencrypt and other places. I like free, now i have to use SSH to get into the server and run an ACME client. Hey open SSH is part of windows now cool, download an ACME client SSH into the server and nope doesn't work. Oh right I'm behind a corporate firewall and a bunch of other shit I can't control. Why is so damn arduous to setup this god dam internal website and the problems aren't even the site. Now I'm playing with AWS spinning up an instance to be able to try and get an SSL certificate just so i don't have to tell people it's OK to trust this site ignore the big angry warning.
Best part is other similar internal sites don;t use SSL and all have big messages about someone stealing your soul if you go there and these are commercial systems that run all the HVAC for all the campuses across Canada.
I need more Tylenol. -
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? -
I can't post a collab from the web client and I don't have a decent phone atm, anyways, this is an idea, tell me if you have any improvements or if you know of an implementation or would be interested in creating one.
A social network comment system that connects people across fields of interest and aids keeping relevant posts alive for a long time.
The basic principle is this: Every post may identify itself as a child to any number of other posts, or sections in other posts, which then act much like a bidirectional hyperlink between parent and child.
This leads to two unusual results:
1. that comments aren’t only added to posts, but specific paragraphs, sentences or even words.
2. that any comment may receive comments in much the same way the original post did, making comments identical to posts. (they could have their own pages and all).
This is in many ways like Reddit's infinite comment chains. The main difference is that here comments aren’t organized in trees but graphs, which makes it possible to connect related conversations from entirely different groups and times, resulting in a much more open yet concise discourse style with an increased persistence of topics. -
FFS specification of this feature changed for fourth time in a matter of like two weeks. Flipping client, I bet he's gonna be asking again why is the project taking so long...
I am so glad I don't have to interact with him, I might say some unfortunate things to his face. -
I am facing some problem on my new project. This is how I expect my project to work.
1. I am working on an Android application that uses Twitter sentiment analysis and gives out predictive result.
2. I want to keep the backend that is the python file/NLTK script on server/cloud/anywhere.
3. The Android App take the input and pass it to server.
4. In backend the tweets regarding the input are processed and after that a result is generated. The result is passed to Android App(client).
5. The app displays the result.
The problem is I don't know how to create the server(All I have is .py file). Secondly I don't know how to create request/response between the app and the server( client with .py) like how to create communication between them.
I have googled the query but am unable to come up with any reasonable solution. Any suggestions are welcome.1 -
I was tasked with reviving this mobile app purchased off the shelf. Initially, I was impressed with what I was seeing while perusing the codebase. I'm used to editing laravel projects written by handpicked amateurs. So this felt like a breath of fresh air. Coupled with the fact that I'd recently enquired on this very platform whether anyone has chanced upon an impressive code. All is going well, until
I start finding the multi layers of abstraction and indirection cryptic and obfuscatory; and that is coming from an idealist like me who advocates for "clean" patterns such as event emission. I wonder whether it would have helped if the emission or events were typed for easy listener tracking, instead of a black hole like vm.notifyListeners() (DOESN'T EVEN HAVE AN EVENT NAME!)
With time, I become disgusted by the tons of custom elements with so many parents
My take on production level user of the view model pattern: amazing in theory
One of the architectural decisions made on this project that had me foaming in the mouth, pulling my hair and cursing out the author's generations, past, present and future: can you believe these guys are APPENDING IMAGE DOMAINS TO THE RESOURCE? Ie the domain names are tightly coupled to the images and dictated by the api, instead of the client
If this isn't bad enough, the field names of returned entities/models don't exist on the database, of course because the stupid laravel framework abets this sort of madness by combining eloquent "scopes, attributes, and appends". A trifecta of horrors.
I eventual scaled through the horrors, but not without losing my admiration for the team behind it. App has returned to the shelves, because my company lost patience with my resuscitating it. They have the regular api authentication in place, but that's not good enough. They just had to integrate firebase as well, just because. Meanwhile, this isn't documented anywhere. I stumbled into it during my scuffle with app setup, gradle ish. Eventually got banned by firebase for "sending unusual requests". My company's last straw -
Had a hell of a week trying to convince a client that "Case Sensitivity" is a real thing in programming languages.
So there was some typo in some third party code which client had provided which was not giving the accurate results, but the client was not ready to listen. I asked him to get the variable rectified from the 3rd party from
var1 to Var1
But he somehow had a notion in the back of his mind that the 3rd party could never ever be wrong and it was surely I who had screwed up the code and he won't even bother the other team.
He was all like "I don't understand anything remotely connected with coding, but do explain me why is this not working ?" (His exact words)
Me (thinking): umm, WTF !!!
After to and fro for the whole damn week, finally able to convince him ( I guess, still doubtful) after giving the video and link of a jsfiddle showing him all the freaking magic of caseSensitivity! -
TLDR; Send help, need VR video player that works on all the platforms (not IE, that can burn in hell)
Okay, don't get me wrong; I love iOS and most of it's features like being able to connect to the same WIFI-networks without having to fill a password twice.
But holy shit; Fuck Safari.
They made it so hard to access the stupid motion thing which you can use for VR.
Why do I know this? Well of course I have been building an app for a client which needs to display 360 degree video, which would be best viewed by turning your phone instead of swiping across your screen.3 -
How do you handle a customer asking too much revisions
I have a client asked for a web app, i made it and everytime he asks for a change, edit, add new functionality, then he thinks back, no remove that and re-add that, change color, no i don't like it, change to this, hmm move this here back and forth i just wish i didn't deal with him in the first place...
so frustrating3 -
i am feeling angry and frustrated. not sure if it's a person ,or codebase or this bloody job. i have been into the company for 8 months and i feel like someone taking a lot of load while not getting enough team support to do it or any appreciation if i do it right.
i am not a senior by designation, but i do think my manager and my seniors have got their work easy when they see my work . like for eg, if on first release, they told me that i have to update unit tests and documentation, then on every subsequent release i did them by default and mentioning that with a small tick .
but they sure as hell don't make my work easy for me. their codebase is shitty and they don't give me KT, rather expect me to read everything on my own, understand on my own and then do everything on my own, then raise a pr , then merge that pr (once reviewed) , then create a release, then update the docs and finally publish the release and send the notification to the team
well fine, as a beginner dev, i think that's a good exercise, but if not in the coding step, their intervention would be needed in other steps like reviewing merging and releasing. but for those steps they again cause unnecessary delay. my senior is so shitty guy, he will just reply to any of my message after 2-3 hours
and his pr review process is also frustrating. he will keep me on call while reviewing each and every file of my pr and then suggest changes. that's good i guess, but why tf do you need to suggest something every fucking time? if i am doing such a shitty coding that you want me to redo some approach that i thought was correct , why don't you intervene beforehand? when i was messaging you for advice and when you ignored me for 3 hours? another eg : check my comment on root's rant https://devrant.com/rants/5845126/ (am talking about my tl there but he's also similar)
the tasks they give are also very frustrating. i am an android dev by profession, my previous company was a b2c edtech app that used kotlin, java11, a proper hierarchy and other latest Android advancements.
this company's main Android product is a java sdk that other android apps uses. the java code is verbose , repetitive and with a messed up architecture. for one api, the client is able to attach a listener to some service that is 4 layers down the hierarchy , while got other api, the client provides a listener which is kept as a weak reference while internal listeners come back with the values and update this weak reference . neither my team lead nor my seniors have been able to answer about logic for seperation among various files/classes/internal classes and unnecessary division of code makes me puke.
so by now you might have an idea of my situation: ugly codebase, unavailable/ignorant codeowners (my sr and TL) and tight deadlines.
but i haven't told you about the tasks, coz they get even more shittier
- in addition to adding features/ maintaining this horrible codebase , i would sometimes get task to fix queries by client . note that we have tons of customer representatives that would easily get those stupid queries resolced if they did their job correctly
- we also have hybrid and 3rd party sdks like react, flutter etc in total 7 hybrid sdks which uses this Android library as a dependency and have a wrapper written on its public facing apis in an equally horrible code style. that i have to maintain. i did not got much time/kt to learn these techs, but once my sr. half heartedly explained the code and now every thing about those awful sdls is my responsibility. thank god they don't give me the ios and web SDK too
- the worst is the shitty user side docs. I don't know what shit is going there, but we got like 4 people in the docs team and they are supposed to maintain the documentation of sdk, client side. however they have rasied 20 tickets about 20 pages for me to add more stuff there. like what are you guys supposed to do? we create the changelog, release notes , comments in pr , comments in codebase , test cases, test scenarios, fucking working sample apps and their code bases... then why tf are we supposed to do the documentation on an html based website too?? can't you just have a basic knowledge of running the sample, reading the docs and understand what is going around? do i need to be a master of english too in addition to being a frustrated coder?
just.... fml -
I'm stuck in a really difficult spot in my office and I'm not sure if I should start looking elsewhere. Tldr; there's no defined hierarchy or career path in the web department leaving no position to be promoted to.
We've got 2 offices with now 150+ employees and for the last 2 years I've basically inherited the responsibilities of an IT manager. Planning and deploying our networks, firewall config, VPN setup, keeping users' systems functional, track equipment, order/setup systems for new employees. All of this in addition to my original job description of web developer, which has basically turned into maintaining client WordPress sites while the other developer builds sites.
I've spoken to our CTO (my supervisor) about how much time the IT stuff actually takes and some of my suggestions for the future to make sure we protect ourselves and future proof our systems the best we can and one of my suggestions was that we needed to create the IT manager position because he is usually in meetings or building out API integrations. He's behind the idea, or at least says so to me, but leadership doesn't believe it's needed because we "manage just fine as it is" (this does require 60 hours a week of work along with much automation that I wrote/built). But we're trying to open a 3rd office which means another 50+ employees and systems to manage as well as more websites as we sign more clients.
My pay has never been satisfactory where I am and based on the maximum raise each year it would take me another 10 years to make what I would like (that's calculating without cost of living increase) but they claim this is because I lack a formal degree (self taught). I love most of the people I work with, don't really have an issue with any of them (outside that they're stupid but that I can let that slide if they're trying), and they work with me and my health issues which cause me to miss significantly more office time than I would like. I've been here for 4 years and I've learned a lot but I don't feel like there's any upward mobility here. The only position I see in my department above me is the CTO (or possibly the new PM but that's not a position I want) and he's not going anywhere, and I firmly believe we need someone who can full-time stay on top of our infrastructure before we expand further.
I fantasize occasionally about leaving and finding something else, and there are plenty of opportunities online that I appear qualified for which pay more, but I worry that I'd be trading in something that really isn't all that bad for something that sucks and the only real perk is more money. I'd hate to go somewhere else and start back at the bottom again and have to prove myself yet again.5 -
I want to start learning to write a simple game server emulator in C#. The game works LAN but it gets LAN disconnected when internet drops so some sort of keepalive is implemented. I can copy the files to another device and it works online without a login etc so there is no online authentication but as soon as internet drops the LAN game goes down to so i need to emulate the online update server or something like that to prevent that from happening. (spotted with Wireshark etc)
I don't have much experience , just created a simple tcp client/server console app but in this case I ofcrs will only need a server one in combination with custom dns. Any tips on where to start? Does someone have an example game server emulator? or update server emulator?1 -
So a client is apparently ignoring my request for payment to continue the hosting services for their blog ( which has been inactive for a long time ).
Thinking of getting rid of the client. I wouldn't mind if they voluntarily left because they don't want to pay, but now it's like i have to force them out.
This is going to be a rope walk. I wouldn't want their few hundred followers coming after me.
Any tips?9 -
First contact with XEN.
Xen Orchestrator UI / Web, logged in first time...
Wow. The UI is a big giant mess...
I don't care for this fucking bling bling shit... Need to have an overview of all VMs.
Oh Lord... Wtf... Icon hell...
Hm, I need more detailed information... Ah. Found the button.
Pressed button.
Wtf... What's taking so long...
Bloody shit.... Why does it include real data diagrams of usage statistic per row????!!! (had pagination set to 100 rows, one row is one VM)...
Bloody christ, ain't no option to configure that monstrosity... Export function?... Nope... Great. This will be a giant fuckfest...
Rest API? Nope.... Non existent as it seems. Thought that would be common in the 21st century... Guess what, nope.
Further googling...
Oh interesting. An cli client in NPM?
Hm, pretty scarce documentation...
Poked it a bit... Got first results...
xo-cli --list-objects type=VM
...
Let's take a look...
Oh JSON. Gooooooo(d)....
Wow. The document structure looks like someone puked out alphabet soup...
Or maybe the dev had hemorrhagic fever and was suffering from delusion and blood loss.
After this... More than devastating experience...
I took a look at Proxmox REST API.
Sweet jesus. That's like... Stone Age to 23rd century. Oo
https://pve.proxmox.com/pve-docs/...
Seriously... It seems not so hard to define an API to get the data of all VMs... Without suffering a traumatic brain injury.1 -
'CTO': We need this application to be desktop, client-server and self-installable(like a multiplayer game. Counter-Strike for example. Only here we are talking about a business application)
Me: (20 min explanation of the complications and limitations of the architecture).
'CTO': Don't worry. We're gonna explain all that on the user manual.
****Later****
'CTO': I got an idea. What if we deploy the client separately. It will be a dumb client. It will contain just views. That way you don't have to code an API.
The guy was thinking that a dumb client is like a remote desktop window where all is happening on the other side.🤦2 -
So trunk-based is the new approach everyone is using, because it is so cool.
I used gitflow for the last projects with azure devops, set up the pipelines like tipically in 1 week if I had other things to do with the help of the portal clicking through things. PR-s triggered pipelines, everything worked cool.
But then trunk-based got momentum, so I worked with this client where 2 developers worked for !!!3 months!!! to setup trunk-based pipeline. It was not my money, so I did not say a thing. They were using infrastructure as code.
I am all in for automation, but seriously? Then again, another project where a DevOps team took 1 dev-month to setup the pipeline + meetings. And what do you get in the end? So that the same image goes on all environments? Like how many releases do you have for prod in a year. Lets say 24. 24 x 5 minutes of manual work for the release, that is 2 hours. So my question is why would you spend 2 hours of manual work while you can automate it merely in a month? Everyone loves to code, but using the ui on the DevOps portal saves you so much time. I don't get this. Maybe I am getting old :D4 -
[opinions welcome]
I'm just furious right now!!!
So I'm on this project where we have to make a whole *very old* website look like it's brand new.
Thing is, the whole point of the project is to make exactly the same pages as on the existing website smh. No UX or UI suggestions.
Just put the navbar in a component that looks like a tab bar, who cares anyway!?
Btw, I'm in charge of the UI.
My colleagues and I (mostly my colleagues) made a react components library and we use it for this project.
Fucking inputs get thrown into tables and all that, but hey, that's what the client asked for.
So here I am with my shiny new page, and I just hand it over to the front-end dev who just arrived.
She's supposed to feed in the data.
I don't give a fuck you use flow or redux or whatever fancy tooling.
Just call your back-end, get the data, format it and feed my damn table with it. That's it.
So today, after 5 weeks she's in, she calls a meeting where she's screening a presentation to the team complaining about how long it took her to understand what I did and change it completely.
Pieces of code on screen, saying it's crap and it shouldn't be like that.
I'm not responsible for inputs in fucking table, the client is!
Of course I have nested components with data passed through all the way: it's a series of fucking radio buttons within a table within a form!
During 5 weeks, yoy didn't even come to me once saying it's not what you expected or you're having trouble with my work!
And there we blaming my job like I'm the bad guy?!
Tonight, everyone's going home thinking I'm no good at what I do and completely lost, all because of her.
If you got this far, I'd like to hear from you on how I should act with her and how to tell her what she did is awfully wrong?4 -
So I got finalization of design about two weeks ago and I still don't know how how data flows through the company but client asked for a preview of the site... not as bad but shit like let me work on this for a second god woman.
-
Started my design/development agency in Jan. I work both direct to client and also on a whitelabel basis for other agencies and developers.
My 2nd biggest client is one of the said whitelabel clients. Unfortunately he has been unwell for a few weeks and is now taking another 3 weeks off. This week I have had to take over the running of his business (from a client and development standpoint) to ensure projects don't fall behind...they're already 2 weeks overdue with new RFQs coming in thick and fast. All this whilst running my own business.
Yesterday was a 16hr day and it doesn't look like it is going to let up :|
At least it's billable I guess?1 -
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? -
(0. First off, being a job I'd like — native software development that is — and not having to default to some boring backend job because "mUh WeB's EvRyThInG TodAy")
1. If the commute isn't too long I have no much problem working in office I think, but I want this to be clear: you let me work with the tools I want. Things like CI are understandably imposed, but let me choose whatever IDE/editor, Git client, etc.
Otherwise off to work from home where no one can check
2. Not having assholes colleagues (obnoxious, stupid, interrupting…)
3. A decent pay. Not high or minimum, just what I'm worth
4. Not drowning in meetings. I want to take part to them to clarify some things and understand what's going on, but I don't think I need more than 2 a day. Ah, and let me tell what's wrong if there's anything
5. Be basically respected. I don't want to be overvalued, that can be embarrassing, but I don't want my work to be completely ignored2 -
update : we are at hr round baby!!!
part 1 : https://devrant.com/rants/5528056/...
part 2 (in comments) : https://devrant.com/rants/5550145/...
the tech market is crazy mann! it's one of the top indie fintech companies in our country and has a great valuation.
i totally felt that they i am crashing the interviews , and am seriously not trying to be humble. before the dsa round , i was trying to mug up how insertion sort works 🥲
--------
now my dilemma is should i switch if i get the offer. in a summary:
current company:
- small valuation but profitable (haven't picked funding for last 3 years , so poast valuation is some double digit million $, but can easily be a unicorn company)
- very major b2b player in my country. almost all unicorns (including this fintech company) and some major MNCs are their client and they have recently acquired a few other companies of us and eu too, making them- a decent global player
- meh work : i love being a cutting edge performer in android but here we make sdks that need to support even legacy banking apps. so tech stack is a lot of verbose java and daily routine includes making very minor changes to actual code and more towards adding tests , maintaining wrapper sdks in react/cordova/unity etc, checking client side code etc.
- awesome work life balance : since work is shit and i am fast enough, i am usually working only 2-4 hours a day. i joined gym, got into shape , and have already vsited 5 places in last 6 months, and i am a guy who didn't used to have time even on sundays. here, we get mote paid leaves than what i would usually need.
- learning opportunities: not exactly from the company codebase, but they provide unlimited access to various course learning platforms like linkedin learning, udemy and others, so i joined some web dev baches and i now know decent frontend too. plus those hybrid sdks also give a light context to new things
new company :
- positives : multi billion valuation, one of the top players in fintech , have been mostly profitable ( except a few quarters)
- positive : b2c so its (hopefully) going to put me back into racing shoes with kotlin, jetpack and latest libraries.
- more $$$ for your boy :)
- negetive : they seem to be on hiring spree and am afraid to junp ship after seeing the recent coinbase layoffs. fintech is scary these days
- negetive : if they are hiring people like me, then then they are probably hiring people worse than me 😂. although thats not my concern what my main concer is how they interviewed. they have hired a 3rd party company that takes interviews of people FOR THEM! i find that extremely impolite, like they don't even wanna spare their devs to hire people they are gonna work with. i find this a toxic, robotic culture and if these are the people in there then i would have a terrible time finding some buddy engineer or some helpful senior.
- negetive : most probably a bad wlb : i worked for an year for a fast paced b2c edtech startup. no matter how old these are , b2c are always shipping new stuff and are therefore hectic. i don't like the boredom here but i would miss the free time to workout :(
so ... any thoughts about it?4 -
I got my first client at upwork almost a week ago and the experience has been awful so far, not because of this client but because of the codebase, it's so bad, it is running DEBUG=True on production and if I turn it DEBUG=False things break for some fucking reason that makes no sense (I don't think that's true but the previous developer states it). The website is running on pythonanywhere which is weird, bootstrap is a nightmare, the database needs to be in sync all the time using a manage.py command that executes tasks received through a webhook from a Hubspot shit that has all the information. Just adding a simple edit/verify profile on that site is such a fucking nightmare. The whole project its full of holes and things that are just screaming to break, its like a fucking house of cards that falls to the ground the second I edit something and it looks like its my fault. I'm thinking of telling the client that I will no longer work on this project