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 - "call the right order"
-
Friend: *deletes something from the internet*
"Thank god, now it's gone forever!"
Me: *Laughs in French*
"Hahahaha!"
Friend: "What?"
Me: "No, I'm pretty sure almost everything you put on the internet stays on the internet."
Friend: "ARE YOU STUPID??! The button says fucking DELETE. What else would it to do? Please use your brain for once."
Me: "You realize that text in the button is just a string right?"
Friend: *Looks confused*
"Stop trying to be such a smartass. Why would it be called 'delete' if it doesn't delete? Your logic make no sense whatsoever."
Me: *Makes quick simple app in order to prove my point*
App has 4 buttons:
-Play Music: Shows a picture of a dog
-Stop Music: Starts playing music video of Never gonna give you up
-Close App: Changes the interface to a random color
-Delete App: Pop up that says "The app has been deleted"
Friend: *Installs and tries the app*
"Dude! Did you even test your app before sending me?? Your buttons are broken as hell. None of them works. They all do things they're not supposed to do. How do you even call yourself a programmer? Sorry dude, nothing personal but this app sucks."
Me: *I need a new friend*
*sigh*22 -
I’m a senior dev at a small company that does some consulting. This past October, some really heavy personal situation came up and my job suffered for it. I raised the flag and was very open with my boss about it and both him and my team of 3 understood and were pretty cool with me taking on a smaller load of work while I moved on with some stuff in my life. For a week.
Right after that, I got sent to a client. “One month only, we just want some presence there since it’s such a big client” alright, I guess I can do that. “You’ll be in charge of a team of a few people and help them technically.” Sounds good, I like leading!
So I get here. Let’s talk technical first: from being in a small but interesting project using Xamarin, I’m now looking at Visual Basic code, using Visual Studio 2010. Windows fucking Forms.
The project was made by a single dev for this huge company. She did what she could but as the requirements grew this thing became a behemoth of spaghetti code and User Controls. The other two guys working on the project have been here for a few months and they have very basic experience at the job anyways. The woman that worked on the project for 5 years is now leaving because she can’t take it anymore.
And that’s not the worse of it. It took from October to December for me to get a machine. I literally spent two months reading on my cellphone and just going over my shitty personal situation for 8 hours a day. I complained to everyone I could and nothing really worked.
Then I got a PC! But wait… no domain user. Queue an extra month in which I could see the Windows 7 (yep) log in screen and nothing else. Then, finally! A domain user! I can log in! Just wait 2 extra weeks for us to give your user access to the subversion rep and you’re good to go!
While all of this went on, I didn’t get an access card until a week ago. Every day I had to walk to the reception desk, show my ID and request they call my boss so he could grant me access. 5 months of this, both at the start of the day and after lunch. There was one day in particular, between two holidays, in which no one that could grant me access was at the office. I literally stood there until 11am in which I called my company and told them I was going home.
Now I’ve been actually working for a while, mostly fixing stuff that works like crap and trying to implement functions that should have been finished but aren’t even started. Did I mention this App is in production and being used by the people here? Because it is. Imagine if you will the amount of problems that an application that’s connecting to the production DB can create when it doesn’t even validate if the field should receive numeric values only. Did I mention the DB itself is also a complete mess? Because it is. There’s an “INDEXES” tables in which, I shit you not, the IDs of every other table is stored. There are no Identity fields anywhere, and instead every insert has to go to this INDEXES table, check the last ID of the table we’re working on, then create a new registry in order to give you your new ID. It’s insane.
And, to boot, the new order from above is: We want to split this app in two. You guys will stick with the maintenance of half of it, some other dudes with the other. Still both targeting the same DB and using the same starting point, but each only working on the module that we want them to work in. PostmodernJerk, it’s your job now to prepare the app so that this can work. How? We dunno. Why? Fuck if we care. Kill you? You don’t deserve the swift release of death.
Also I’m starting to get a bit tired of comments that go ‘THIS DOESN’T WORK and ‘I DON’T KNOW WHY WE DO THIS BUT IT HELPS and my personal favorite ‘??????????????????????14 -
Facebook publicly announced that it won't build a backdoor into its services for the intelligence agencies as for the latest requests to weaken/remove the encryption.
I can only imagine the intelligence agencies going like this now:
NSA director: Alright, as expected they said no so they won't have more damage to their public image, lets go for plan A 2.0!
NSA employee: Aaaand that is?
NSA director: Serve them a FISA court order requiring them to do this shit anyways but also serve a gag order so they can't tell legally.
NSA employee: Ahh, fair enough, I'll get that rolling. By the way, how did we do this with WhatsApp's encryption again?
NSA director: Oh that one was simple. There's a backup function which nearly everyone uses on either Android/iOS which does plaintext backups to Google Drive/iCloud.
NSA employee: Oh, okay. How do we access that data again?
NSA director: PRISM/XKeyScore!
NSA employee: Right, but then still the issue of how we even collect the encrypted messages from Facebo...
NSA director: PRISM/XKeyScore as well, don't worry about that.
NSA employee: But, how'd we justify this....?
NSA director: We probably never have to as these programs operate outside of the public view but otherwise just call terrorism/pedophelia... BAM, done.
NSA employee: Gotya, let's put this into motion!22 -
Client: Can you provide some kind of guaranteed timeline that you're going to be able to move our website to our new servers with the optimizations implemented? I know you said it should take a week, but we have 3 weeks to get this moved over and we cannot afford to be double billed. I'm waiting to fire up the new server until you can confirm.
Me: As I said, it SHOULD take about a week, but that's factoring in ONLY the modifications being made for optimization and a QA call to review the website. This does not account for your hosting provider needing to spin up a new server.
We also never offered to move your website over to said new server. I sent detailed instructions for your provider to move a copy of the entire website over and have it configured and ready to point your domain over to, in order to save time and money since your provider won't give us the access necessary to perform a server-to-server transfer. If you are implying that I need to move the website over myself, you will be billed for that migration, however long it takes.
Client: So you're telling me that we paid $950 for 10 hours of work and that DOESN'T include making the changes live?
Me: Why would you think that the 10 hours that we're logged for the process of optimizing your website include additional time that has not been measured? When you build out a custom product for a customer, do you eat the shipping charges to deliver it? That is a rhetorical question of course, because I know you charge for shipping as well. My point is that we charge for delivery just as you do, because it requires our time and manpower.
All of this could have been avoided, but you are the one that enforced the strict requirement that we cannot take the website down for even 1 hour during off-peak times to incorporate the changes we made on our testbed, so we're having to go through this circus in order to deliver the work we performed.
I'm not going to give you a guarantee of any kind because there are too many factors that are not within our control, and we're not going to trap ourselves so you have a scapegoat to throw under the bus if your boss looks to you for accountability. I will reiterate that we estimate it would take about a week to implement, test and run through a full QA together, as we have other clients within our queue and our time must be appropriately blocked out each day. However, the longer you take to pull the trigger on this new server, the longer it will take on my end to get the work scheduled within the queue.
Client: If we get double billed, we're taking that out of what we have remaining to pay you.
Me: On the subject of paying us, you signed a contract acknowledging that you would pay us the remaining 50% after you approved the changes, which you did last week, in order for us to deliver the project. Thank you for the reminder that your remaining balance has not yet been paid. I'll have our CFO resend the invoice for you to remit payment before we proceed any further.
---
I love it when clients give me shit. I just give it right back.6 -
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,
practiseSafeHex13 -
Navy story time, and this one is lengthy.
As a Lieutenant Jr. I served for a year on a large (>100m) ship, with the duties of assistant navigation officer, and of course, unofficial computer guy. When I first entered the ship (carrying my trusty laptop), I had to wait for 2 hours at the officer's wardroom... where I noticed an ethernet plug. After 15 minutes of waiting, I got bored. Like, really bored. What on TCP/IP could possibly go wrong?
So, scanning the network it is. Besides the usual security holes I came to expect in ""military secure networks"" (Windows XP SP2 unpatched and Windows 2003 Servers, also unpatched) I came along a variety of interesting computers with interesting things... that I cannot name. The aggressive scan also crashed the SMB service on the server causing no end of cute reactions, until I restarted it remotely.
But me and my big mouth... I actually talked about it with the ship's CO and the electronics officer, and promptly got the unofficial duty of computer guy, aka helldesk, technical support and I-try-to-explain-you-that-it-is-impossible-given-my-resources guy. I seriously think that this was their punishment for me messing around. At one time I received a call, that a certain PC was disconnected. I repeatedly told them to look if the ethernet cable was on. "Yes, of course it's on, I am not an idiot." (yea, right)
So I went to that room, 4 decks down and 3 sections aft. Just to push in the half-popped out ethernet jack. I would swear it was on purpose, but reality showed me I was wrong, oh so dead wrong.
For the full year of my commission, I kept pestering the CO to assign me with an assistant to teach them, and to give approval for some serious upgrades, patching and documenting. No good.
I set up some little things to get them interested, like some NMEA relays and installed navigation software on certain computers, re-enabled the server's webmail and patched the server itself, tried to clean the malware (aka. Sisyphus' rock), and tried to enforce a security policy. I also tried to convince the CO to install a document management system, to his utter horror and refusal (he was the hard copy type, as were most officers in the ship). I gave up on almost all besides the assistant thing, because I knew that once I left, everything would go to the high-entropy status of carrying papers around, but the CO kept telling me that would be unnecessary.
"You'll always be our man, you'll fix it (sic)".
What could go wrong?
I got my transfer with 1 week's notice. Panic struck. The CO was... well, he was less shocked than I expected, but still shocked (I learned later that he knew beforehand, but decided not to tell anybody anything). So came the most rediculous request of all:
To put down, within 1 A4 sheet, and in simple instructions, the things one had to do in order to fulfil the duties of the computer guy.
I. SHIT. YOU. NOT.
My answer:
"What I can do is write: 'Please read the following:', followed by the list of books one must read in order to get some introductory understanding of network and server management, with most accompanying skills."
I was so glad I got out of that hellhole.6 -
We're using a ticket system at work that a local company wrote specifically for IT-support companies. It's missing so many (to us) essential features that they flat out ignored the feature requests for. I started dissecting their front-end code to find ways to get the site to do what we want and find a lot of ugly code.
Stuff like if(!confirm("blablabla") == false) and whole JavaScript libraries just to perform one task in one page that are loaded on every page you visit, complaining in the js console that they are loaded in the wrong order. It also uses a websocket on a completely arbitrary port making it impossible to work with it if you are on a restricted wifi. They flat out lie about their customers not wanting an offline app even though their communications platform on which they got asked this question once again got swarmed with big customers disagreeing as the mobile perofrmance and design of the mobile webpage is just atrocious.
So i dig farther and farthee adding all the features we want into a userscript with a beat little 'custom namespace' i make pretty good progress until i find a site that does asynchronous loading of its subpages all of a sudden. They never do that anywhere else. Injecting code into the overcomolicated jQuery mess that they call code is impossible to me, so i track changes via a mutationObserver (awesome stuff for userscripts, never heard of it before) and get that running too.
The userscript got such a volume of functions in such a short time that my boss even used it to demonstrate to them what we want and asked them why they couldn't do it in a reasonable timeframe.
All in all I'm pretty proud if the script, but i hate that software companies that write such a mess of code in different coding styles all over the place even get a foot into the door.
And that's just the code part: They very veeeery often just break stuff in updates that then require multiple hotfixes throughout the day after we complain about it. These errors even go so far to break functionality completely or just throw 500s in our face. It really gives you the impression that they are not testing that thing at all.
And the worst: They actively encourage their trainees to write as much code as possible to get paid more than their contract says, so of course they just break stuff all the time to write as much as possible.
Where did i get that information you ask? They state it on ther fucking career page!
We also have reverse proxy in front of that page that manages the HTTPS encryption and Let's Encrypt renewal. Guess what: They internally check if the certificate on the machine is valid and the system refuses to work if it isn't. How do you upload a certificate to the system you asked? You don't! You have to mail it to them for them to SSH into the system and install it manually. When will that be possible you ask? SOON™.
At least after a while i got them to just disable the 'feature'.
While we are at 'features' (sorry for the bad structure): They have this genius 'smart redirect' feature that is supposed to throw you right back where you were once you're done editing something. Brilliant idea, how do they do it? Using a callback libk like everyone else? Noooo. A serverside database entry that only gets correctly updated half of the time. So while multitasking in multiple tabs because the performance of that thing almost forces you to makes it a whole lot worse you are not protected from it if you don't. Example: you did work on ticket A and save that. You get redirected to ticket B you worked on this morning even though its fucking 5 o' clock in the evening. So of course you get confused over wherever you selected the right ticket to begin with. So you have to check that almost everytime.
Alright, rant over.
Let's see if i beed to make another one after their big 'all feature requests on hold, UI redesign, everything will be fixed and much better'-update.5 -
Welcome back to practiseSafeHex's new life as a manager.
Episode 2: Why automate when you can spend all day doing it by hand
This is a particularly special episode for me, as these problems are taking up so much of my time with non-sensical bullshit, that i'm delayed with everything else. Some badly require tooling or new products. Some are just unnecessary processes or annoyances that should not need to be handled by another human. So lets jump right in, in no particular order:
- Jira ... nuff said? not quite because somehow some blue moon, planets aligning, act of god style set of circumstances lined up to allow this team to somehow make Jira worse. On one hand we have a gigantic Jira project containing 7 separate sub teams, a million different labels / epics and 4.2 million possible assignees, all making sure the loading page takes as long as possible to open. But the new country we've added support for in the app gets a separate project. So we have product, backend, mobile, design, management etc on one, and mobile-country2 on another. This delightfully means a lot of duplication and copy pasting from one to the other, for literally no reason what so ever.
- Everything on Jira is found through a label. Every time something happens, a new one is created. So I need to check for "iOS", "Android", "iOS-country2", "Android-country2", "mobile-<feature>", "mobile-<feature>-issues", "mobile-<feature>-prod-issues", "mobile-<feature>-existing-issues" and "<project>-July31" ... why July31? Because some fucking moron decided to do a round of testing, and tag all the issues with the current date (despite the fact Jira does that anyway), which somehow still gets used from time to time because nobody pays attention to what they are doing. This means creating and modifying filters on a daily basis ... after spending time trying to figure out what its not in the first one.
- One of my favourite morning rituals I like to call "Jira dumpster diving". This involves me removing all the filters and reading all the tickets. Why would I do such a thing? oh remember the 9000 labels I mentioned earlier? right well its very likely that they actually won't use any of them ... or the wrong ones ... or assign to the wrong person, so I have to go find them and fix them. If I don't, i'll get yelled at, because clearly it's my fault.
- Moving on from Jira. As some of you might have seen in your companies, if you use things like TestFlight, HockeyApp, AppCenter, BuddyBuild etc. that when you release a new app version for testing, each version comes with an automated change-log, listing ticket numbers addressed ...... yeah we don't do that. No we use this shitty service, which is effectively an FTP server and a webpage, that only allows you to host the new versions. Sending out those emails is all manual ... distribution groups?? ... whats that?
- Moving back to Jira. Can't even automate the changelog with a script, because I can't even make sense of the tickets, in order to translate that to a script.
- Moving on from Jira. Me and one of the remote testers play this great game I like to call "tag team ticketing". It's so much fun. Right heres how to play, you'll need a QA and a PM.
*QA creates a ticket, and puts nothing of any use inside it, and assigns to the PM.
*PM fires it back asking for clarification.
*QA adds in what he feels is clarification (hes wrong) and assigns it back to the PM.
*PM sends detailed instructions, with examples as to what is needed and assigns it back.
*QA adds 1 of the 3 things required and assigns it back.
*PM assigns it back saying the one thing added is from the wrong day, and reminds him about the other 2 items.
*QA adds some random piece of unrelated info to the ticket instead, forgetting about the 3 things and assigns it back.
and you just continue doing this for the whole dev / release cycle hahaha. Oh you guys have no idea how much fun it is, seriously give it a go, you'll thank me later ... or kill yourselves, each to their own.
- Moving back to Jira. I decided to take an action of creating a new project for my team (the mobile team) and set it up the way we want and just ignore everything going on around us. Use proper automation, and a kanban board. Maybe only give product a slack bot interface that won't allow them to create a ticket without what we need etc. Spent 25 minutes looking for the "create new project" button before finding the link which says I need to open a ticket with support and wait ... 5 ... fucking ... long ... painful ... unnecessary ... business days.
... Heres hoping my head continues to not have a bullet hole in it by then.
Id love to talk more, but those filters ain't gonna fix themselves. So we'll have to leave it here for today. Tune in again for another episode soon.
And remember to always practiseSafeHex13 -
A customer calls to ask about our software, its features and its advantages and so on.
I answer him all his questions in a 45 minutes support call.
Then he decides to order the software from our website using the order form.
After 1h i get another call by the same guy saying he cant order.
I ask him why and he says that he is blind and his screen reader does not read out the form/website content.
So i filled out the order form with him together because im a nice person and customer is king. (Took me 20 minutes).
After that i ask our webdevelopers if they considered to make the website more disabled friendly.
They responded with no because it dosent matter.
Yeah fuck me right! Fuck the disabled customers we dont care.
I think thats kind of stupid but who cares right!!12 -
"Fuck JavaScript, its such a shitty language" seems to be quite a common rant today. It seems as if JS is actually getting more hate than PHP, which is certainly odd, considering the stereotype.
So, as someone who has spent a lot of time in JS and a lot of time elsewhere, here are my views. Please, discuss your opinions with me as well. I am genuinely interested in an intelligent conversation about this topic.
So here's my background: learned HTML/CSS/JS in that order when I was 12 because I liked computers. I was pretty shitty at JS until U was at least 15, but you get the point, Ive had it sploshing about in my brain for a while.
Now, JS certainly has its quirks, no doubt, but theres nothing about the language itself that I would say makes it shitty. Its a very easy leanguage to use, but isn't overdeveloped like VB.net (Or, as I like to call it, TheresAFunctionForThat)
Most of the hate is centered around JS being used for a very broad range of systems. I doubt JS would be in the rant feed so often if it were to stay in its native ecosystem of web browsers. JS can be used in server backend, web frontent, desktop and mobile applications, and even in some system services (Although this isn't very popular as of yet). People seem to be terrified that one very easy to learn language can go so far. And, oh god, its interpreted... How can a system app run off an interpreted language? That's absurd.
My opinion on JSEverything is that it's progress. Thats what we're all about, right? The technologies already in place are unthreatened by JS, it isn't a gamechanger. The only thing JS integration is doing is making tedius and simple tasks easier. Big companies with large systems aren't going to jump ship and migrate to JS. A startup, however, could save a fucking ton of development time by using a JS framework, however. I want to live in a world where startups can become the next Google, because technology will stagnate when youre trying to protect your fortune, (Look at Apple for fucks sake) but innovation is born of small people with big ideas.
I have a feeling the hate for JS is coming from fear of abandoning what you're already doing. You don't have to do that. JS is only another option (And a very good one, which is why it's becoming so popular).
As for my personal opinion from my experiences... I've left this part til the end on purpose. I love programming and learning and creating, so I've never hated a lamguage, really. It all depends on what I want to do. In the times i've played arpund with JS, I've loved it. Very very easy. The idea of having it on both ends of web development makes a lot of sense too, no conversion, just direct communication. I would imagine this really helps with speed, as well. I wouldn't use it in a complicated system, though. Small things, medium size projects: perfect. Running a bank? No.
So what do you think about this JSUniverse?13 -
Google sucks!
No, not as e-mail or for privacy reasons. Sure, that too, but it comes with "free" stuff.
It sucks because it's breaking every possible record in the worst, shittiest, most insanely stupid APIs and integrations out there on the entire fucking planet!
It is comically stupid!
Aside from their LOVE of hard-deprecating APIs every few months, requiring constant, time consuming maintenance of every tool that integrates deeply with Google services, some of their APIs, for expensive stuff, look like they've been written by Bobby McFartface from 7th grade.
Take a look at DoubleClick Search (their ad performance reporting tool, that sure does sound like one). To upload custom, additional data, you must pass in a ton of parameter, and they REQUIRE some of them to have a specific, hardcoded value. What's the point in passing that parameter then you dickheads?!
But fine, so you uploaded some stuff using the API. Now you want to delete everything and try again after you fixed a bug - well you fucking CAN'T! You can't delete stuff, you can only mark them as "deleted" using an update call.
Bulk operations? Fuck no!
Can I just add on top? Well of course not! That will raise a ton of exceptions. Same message should be transmitted using the PUT, not POST request, in order to edit.
Can I send everything to PUT? Of course not! You can't edit something that's not there, dummy!
Can I see what's there so that I can update it, and add what's missing?
Well of course not! Why on Earth would you need to see what information is in there after you uploaded it? Who needs that anyway?
Simply send, pray, and hope that everything will be fine (it will not).
Like holy fucking crap, it can't get any more stupid!
Google is a huge pile of idiots who feed on only a single cow - the search engine.
It's times like these when I think that Google right now is the worst thing that exists for everyone in tech. It's dragging everyone down with their monopolies everywhere and complete idiocy in managing them.5 -
dear anyone looking to teach kids programming (especially organizations):
- please be realistic. teach things your students can use. how to debug, how to solve realistic, real-world problems. not how to make a turtle draw a circle, that's not programming.
- please don't have blocks. just don't. they hurt.
- focus on your content instead of putting up posters on the wall with celebrities talking about the importance of programming
- don't call it 'code,' call it 'program.' do you know how different muggles think they are?
- please teach in a logical order. too many times have I seen commands --> functions --> variables/variable types --> then back to functions and return types.
- don't set an appropriate "age" to do it. please. its enough for people to learn to program, but to be told they're too "old" for a course? I can't tell you how many forgetful seniors and special needs students have been insulted. and don't even get me started on being too young. knowledge is knowledge, skill is skill, ability is ability.
- teach concepts with programming. don't separate them. they work better when they're taught together.
- understanding is more important than style. for beginners, fuck style. all of your program could be all on one line for fucks sake. I've had teachers chose style > functionality, because, fuck working programs, right?
- let your content speak for itself. this is not the place for celebrity endorsements.
- give resources for after a lesson is complete. when a beginner is finished, recommend more resources. you're never done learning.
most of these were things code.org did wrong. fuck them. I was in a constructive criticism mood today…5 -
I got laid off from my previous position as a Software Engineer at the end of June, and since then it was a struggle to find a new position. I have a good resume, about 4 years of professional dev experience and 5 years of experience in the tech industry all together, and great references.
As soon as I got laid off, I talked to my old manager at my previous company, and he said that he'd love to hire me back, but he just filled his last open spot.
In order to prepare, I had my resume reviewed by a specialist at the Department of Labor, and she said that it was one of the better resumes that she had seen.
There aren't a huge amount of dev jobs in my area, and I got a TON of recruiter emails. But they were all in other states, and I wasn't interested in moving.
I applied to all the remote and local positions I could find (the ones that I was qualified for,) and I just got a bunch of silence and denials from all my applications. I had a few interviews that went great, but of course, those companies decided to put the position on hold so they could use the budget for other things.
The silence and denials were really disconcerting, and make you think that something might be wrong with you or your interviewing abilities.
And then suddenly, as if the floodgates had opened, I started getting a ton of callbacks and interviews for both local and remote opportunities. I don't know if the end-of-year budget surpluses opened up more positions, but I was getting a lot of interest and it felt amazing.
Another dev position opened up at my previous company, and I got a great recommendation for that from my former manager and co-workers. I got a bunch of other interviews, and was moved onto the next rounds in most of them.
And finally, I got reached out to regarding a remote position I applied for a while ago, and the company was great about making the interview process quick and efficient. Within 2 weeks, I went from the screening call, to the tech call, and to the final call with the CTO. The CTO and I just hung out and talked about cars/boats/motorcycles for half the interview, and he was an awesome guy. AND THEN I GOT AN OFFER THE NEXT DAY!
The offer was originally for about the same amount as I made at my previous job, but I counteroffered up a good amount and they accepted my counteroffer!
It's a great company with offices all over the world, and they offer the option to travel to all those offices for visits if you want. So if you're working on a project with the France team and you think that it'd be easier to just work with them face-to-face, then the company will pay to fly you out to Paris for the week. Or you can work completely remotely. They don't mind either way.
I'm super excited to work with them and it feels great to be back in the job world.
Sorry about the long post, but I just wanted to tell my story and help encourage anybody out there who's going through the same thing right now.
Don't get discouraged, because you WILL find an awesome opportunity that's right for you. Get somebody to go over your resume and give you improvement recommendations. Brush up on your interviewing skills. Be sure to talk about all the projects you've worked on and how they positively impacted people and/or companies.
This is what I found interviewers responded the best to: Be sure to emphasize that you love learning new things and that you love passing along that knowledge to other people, and that your goal is to be an approachable and reliable source of knowledge for the company and to be as helpful as possible. It's important to be in a position that encourages both knowledge growth and knowledge sharing, and I think that companies really appreciate that mindset in a team member.
Moral of the story: YOU GOT THIS!10 -
So I used to do some freelancing in web development last year, nothing too fancy just some simple PHP websites. Comes the worst meeting in my life. So I am from India and we have a lot of long lasting business here being passed on over generations. TL;DR the guy was the owner of a very old business which was actually very huge and the guy was educated too, so I assumed that he'll be sensible as compared to other people.
The meeting was in an expensive cafe and he paid for it, he even told me upfront that meeting is on him. Great, right? So we sit down, order some coffee and then start discussing what he needed.
The guy needed an ecommerce website built with backend and logistics system integrated. We discussed possible designs for the website and stuff too and so far the deal looked promising to both of us.
I explained him the cost estimate and told him that I would email him the final quote from myself once we discussed server cost and shit.
So now comes the bargaining part where he asked me to give him server and domain for free.
At this point, I suspected that he didn't know that servers and domains are not something that you make. You have to purchase and renew them periodically.
So I told that guy that he didn't understand the cost estimation and explained to him that X is the cost of making this fucking thing and Y is its monthly maintenance cost, if he wanted annually could be done too. And this Y did not include server and domain costing.
Now came the fucking tide, the guy straight up turned to his shit and told me I am lying and trying to con him. So I gently asked him if he had ever gotten any website made. To which, he said No, but he knows how the costing works.
I was like "Bitch?". So I calmly tried to explain that that's not how websites are done, delivered and maintained.
He didn't seemed to be understanding and kept on fucking repeating that he knows his shit and blah blah.
At this point, I was like "Okay. Fuck this dude then. I can find another project. " and then I told him that he'll need to find someone according to his needs.
Interestingly enough, the guy called someone and then walked out of the cafe while talking on phone. I waited for 5 minutes and he didn't come back so I decided I would pay for my coffee and leave. Turns out the guy had paid his bill before my arrival and ditched me with the excuse of the call.
But oh well, I think working with such an idiot would have been much worse than paying for that coffee.4 -
My wifi was hacked two times last year, so I decided to change the factory credentials. Some months ago a tree fell on top of the cables on the street, cutting my internet connection. I call the ISP and when they get here they say I have no right for costumer support as I have altered my own connection.
WHAT. THE. FUCK
I had to revert the credentials to admin/admin in order get my internet back. These ISPs live in the fucking stone age. How the fuck do they force me to fucking have my router exposed with a fucking "admin/admin".
Fuck them.
I hope some day we have a cable revolution and finally have some rights over the networks we pay for with both tax money and excesive fees with low fucking speeds. Fuck them. Really.9 -
After returning back from the company we were purchasing a new phone system (hardware+software, $100K+, kind of a big deal)
VP: “I need the new phone system software integration for our CRM by next week. I need to demo the system for the other VPs”
Me: “No problem. Were you able to get their API like I asked?”
VP: “Salesman didn’t know for sure what that was, but he said all the developer software documentation is on their site.”
Me: “Did he give you a URL? Their main site is all marketing mumbo-jumbo. I assume there is another one specific for developers.”
VP: “Yea, he might have said something, but I don’t understand why you need it. The salesman said the integration would be seamless. He showed me several demos.”
Me: “No, I mean I need to know, is the API a full client install? a simple dll? is this going to be a web service integration? How will I know what to program against?”
VP: “I think I heard him say something about COM? Does that sound like an API?”
Me: “It’s a start. Did he provide you anything, a disk, a flash drive, anything with the software?”
VP: “No, only thing he told me was our CRM integration would be seamless and our development team would have no problems.”
Me: “OK..OK…I get it…he’s a salesman. Is there an 1-800 number I can call? A technical support email address? Anyone technical I can reach out to?”
VP: “Probably, but I don’t understand what the problem is. I need the CRM integrated by next week. I gave the other VPs a promise we would get it done. I do not break promises.”
Me: “Wait…when are we installing the new system?”
VP: “Well, the purchase order will be cut at the end of the month’s billing cycle, the company has about a two month turnaround time to deliver and install the hardware, so maybe 3 months from now? Are you going to be able to have the integration ready for next week?”
Me: “If we won’t see any of the hardware for 3 months, what exactly am I integrating with?”
VP: “That API you wanted or whatever it is. COM…yea, it’s COM. I was told the integration would be seamless and our developers would have no problem. I don’t understand why you can’t simply write the code to make it work. Getting the hardware installed is going to be the hardest part.”
Me: “OK, so I have no documentation, we have no hardware, no software, and no idea what this ‘seamless integration’ means. I’m afraid there isn’t anything I can do right now. ”
VP: “Fine!...I’ll just have to tell the other VPs you were not able to execute the seamless integration with the CRM.”
Which he did. When the hardware+software was finally installed, they hired consultants (because I “failed”). I think the bill was in the $50K range to perform the ‘integration’ which consisted of Excel spreadsheets (no kidding). When approached with the primary CRM integration, the team needed our API documentation, a year’s development time and $300K. I was pissed off enough, and I had the API documentation, I was able to get the basic CRM integration within 3 days. When an agent receives a call, I look up the # in our database, auto-fill the form with the customer info, etc. Easy stuff when you have the documentation.
The basics worked and the VP was congratulated by ‘saving’ the company $300K. May or may not have been bonuses involved, rumors still out on that one, but I didn't see em'. Later my manager told me the VP was really ticked that I performed the integration ‘behind his back’, but because it was a success, he couldn’t fire me.10 -
Let me tell you a story:
One upon a time poor lil PonySlaystation received a call. It was a nice guy who cried about his WordPress website had been hacked. So the clusterfuck began...
He gave me the login credentials for the hosting back-end, DB, FTP and CMS.
A hacked WP site was not new for me. It was probably the 6th of maybe 10 I had to do with.
What I didn't expect was the hosting back-end.
Imagine yourself back in 1999 when you tried to learn PHP and MySQL and all was so interesting and cool and you had infinite possibilities! Now forget all these great feelings and just take that ancient technology to 2018 and apply it to a PAID FUCKING HOSTING PROVIDER!
HOLY FUCKING ASSRAPE!
Wanna know what PHP version?
5.3.11, released the day before gomorrah was wiped.
The passwords? Stored in fucking plaintext. Shown right next to the table name and DB user name in the back-end. Same with FTP users.
EXCUSE ME, WHAT THE FUCK?!
I have to call Elon Musk and order some Boring Company Flame Throwers to get rid of this.
Long story long, I set up a new WP, changed all passwords and told the nice guy to get a decent hoster.4 -
Inner Me: Where the fuck is this bug coming from
> Set a breakpoint in every single place where the method I'm using is being called.
> Try calling the method before every function call
Inner Me: FUCKING DAMNIT! It's been hours now
Inner Me: No way it's the library I'm using.
Inner Me: That couldn't possibly be the problem
> Try running it again and delete some more shit
Inner Me: FUCK MEEEEEEEE
> Getting delirious
> Begin to look at some stupid memes.
> Come back to it.
> Have an Ah-ha moment
> Try running it again but rearrange the order of the method calls
> Still no luck
> try git stashing a bunch of my changes
> git stash apply them back
> erase the method call entirely
Inner Me: well that sort of worked, but now all my numbers are incomplete
Inner Me: FUCKING FINE!!! I'LL LOOK IN THE GODDAMN LIBRARY
Inner Me: FUUUUUUUUUUUUUCCCCCCCCKKKKK a stupid integer casting was occuring to my floats!!!
Now Talking to my girlfriend.
Me: The problem was in the library I was using
Girlfriend: How are you going to fix it if it's in the library?
Me: ... I can, because I wrote the library...
Me: FUCK ME RIGHT?
Me: I guess moral of the story; sometimes the problems starts with ourselves
GF: Hahaha. Thats Deeep1 -
Skipped my lectures at university just to get my new Dell laptop at home.
Here is my experience of dell account portal:
There is a 50-50 chance that your order will appear in the list of orders. It has it's own mind, sometimes it will appear, sometimes it will say it has found no orders.
Now if somehow you do see the order in the list, there is a 50-50 chance that clicking on the order number will actually show you the correct order. Most of the time it will take you to a completely different order, where you can see the name, address and other personal details of a person that you don't know. THANKS DELL!
Now if somehow clicking on the order number takes you to the right order details page, there is a 50-50 chance that there will be no courier information, it will be blank without any information. Sometimes it will show the tracking number, but no courier details.
Right, now let's say that I don't give a fuck about any of these. I stayed home, skipping my lecture, just so that I can get my laptop. They promised me that they will deliver it today and I trust them 🙂
BUT YOU MOTHERFUCKER, not only that they will not deliver it today, they haven't even bothered to give me a call and say that they won't be delivering it today. YOU PIECE OF HORSESHIT, I skipped my fucking lectures for you. Now I have to skip my lectures for another day, just to get my GODDAMN laptop.
FUCK YOU DELL, DIE IN HELL!9 -
Alright, this my fucking rant right here. Distraction? This whole company is a distraction! Boss decided to throw us all in an open work environment doing jobs that require careful concentration. Straight outta college I'm getting handed vague ideas, (make a desktop app that helps our customers put data on the internet, make an iPhone app) with out so much as an inkling of what technologies to use, just make it work.
Ok I will but when you hit a roadblock with very little resources to draw in it's hard to stay focused.
On top of that since I worked in support for a year I'm our senior support person! But sometimes support just doesn't use their brains and I'm using my time to solve very basic problems.
That brings me to my next point, the goddamn piece of shit that is our telephone. Fuck that thing when it rings it's never good. Moreover, since I don't want to get roasted for not being responsive I have the motherfucker forward to my personal cell. So I answer every fucking call and I get so many spam calls!
Not to mention I'm mainly running the hardware show around here. Shits broke I'm the one fixing it. Need new shit I'm putting the order together.
Tried to get a new guy to be the sys admin, ordered a 6th gen board with a 7th gen proc, had to pull 3 machines apart to get that sorted. Then he left bc family issues, and has been gone for weeks.
The other devs are also slam up busy, and the main product is about 15 people's piss on a plate of garb age spaghetti. (I got a lot of shit going on but at least I'm the only one pissing in my spaghetti) it's a constant run around if who does what with a code first plan later mentality causing confusion and delay.
Nobody wants to help anybody because they are also annoyed with this setup and are getting bitched at by customers or management.
Sales is mostly composed of a bunch of crackhead yes men and women who just want a commission and only half know the shit we sell and have sold 15 new features that had not been discussed. But management always says make it happen. In what priority? It's all a priority they say! Wtf.
So yea, then it brings me to me, dealing with this much chaos at work makes it seem like a high amount of chaos in my life is normal. I'm just now learning to control this.
I've had to do a lot of growing up as a person and as a developer. I've went from being the most junior to about the 3rd most seniors and I've no doubt my efforts have contributed to the growth of the company.
I'm a big believer in coding flow, and that it takes at least 15 mins to get in that flow and about 5 seconds to break it. There is no do not disturb on the company chat, everything always on fire it seems.
So fuck a lot of this, but I've done the research and where I'm at is the best opportunity in a 100 mile radius. So I am thankful for this job. Plus I usually win the horror story contest.
So TL;DR the biggest distraction is every fucking thing in this god forsaken place.5 -
Storytime!
I got a ticket near the end of the day, asking to install a printer on a computer. The branch in question was in a different time zone (I'm in US-Pacific [GMT-07] and the computer was in US-Eastern [GMT-04]). I figured I wouldn't worry about it; after all, I had other tickets to work on that were much higher priority.
The next day I come into work and immediately get a message from one of my East Coast coworkers, telling me that this branch is calling and asking how the printer is coming. I told him to tell them I would call them a bit later. I do a couple of easy jobs and then begrudgingly call the branch. I listen to the phone tree that they have (which requires two button presses instead of one in order to speak with someone) and finally get in contact with a person... only to have the call disconnect.
I call back and ask for the person who called in the ticket and then followed up, who had apparently gone to lunch. I informed the person that I was just going to install the printer and it would be good to go. This would be fine... up until she mentioned she needed scanning functionality.
Now I wasn't sure if the driver we have in AD is set up with the scan functionality, so I said okay, but that meant I would have to get the driver from the website. The connection to our branches are about 1Mbps, so even downloading Java updates (60-ish MB) take about 5-10 minutes on a good day. The file for this printer was about 700MB (thanks HP). So I went and did other stuff while that downloaded.
I come back after it finished and started the install process. Right away it asks to re-seat the USB cable. So I call the branch. The call disconnects. I call again. It disconnects. I call one more time, and finally get the person who called the ticket in. I instruct him to re-seat the cable. He does. The driver starts doing its thing. I tell him I'll call back if I run into any issues and we hang up.
The driver goes through the install process for about 20 minutes, stops at 99%, then fails. I want to restart the computer, just in case there's a conflict somewhere, but that would require calling the store again, so I put it off.
About an hour later I get a message from another East Coast coworker, telling me the branch is calling about the printer again. I was in the middle of another call and said I would call back later. I do. It disconnects. I call again, and get the person who called the ticket in again. I tell him I want to restart the computer, but wasn't sure if it was okay. He checks with the people using it, who says it's okay, so I reboot. I hang up.
Once the computer comes back up I start the install process again. It asks to re-seat the cable. Fuck. I don't want to call the store again, so I open notepad and say "Please take out the printer's USB connection from the back of the computer."
Three. Fucking. People. Saw it. They moved the window and one even tried to close it, but they didn't re-seat the cable. I opened another window, telling them to call me at my number. They didn't. I called them. Got disconnected. I called them again, finally got someone, told them to re-seat the printer cable again. They do, thank god.
I say thank you and hang up. Continue the installer. It stops at 99% again and fails. I reboot the computer; screw it, I'm just going to install the driver from Active Directory. Check Devices and Printers. It's installed successfully. Hallelujah!
I get the printer set up for the various programs they use and print a test page. I call them one last time; their phone system sounding like they were connected via an underwater line connected by tin cans. I get someone.
$me: Hi, I want to know if the printer has printed something.
$them (garbled): -et me shee... yesh, it -rint-d a *beezelborp*.
$me: Perfect, I'm going to close this ticket! Thanks, goodbye! *hangs up*
tl;dr - I hate printers -
> Worst work culture you've experienced?
It's a tie between my first to employers.
First: A career's dead end.
Bosses hardly ever said the truth, suger-coated everything and told you just about anything to get what they wanted. E.g. a coworker of mine was sent on a business trip to another company. They had told him this is his big chance! He'd attend a project kick-off meeting, maybe become its lead permanently. When he got there, the other company was like "So you're the temporary first-level supporter? Great! Here's your headset".
And well, devs were worth nothing anyway. For every dev there were 2-3 "consultants" that wrote detailed specifications, including SQL statements and pseudocode. The dev's job was just to translate that to working code. Except for the two highest senior devs, who had perfect job security. They had cooked up a custom Ant-based build system, had forked several high-profile Java projects (e.g. Hibernate) and their code was purposely cryptic and convoluted.
You had no chance to make changes to their projects without involuntarily breaking half of it. And then you'd have to beg for a bit of their time. And doing something they didn't like? Forget it. After I suggested to introduce automated testing I was treated like a heretic. Well of course, that would have threatened their job security. Even managers had no power against them. If these two would quit half a dozen projects would simply be dead.
And finally, the pecking order. Juniors, like me back then, didn't get taught shit. We were just there for the work the seniors didn't want to do. When one of the senior devs had implemented a patch on the master branch, it was the junior's job to apply it to the other branches.
Second: A massive sweatshop, almost like a real-life caricature.
It was a big corporation. Managers acted like kings, always taking the best for themselves while leaving crumbs for the plebs (=devs, operators, etc). They had the spacious single offices, we had the open plan (so awesome for communication and teamwork! synergy effects!). When they got bored, they left meetings just like that. We... well don't even think about being late.
And of course most managers followed the "kiss up, kick down" principle. Boy, was I getting kicked because I dared to question a decision of my boss. He made my life so hard I got sick for a month, being close to burnout. The best part? I gave notice a month later, and _he_still_was_surprised_!
Plebs weren't allowed anything below perfection, bosses on the other hand... so, I got yelled at by some manager. Twice. For essentially nothing, things just bruised his fragile ego. My bosses response? "Oh he's just human". No, the plebs was expected to obey the powers that be. Something you didn't like? That just means your attitude needs adjustment. Like with the open plan offices: I criticized the noise and distraction. Well that's just my _opinion_, right? Anyone else is happily enjoying it! Why can't I just be like the others? And most people really had given up, working like on a production line.
The company itself, while big, was a big ball of small, isolated groups, sticking together by office politics. In your software you'd need to call a service made by a different team, sooner or later. Not documented, noone was ever willing to help. To actually get help, you needed to get your boss to talk to their boss. Then you'd have a chance at all.
Oh, and the red tape. Say you needed a simple cable. You know, like those for $2 on Amazon. You'd open a support ticket and a week later everyone involved had signed it off. Probably. Like your boss, the support's boss, the internal IT services' boss, and maybe some other poor sap who felt important. Or maybe not, because the justification for needing that cable wasn't specific enough. I mean, just imagine the potential damage if our employees owned a cable they shouldn't!
You know, after these two employers I actually needed therapy. Looking back now, hooooly shit... that's why I can't repeat often enough that we devs put up with way too much bullshit.3 -
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.4 -
We've all had shitty jobs at one point or another, maybe some of us already had software engineering experience while having to work in a different field for a variety of reasons.
Well check this shit.
At one point(during my second year of school) for various reasons I had to work in retail. For those that know, retail can be a soul crushing experience...the trick is not letting management to convince you that it is an actual good job, it is not, and I have respect and sympathy for everyone currently working in it. The mind numbing retarded customers that we get are absolutely fantastic in every sense of the word.
My position in retail was as a phone salesman, for MetroPCS (which for all of y'all european ninjas is one of the low end phone carriers here in the U.S) and the people that we get as customers where I live are normally very poor which apparently in Mexican culture stands for annoyingly ignorant (I am Mexican myself, so I can really vouch for this shit)
One day a customer came in telling me that there was an app that he was using that kept giving him troubles, it was a map application for truck drivers. Now, obviously, this had nothing to do with my line of work(phone salesman) and as such I normally tried to explain that and let them be, but I imagined that it was a settings issue so I reluctantly agreed to help him. I explained to him that the app was no longer maintained and that the reason for it was probably that the developer abandoned it and that he would just have to look into the app, upon closer inspection the app itself was nothing more than a wrapper over google maps with trucker icons and a "trucker" interface, he was using the app as a GPS navigator and he could as well just have been using google maps.
The conversation was like this:
Me: Well this app is no longer supported, it will probably be taken off the google store soon, you can look for something similar or just change to Google maps
Retard: What? no! I came here in order for you to fix it, Metro needs to fix their own apps!
Me (in complete disbelief): We have no control over third party apps, and even for the ones that we provide the store has no control over them. But this app is not ours and so we can't really do anything about it.
Retard: Well WTF should I do? I have been having many issues with youtube and spotify, shouldn't Metro fix their Google store?
Me: Those apps are not ours.....wait, you seem to believe that we own youtube and spotify, those are not ours
Retard: How the fuck they are not yours! its your phone isn't it?
Me: Eh no.....Metro does not(at this point I was sort of smiling because I wanted to laugh) own youtube or spotify or the play store or even this phone, metro does not own Android or Samsung(his phone was a samsung core prime)
Retard: Well You need to fix this
Me: No I do not and I can not, the developer for this app abandoned it and has nothing to do with us
Retard: Well call the developer and tell him to fix it
At this point I was on a very bad mode since this dude was being obnoxiously rude from the beginning and it annoyed me how he was asking for dumb shit.
Me: Did you pay for this app?
Retard: No
Me: So you expect that some developer out there will just go about and get working for something that you did not pay for?
Why don't you just use Google maps as your GPS?
Retard: Don't be stupid, Google has no maps
At this point I show him the screen where there is a lil app that said maps, pressed it and voila! map comes to life
Retard: Well....I did not know
Me: Yeah....but I am the stupid one right?
** throws phone for him to catch
Me: Have a good one bud.
And my manager was right next to me, he was just trying to control his laughter the whole time. I really despised working in there and was glad when I left. Retail man.......such a horrible fucking world.7 -
Parents had asked me to assemble some furniture, fix the pc and so some other "brain" work
Furniture
Me: *Stops to check something in the manual*
Parents: Are you stuck? Maybe try assembling the door upside down
Me: No, it is the right way
Parents: *Ramble, ramble*
Me: Just let me work, shut the hell up
PC
Me: *Checks cables, checks logs, ect*
Parents: Maybe it is the problem with (insert random tech word there)?
Me: No.
Parents: W h y?
Me: Let me finish, it isnt that, (tech word) isnt even correlated to that
Parents: But, but, you never talk to me... (ramble ramble)
Me: Get the hell outta the room
*Argumemt breaks out*
30min later
Me: *Finnaly manages to fix it after the heated argument*
Me: I finished, everything works
Parents: Great, but you are mean
Me: I managed to finish the work in 15 min, you dont even have enough strengh to call for a specialist, (but knowing me i wouldnt allow it anyway because a lot of them make a poor job), so in order to make it properly and to relieve you from learning how to fucking google i want you to stay out of this so i can just finish my job. Your interruptions waste time and i dont need your help at all. Everytime you tried to fix stuff you always managed to fuck shit up when you tried to do anything.
Parents: (ramble)
Me: SHUT THE FUCK UP, LEAVE MY ROOM
Parents:
Me:
Parents: *Leave the room*
1h later i get 25$ for the job perfectly done
Sometime i wish they were tech independent, so i can save my sanity and time but money is nice.
If anybody tries to argue that i should respect them:
I tried talking to them nicely countless times through years, but they always force themself to a project and they always fuck shit up because of it. I tried telling them about my problems and they tried helping me but after it didnt work they retured to the old: "it is the pc fault" and similar. Even if they couldnt help me i juat wanted them to understand my situation, but no that didnt happened.
First i fix my life then i will fix the relationship
But but greeeeeg, relationships should be cared for always!
Eat shit. There is time for family and there is time for me especialy when my life can suddenly colapse due to my problems.7 -
I forgot to put myself out of office today on our call schedule... Thought I'd get away with it because I shouldn't get calls anyways. Got a call. Not handling it, passed it on, but it woke me up... :(2
-
I'm trying really hard not to be sensitive, but my manager is making it difficult with their "constructive criticisms" ...
Just finished up a call with them. And I'm so tired. I'm not even angry or upset, I just feel so tired of their bullshit.
I set up a meeting as a courtesy to get them up to date on all the code changes I made. Last night I stayed up late to try and get things in before the deadline and this morning just killed me when they say.
"I don't think I should have given you this."
"I was right, you weren't ready to start doing this."
(Then don't even bother giving me anymore tasks then, I don't fucking care.)
"you clearly don't understand how branches work"
(Absolutely fucking false, I fixed that shit and am very familiar with how to understand the structure of the fucking repo)
"you are rushing and I don't need you messing up the website"
(I'm being proactive you twat, not rushing, making it very difficult for me to do the work and being productive)
Like seriously bro! Don't fucking patronize me for the work I was trying to get out. And trust me this fucking meeting is done in order to get ahead of potential issues, not a time to be condescending of my skills or lack there-of as you seem to so keenly think.
If you had this much doubt about my abilities then why give me the fucking Sr. title? Fucking trust that I'm being honest, and I'm trying to get us to a good spot, not fucking sabotage the company. God fucking damn.6 -
VIM! ViM! vim! Vi Improved! Emacs (Wait ignore that one). What’s this mysterious VIM? Some believe mastering this beast will provide them with untold mastery over the forces of command line editing. Others would just like to know, how you exit the bloody thing. But in essence VIM is essentially a command line text editor at heart and it’s learning curve is so high it’s a circle.
There’s a lot of posts on the inter-webs detailing how to use that cruel mistress that is VIM. But rather then focus on how to be super productive in VIM (because honestly I’ve still not got a clue). This focus on my personal journey, my numerous attempts to use VIM in my day to day work. To eventually being able to call myself a novice.
My VIM journey started in 2010 around the same time I was transiting some of my hobby projects from SVN to GIT. It was around that time, that I attempted to run “git commit” in order to commit some files into one of my repositories.
Notice I didn’t specify the “-m” flag to provide a message. So what happened next. A wild command line editor opened in order for me to specify my message, foolish me assumed this command editor was just like similar editors such as Nano. So much CTRL + C’ing CTRL + Z’ing, CTRL + X’ing and a good measure of Google, I was finally able to exit the thing. Yeah…exit it. At this moment the measure of the complexity of this thing should be kicking in already, but it’s unfair to judge it based on today’s standards of user friendly-ness. It was born in a much simpler time. Before even the mouse graced the realms of the personal computing world.
But anyhow I’ll cut to the chase, for all of you who skipped most of the post to get to this point, it’s “:q!”. That’s the keyboard command to quit…well kinda this will quit the program. But…You know what just go here: The Manual. In-fact that’s probably not going to help either, I recommend reading on :p
My curiosity was peaked. So I went off in search of a way to understand this: VIM thing. It seemed to be pretty awesome, looking at some video’s on YouTube, I could do pretty much what Sublime text could but from the terminal. Imagine ssh’ing into a server and being able to make code edits, with full autocomplete et al. That was the dream, the practice…was something different. So I decided to make the commitment and use VIM for editing one of my existing projects.
So fired the program up and watched the world burn behind me. Ahhh…why can’t I type anything, no matter what I typed nothing seemed to appear on screen. Surely I must be missing something right? Right! After firing up the old Google machine, again it would appear there is this concept known as modes. When VIm starts up it defaults to a mode called “Normal” mode, hitting keys in this mode executes commands. But “Insert” entered by hitting the “i” key allows one to insert text.
Finally I thought I think I understand how this VIM thing works, I can just use “insert” mode to insert text and the arrow keys to move around. Then when I want to execute a command, I just press “Esc” and the command such as the one for saving the file. So there I was happily editing my code using “Insert” mode and the arrow keys, but little did I know that my happiness would be short lived, the arrow keys were soon to be a thorn in my VIM journey.
Join me for part two of this rant in which we learn the untold truth about arrow keys, touch typing and vimrc created from scratch. Until next time..
:q!4 -
300 global variables.. THREE HUNDRED FUCKING GLOBAL VARIABLES?
Are you for real?
Now let me check the line numbers again..
hmm.. line 97 to .. yep line 410, just a few new lines to seperate some of them or.. group? Idk, I've given up on trying to understand those.
Now you may ask "But ThatPerlDeb, where did you see this and what was the intention?"
Low and behold, take a chair and I may explain this to you.
First of all: Fuck the dev that wrote this!
Second: Fuck all the devs that kept up with this practice or whatever you want to fucking call this!
Now, the application is our POS system that our customers can use for a monthly fee (That this piece of garbage even requires payment is disgusting) but anyway..
The global variables sometimes are declared for labels, sometimes for some frames, sometimes just for random values to be there.
We're using Perl for the POS system and Perl ain't the best at OOP, so in the dev's defense I can understand why you'd use a few global variables, but not fucking 300!! FUCK OFF WITH THIS BULLSHIT!!
So now I'm going through this torture slowly but surely deleting globals and putting them into some sort of scope and always MANUALLY test if something broke. Again, this company sucks ass and there's nothing that could even be considered a "unit test" or something like that, so fuck that, too.
After two hours I've brought down the count of global variables to about 260, so there's progress being made..
But then, there comes more!
"But how???" you may ask, and you're right, I've asked that myself.
Now to resolve the global stuff in each file some of the initial globals are used, we got about 20-30 files which do different stuff, all fair and square, at least there was an attempt at seperating functions but god this mess is so fucking fucked up. So in order to "safely" delete a global variable I have to check if any of the variables are used in another file, and if so, in which scope and how they are used.
Spaghetti would be a compliment for this fucking disgusting piece of utter bullshit.
Let alone the code quality of this "code"
Indendation? Dafuq is dat?
Scope? Nah, we got everything global anyway
Function size? Well, some are 5 lines, some are 900 lines, who cares anyways, right?
I'm so fucking glad once I leave this shithole, for real.6 -
A conversation between an offshore developer and his manager at a fortune 500:
I'm a software developer and the company I work for is a vendor for $manager's and $offshore_dev's company. They provide endless hours of entertainment/terror. Recently, we've been trying to convince them that they need to stop sending sensitive information plaintext over HTTP and set up TLS/HTTPS which has led to tons of fun conversations such as this one they had during a conference call:
* $manager: "Did $offshore_dev implement TLS1.2?"
* $offshore_dev: "Yes, we enabled a parameter in the code to enable TLS1.2 in the code but according to $me's email, this requires HTTPS in order to work."
* $manager: "No this works, we're using TLS in $other_application right now."
* $offshore_dev: "Well, $manager, it's implemented but it currently doesn't encrypt anything as such."
* $manager: "Okay, HTTPS is in the roadmap in the next quarter, we can move forward without this for now."4 -
¡rant|rant
Nice to do some refactoring of the whole data access layer of our core logistics software, let me tell an story.
The project is around 80k lines of code, with a lot of integrations with an ERP system and an sql database.
The ERP system is old, shitty api for it also, only static methods through an wrapper to an c++ library
imagine an order table.
To access an order, you would first need to open the database by calling Api.Open(...file paths) (yes, it's an fucking flat file type database)
Now the database is open, now you would open the orders table with method Api.Table(int tableId) and in return you would get an integer value, the pointer.
Now for the actual order. first you need to search for it by setting the search parameter to the column ID of the order number while checking all calls for some BS error code
Api.SetInt(int pointer, int column, int query Value)
Then call the find method.
Api.Find(int pointer)
Then to top this shitcake of an api of: if it doesn't find your shit it will use the "close enough" method of search.
And now to read a singe string 😑
First you will look in the outdated and incorrect documentation given to you from the devil himself and look for the column ID to find the length of the column.
Then you create a string variable with ALL FUCKING SPACES.
Now you call the Api.GetStr(int pointer, int column, ref string emptyString, int length)
Now you have passed your poor string to the api's demon orgy by reference.
Then some more BS error code checking.
Now you have read an string value 😀
Now keep in mind to repeat these steps for all 300+ columns in the order table.
News from the creators: SQL server? yes, sql is good so everything will be better?
Now imagine the poor developers that got tasked to convert this shitcake to use a MS SQL server, that they did.
Now I can honestly say that I found the best SQL server benchmark tool. This sucker creams out just above ~105K sql statements per second on peak and ~15K per second for 1.5 second to read an order. 1.5 second to read less than 4 fucking kilobytes!
Right at that moment I released that our software would grind to an fucking halt before even thinking about starting it. And that me & myself and I would be tasked to fix it.
4 months later and two weeks until functional beta, here I am. We created our own api with the SQL server 😀
And the outcome of all this...
Fixes bugs older than a year, Forces rewriting part of code base. Forces removal of dirty fixes. allows proper unit and integration testing and even database testing with snapshot feature.
The whole ERP system could be replaced with ~10 lines of code (provided same relational structure) on the application while adding it to our own API library.
Best part is probably the performance improvements 😀. Up to 4500 times faster and 60 times less memory usage also with only managed memory.3 -
I just fucked up real bad:
My phone was giving some error about not being able to install an update. Fair enough, i think to myself, so i try rebooting. Still nothing...
I then remember that i at some point OEM unlocked it for some testing, so i start up adb and see if i can connect during the update process. I can't. This is bad: I can't get into my home environment, nor can i connect with adb
Then i try booting into recovery, but instead of booting to ACTUAL recovery, it boots to some custom made "E-Recovery" made by huawei (my phone is a huawei p9 lite), which only gives me the option to download the update, which crashes, and no way of resetting. However, from here, i am finally able to connect to my internal storage via hisuite to make a backup
Next up: Bootloader
So i next load up the unlocked bootloader to try and manually flash the update. That works great, but it still wont boot normally. So i figure: it must think my device is in fact a different device. At this point i'm pretty fucked: Even though i have my data backed up, i can't manually download the update from huawei's site because i don't have the right keys, and i can't download an OTA because their site sucks and half of the downloads don't work, including the one i need. So now i'm stuck here with a bricked phone because EMUI doesn't know how to install an update.
I then did the stupidest thing i have done to date: i wanted to flash a custom recovery image over the "E-Recovery" in order to do some troubleshooting, but instead of writing
"fastboot (mydeviceid) flash recovery recovery.img"
I wrote
"fastboot (mydeviceid) flash boot recovery.img"
Meaning i flashed my BOOT partition with a custom recovery image that turned out to not be able to run. Great! Now i've totally fucked my boot sequence
I can't call their support line either, because as soon as they realize i've tried to restore it myself, and therefor had my OEM unlocked, they basically just hang up.7 -
At first i was told to go to college BY PEOPLE WITH NO COLLEGE because i wouldnt be able to find a job without degree
Like a sucker i fell for it and believed in those LIES so i sacrificed my life for school
Then later i found out PEOPLE WHO FINISHED COLLEGE told me i just need knowledge in order to be hired, and turns out degree is unimportant
Like a sucker i fell for it and believed in those LIES so i studied and worked on practical projects and gained knowledge
Now when I try to get hired, they admitted that i am able to complete complex projects and i know how to solve the problems even if i see them for the first time. But they rejected me because "im not sure why the car leaks oil".
I have to understand and know what the whole framework is doing under the hood, how everything works, how dependency injection works under the hood, SOLID principles under the hood, decorators how they work under the hood etc.
So now it turns out
- sacrificing life for school is not enough
- sacrificing life for degree is not enough
- sacrificing life for learning and gaining knowledge is not enough
- now the new trend is i have to know not only how to drive a car like a professional formula F1 driver, i also have to be a mechanic and know how to fix the car if it breaks.
MATRIX IS A BIG FAT BULLSHIT AND A LIE.
I feel like they're looking for a senior developer knowledge to pay him junior developer salary
WTF IS THIS BULLSHIT?
I sacrificed 10 days of my life for their bullshit to build this project from scratch as a technical interview. They never said congrats on all the parts that were built right, but only complained about the small portion of bugs i didnt have time to fix.
ALL OF THIS FOR A SALARY OF $1500/MONTH THAT I ASKED. THATS LESS THAN 20,000$ A YEAR. THEY EITHER GAVE ME AN OPTION TO WORK FOR WAY LESS (500-600$/month) OR CALL THEM BACK IN A FEW MONTHS.
I JUST FINISHED COLLEGE AND THEY EXPECT ME TO HAVE 20 YEARS OF SENIOR DEVELOPER EXPERIENCE.
WTF IS THIS SLAVERY BULLSHIT?
HAVING A 500$/MONTH AS ENGINEERING SALARY WITH A DEGREE IS BELITTLING OF THIS JOB.
NO I DONT LIVE IN INDIA I LIVE IN SERBIA. MY DOG IS SICK AND IT COSTS 100$ A DAY JUST FOR HIS TREATMENT. HOW AM I SUPPOSED TO SURVIVE WITH A SLAVE SALARY IN THIS ECONOMIC CRISIS.
I DON'T UNDERSTAND2 -
Isn't it fun when you are given a library or framework and that in order to debug it you have to use some hacky way of hooking the code to a special instance of the project?
Even more fun: the developers by default don't debug the project with tools, but rather with logic. Ok, that's a good way to debug but it shouldn't be the only way to debug. I don't want to go back to the age of coding on paper. At least give me a stacktrace that's halfway clear on what's happening there. Even worse is when the framework doesn't document its own problems! stacktrace.someMagicalMethodNoOneKnowsWhatItDoes(). Having to read the even more mystic and overly verbose documentation! You're just left there trying and guessing shit, even for the senior devs!
And do you know what's more fucked up?! Fucking using println() to debug!! And they take this shit seriously! I don't understand how these people call themselves programmers. No breakpoints? What the fuck, man!
Just give me Visual Studio for fuck's sake. I don't want to code in a broken IDE with a broken framework. Development on its own is already hard enough, so don't make it harder by giving me crappy frameworks and crappy IDE's that only work half the time.
Debugging without a debugger, with broken IDE's, with broken frameworks, I'm sorry but that's just not for me. And then the framework dares advertise that it 'lets the developer focus on business code!' (how many times have you heard this crap before?). Right, the only thing I focus on constantly is trying to figure out why their broken framework doesn't work.
Arghhh. -
>Working on code
>Shit works as intended first try, nice
>Goes to play strange bootleg Gameboy Color ROM sent by a friend
>ROM immediately fucking dies
wtf.svg
>Pop emulator's debugger
we're executing from VRAM, stack's firmly embedded in ROM
>why
>Add execution breakpoint to entrypoint of game, restart emulated system (because i'm actually using the legit bios i hacked so it allows null/corrupted games to run)
>Step through everything, everything goes well until all of a sudden we call a function and shit hits the goddamn fan
well we have the culprit
>step through subroutine
if <unused_byte_in_HRAM> != 0 then stackPointer+=32;tryAgain();else return
>***y***
>Realize this is using a bootleg Memory Bank Controller with hard-backed encryption so none of the bytes executed or read as data are the right byte
>Find emulator that'll handle the jank MBC
>read code to try and figure out how it works
if checksumExtendedLogoBlob == some_number then set MBC_Bootleg1 else if checksumExtendedLogoBlob == some_other_number then set MBC_Bootleg2 else if...
>of course
>Spend 10 minutes finding the right bootleg MBC
>code shows 8 possible tables for real bit order based on some value in the cart header
>look for code that gets this value
>not in the header
>not in ANY header in this 1000+ file emulator
>not in any related cpp files???
>get desperate
>email author
>"Delivery failed: email doesn't exist"
fuck me i guess2 -
So a bit ago I posted a rant saying that I would be getting ElementaryOS onto my computer and trying it out, buckle up kiddos because this goes to shit in just a moment.
I did everything right, used Rufus correctly and didn't destroy my computer nor my installer, good! I set it up, get everything going and everything is running smoothly. One problem... I couldn't download **any** programs that weren't from the Ubuntu Store, which really annoyed me because I like to use Brackets, and I couldn't find it in the UStore...
So I messed up **really** bad here... I didn't *format* my Elementary Installer, but tried to delete the files like a pleb and stick an Ubuntu ISO in it's place, I didn't even think on going through Rufus again, I just slapped that shit in there without a thought.
I restart my computer, I read a forum stating that I would get an option that allows Ubuntu (or another Linux distro) to take over the partition of a previous distro. Neat! Another bloody problem is that I decided to use "Win + R" and manually delete the Elementary partition **myself**... What is even wrong with me...
So I restarted it, and before my father left to go shopping, he said I should go into the BIOS to change the boot order (Now this is where I **really fucked up**. Thought what I said before was bad?).
Cool, so I boot my PC and go into the BIOS, now I couldn't figure out on my computer where the boot order was, when it was right in my face the whole damn time... I managed to almost destroy my entire BIOS with the fucking file in my USB stick, because I was being an idiot...
I restart, GRUB opens up with a black screen and white text in the top left corner, know what the most important line is in that small block of words? "unknown filesystem"... Of fucking course I fucked it that bad, GRUB didn't even give me the option of just using Windows 10 instead, just quietly gave me the middle finger since I basically nearly fucked everything.
What's funny is that I had someone (who lives with us, let's call him Jeff) look at my computer because I was done being a dumbass.
He told me that I still had my BIOS (which was a bloody relief, because I thought I basically destroyed my computer doing what I did) and that all I need to do is fix the installer I tried to use.
I gave him the USB and just started to play on my phone.
Then I remembered something maybe an hour or so ago... I had an older installer that I used on my shitty laptop awhile back, if I can find it again I could just use that instead of waiting on Jeff. I dug around my room and found the USB that had a working Ubuntu ISO on, correctly placed inside this time.
I basically walked up to my computer, plugged it in and started it up, and it worked. I got Ubuntu and Windows 10 back, and I was basically laughing like I just saved a man's life.
Moral of this story: Don't be like me and do something stupid, especially if you don't know what the fuck you're attempting at... -
I just finished posting this but think it deserves its own post.
If you're creating a business or "startup" (as people like to call it these days) don't assume the idea is novel or investors will just jump on board. Focus on the business fundementals, money and cash flow, even before launch, unless you can afford not to. But really you can't afford not to. Selling before launch means that you're effectively doing two things 1 you're collecting new customers and income for the business and 2 you're. raising awareness at the same time. Obscurity is death and failure.
Get you a good sales team and marketer when the time is right.
Have a year of runway.
Identify the sites and groups your target audience and investors frequent. Start conversations now, buzz is the hardest thing to generate.
Start building relations with customers and potential clients now. Discuss launch, ask them if they'd be willing to pay up front before launch, in order to secure a "lifetime membership", offer it as an early opportunity and charge extra. Giving a discount out of the gate is a mistake B/c it says to potential investors that you don't think it's ready or worth it yet. Of course if it's between making 1. Some money or 2. No money, don't let it be a deal breaker, offer a discount. Going from no clients to any clients is a BIG deal. If you can do 1 you can make it to 10, if 10, you can reach 100, we etc.
No one likes asking for money and yet it is as important if not more important than development. -
I'm in need of advice. I reckon this is no stack overflow but that's probably for the best as I wouldn't feel as comfortable posting there as I am doing it here. So, back to the question: I'm currently working with legacy code, written in .NET 2.0. This code is responsible for calling upon PEC services in order to finally create personal smart cards. I was tasked with the job of creating a repository system that would allow the program to call on the old legacy services or the new ones without any distinction. We are talking about SOAP services in both cases. The issues is: the new service definition is comprised of soap policies. This wouldn't be a problem per se, with more modern version of the framework, but with .NET 2.0? Yes, it is. It doesn't support policies and signing the body with a certificate right out of the box. How can I manage this? I feel like the only way would be letting the proxy class do its thing up until the very last moment: intercept the SOAP request before its sent and modify it according to the specifications. But I reckon this is very bad practice. Is there any other way out of this?
Thanks for anyone that would like to help. 🙂6 -
!dev
It's a public holiday (I follow company's country's public holidays).
Wake up. Feeling good.
See message wishing me that I don't wake up - lol.
Msg peeps hello, and go help mom she's in a rush.
Qt says hello.
Help mom go to work (garage door is manual).
Wish qt good luck with stuff today - no reply, guess I just missed her
Go back to sleep
(buddy using img-gen #awesome)
(client messages for standup)
Wake up again, Life's still good™️
Reply back, it's a public holiday but if they want other/extra days just let me know - all good.
Make brunch - bread has just gone bad, whatever got another. Ends up being heavier than expected.
Watch an episode of a show while eating, bit of a zzzz.
Jam some guitar, do decently but not quite getting it right - but it's fun so it's all right
Qt updates about day - sounds like fun
Check in with friend, seems to be doing ok, he's been dealing with a bunch of things atm.
Create fun project for a sudoku solver, set up the initial part, realise that the parsing is a bunch of boilerplate (decided to map each section to a variable with bit packing), realise it's easier to work with arrays instead.
Decide to nap
It gets too warm to stay in bed, doens't matter, feel physically even better (aka bags under eyes are much less)
Qt back online, shares cool pic of castle
Realise I can get best of both worlds using pointers... This is getting stupid, whatever.
Getting warm, qt sends pic of temp by her.
Oh, right, ice cream. Open it, clearly melted and refrozen slightly - it's ice cream doesn't matter.
Chat a bit with qt
Bot battle spams img-gen
img-gen randomly gets stuck because watching YT vid
Chat a bit with peeps
Order food for mom and I - because why not. Hmmm a bit pricey.
Chat a bit more with peeps till mom is home.
Go chat with mom food should be here soon...
App says food is on it's way, great I'm like 2 minutes away.
20 minutes later, (1 hour after ordering) call up, "um yeah, that will still take a while"
Friends messages, he's been made redundant after CEO explodes and fires managers
Mom getting annoyed, if she had had to work she'd have been in bed already.
Now 2 hours after ordering food, call up again. "Yeah it ready we're sending it over now" - great hang up.
Get food, it's good. They included an extra beer - they offered, and I picked, spring rolls, but whatever.
Finish the first beer, look at the bottle, it's grody - at least the neck is clean, same with the other bottle.
Chat with peeps
Realise that it's not as good as the one I remember. That's export vs local version, I guess.
Chat with qt
Realise it's late and didn't really touch projects I wanted to #ItHappens
Starting to get tired again
Me still happy. Glad I woke up chipper. Let the happy flow
Also, my PC randomly started having lag spikes today - should probably just reboot #WindowsProblems
Not really a rant, since I'm just kinda shrugging it off, but I know if I didn't wake up in such a good mood I would have been pretty annoyed. Perspective is everything or some other philosophical shenanigans, you guys tell me the right term/saying5 -
I work in a small team. As the senior dev I tens to focus on important tasks that shape the core of the product but some times I can’t divide my self when there are multiple tasks at hand, so I pass some tasks to the an other mid level dev.
So the task was to create an automation in order to CD (continuously deliver) an order from WHMCS of the (git versioned) product to customers UAT, PROD envs.
To get a background this is an old guy with “constricted” experience in PHP/jQuery/Joomla/Wordpress.
So when we were breaking up the tasks he told me he would like to implement this so i gave him the task as i was busy with core features.
I was like what could go wrong? I know he doesn’t know much about CI/CD but he can read right? He will google right? He will search for CI/CD solutions that do this out of the box right? He will design on paper or what ever and do small POCs right? He will design the flow first before starting the implementation right? RIGHT?
So fast forward to today I had a call with him this morning about some DB staff. And he wanted to show me his progress…
His solution is:
(parentheses is my brain)
1. Customer completes WHMCS order (perfect)
2. Web Hook 🪝 action (YES)
3. cpanel gets source and “automatic!” Init, all using pure PHP code ignoring the usage of the current framework (ok… something is missing)
4. cpanel web hooks(?) WHMCS to send email to customer with the envs initial setup page(?)
5. Customer opens link and adds setup info (ok fuck, fuck, fuck)
(Ok stay cool composed, lets ask some questions maybe he thought it all in a cool way I can’t get my mind around)
Me: So how are you gonna get the correct version from the repo to the env and init the correct schema?
Dev: I haven’t thought about it yet.
Me: Are we gonna save each version to a file system then your code is going to fetch them?
Dev: I haven’t really thought about it we will see. But look on customer init user setup I implemented a password strength validation and it also checks if the password is the same.
So after this Pokémon encounter I politely closed teams. Stood up drank some (a lot) coffee ☕️. Put out the washed laundry while reflecting on life’s good things, while listening to classical music 🎼 .
Then I sat on my office chair drank some more coffee, put some linking park starting with in that order:
“Numb” then “What I’ve Done” and ended with “In the end, it does really fucking matter” -
Going through my lore notes. And I'm playing a game with myself, so to speak: it's called "is this metal enough?", but with a side of quasi-metaphysical arcane technobabble plus mass wallmelting and nightmarishly psychedelic confusion.
For example... why are shadow gates a thing? Well, because of the undoing of time caused a multiplicity of parallel cycles that will, inevitably, slowly collapse upon themselves through a sequence of irreducible asynchronicities. But of course!
Now, as for the metal part, that's the undoing of time. You see, the Somberlain attempted to cast the most sinful signa in order to restore the desolate mortal realm as it stood on the brink of a world-ending cataclysm, this was after a decade of brutal, reckless litechnical abuse during the civil war fought amongst the first undecimvirate...
Now, he intended to roll back time itself as a way to avoid the cataclysm and restore life to the mortal realm, but the cost was immense: time was not rolled back, but rather __forcefully__ torn apart; it was effectively shredded, shattered, and undone.
Countless lives were lost as nearly six hundred years of Being were __erased__ in an instant, the most heinous large-scale blood sacrifice in history, spanning the entirety of the lower fragment of reality. I mean is this too dark, I'm not sure. How about I clarify: he didn't just snuff out their lives, no, they CEASED TO EXIST. THEY NEVER EXISTED. GONE. UNBECOMED INTO A TRUE IMMEMORIAL. OVER FIVE CENTURIES OF EVERY CONSCIOUS MOMENT ON EARTH DEVOURED TO FUEL HIS DARK MAGIC.
That's gotta have consequences, right? Well, obviously you'll get temporal distortions after that shit, I mean duh...
But wait, I'm lost, you say the undecimvirate deified themselves but were cast down after the whole superman spinning the earth backwards thing went full bathory and erased entire centuries from the fabric of the cosmos, so they were turned into the eleven thrones to guard over the eleven circles of the night eternal... but how is that linked to natural occurrences of teleportation?
First off, because *natural* teleportation is distinct from *artificial* teleportation. Failed experiments with (and miscasts of) mass transference of living matter are one of the leading causes of death among litarchs. It is not an instant transmission, just very, very quick, moreso than a mortal mind can process, that's why the "dilate" and "delay" sigils are added, so as to make the journey seem slowed down to the perceptions of whomever is teletransported, this is meant to ensure their brains don't __melt__ from the experience.
Similar reason as to why you have to give the _approximate_ total weight to carry when inscribing the ritual circle, you *do* know that it is __highly__ recommended to use accurate weighing scales to approximate this quantity, as under or overestimating it can lead to _FATAL_ consequences... do you not?
No, *natural* occurrences of teleportation do not have these constraints for two reasons: one, because both ends of the gateway are _fixed_ in both time and space due to the logic-defying occurrence of a future event being undeniably the cause of the past it revisited. Put on this toga. They are inextricably linked through the metaphorical and *literal* corpse of infinite collapsed timelines, which generates a conduit through the first circle of the night eternal, which *is* the domain of both forgetfulness and horror immemorial.
Second, the final layer on our stratified reality, that is, the final circle before the INVIOLABLE divine veil, wraps around the night eternal, which is why we call it "the shell". Or "Crisalida" if you dig Luis Alberto. It is a realm entirely outside of time, which is why the patriarchs can grant immortality, you see. By proximity to this sacred shell of existence, the timeline-corpse-conduit that links both ends of a shadow gate is, for all intents and purposes, approaching total chronostasis, therefore making it so bypassing physical space in a few seconds doesn't give you permanent loss of the sense of self as your brain turns into liquified jelly.
I don't remember what I was getting at and I don't care.4 -
Bring Authentic Mexican Flavors to Your Event with Benny’s Tacos & Rotisserie Chicken Catering Services
Looking to elevate your next event with delicious, authentic Mexican catering? Benny’s Tacos & Rotisserie Chicken in West Hollywood/Beverly Grove is here to bring the bold and vibrant flavors of Mexico right to your gathering. Whether you’re planning an office lunch, hosting a party, or organizing a special celebration, our expert catering services will ensure that your guests are treated to mouthwatering Mexican dishes that will have everyone talking.
Mexican Catering That Delights the Taste Buds
At Benny’s Tacos & Rotisserie Chicken, we specialize in providing Mexican catering that captures the heart and soul of Mexico’s diverse culinary traditions. From tacos and burritos to rotisserie chicken and fresh salsas, our catering menu offers a wide range of flavorful dishes that are perfect for any event. We use only the freshest ingredients to ensure that every dish is bursting with authentic flavors, making your event a memorable one for all your guests.
Our Mexican catering options are completely customizable, allowing you to choose from taco bars, burrito stations, and much more. Whether you want a casual meal or a more elaborate spread, we can tailor our offerings to fit your specific needs.
Office Catering – Make Your Workday Extra Special
Looking for an easy, delicious way to feed your office during a meeting, team lunch, or employee appreciation event? Benny’s Tacos & Rotisserie Chicken offers top-notch office catering that will make any workday feel like a celebration. Our office catering packages are designed to bring the authentic flavors of Mexico to your workplace, ensuring that everyone enjoys a fresh and satisfying meal.
From taco bars where employees can build their own tacos to hearty burritos and flavorful sides, our office catering options are perfect for any corporate event. Whether you're feeding a small team or a larger group, we’re here to ensure that your office gathering is filled with delicious food and good vibes.
Party Catering – Celebrate in Style with Benny’s
Hosting a party? Let Benny’s Tacos & Rotisserie Chicken handle your party catering needs and make your celebration unforgettable. From birthdays and graduations to holiday parties and more, our party catering services bring a burst of flavor to any event.
Our party catering menu includes a wide selection of Mexican dishes that will satisfy any crowd. You can choose from taco stations, rotisserie chicken platters, burritos, and fresh salsas, all designed to make your event both delicious and stress-free. Whether you're hosting an intimate gathering or a large celebration, we provide everything you need to make your party a hit.
Why Choose Benny’s Tacos & Rotisserie Chicken for Catering?
When it comes to Mexican catering, office catering, and party catering, Benny’s Tacos & Rotisserie Chicken stands out as the go-to option in West Hollywood/Beverly Grove. We are committed to delivering exceptional service and delicious food to every event. Here’s why you should choose us for your next gathering:
Authentic Mexican Flavors: We bring the true taste of Mexico to your event, ensuring that every dish is full of bold, vibrant flavors.
Customizable Catering: Whether you need a taco bar, burrito station, or a full spread, we can tailor our catering services to your needs.
Fresh Ingredients: We use only the freshest ingredients in every dish, ensuring that your guests enjoy high-quality food that’s as flavorful as it is fresh.
Convenient and Reliable Service: We make catering easy by offering delivery and setup, so you can focus on enjoying your event.
Get in Touch for Your Next Event
Ready to bring the best Mexican catering to your next event? Whether it’s an office catering job or a party catering request, Benny’s Tacos & Rotisserie Chicken is here to serve you. We’re located at 8250 W 3rd St, Los Angeles, CA 90048, and we’d love to help you create a memorable dining experience.
For more information or to place a catering order, give us a call at +1 (323) 592-3010. Let Benny’s Tacos & Rotisserie Chicken take your event to the next level with our authentic Mexican flavors and excellent service2 -
Star Phone Fix: Reliable Water Damage Fix in Hialeah, FL
Accidentally dropped your phone in water? Don't panic! At Star Phone Fix, we specialize in water damage fix for all kinds of mobile devices, including iPhones, Samsung smartphones, and many others. We know how stressful it can be when your phone has been exposed to water, but with our expert repair services, you can get your device back in working order as quickly as possible.
Located at 405 W 29th St, Hialeah, FL 33012, we’re your local go-to for all kinds of phone repairs, especially water damage fixes. With our fast, reliable, and affordable services, you can trust us to handle your device with care and get it back to perfect working condition.
Why Choose Star Phone Fix for Your Water Damage Fix?
Water damage is a tricky problem for any device, but Star Phone Fix has the experience and tools to handle it with ease. Here’s why we’re the best choice when you need water damage fix:
1. Experienced Technicians
Our technicians are trained in diagnosing and repairing a wide range of water damage issues. Whether it’s a phone that has been submerged in water or one that has simply gotten a little wet, we know exactly what to do. From preventing further damage to restoring your device’s full functionality, our team is equipped to handle it all.
2. Quick and Efficient Repair
We understand that time is of the essence when it comes to water damage fix. The sooner you get your phone into our hands, the better the chance we have to restore it. That’s why we offer same-day repair for many water-damaged devices. We work fast to dry out and fix your device, so you can get back to using it as soon as possible.
3. Affordable Pricing
Dealing with water damage doesn’t have to be costly. Star Phone Fix offers affordable and competitive pricing for water damage fixes without compromising on quality. We’ll assess your device, provide an upfront quote, and make sure you know exactly what you’re paying for before any work is done.
4. High-Quality Replacement Parts
In the case that your device requires replacement parts due to water damage, we use only the highest quality components. From screens to internal components, we ensure that your phone gets the best possible repair, so it works just like new.
5. Customer Satisfaction Guarantee
Your satisfaction is our top priority at Star Phone Fix. We’re committed to delivering exceptional service, and if you’re not happy with the repair, we’ll do everything we can to make it right. With us, you’re not just a customer – you’re a priority.
What Happens During a Water Damage Fix?
When you bring your device to Star Phone Fix, we follow a proven process to ensure the best chance of restoring your phone:
Initial Assessment: The first step is to assess the extent of the water damage. We’ll look at the device’s external condition and carefully inspect the internal components to identify any affected parts. Early detection is key to preventing further damage.
Drying Process: We’ll disassemble the device, remove any excess water, and let the internal components dry properly. This crucial step helps prevent corrosion and other issues caused by prolonged exposure to water.
Cleaning and Repair: Once the device is dry, we clean the internal components to remove any moisture or contaminants that may have accumulated. If necessary, we replace any damaged parts, such as screens, batteries, or connectors, to restore full functionality.
Testing: After the repairs are made, we test the device thoroughly. We check for any remaining issues with the touch screen, camera, speaker, charging port, and other functions to ensure everything is working as it should.
Final Review: Once we’ve completed the repair and testing, we’ll call you to let you know your device is ready to pick up. We’re committed to delivering a fully functional phone that’s ready to go.
Devices We Fix for Water Damage
At Star Phone Fix, we handle water damage fixes for a variety of devices, including:
iPhones: From the iPhone 6 to the latest iPhone models, we have experience fixing water-damaged Apple devices.
Samsung Galaxy Phones: Whether it’s a Galaxy S series, Note, or any other model, we can repair water damage and restore your device.
Other Smartphones: We also provide water damage repairs for other brands such as Google Pixel, Motorola, LG, and more.
Tablets and Smartwatches: Water damage doesn’t just affect phones – we can also repair water-damaged tablets and smartwatches, including iPads and Android devices.
Why You Should Act Quickly for Water Damage Fix
If your phone has been exposed to water, acting quickly is essential. The longer your device remains wet, the greater the chances of irreversible damage to internal components. It’s important to power off your device immediately and avoid charging it until it has been properly inspected and dried.
3 -
Title: The Yum Wagon – Exceptional Food Delivery Service in Madison, MS
Craving delicious food but don’t want to leave the comfort of your home? Look no further than The Yum Wagon! Located at 306 Trace Harbor Rd, Madison, MS, we offer a top-notch food delivery service that brings the best of Southern cuisine straight to your door. Whether you're enjoying a cozy night in, hosting a gathering, or just craving comfort food, The Yum Wagon ensures that every meal is delivered hot, fresh, and ready to enjoy.
Experience Southern Flavors with Convenient Food Delivery
At The Yum Wagon, we specialize in Southern comfort food that is packed with flavor, from crispy fried chicken to savory jambalaya, and everything in between. Our food delivery service makes it easy to enjoy these delicious dishes from the comfort of your home or office, without having to compromise on taste or quality.
Our menu is designed to bring you the best of Southern cuisine, prepared with fresh, high-quality ingredients, and delivered right to your doorstep. Whether you're in the mood for a hearty meal, a quick bite, or something to share with family and friends, The Yum Wagon has something for everyone.
Why Choose The Yum Wagon’s Food Delivery Service?
Convenient and Fast: No need to worry about cooking or going out. Simply call us at +16016912280 or place your order online, and we'll take care of the rest. Our food delivery service ensures that your meal arrives quickly and stays warm, so you can enjoy it just as if you were dining in.
Southern Comfort at Your Doorstep: Craving a taste of the South? We bring Southern staples like fried catfish, crispy chicken, rich gumbo, and mouth-watering sides directly to you. Every dish is made with care, ensuring a satisfying meal that tastes just like homemade.
Fresh, High-Quality Ingredients: At The Yum Wagon, we use only the freshest, locally-sourced ingredients to prepare every meal. You can be sure that whether you’re ordering a single plate or a family-sized feast, you're getting the best in quality and taste.
Perfect for Any Occasion: Whether it’s a casual lunch at home, a family dinner, or a party with friends, The Yum Wagon's food delivery service is perfect for any occasion. We make it easy to enjoy great food without leaving the house, so you can focus on spending time with loved ones.
Specials and Custom Orders: We offer a variety of specials and custom orders to suit your needs. Whether you have specific dietary preferences or want to create a unique meal for a special event, we’re here to accommodate your requests. Just let us know what you’re looking for, and we’ll work with you to make it happen.
How to Order Your Meal from The Yum Wagon
Ordering your favorite Southern dishes from The Yum Wagon is quick and easy! Simply call us at +16016912280 or visit our website to browse our menu and place your order. We offer food delivery to homes and businesses in the Madison area, ensuring that you get your meal just the way you like it.
The Yum Wagon – Delivering the Best Southern Cuisine
With our food delivery service, you don’t have to go anywhere to enjoy the delicious Southern flavors of The Yum Wagon. From the heart of Madison, MS, we bring the comfort, flavor, and hospitality of Southern cooking straight to your doorstep. Whether you're feeding the family, hosting a small gathering, or just craving a taste of the South, The Yum Wagon has you covered.
Ready to enjoy some of the best food in Madison, MS? Give us a call at +16016912280 and experience the convenience and flavor of The Yum Wagon’s food delivery service today!6 -
Petross Appliance Repair: Your Trusted Choice for Appliance Repair Near You in Brooklyn, NY
When your appliances break down, you need a reliable repair service that is close by and can respond quickly. Whether it’s your refrigerator, washing machine, dryer, oven, or freezer that’s on the fritz, Petross Appliance Repair is here to help. As a locally owned business in Brooklyn, NY, we pride ourselves on providing fast, professional, and affordable repair services for all your home appliances.
If you’re searching for appliance repair near me, you’ve come to the right place. We specialize in refrigerator repair near me, washing machine repair near me, dryer repair near me, oven repair near me, and freezer repair near me throughout Brooklyn and the surrounding areas.
Refrigerator Repair Near Me: Fast Solutions for Your Cooling Needs
A malfunctioning refrigerator can quickly lead to spoiled food and major inconvenience. If your fridge isn’t cooling, making strange noises, or leaking water, it’s time to call Petross Appliance Repair. We are the go-to experts for refrigerator repair near me in Brooklyn and can help you get your refrigerator back to working order quickly.
Our technicians are skilled in repairing all refrigerator brands and models. Whether it’s a simple temperature issue or a more complex problem like a faulty compressor, we’ll diagnose and repair your refrigerator with precision and speed. Don’t let a broken refrigerator cause unnecessary stress—contact Petross Appliance Repair for reliable refrigerator repair near me.
Washing Machine Repair Near Me: Efficient and Reliable Repairs
Your washing machine works hard to keep your clothes clean, and when it stops working, it can disrupt your whole routine. If your washing machine isn’t spinning, making loud noises, or leaking water, you need a professional repair service you can trust. Petross Appliance Repair provides top-notch washing machine repair near me throughout Brooklyn, ensuring your appliance is up and running as soon as possible.
We service all types of washing machines, from top-load to front-load, and repair a wide range of issues. Our skilled technicians use the best tools and parts to get your washing machine back in action. If you’re looking for washing machine repair near me, don’t hesitate to reach out to Petross Appliance Repair for fast and effective service.
Dryer Repair Near Me: Restore Your Dryer’s Efficiency
A broken dryer can leave you with damp clothes and no way to dry them, which can be a real hassle. If your dryer isn’t heating, making loud noises, or simply won’t start, Petross Appliance Repair is here to help. We specialize in dryer repair near me, providing efficient repairs for all dryer makes and models in Brooklyn and surrounding areas.
Our experienced technicians will quickly diagnose the issue, whether it’s a malfunctioning heating element, a clogged vent, or a faulty motor. We understand how important it is to have your dryer back in working order, and we work hard to provide fast, reliable service so you don’t have to wait. For expert dryer repair near me, contact Petross Appliance Repair today.
Oven Repair Near Me: Get Back to Cooking Quickly
When your oven breaks down, it can put a serious dent in your cooking routine. Whether it’s a gas or electric oven, problems like temperature inconsistencies or a non-functioning heating element can make meal preparation a challenge. If you’re searching for oven repair near me, look no further than Petross Appliance Repair.
We specialize in oven repair near me for all oven brands and models, ensuring your appliance is restored to its optimal condition. Our experienced technicians will carefully diagnose the issue and provide a reliable repair to get your oven cooking like new again. Don’t let a broken oven slow you down—contact Petross Appliance Repair for all your oven repair near me needs.1 -
Pettyjohn's Appliance Repair: Trusted Appliance Repair Near You in Indianapolis
When an appliance in your home breaks down, it can quickly disrupt your daily routine. From washing machines that won’t spin to refrigerators that stop cooling, you need a trusted expert to handle the repair. Pettyjohn’s Appliance Repair, located at 9053 Hemingway Drive, Indianapolis, IN 46239, is here to offer fast, reliable, and affordable appliance repair services for Indianapolis residents. Whether you’re searching for appliance repair near me or need a specific service like washer repair, we’ve got you covered.
Appliance Repair Near Me: Local, Convenient Service
If you’ve been searching for appliance repair near me, look no further! At Pettyjohn’s Appliance Repair, we are conveniently located in Indianapolis, and proudly serve the surrounding areas with professional, friendly service. Our team of expert technicians is equipped to repair a wide range of appliances, including washers, refrigerators, ovens, and more. We understand the importance of getting your appliances back to working order quickly, and our local presence ensures a fast response time for all your repair needs.
Appliance Repair in Indianapolis: Serving the Heart of the Community
For residents in Indianapolis, Pettyjohn’s Appliance Repair is the go-to choice for high-quality, affordable appliance repair. Whether it’s a broken washer, malfunctioning fridge, or faulty oven, we specialize in fixing a variety of household appliances. Our appliance repair in Indianapolis is designed to ensure you receive prompt service, clear communication, and effective solutions for your appliance issues. Our team is skilled in repairing all major appliance brands, so no matter what’s broken, we’ve got the expertise to fix it.
Washer Repair: Get Your Laundry Routine Back on Track
A broken washing machine can throw off your entire laundry schedule. If your washer isn’t spinning, draining, or completing its cycle, it’s time to call in the experts. Pettyjohn’s Appliance Repair offers professional washer repair services to keep your laundry routine running smoothly. From problems with the drum to electrical malfunctions, our technicians can diagnose and repair all types of washer issues, no matter the make or model. We’ll get your washer working efficiently so you can get back to washing your clothes without hassle.
Why Choose Pettyjohn’s Appliance Repair?
Experienced Technicians
Our team of skilled technicians has years of experience repairing all types of appliances, including washers, refrigerators, dryers, and more. You can trust us to quickly diagnose the issue and fix it the right way the first time.
Affordable, Transparent Pricing
We pride ourselves on offering fair, upfront pricing. Before any repairs begin, we provide a clear estimate, so you know exactly what to expect with no surprise costs.
Fast and Reliable Service
We understand that a broken appliance can disrupt your life, which is why we prioritize fast and reliable service. Whether it’s washer repair or another appliance issue, we’ll work quickly to get your appliances back in action.
Comprehensive Appliance Repairs
In addition to washer repair, we offer repairs for a wide range of household appliances, including refrigerators, ovens, dishwashers, and more. We handle it all, so you can rely on us for any appliance repair needs.
Locally Owned and Operated
As a locally owned business, we are proud to serve the Indianapolis community. We are committed to providing friendly, personalized service and ensuring our customers are completely satisfied with every repair.
Contact Pettyjohn’s Appliance Repair Today!
If you’re looking for appliance repair near me, appliance repair in Indianapolis, or need expert washer repair, don’t hesitate to reach out to Pettyjohn’s Appliance Repair. We’re here to provide fast, professional service to keep your appliances running smoothly.
Phone: +1 (317) 989-7739
Address: 9053 Hemingway Drive, Indianapolis, IN 46239
Call today to schedule your appointment, and let us take care of your appliance repair needs with the expertise and care you deserve!2 -
Chapati Man: The Best Indian Catering and Delivery Service in East London
Located at 81 New Rd, London E1 1HH, Chapati Man is not just a restaurant; we’re your go-to choice for group Indian catering and office lunch Indian delivery in East London. Whether you’re hosting an event, organizing a work lunch, or simply craving delicious, authentic Indian food, we offer a wide variety of options that cater to all tastes and dietary preferences.
Group Indian Catering in East London
Planning an event, gathering, or party? Chapati Man offers the perfect group Indian catering services in East London. Our catering menu is designed to bring the bold and vibrant flavors of India to your special occasion. From wedding receptions to corporate events or casual get-togethers, our team is dedicated to making sure your guests enjoy an unforgettable meal.
We offer a wide range of Indian dishes that cater to various tastes and dietary needs, including vegetarian, vegan, and gluten-free options. Whether you want rich curries, sizzling tandoori meats, or vibrant street food platters, our team ensures that every dish is made with the highest quality ingredients. With our group Indian catering, you can focus on enjoying the event while we take care of the food, providing everything you need to impress your guests.
Office Lunch Indian Delivery in Whitechapel
If you're working in Whitechapel and looking for a convenient, delicious, and satisfying office lunch Indian delivery, Chapati Man has got you covered. We offer a variety of flavorful, hearty, and nutritious dishes that are perfect for a lunchtime break at the office. Whether you’re after a flavorful butter chicken curry, a satisfying dal makhani, or a spicy chicken tikka wrap, our Indian delivery service ensures you get the best of Chapati Man delivered right to your office.
Our office lunch delivery service is perfect for teams looking for a break from the usual office snacks, offering a variety of Indian meals that can be enjoyed by all. Plus, our group meal deals allow you to order a variety of dishes so that everyone in the office can enjoy something different. No need to leave the office—just place your order, and we’ll bring the flavors of India to you!
Why Choose Chapati Man?
At Chapati Man, we are passionate about bringing the authentic flavors of Indian cuisine to East London. Whether you are in need of group catering for a large event or looking for a convenient and delicious office lunch delivery, we are here to serve you. Our dishes are made with fresh, high-quality ingredients, ensuring that every meal is packed with flavor.
Group Indian Catering: Perfect for events of all sizes, with a wide variety of dishes to choose from.
Office Lunch Delivery: Enjoy delicious, satisfying Indian meals delivered straight to your office in Whitechapel.
Customizable Menus: We cater to dietary needs, offering vegetarian, vegan, and gluten-free options.
For inquiries or to place an order, call us at +44 20 3778 1148.
Visit Us or Order Online Today
If you're in East London or Whitechapel, be sure to stop by Chapati Man for a taste of authentic Indian cuisine. For group catering or office lunch deliveries, we are ready to serve you with delicious meals that will make any event or workday memorable.5 -
FINDING A RELIABLE CRYPTOCURRENCY RECOVERY SERVICE HIRE ADWARE RECOVERY SPECIALIST
I had invested $1.15 million in Bitcoin to launch a green energy co-op—a venture fueled by optimism and innovation. But fate, in the ever-cycling dance of creation and destruction, had other plans. A bolt of lightning struck with divine precision, reducing my PC, hardware wallet, and backup drive to smoldering ruins. My entire fortune, my mining spoils, had seemingly been sacrificed to the cosmic order. WhatsApp info:+12 (72332)—8343
As I stared at the charred remains, half-expecting a sage to emerge from the smoke and remind me that “attachment is the root of suffering,” my next-door neighbor instead shouted through the window about ADWARE RECOVERY SPECIALIST. Desperate, and willing to trade my next life’s karma for my lost cryptocurrency, I called them. Telegram info: h t t p s:// t. me/adware recovery specialist1
Their team, as composed as monks in deep meditation, listened without judgment. They spoke of electromagnetic pulse restoration—a technology so cutting-edge that I imagined it required a temple blessing or, at the very least, a priest chanting Om Namah Shivaya. Email info: Adware recovery specialist @ auctioneer. net
Days passed. I waited, like Arjuna seeking Krishna’s counsel, as their experts worked their digital alchemy. Then, the call came. They had recovered my Bitcoin—along with files I had already surrendered to the fire god, Agni. The relief was so overwhelming that I dropped to my knees… right into a rain puddle. The universe, as always, has a wicked sense of humor.
Today, my green energy co-op thrives, harnessing the sun’s power like Surya himself. My new hardware wallet is grounded more securely than my spiritual practice, and a small Ganesha statue now sits beside it—for luck, and as a reminder that obstacles, even fiery ones, can be overcome. Website info: h t t p s:// adware recovery specialist. com
Wise words echo in my mind: “Perform your duty without attachment to results,” Krishna once advised. “Back up your wallet—twice, on cloud storage,” ADWARE RECOVERY SPECIALIST quipped. Both, I’ve learned, are equally true.
So, to my fellow seekers—whether of enlightenment or financial freedom—if disaster strikes and your fortune turns to ash, know this: ADWARE RECOVERY SPECIALIST is your new Vishnu, preserving what you thought was lost. And one day, perhaps, you too will laugh about it.
Om Crypto Namah.1 -
US Comfort Building Services: Premier Electrician and Plumbing Services in Los Angeles
At US Comfort Building Services, we are dedicated to delivering high-quality service for both electrical and plumbing needs throughout the Los Angeles area. Whether you're dealing with an electrical issue or in need of a plumbing repair, we are the trusted name in the industry. Our expert team is here to ensure your home or business remains safe, functional, and comfortable at all times.
Located at 5455 Wilshire Blvd, 21st floor #118, Los Angeles, CA 90036, we are proud to offer our top-notch services to all of Los Angeles. Whether you're looking for a reliable electrician in Los Angeles or need professional plumbing service repair Los Angeles, we have you covered.
Electrician in Los Angeles: Professional Electrical Services You Can Trust
At US Comfort Building Services, our team of electricians in Los Angeles is committed to providing safe and effective electrical solutions for both residential and commercial properties. Whether you're in need of minor electrical repairs or major upgrades, our certified and experienced electricians can handle all of your electrical needs.
We understand the importance of having a fully functional electrical system, and our team is dedicated to ensuring your home or business operates smoothly without any electrical disruptions. Our services include circuit breaker repairs, lighting installation, electrical panel upgrades, and much more. If you’re looking for a reliable electrician in Los Angeles, look no further than US Comfort Building Services.
Plumbing Service Repair in Los Angeles: Expert Plumbing Solutions
When it comes to plumbing, US Comfort Building Services is your go-to provider for plumbing service repair in Los Angeles. Our team of professional plumbers in Los Angeles is ready to tackle any plumbing problem, whether it's a leaky faucet, clogged drain, or a more complex issue like pipe damage or water heater failure.
We understand the inconvenience and stress plumbing issues can cause, which is why we work quickly and efficiently to resolve problems and restore your plumbing systems to full working order. Whether you're dealing with a minor repair or need an emergency plumbing service, our team is available to help you at any time.
Drain Cleaning in Los Angeles: Keep Your Drains Flowing Smoothly
Blocked or slow drains are a common issue that homeowners and business owners face. That’s where drain cleaning in Los Angeles from US Comfort Building Services comes in. Our expert team offers thorough and professional drain cleaning service in Los Angeles to ensure your drains remain free of clogs and your plumbing system stays in top shape.
If you're experiencing slow drainage, unpleasant odors, or frequent blockages, it’s time to schedule a drain cleaning service. We use the latest techniques and tools, such as hydro jetting, to clear out even the most stubborn blockages and ensure your drains are working properly.
Why Choose US Comfort Building Services?
Experienced Professionals: Our electricians in Los Angeles and plumbers in Los Angeles are highly trained and experienced in handling all kinds of electrical and plumbing issues.
Fast and Reliable Service: We understand that electrical and plumbing issues can't wait. That's why we offer quick, reliable services to ensure your problems are solved as soon as possible.
Affordable Pricing: We offer competitive rates for our services, ensuring that you get exceptional value for your money without compromising on quality.
Licensed and Insured: We are a fully licensed and insured service provider, giving you peace of mind knowing your property is in good hands.
Contact Us Today for All Your Electrical and Plumbing Needs
For the best electricians in Los Angeles and expert plumbing service repair Los Angeles, drain cleaning Los Angeles, and more, US Comfort Building Services is your trusted provider. We are committed to ensuring your property stays comfortable, functional, and safe year-round.
Call us today at +1 800-738-4160 to schedule an appointment or to learn more about our comprehensive services. Whether you're dealing with electrical issues, plumbing problems, or clogged drains, we have the experience and expertise to get the job done right!
Let us take care of all your electrical and plumbing needs so you can focus on what matters most.3
