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 - "old new project"
-
Oh, man, I just realized I haven't ranted one of my best stories on here!
So, here goes!
A few years back the company I work for was contacted by an older client regarding a new project.
The guy was now pitching to build the website for the Parliament of another country (not gonna name it, NDAs and stuff), and was planning on outsourcing the development, as he had no team and he was only aiming on taking care of the client service/project management side of the project.
Out of principle (and also to preserve our mental integrity), we have purposely avoided working with government bodies of any kind, in any country, but he was a friend of our CEO and pleaded until we singed on board.
Now, the project itself was way bigger than we expected, as the wanted more of an internal CRM, centralized document archive, event management, internal planning, multiple interfaced, role based access restricted monster of an administration interface, complete with regular user website, also packed with all kind of features, dashboards and so on.
Long story short, a lot bigger than what we were expecting based on the initial brief.
The development period was hell. New features were coming in on a weekly basis. Already implemented functionality was constantly being changed or redefined. No requests we ever made about clarifications and/or materials or information were ever answered on time.
They also somehow bullied the guy that brought us the project into also including the data migration from the old website into the new one we were building and we somehow ended up having to extract meaningful, formatted, sanitized content parsing static HTML files and connecting them to download-able files (almost every page in the old website had files available to download) we needed to also include in a sane way.
Now, don't think the files were simple URL paths we can trace to a folder/file path, oh no!!! The links were some form of hash combination that had to be exploded and tested against some king of database relationship tables that only had hashed indexes relating to other tables, that also only had hashed indexes relating to some other tables that kept a database of the website pages HTML file naming. So what we had to do is identify the files based on a combination of hashed indexes and re-hashed HTML file names that in the end would give us a filename for a real file that we had to then search for inside a list of over 20 folders not related to one another.
So we did this. Created a script that processed the hell out of over 10000 HTML files, database entries and files and re-indexed and re-named all this shit into a meaningful database of sane data and well organized files.
So, with this we were nearing the finish line for the project, which by now exceeded the estimated time by over to times.
We test everything, retest it all again for good measure, pack everything up for deployment, simulate on a staging environment, give the final client access to the staging version, get them to accept that all requirements are met, finish writing the documentation for the codebase, write detailed deployment procedure, include some automation and testing tools also for good measure, recommend production setup, hardware specs, software versions, server side optimization like caching, load balancing and all that we could think would ever be useful, all with more documentation and instructions.
As the project was built on PHP/MySQL (as requested), we recommended a Linux environment for production. Oh, I forgot to tell you that over the development period they kept asking us to also include steps for Windows procedures along with our regular documentation. Was a bit strange, but we added it in there just so we can finish and close the damn project.
So, we send them all the above and go get drunk as fuck in celebration of getting rid of them once and for all...
Next day: hung over, I get to the office, open my laptop and see on new email. I only had the one new mail, so I open it to see what it's about.
Lo and behold! The fuckers over in the other country that called themselves "IT guys", and were the ones making all the changes and additions to our requirements, were not capable enough to follow step by step instructions in order to deploy the project on their servers!!!
[Continues in the comments]26 -
So a few days ago I felt pretty h*ckin professional.
I'm an intern and my job was to get the last 2003 server off the racks (It's a government job, so it's a wonder we only have one 2003 server left). The problem being that the service running on that server cannot just be placed on a new OS. It's some custom engineering document server that was built in 2003 on a 1995 tech stack and it had been abandoned for so long that it was apparently lost to time with no hope of recovery.
"Please redesign the system. Use a modern tech stack. Have at it, she's your project, do as you wish."
Music to my ears.
First challenge is getting the data off the old server. It's a 1995 .mdb file, so the most recent version of Access that would be able to open it is 2010.
Option two: There's an "export" button that literally just vomits all 16,644 records into a tab-delimited text file. Since this option didn't require scavenging up an old version of Access, I wrote a Python script to just read the export file.
And something like 30% of the records were invalid. Why? Well, one of the fields allowed for newline characters. This was an issue because records were separated by newline. So any record with a field containing newline became invalid.
Although, this did not stop me. Not even close. I figured it out and fixed it in about 10 minutes. All records read into the program without issue.
Next for designing the database. My stack is MySQL and NodeJS, which my supervisors approved of. There was a lot of data that looked like it would fit into an integer, but one or two odd records would have something like "1050b" which mean that just a few items prevented me from having as slick of a database design as I wanted. I designed the tables, about 18 columns per record, mostly varchar(64).
Next challenge was putting the exported data into the database. At first I thought of doing it record by record from my python script. Connect to the MySQL server and just iterate over all the data I had. But what I ended up actually doing was generating a .sql file and running that on the server. This took a few tries thanks to a lot of inconsistencies in the data, but eventually, I got all 16k records in the new database and I had never been so happy.
The next two hours were very productive, designing a front end which was very clean. I had just enough time to design a rough prototype that works totally off ajax requests. I want to keep it that way so that other services can contact this data, as it may be useful to have an engineering data API.
Anyways, that was my win story of the week. I was handed a challenge; an old, decaying server full of important data, and despite the hitches one might expect from archaic data, I was able to rescue every byte. I will probably be presenting my prototype to the higher ups in Engineering sometime this week.
Happy Algo!8 -
You know what?
Young cocky React devs can suck my old fuckin LAMP and Objective-C balls.
Got a new freelance job and got brought in to triage a React Native iOS/Android app. Lead dev's first comment to me is: "Bro, have you ever used React Native".
To which I had to reply to save my honor publicly, "No, but I have like 8 years with Objective-C and 3 years with Swift, and 3 years with Node, so I maybe I'll still be able help. Sometimes it just helps to have a fresh set of eyes."
"Well, nobody but me can work on this code."
And that, as it turned out was almost true.
After going back and forth with our PM and this dev I finally get his code base.
"Just run "npm install" he says".
Like no fuckin shit junior... lets see if that will actually work.
Node 14... nope whole project dies.
Node 12 LTS... nope whole project dies.
Install all of react native globally because fuck it, try again... still dies.
Node 10 LTS... project installs but still won't run or build complaining about some conflict with React Native libraries and Cocoa pods.
Go back to my PM... "Um, this project won't work on any version of Node newer than about 5 years old... and even if it did it still won't build, and even if it would build it still runs like shit. And even if we fix all of that Apple might still tell us to fuck off because it's React Native.
Spend like a week in npm and node hell just trying to fucking hand install enough dependencies to unfuck this turds project.
All the while the original dev is still trying TO FIX HIS OWN FUCKING CODE while also being a cocky ass the entire time. Now, I can appreciate a cocky dev... I was horrendously cocky in my younger days and have only gotten marginally better with age. But if you're gonna be cocky, you also have to be good at it. And this guy was not.
Lo, we're not done. OG Dev comes down with "Corona Virus"... I put this in quotes because the dude ends up drawing out his "virus" for over 4 months before finally putting us in touch with "another dev team he sometimes uses".
Next, me and my PM get on a MS Teams call with this Indian house. No problems there, I've worked with the Indians before... but... these are guys are not good. They're talking about how they've already built the iOS build... but then I ask them what they did to sort out the ReactNative/Cocoa Pods conflict and they have no idea what I'm talking about.
Why?
Well, one of these suckers sends a link to some repo and I find out why. When he sends the link it exposes his email...
This Indian dude's emails was our-devs-name@gmail.com...
We'd been played.
Company sued the shit out of the OG dev and the Indian company he was selling off his work to.
I rewrote the app in Swift.
So, lets review... the React dev fucked up his own project so bad even he couldn't fix it... had to get a team of Indians to help who also couldn't fix it... was still a dickhead to me when I couldn't fix it... and in the end it was all so broken we had to just do a rewrite.
None of you get npm. None of you get React. None of you get that doing the web the way Mark Zucherberg does it just makes you a choad locked into that ecosystem. None of you can fix your own damn projects when one of the 6,000 dependency developers pushes breaking changes. None of you ever even bother with "npm audit fix" because if security was a concern you'd be using a server side language for fucking server side programming like a grown up.
So, next time a senior dev with 20 years exp. gets brought in to help triage a project that you yourself fucked up... Remember that the new thing you know and think makes you cool? It's not new and it's not cool. It's just JavaScript on the server so you script kiddies never have to learn anything but JavaScript... which makes you inarguably worse programmers.
And, MF, I was literally writing javascript while you were sucking your mommas titties so just chill... this shit ain't new and I've got a dozen of my own Node daemons running right now... difference is?
Mine are still working.34 -
Not mine, found this on Reddit, still a good read
========
I work in IT as a lead developer, as in I run the department. One of my team leads is female, let's call her Ripley. She is young, smart, and a great dev.
Today she met with a new customer to discuss a big project. Project management sent a male project manager (Hicks).
It started perfectly with Customer asking Ripley for coffee. He's informed about her status and mutters something like an apology. He is visibly unhappy.
He then proceeds to ask Hicks technical questions despite having been told that Ripley will answer all the technical stuff. Ripley tries to answer questions. Customer ignores Ripley and continues talking to Hicks.
Hicks tells him politely that Ripley is the one to talk to, since he is not a dev and unable to help him. Ripley tries again to explain stuff.
Customer gets angry and demands another developer, since Ripley is "obviously far too young for a project of this complexity". Ripley rolls her eyes and leaves. Not the first time this happens.
Hicks smoothes the waves and tells the customer that the senior lead developer will personally answer all his questions. Customer is satisfied.
I walk in and calmly introduce myself.
The customer - now far less satisfied - was forced to discuss all his questions with yours truly, the 47 year old female IT nerd. I was very professional, friendly, and businesslike, he was visibly uncomfortable and irritated by the situation.
It's petty and stupid, but man, it felt great watching his face fall when I entered. I've been in Ripley's shoes far too often and today I heard 23 old me cheering me on.
Ripley loved it as well. She made sure to smile extra brightly at customer when she walked past the meeting room on her way to the coffee machine.
======
https://reddit.com/r/...18 -
6pm - arrive home from work, log into my computer and start working on side projects.
4am - Finally go to sleep after staying up all night setting up arch in a vm.
7am - Start drive to work in the snow and ice.
7:20am - car runs out of wiper fluid.
7:30am - round corner so that I’m driving towards the sun, windshield is covered in mud and I have 2% visibility.
7:35am - take off ramp towards gas station so I can buy fluid and wash window.
7:36am - Car mysteriously parked in center of off ramp, nearly smash it but have a narrow miss.
7:40am - can’t find the freaking pully in new car to pop hood
7:41am - found it.
7:50am - drove the back way to work because it cuts out traffic, but includes many steep hills that I forgot existed, come to a skid at bottom of one and am pushed out into the main road, luckily nobody is coming and I’m able to continue on my merry way.
8:01am - sit down in desk, lead staff person comes over evoking Lumbergh from Office Space and lets me know I need to be on time to work and that the snow doesn’t give me an excuse. I agree and smile and suck up and he leaves.
8:02am - pull out phone to write down notes about personal project that I thought of on drive here, phone dies. I forgot to plug it in last night.
8:04am - found power bank charger thing in desk but it uses a micro-b type usb and I only have usb type c on me.
8:10am - borrow usb from old headset in office surplus.
8:11am - writing notes. Have sudden realization that I didn’t shut down my vm and that when my computer went to sleep and subsequently locked it probably halted virtualbox and everything would be lost for the second time.
8:12am - got on devRant.4 -
I worked on a greenfield project a couple of years ago. The company had an old solution written in Omnis (heard of it? Yeah, me neither) with an SQL database. My team was to create a completely new web based system... on top of the old database, so the customers could keep their existing stuff.
The dba was an intelligent man, one of the nicest people I've met, and over the course of fifteen years he had made a remarkably terrifying monstrosity of a database. Some years before me they wanted to "future proof" the system and make it "easier to switch to new technologies". So they moved the entire business logic into the database...
I used a tool to create a visualization of said database when we started. It had no views, only tables and sprocs. Look at it! Tables and sprocs are rectangles (well, dots) and any connections are drawn in grey lines. There were no foreign keys, so a tables only visualization only yielded a collection of independent rectangles without a single line.
Now, the stored procedures were bloody MASSIVE. A single procedure that only registered a new interested party and attached them to a property had 2500+ lines and over 150 parameters.
Also, this dba added features and fixed bugs by logging into the respective customers production server and writing SQL.
That database is the stupidest thing I've ever seen a developer do.35 -
//
// devRant unofficial UWP update (v2.0.0-beta)
//
After several concepts, about 11 months of development (keep in mind that I released 20 updates for v1 in the meantime, so it wasn't a continous 11 months long development process) and a short closed beta phase, v2 is now available for everyone (as public beta)! :)
I tried to improve the app in every aspect, from finally responsive and good looking UI on Desktop version to backend performance improvements, which means that I almost coded it from scratch.
There are also of course a few new features (like "go to bottom" in rants), and more to come.
It's a very huge update, and unfortunately to move forward, improve the UI (add Fluent Design) and make it at the same level of new UWP apps, I was forced to drop the supported for these old Windows 10 builds:
- Threshold 1 (10240)
- Threshold 2 (10586)
Too many incompatiblity issues with the new UI, and for 1 person with a lot of other commitments outside this project (made for free, just for passion), it's impossible to work at 3 parallel versions of the same app.
I already done something like that during these 11 months (every single of the 20 updates for v1 needed to be implemented a second time for v2).
During the closed beta tests, thanks to the awesome testers who helped me way too much than I ever wished, I found out that there are already incompatiblity issues with Anniversary Update, which means that I will support two versions:
1) One for Creators Update and newer builds.
2) One for Anniversary Update (same features, but missing Fluent Design since it doesn't work on that OS version, and almost completly rewritten XAML styles).
For this reason v2 public beta is out now for Creators Update (and newer) as regular update, and will be out in a near future (can't say when) also for the Anniversary Update.
The users with older OS versions (problem which on PC could be solved in 1-2 days, just download updates) can download only the v1.5.9 (which probably won't be supported with new updates anymore, except for particular critcal bug fixes).
So if you have Windows 10 on PC and want to use v2 today, just be sure you have Creators Update or Fall Creators Update.
If you have Windows 10 PC with Anniversary Update, update it, or if you don't want to do that, wait a few weeks/months for the update with support for your build.
If you have an older version on PC, update it, or enjoy v1.5.9.
If you have Windows 10 Mobile Anniversary Update, update it (if it's possible for your device), or just wait a few weeks/months for the update with support for your build.
If you have Windows 10 Mobile, and because of Microsoft stupid policy, you can't update to Anniversary Update, enjoy v1.5.9, or try the "unofficial" method (registry hack) to update to a newer build.
I hope it's enough clear why not everyone can receive the update today, or at all. :P
Now I would like to thank a few people who made this possible.
As always, @dfox who is always available for help me with API implementations.
@thmnmlist, who helped me a lot during this period with really great UI suggestions (just check out his twitter, it's a really good person, friend, designer and artist: https://twitter.com/thmnmlist).
And of course everyone of the closed beta testers, that reported bugs and precious suggestions (some of them already implemented, others will arrive soon).
The order is random:
@Raamakrishnan
@Telescuffle
@Qaldim
@thmnmlist
@nikola1402
@aayusharyan
@cozyplanes
@Vivaed
@Byte
@RTRMS
@tylerleonhardt
@Seshpengiun
@MEGADROID
@nottoobright
Changelog of v2.0.0-beta:
- New UI with Fluent Design and huge improvements for Desktop;
- Added native support for Fall Creators Update (Build 16299);
- Changed minimum supported version to Creators Update (Build 15063), support for Anniversary Update (Build 14393) will arrive soon;
- Added mouse support for Pull-To-Refresh;
- Added ability to change your username and email;
- Added ability to filter (by 'Day', 'Week', 'Month' and 'All') the top Rants;
- Added ability to open rant links in-app;
- Added ability to zoom GIFs (just tap on them in the Rant View);
- Added 'go to bottom' button in the Rant View (if more than 3 comments);
- Added new theme ('Total Black');
- ...complete changelog in-app and on my website (can't post it here because of the 5000 characters limit)...
What will arrive in future updates:
- 'Active Discussions' screen so you can easily find rants that have recent comments/discussions;
- Support for 'Collabs';
- Push Notifications (it was postponed and announced too many times...);
- More themes and themes options;
- and more...
If you still didn't download devRant unofficial UWP, do it now: https://microsoft.com/store/apps/...
If you find some bugs or you have feature suggestion, post it on the Issue Tracker on GitHub (thanks in advance for your help!): https://github.com/JakubSteplowski/...
I hope you will enjoy it! ;)52 -
How I went from loving my job to wishing i dont wake up tomorrow just to avoid it.
Ive been a backend dev in the company im at for 2 years now.
First year was a blast, i loved my work so much, I used to get so many random features to do, bug fixes, campaigns, analytics, etc..
Second year i started getting familiar with the part of the code that has to do with Search in our music streaming app. Nobody wanted to work on it, so i wanted to take initiative and start doing a few tasks.
A few tasks turned into sprints, and sprints turned into months worth of sprints. And because the code was the definition of tech debt, and because it was so messed up that changing one thing can blow up everything else, working on Search was not too fun.
However, people seemed to be happy search tasks are no longer piling up and someone is handling them so that used to make me feel good about it. They also gave me so much freedom and i felt like my own manager because no one told me what to do (not even my actual manager) they just let me be and were happy i was handling the part they want nothing to do with. I was also given an intern to mentor and have her work on Search tasks with me which turned out amazing.
During the last few months, I completely rewrote search, made it 10 times more performant in such a neat way, made an inhouse dashboard to automate certain tasks so we wont need to waste developers on them (all of which were extra effort on my own time without being asked), all meanwhile still tending to the fixes of the old implementation.
I felt so accomplished, and in a way, i felt like a lead (even tho im not managing any employees, i had so much freedom and I was literally responsible for everything about Search and if i decide to play with the sprint task order i can even do that).
Then 6 or so weeks ago my manager left the company, and while i thought id be a standalone team / person (single person teams are not uncommon in the company) i was instead put under someone else. Someone who likes to micro manage the fuck out of me. I have been happy working on shit code because it was my baby, my project, no one interferes and no one tells me what to do and everyone would call me the search lead (unofficially). now if i dont report to that guy every two hours he calls to see if im working. preplans sprints i no longer have a say in, and im the only dev who knows the code so all tasks go to me. I feel i got demoted so fucking much. I felt like a lead on a project and now im back to being a normal code minion. From deciding everything about a project to blindly following a some irrelevant manager's opinion. (who btw is making Search worse) And after all the extra effort i put in, after actually caring, after actually embracing Search as my responsibility i get rewarded with losing everything i liked about my job...My Independence. From feeling like a lead to feeling demoted. I am so demotivated.
I love the company, but this is hell for me and this made me hate a job i always loved. I am thinking of talking to the CTO asking to work on other stuff because i no longer want this. If i am to be a code minion at least let it be on code i like, let me go back to dealing with PMs, fuck my new manager I dont wanna work with that guy he can take the project along with all its poopoo.16 -
Seven months ago:
===============
Project Manager: - "Guys, we need to make this brand new ProjectX, here are the specs. What do you think?"
Bored Old Lead: - "I was going to resign this week but you've convinced me, this is a challenge, I never worked with this stack, I'm staying! I'll gladly play with this framework I never used before, it seems to work with this libA I can use here and this libB that I can use here! Such fun!"
Project Manager: - "Awesome! I'm counting on you!"
Six months ago:
====================
Cprn: - "So this part you asked me to implement is tons of work due to the way you're using libA. I really don't think we need it here. We could use a more common approach."
Bored Old Lead: - "No, I already rewrote parts of libB to work with libA, we're keeping it. Just do what's needed."
Cprn: - "Really? Oh, I see. It solves this one issue I'm having at least. Did you push the changes upstream?"
Bored Old Lead: - "No, nobody uses it like that, people don't need it."
Cprn: - "Wait... What? Then why did you even *think* about using those two libs together? It makes no sense."
Bored Old Lead: - "Come on, it's a challenge! Read it! Understand it! It'll make you a better coder!"
Four months ago:
==============
Cprn: - "That version of the framework you used is loosing support next month. We really should update."
Bored Old Lead: - "Yeah, we can't. I changed some core framework mechanics and the patches won't work with the new version. I'd have to rewrite these."
Cprn: - "Please do?"
Bored Old Lead: - "Nah, it's a waste of time! We're not updating!"
Three months ago:
===============
Bored Old Lead: - "The code you committed doesn't pass the tests."
Cprn: - "I just run it on my working copy and everything passes."
Bored Old Lead: - "Doesn't work on mine."
Cprn: - "Let me take a look... Ah! Here you go! You've misused these two options in the framework config for your dev environment."
Bored Old Lead: - "No, I had to hack them like that to work with libB."
Cprn: - "But the new framework version already brings everything we need from libB. We could just update and drop it."
Bored Old Lead: - "No! Can't update, remember?"
Last Friday:
=========
Bored Old Lead: - "You need to rewrite these tests. They work really slow. Two hours to pass all."
Cprn: - "What..? How come? I just run them on revision from this morning and all passed in a minute."
Bored Old Lead: - "Pull the changes and try again. I changed few input dataset objects and then copied results from error messages to assertions to make the tests pass and now it takes two hours. I've narrowed it to those weird tests here."
Cprn: - "Yeah, all of those use ORM. Maybe it's something with the model?"
Bored Old Lead: - "No, all is fine with the model. I was just there rewriting the way framework maps data types to accommodate for my new type that's really just an enum but I made it into a special custom object that needs special custom handling in the ORM. I haven't noticed any issues."
Cprn: - "What!? This makes *zero* sense! You're rewriting vendor code and expect everything to just work!? You're using libs that aren't designed to work together in production code because you wanted a challenge!?? And when everything blows up you're blaming my test code that you're feeding with incorrect dataset!??? See you on Monday, I'm going home! *door slam*"
Today:
=====
Project Manager: - "Cprn, Bored Old Lead left on Friday. He said he can't work with you. You're responsible for Project X now."24 -
Senior Management: We are severely disappointed in the timeliness of the two apps you built this year. You had budgeted 3 months for one and it took 4 months and the other was budgeted to take 4 months and took 5 months. We understand that we doubled the requirements halfway through and but that doesn’t take away from our need for you to deliver on time. We provided you with two extra devs on the project! We know they were novices and you had to train them from the ground up during the project, that doesn’t matter. The extra resources should have helped you but your lack of leadership ability is what caused them to hold you back. We know our other team with a budget of 6 months took 2 years on their project and was still unsuccessful but that is a different scenario! That was a pre-built 3rd party ERP plugin, way more complicated and nuanced than simply building and deploying something from scratch. Yes we’re aware your projects were the only successful tech projects at the company this year, that’s just luck and coincidence. The next app we need you to build in 6 months, no questions asked. It needs to consolidate and tie together our 3 different ERPs. Everything that we need out of these products that they don’t do out of the box we need you to wire up. We will decide the exact requirements in a month or so, for now just get started. Yes your apps changed the way we do business and allowed us to complete projects smoother than ever before while saving millions of dollars in wasteful and archaic processes that is OLD NEWS. Stop bringing it up. The successes of yesterday are the status quo of today. Don’t expect any new resources either, you clearly can’t handle them. You will now be giving status updates to 3 different managers as a corrective action to your missed deadlines in order to ensure the timeliness of future deliverables.
Dev: …25 -
I usually don't work for indian clients. But when I do, they make sure I don't get paid.
Some highlights from my last project,
Client: Do you know ERPnext?
Me: No, but I am good at python.
Client: My boss wants me to find a guy who can create barcode generator for erpnext.
Me: I can use pyBarcode to do it.
This is exciting I thought. I get to learn a new framework. Start working on it. Not an hour passes by,
Client: hey can you remove this menu item?
Me: Which one?
Client: Also can you add the dashboard icons to left sidebar? Like Odoo? Do you know it? It is also python based.
Me: Then why don't you just use Odoo instead?
Client: My boss wants it. He doesn't understand computers. He is pissing mr off.
Me: Then how come he suggested erpnext?
Client: His friend told him.
*experience mindfuck*
For the next 3 days he has me working on these UI tweaks, never mentions barcode again.
But I finish the barcode stuff. Tripple check everything to make sure they work. Tell him to check so I can get paid. Guy asks his boss to check.
Boss > Client: It doesn't work
Me: What doesn't work?
Boss > Client: Everything!
Client: I actually tested everything and they work. My boss doesn't know how to use it. He is very old.
Makes me make more changes and finally when I ask for the work done so far,
Client: Boss didn't come to office today. I'll get you paid. Please try to understand my situation.
Me thinking, "mofo your boss didn't hire me,l. You did". But I keep calm and tell him I won't work until I get paid 50%.
3 days passed. No reply. Set his skype status to "Away" forever.
*spidey sense tells me I'm not getting paid, again*
U am beyond pissed and burnt out. I fucking wish there was a mafia I can request to collect my fucking money from them.20 -
This is a long rant. Sorry in advance. I just want to let it all out.
I don't really know what John (not his real name) did to my boss, who I shall name as Steve. Does he have a personal grudge? Like wtf?
John wasn't even incompetent. He even helped us mobile developers in our designs using photoshop. He's flexible. Ok sure, he isn't a top performer, but he isn't a low performer either. But why the fucking hate? really.
We currently have a new project, and are assigned to our posts. Then Steve goes, "Ok John, you will remain in the old project." He already said it once, which is fine. But did he really have to bring it up EVERY TIME? "John doesn't have to go overtime because he's in the old project, so it'll only be us." Like really? Of course we know that. why do you have to keep repeating that John isn't included? He even pointed at John during this. John shouldn't have been in the meeting then. Dipshit.
There was a meeting with the Web team in regards to what the progress was. When it came to John, Steve had to say, "The design is so ugly." Ok.. first off, you are not the QA to say that. And everyone else says it's fine. Even the QA says it's fine. So wtf? Why do you hate him so much?
We have these friday meetings in where we present our topics to the team, like Object Oriented Programming, SDLCs, and the like. We presented our stuff, and Steve listened attentively to everyone. But when it came to John, guess what? he ain't listening. He's on his phone, on his EARPHONES even. fucking rude. When John finished, he said, "You didn't present everything." He talked for an hour and a half. His topic has many things. Of course he can't present everything. And that is all you have to say? What about the others then? The others didn't present everything but you didn't complain. Why do you have to humiliate him to everyone else?
Way to demoralize your employee. What a lead. Fucking piece of shit. I am treating John pizza since I can't do anything else for him. It's frustrating. I wouldn't be surprised is John left the company.9 -
I've been doing programming as a hobby since I was 10 years old, I've always found my teachers are good at IT but not that good in Computer Science and programming, this year a new teacher joined the IT department who has actual experience in programming etc.
Our school uses two services, a rewards system which for some reason can also show our timetable, and another service for displaying our homework. In my spare time I made a project which combined these two services and showed it to him. As the first teacher with actual programming experience he was impressed and now I get to 'pitch' my project to the teachers higher up.
TLDR; It's good to have a good teacher -
A huge project came my way at work. Old spaghetti code, no source control, no test env and every other possible challenge you could think of. Based on my initial quote a deadline of June 19th was approved. Two days ago the president of the company tells my boss it needs to be done by Friday, no excuses. Horrible timing since I'm moving tomorrow and am off all next week. Not to mention I'm the only dev at the company that understands/knows how to work on this code. We also don't have a budget to contract out. Literally not possible to do in 2 days. I proposed a "quick fix" solution and new design which was approved. I Spent 2 straight days working on it with overtime, no lunch hour, and the president checking on me every hour for status updates. Managed to implement my "quick fix" and just put it live 2 hours ago. President approved, and said "thanks". He then sent an email to the company and all our agents across the country anouncing the change. In the email he directly thanks the Marketing dept and the "senior leadership team" for "making the quick turnaround of this request possible". He proceeds to name specific people responsible for making this happen. No where does he mention my name or my department. Not that I'm actually surprised but it would have been nice to get some recognition considering this literally wouldn't have worked without me. Guess I should be used to it by now. I'm also now on call during my week off in case anything breaks.12
-
Me, a 19 year old student at a meeting with a "potential new project" today:
Her: So, we would like a website where people could rent a conference room, and pay for it on the website. After they have paid, we want automated emails to go out to us and the person that rents the room. We basically want an automated rental system.
Me: Sounds fair, what kind of budget do you have in mind?
Her: Well because you are a student and you still live at home, we have a budget of about €200 (~$220). We thought it'd be fair because you don't really need an income yet.
At that point I slowly tried to fade away from the meeting... Please help me 😭22 -
Story time! Promised this, so making good on the promise. Eh-hem.
Misunderstandings [A slice of life short play that actually happened]
Dramatis Personae (anonymized, bc of course):
Moi ........ me, myself and possibly some lint
Robert ..... co-architect
Daisy ...... line dev
Lisa ....... also line dev
Prologue: the beginninning
[A project is starting up, new devs are coming on, including the two individuals who drive this story.
Daisy, of Indian origin, an exceptional dev and lovely person. Mother, wife, very conservative by upbringing in her early 40s.
Lisa, also exceptional dev, lovely person. Mother, also wife, self-made immigrant with liberal views derived from personal pride and self-bootstrapping]
Enter the office, We introduce everyone, off to a nice start, everyone is happy and excited to be working on [large bank project].
Lisa and Daisy form a friendship of commonality, they have similar backgrounds by all appearances and similar concerns due to children the same age and shared employment. They seem to become fast friends and things proceed normally for some months. Smooth sailing, all is well.
The fuse is lit.
Scene: Lunchtime gossip
[Robert, middle 40s architect adjacent Moi, also architect, age is my own damn business [old, so very old].]
Robert: "So, it seems like Daisy and Lisa are getting along great."
Moi: *snerfs a little, almost chokes on enchilada* Yes, yes they are, It's nice to see...
Robert: *eyebrow, having learned to read my expressions* "Aaaaaaand..."
Moi: "I adore both of them, but they are primarily friends because they don't actually understand most of what the other says"
[Lisa has a thick Taiwanese accent, Daisy has a standard northern indian accent. Never the two shall meet]
Robert: "Are you sure, they seem to have a lot of conversations?"
Moi: "Positive, you weren't at lunch with the three of us. They're polar opposite in terms of values, it'll be fine so long as that never comes up"
Robert: "I'm not even digging into that"
Moi: *flan*
Sizzle.
Scene: This is bat country
[More months pass, everything is fine, project is humming along nicely, save a few blips of personality conflicts. Moi takes a vacation. A gas station, somewhere in the middle of Wyoming, a snowstorm, a sports car full of luggage]
*phone rings*
Moi: *looks down, sees it's Robert, eyebrow raises, answer* What's on fire?
Robert: "We had to let Lisa go"
Moi: "Ah, they finally understood each other."
Robert: "Yes..." *deep sigh*
[Fade to flashback]
Bang.
Scene: The office, Lisa's desk
[Daisy and Lisa are discussing non-descript conversation. Daisy broaches the subject of Lisa's past divorce and being a single mother]
Daisy: "It must have been hard, how did you manage?"
Lisa: "I had my daughter, she was my motivation. We made it here, I met my current partner"
Daisy: "That's good! It is so hard, coming to something new. I could never imagine leaving my husband."
Lisa: "He left us, we weren't important, I don't want to marry every again"
Daisy: "Surely you do though? Marriage is great for a woman, my parents found a great husband for me."
Lisa: "Haha, lucky you. Most indian marriage is like prostitution."
[At this moment, Daisy's demeanor takes a nose dive. Whatever was actually said, what she heard was, "Indian marriage is prostitution"]
Daisy: *tears begin pouring down her face, she flings herself back in her chair, head shaking violently she screams* "I AM AN HONORABLE WOMAN!"
[Daisy runs out of the room, straight to HR. Lisa sits there, stunned, not really understanding what just happened or the consequences]
Scene: Back in bat country
[Robert finishes the story, the emotions are a mixture of hilarity at the absurdity of the situation and frustration in the work void it has created]
Moi: "Satan, well. Fuck me. Fuck us. Fuck. Is Daisy alright, is she at least staying? We can't lose two devs at the same time."
Robert: "She got a few days off, she seems fine now, but she's... yeah, I never laughed so hard"
Moi: *double facepalm* "Yeah, the word choice was a bit outrageous. It's not like we didn't know it was coming. I'm going to get back on the road."
Robert: "Alright, enjoy yourself, I'll try and prevent any other forest fires."19 -
Dear senior developer with xx years of development experience, please, I BEG OF YOU hear my humble unprofessional opinion.
Not every junior is a inexperienced low life.
Even though I'm glad that I'm working with someone of your wide skill set and expertise, I'm not working with you by choice nor it is my intention to distract or "steal" your knowledge.
When I suggested using a newer version of jQuery for this new project that didn't mean I'm challenging you to work on something new for your domain, I'm merely suggesting this change because jQuery 1.2 is just old and a big portion of it is deprecated.
When I suggest some changes on your CSS selectors that doesn't mean I'm acting out of place, it is my genuine interest of having effecient css where possible.
I know you (in your opinion) are the best full stack developer in the industry, but maaaan you kill me when you use js and regex to validate input type=email (table filp) ... Haalllloooo it's 2017 this Sunday aren't we supposed to progress instead of remaining in the same old same ?
RANT!!!10 -
I have this little hobby project going on for a while now, and I thought it's worth sharing. Now at first blush this might seem like just another screenshot with neofetch.. but this thing has quite the story to tell. This laptop is no less than 17 years old.
So, a Compaq nx7010, a business laptop from 2004. It has had plenty of software and hardware mods alike. Let's start with the software.
It's running run-off-the-mill Debian 9, with a custom kernel. The reason why it's running that version of Debian is because of bugs in the network driver (ipw2200) in Debian 10, causing it to disconnect after a day or so. Less of an issue in Debian 9, and seemingly fixed by upgrading the kernel to a custom one. And the kernel is actually one of the things where you can save heaps of space when you do it yourself. The kernel package itself is 8.4MB for this one. The headers are 7.4MB. The stock kernels on the other hand (4.19 at downstream revisions 9, 10 and 13) took up a whole GB of space combined. That is how much I've been able to remove, even from headless systems. The stock kernels are incredibly bloated for what they are.
Other than that, most of the data storage is done through NFS over WiFi, which is actually faster than what is inside this laptop (a CF card which I will get to later).
Now let's talk hardware. And at age 17, you can imagine that it has seen quite a bit of maintenance there. The easiest mod is probably the flash mod. These old laptops use IDE for storage rather than SATA. Now the nice thing about IDE is that it actually lives on to this very day, in CF cards. The pinout is exactly the same. So you can use passive IDE-CF adapters and plug in a CF card. Easy!
The next thing I want to talk about is the battery. And um.. why that one is a bad idea to mod. Finding replacements for such old hardware.. good luck with that. So your other option is something called recelling, where you disassemble the battery and, well, replace the cells. The problem is that those battery packs are built like tanks and the disassembly will likely result in a broken battery housing (which you'll still need). Also the controllers inside those battery packs are either too smart or too stupid to play nicely with new cells. On that laptop at least, the new cells still had a perceived capacity of the old ones, while obviously the voltage on the cells themselves didn't change at all. The laptop thought the batteries were done for, despite still being chock full of juice. Then I tried to recalibrate them in the BIOS and fried the battery controller. Do not try to recell the battery, unless you have a spare already. The controllers and battery housings are complete and utter dogshit.
Next up is the display backlight. Originally this laptop used to use a CCFL backlight, which is a tiny tube that is driven at around 2000 volts. To its controller go either 7, 6, 4 or 3 wires, which are all related and I will get to. Signs of it dying are redshift, and eventually it going out until you close the lid and open it up again. The reason for it is that the voltage required to keep that CCFL "excited" rises over time, beyond what the controller can do.
So, 7-pin configuration is 2x VCC (12V), 2x enable (on or off), 1x adjust (analog brightness), and 2x ground. 6-pin gets rid of 1 enable line. Those are the configurations you'll find in CCFL. Then came LED lighting which required much less power to run. So the 4-pin configuration gets rid of a VCC and a ground line. And finally you have the 3-pin configuration which gets rid of the adjust line, and you can just short it to the enable line.
There are some other mods but I'm running out of characters. Why am I telling you all this? The reason is that this laptop doesn't feel any different to use than the ThinkPad x220 and IdeaPad Y700 I have on my desk (with 6c12t, 32G of RAM, ~1TB of SSDs and 2TB HDDs). A hefty setup compared to a very dated one, yet they feel the same. It can do web browsing, I can chat on Telegram with it, and I can do programming on it. So, if you're looking for a hobby project, maybe some kind of restrictions on your hardware to spark that creativity that makes code better, I can highly recommend it. I think I'm almost done with this project, and it was heaps of fun :D12 -
Every step of this project has added another six hurdles. I thought it would be easy, and estimated it at two days to give myself a day off. But instead it's ridiculous. I'm also feeling burned out, depressed (work stress, etc.), and exhausted since I'm taking care of a 3 week old. It has not been fun. :<
I've been trying to get the Google Sheets API working (in Ruby). It's for a shared sales/tracking spreadsheet between two companies.
The documentation for it is almost entirely for Python and Java. The Ruby "quickstart" sample code works, but it's only for 3-legged auth (meaning user auth), but I need it for 2-legged auth (server auth with non-expiring credentials). Took awhile to figure out that variant even existed.
After a bit of digging, I discovered I needed to create a service account. This isn't the most straightforward thing, and setting it up honestly reminds me of setting up AWS, just with less risk of suddenly and surprisingly becoming a broke hobo by selecting confusing option #27 instead of #88.
I set up a new google project, tied it to my company's account (I think?), and then set up a service account for it, with probably the right permissions.
After downloading its creds, figuring out how to actually use them took another few hours. Did I mention there's no Ruby documentation for this? There's plenty of Python and Java example code, but since they use very different implementations, it's almost pointless to read them. At best they give me a vague idea of what my next step might be.
I ended up reading through the code of google's auth gem instead because I couldn't find anything useful online. Maybe it's actually there and the past several days have been one of those weeks where nothing ever works? idk :/
But anyway. I read through their code, and while it's actually not awful, it has some odd organization and a few very peculiar param names. Figuring out what data to pass, and how said data gets used requires some file-hopping. e.g. `json_data_io` wants a file handle, not the data itself. This is going to cause me headaches later since the data will be in the database, not the filesystem. I guess I can write a monkeypatch? or fork their gem? :/
But I digress. I finally manged to set everything up, fix the bugs with my code, and I'm ready to see what `service.create_spreadsheet()` returns. (now that it has positively valid and correctly-implemented authentication! Finally! Woo!)
I open the console... set up the auth... and give it a try.
... six seconds pass ...
... another two seconds pass ...
... annnd I get a lovely "unauthorized" response.
asjdlkagjdsk.
> Pic related.rant it was not simple. but i'm already flustered damnit it's probably the permissions documentation what documentation "it'll be simple" he said google sheets google "totally simple!" she agreed it's been days. days!19 -
Imagine, you get employed to restart a software project. They tell you, but first we should get this old software running. It's 'almost finished'.
A WPF application running on a soc ... with a 10" touchscreen on win10, a embedded solution, to control a machine, which has been already sold to customers. You think, 'ok, WTF, why is this happening'?
You open the old software - it crashes immediately.
You open it again but now you are so clever to copy an xml file manually to the root folder and see all of it's beauty for the first time (after waiting for the freezed GUI to become responsive):
* a static logo of the company, taking about 1/5 of the screen horizontally
* circle buttons
* and a navigation interface made in the early 90's from a child
So you click a button and - it crashes.
You restart the software.
You type something like 'abc' in a 'numberfield' - it crashes.
OK ... now you start the application again and try to navigate to another view - and? of course it crashes again.
You are excited to finally open the source code of this masterpiece.
Thank you jesus, the 'dev' who did this, didn't forget to write every business logic in the code behind of the views.
He even managed to put 6 views into one and put all their logig in the code behind!
He doesn't know what binding is or a pattern like MVVM.
But hey, there is also no validation of anything, not even checks for null.
He was so clever to use the GUI as his place to save data and there is a lot of parsing going on here, every time a value changes.
A thread must be something he never heard about - so thats why the GUI always freezes.
You tell them: It would be faster to rewrite the whole thing, because you wouldn't call it even an alpha. Nobody listenes.
Time passes by, new features must be implemented in this abomination, you try to make the cripple walk and everyone keeps asking: 'When we can start the new software?' and the guy who wrote this piece of shit in the first place, tries to give you good advice in coding and is telling you again: 'It was almost finished.' *facepalm*
And you? You would like to do him and humanity a big favour by hiting him hard in the face and breaking his hands, so he can never lay a hand on any keyboard again, to produce something no one serious would ever call code.4 -
This codebase reminds me of a large, rotting, barely-alive dromedary. Parts of it function quite well, but large swaths of it are necrotic, foul-smelling, and even rotted away. Were it healthy, it would still exude a terrible stench, and its temperament would easily match: If you managed to get near enough, it would spit and try to bite you.
Swaths of code are commented out -- entire classes simply don't exist anymore, and the ghosts of several-year-old methods still linger. Despite this, large and deprecated (yet uncommented) sections of the application depend on those undefined classes/methods. Navigating the codebase is akin to walking through a minefield: if you reference the wrong method on the wrong object... fatal exception. And being very new to this project, I have no idea what's live and what isn't.
The naming scheme doesn't help, either: it's impossible to know what's still functional without asking because nothing's marked. Instead, I've been working backwards from multiple points to try to find code paths between objects/events. I'm rarely successful.
Not only can I not tell what's live code and what's interactive death, the code itself is messy and awful. Don't get me wrong: it's solid. There's virtually no way to break it. But trying to understand it ... I feel like I'm looking at a huge, sprawling MC Escher landscape through a microscope. (No exaggeration: a magnifying glass would show a larger view that included paradoxes / dubious structures, and these are not readily apparent to me.)
It's also rife with bad practices. Terrible naming choices consisting of arbitrarily-placed acronyms, bad word choices, and simply inconsistent naming (hash vs hsh vs hs vs h). The indentation is a mix of spaces and tabs. There's magic numbers galore, and variable re-use -- not just local scope, but public methods on objects as well. I've also seen countless assignments within conditionals, and these are apparently intentional! The reasoning: to ensure the code only runs with non-falsey values. While that would indeed work, an early return/next is much clearer, and reduces indentation. It's just. reading through this makes me cringe or literally throw my hands up in frustration and exasperation.
Honestly though, I know why the code is so terrible, and I understand:
The architect/sole dev was new to coding -- I have 5-7 times his current experience -- and the project scope expanded significantly and extremely quickly, and also broke all of its foundation rules. Non-developers also dictated architecture, creating further mess. It's the stuff of nightmares. Looking at what he was able to accomplish, though, I'm impressed. Horrified at the details, but impressed with the whole.
This project is the epitome of "I wrote it quickly and just made it work."
Fortunately, he and I both agree that a rewrite is in order. but at 76k lines (without styling or configuration), it's quite the undertaking.
------
Amusing: after running the codebase through `wc`, it apparently sums to half the word count of "War and Peace"15 -
TL;DR: I dont work in IT, but I code at work, and the non-IT higher-ups lack of knowledge shows brutally.
So I work in aviation, not IT. Through coincidences, I was tasked to work on our flight plan distribution logic years ago, which was then written in BRL (Business Rule Language). In lockdown 2020, I finally started to learn "real" programming with Python, but soon shifted to Java. Which was good, since all of a sudden a few months ago the company ditched BRL and the godawful IBM ODM IDE for... Java and IntelliJ. Nice. BUT my teammates have zero clue about Java and no real inclination to learn it by themselves. So I have been appointed their mentor, despite me stating Im still a beginner myself. Its somewhat doable, I get the hard problems, they do basic maintenace, basically renaming variables and stuff. One of my yearly goals is to make sure a completely new guy is able to do everything I do by september. It took a LOT to talk them out of it.
In my last yearly review I got some flak for not "selling" myself to other teams enough, whatever that means. So, as a learning project, I designed a new intranet page for our department in Javascript. Its loved by all. It has links to all the stuff we need woth a nice interface and built in tools to make work easier and more efficient. I did it on my own, in my spare time, simply because I was fed up with the old crap and it was an enormously good learning opportunity. Now they want to give some other guy the responsibility over that page/tool because apparently it is "not in my process team description". They even planned a day for me and him so he can "learn Javascript then". Suuure...
I also did a digital checklist tool as a webapp. All this runs from a local folder, no server at all because reasons. I made it work. Now they want it integrated into some other tool some other guy made. He wrote his tool in PHP entirely so merging the two will take considerable time. Which I told them multiple times. No, it does not take about two hours.
Sometimes, comrades, sometimes....
Im still grateful for the opportunity to code at work but the lack of knowledge really REALLY shows. My goal now is to talk management into paying for a Java course for me (they are very expensive here). That way, they get a better employee and I get more knowledge and an actual certificate thats worth something. Usually in this company, this has higher chances of success than straight up asking for more money.
Sorry for the long story, but it felt good just typing it all out, even if nobody reads this.4 -
Prologue
My dad has an acquaintance - let's call him Tom. Tom is an gynecologist, one of the best in Poznań, where I live. He's a great guy but absolutely can not into tech of any kind besides his iPhone and basic PC usage. For about a year now I've been doing small jobs for him - build a new PC for his office, fix printer, fix wifi, etc. He has made a big mistake few years ago by trusting a guy, let's call him Shitface, with crating him software for work. It's supposed to be pretty simple piece of code in which you can create and modify patient file, create prescription from drugs database and such things. This program is probably one of the worst pierces of code I've ever seen and Shitface should burn for that. Worse, this guy is pretentious asshole lacking even basic IT knowledge. His code is garbage and it's taking him few months to make small changes like text wrapping. But wait, there's more. Everything is hardcoded so every PC using this software must have installed user controls for which he doesn't have license and static IP address on network card.
Part 1
Tom asked me to build him a new PC that will be acting like a server for Shitface's program. He needs it in Kalisz (around 150 km from my place). I Agred (pun intended) and after Tom brought me his old computer I've bought parts and built a new one. I have also copied everything of value and everything took me around three hours.
Part 2
Everything was ready but Shitface's program. I didn't know much about it's configuration so when I've noticed that it's not working even on the old PC I got a bit worried. Nevertheless I started breaking everything I know about it and after next three hours I've got it somewhat working. Seeing that there's still some problems with database connection (from Windows' Event Viewer) I wrote quick SMS to Shitface asking what can be wrong. He replied that he won't be able to help me any way until Monday (day after deadline). I got pissed and very courteously asked him for source code because some of libraries used in this project has license that requires either purchase of commercial license or making code open source. He replied within few minutes that he'll be able to connect remotely within next 10 minutes. He was trying to make it work for the next hour but he succeeded. It was night before deadline so I wrapped everything up and went to bed thinking that it won't take me more than an hour to get this new PC up and running in the office. Boy was I wrong.
Also, curious about his code, I've checked source and he is using beautiful ponglish (mixed Polish and English) with mistakes he couldn't even bother to fix. For people from Poland, here's an example:
TerminarzeController.DeleteTerminarzShematyDlaLekarza
Part 3
So I drove to Kalisz and started working on making everything work. Almost everything was ready so after half an hour I was done. But I wanted to check twice if it's all good because driving so far second time would be a pain. So I started up Shitface's program, logged in, tried to open ANYTHING and... KABUM. UNHANDLED EXCEPTION. WTF. I checked trace and for fuck sake something was missing. Keep in mind that then I didn't know he's using some third party control for Windows Forms that needs to be installed on client PC. After next fifteen minutes of googling I've found a solution. I just had to install this third party software and everything will work. But... It had to be exactly this version and it was old. Very old. So old that producent already removed all traces of its existence from their web page and I couldn't find it anywhere. I tried installing never version and copying files from old PC but it didn't work. After few hours of searching for a solution I called Mr Shitface asking him for this control installation file. He told me that he has it but will be able to send it my way in the evening. Resigned I asked for this new PC to be left turned on and drove home. When he sent me necessary files I remotely installed them and everything started working correctly.
So, to sum it up. Searching for parts and building new PC, installing OS and all necessary software, updating everything and configuring it for Tom taste took me around what, 1/3 of time I spent on installing Mr Shitface's stupid program which Tom is not even happy with. Gotta say it was one of worst experiences I had in recent months. Hope I won't have to see this shit again.
Epilogue
Fortunately everything seems to work correctly. Tom hasn't called me yet with any problems. Mission accomplished. I wanna kill very specific someone. With. A. Spoon.1 -
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 -
Background: I'm not drunk yet, BUT I'M WORKING ON IT.
okay.
I just finished a second sprint on my React app. The first was to build a merchant onboarding flow. The second was to do substantial cleanup as I learned more about react/redux, and to create a "supply order" flow -- basically purchasing marketing materials and services. I finished that in a week, and I'm pretty proud. api-guy wanted it done in a day. i laughed. he probably could have, but it would have been a copy of the code in a new repo with some lines changed.
ANYWAY. it's all done and It's super pretty and works amazingly well. It has both the onboarding flow and the ordering flow, with a nice pop-out sidebar for navigation, namespaced actions, etc. Everything is pretty clean. I even added a cart to the ordering (despite everyone telling me not to) because wtf, what if someone wants to order TWO items? dumbasses. So I made that. it's sexy.
Anyway, it's all done and shiny and fancy and wonderful and I'd *love* to share screenshots if only it didn't give away where I worked. :<
... but the point of the rant!
After the first sprint, I made a copy of the repo so I could rework it and add more functionality without touching the original. (Hey! That's what a branch is for, right? Why didn't I branch it up?
well, read on)
I knew we were going to have multiple separate flows for this app: onboard, ordering, merchant tools, admin tools, support, etc. So, I wrote its server portion (the webpack builder + http server) so it would serve the same app at whatever url the user hit, and set a cookie containing that host+url. This allows the app to serve different content (basically showing/hiding content) based on the URL and future login roles. If someone hits /order, it would hide everything but the order flow. If they're a merchant, it would show all the merchant views plus ordering, etc.
tl;dr This way I can use the same codebase for multiple sites, drastically simplifying development, branding, and what have you. This new app could obv also be a drop-in replacement for the original onboarding project because of the above.
HOWEVER. this apparently isn't good enough for api-guy. He's terrified that adding/updating future components will affect all the existing content somehow.
so.
now we have three repos for basically the same codebase. 1) onboard aka "surfboard", 2) ordering, 3) merchant tools, aka "ferrari" (the "future" app).
Except.
1) "surfboard" is a very old version of the code. 3) "ferrari" is also old, since 2) "ordering" has newer content in it now.
... and somehow this is better?
fuck if i can figure out how.
His reasoning is "well, you won't be touching surfboard or ordering for 6 months, so now you don't have to worry about it." Sure, except, you know, it'll be a pain in the ass in 6 months now when I have a crapton of code and branding to redo. ffs.
Oh. We also have three Heroku pipelines for these three repos. for the same codebase.
and now you know why i'm drinking.undefined idiocy fucking hell fuck this noise api guy i'm just gonna replace everything later this codebase is as dry as the friggin ocean7 -
Story Time. Inspired by another rant.
Context: I'm In a coding camp years ago, it's the first day.
We're doing introductions (name, why you're here, etc). Always fun to do that....
The folks running the camp are excited to introduce a student who also at one point was a teacher for some sort of girl power coding organization. So this raises questions, why would someone who teaches be a student in this camp?? And even a bigger question is raised when this person introduces themselves for a long time, and as an aside puts down the girls she taught in this program they taught ... like who does that?
horribleLady does that ...
A few hours later horribleLady asks her 12th question of the day (we haven't even started talking about code). Before she asks her question actually says:
“I know, I’m going to be a problem.” -laugh-
🚨🚨🚨 ヽ ( ꒪д꒪ )ノ 🚨🚨🚨
Fast forward to group projects and she's this sort of emotional storm, tears, and a sort of angry shouting that isn't angry enough for some folks to say she's yelling at people ... but she is. Fortunately I'm not in the first group project with her, but because we're all working in the same room we all get to see the train-wreck unfold.
The moment she doesn't get something (all the time) everyone in her group has to STOP and figure out what they're going to do about it, then again STOP because she thinks someone is doing something different than what was planned. STOP STOP STOP STOP STOP.
In a way, everything had to go through her, she didn’t declare it that way, she didn't present herself as any sort of authority, she would just stop everyone the moment she thought anything was wrong, or she didn't understand it (all the time), and either inject herself or demand help from her team. Everyone around her had to be drawn into whatever problem she had. It was horrific to watch.
Private slack channels would light up like crazy with "OMG", "WTF", "I DON'T UNDERSTAND HER", "FUCK" and "SHE"S HOW OLD!?!?"
So finally it happens to me and guyWhoDoesPotConstantly (capable guy, nice dude, pretty sure he was high all the time).... we're teamed up to work with horribleLady. Thankfully for just one day. I accept this because I figure one day with her is enough penance to try to avoid any further contact later on.
My approach is straight stone face. I refuse to respond to her sulking, or sighing, or general emotional bait she throws out constantly. I saw other students unwittingly take her bait (they were trying to be helpful) only to have her crap all over them with her frustrations or whatever it is is going on.
Still we're teamed up with her her for the day so I'm going to be a good team member and I explain what guyWhoDoesPotConstantly and I are doing / trying.... and so forth. But she's just too upset that she's even assigned to work with us, and tells me I'm just not doing it right, and her explanations about how we're not doing it right makes less than 0 sense. I ask her to show me what she means but she won't type anything on her keyboard, she'd just talk about how she’s thinking conceptually in circles and sulk about it rather than listen. I don't respond to any of her shit and say "I'm going to try this." and guyWhoDoesPotConstantly and I just keep working.
She would later call the instructor over and complain to him for a while and say: "These guys just get it, they're not helping me, I want to be assigned to another group." She doesn't get her way so she just moves to another table in front of us.
After that day I figured it was a great time to ask .... to NEVER be assigned to anything with her because "If I told her what I thought it would just get a lot worse." I got my way ;)
Other students weren't so lucky. Tears, sulking, her special way of yelling at people that somehow never got her in trouble (she should have been kicked out of the program) just kept going on. She refused to even present one group project she deemed not good enough despite the fact that she contributed nothing functional to the project that the TA's didn't write for her...
Amidst the stories she would tell to students was one of how she sued her totally sexist/racist/evil former employer. She never said what came of it, but that combined with her inability to do things reminded me of a rant I read on here.
I sometimes fear being hired someplace and walking in my first day to find I'm assigned to work with .... horribleLady. In this scenario she managed to get hired and they're too afraid to fire her so they assign the new guy to work with horribleLady...
I've no idea what happened to her after the camp.
(I rewrote this rant a few times because it kept circling back to a larger story about the coding camp I wrote about a few years ago, so if this seemed sort of broken up and wonky, yeah it was / is / yeah)4 -
I have seen it. They say it doesn't exist; just a story we tell our children so that their innocence does not lead them down into a nightmarish adulthood from which there is no salvation. But the evil lives. So vile that were you to look inside its soul, all you would find is a terrible desperation for suffering. To cause it. To revel in it. To bathe in the tears of those it considers less than human and feed off the emotional detritus.
It was 2009. The financial crisis. I was one of the lucky, having found refuge in a large company right before the jobs dried up. General IT: system administration, documentation, project management, telephony, software training, second level help desk. No software development, but with a two-year-old at home and Ph.D.s lining up outside the local Olive Garden whenever a help wanted sign was posted, I grabbed the health insurance and entered into darkness.
The Thing did not need to hunt it's prey. A manager title with 21 reports brought it new opportunities for fresh meat by the hour. But I was special. I resisted. I needed to know my place.
My first mistake was incomprehension. I did not understand the Thing's lust to be right at all costs. I was reviewing some documentation it had brought forth from its bowels. I mentioned that two spaces were being used between sentences. That proportional type made that unnecessary. It insisted, I was wrong. It insisted that Microsoft itself, the purveyor of all good technical writing, required two spaces. I opened the Microsoft Manual of Style for Technical Publications that it demanded its staff use and showed it that the spec was one space. It was livid. I was a problem.
From that point on my work life became exponentially more wretched. I was given three Outlook calendars to maintain: one with my schedule, one with the team's schedule and one with the Thing's schedule. Every time I had an appointment, I was to triple schedule it. If I was going to be away from my desk for more than 15 minutes triple schedule. Triple schedule my lunch, vacations, phone conferences.
Whenever it held a meeting, I and a colleague would be taken off mission critical IT projects to set tables with name tents and to serve as greeters as attendees arrived.
I was called into its crypt to be told never to say anything in a meeting unless I told the Thing beforehand what I was going to say. Naive, I mentioned that I often don't know what I will say as it is often in reply to someone else. Of course the response was that I should not say anything.
I would get emails 10-20 times a day asking about a single project. I would regularly complete work that was needed to be completed ASAP, only to have the Thing rake me over the coals for not completing it a week later. And upon resending the emails proving I notified it of the work being competed, disparaged at length a second time for not sending repeated notifications of the competed work.
I would have to sit in two-hour meetings to watch it type. Literally watch it try to create cogent thoughts. In silence.
I received horrendous annual reviews. At one, it created a development plan that stated a colleague would begin giving me lessons on the proper ways to socially interact with personnel. I pointed out to HR that this violated privacy concerns and would make the business liable in many areas, not least of which would be placing a help desk person in the role of defining proper business practice. HR made the Thing remove this from my review. She started planning to remove me.
I had given a short technical training to a group of personnel months earlier. Called into its tomb I was informed that feedback surveys on my talk were disturbing. One person stated that they did not think I was funny. Another wrote that I made an offensive statement. That person did not say what the offensive statement was. Just that I had said something he or she didn't like.
The Thing interviewed the training attendees. Gathered facts. Held three inquest-like meetings where multiple directors peppered me with questions trying to get me to confess to my offensiveness. In the end the request to fire me was brought to the man who ran the business at the time. The statement on high: "Humor is a subjective thing. Please tell This to be sensitive to that."
The Thing had failed, but would no doubt redouble its efforts. I had to find a new job. I sent hundreds of resumes. Talked to dozens of recruiters. But there were no jobs. And I had a family. And the wolf was at the door.
So I didn't say a word to the creature. For six months. Silence. At one group meeting it shrieked at me "what are you smirking at? If you've got something to say then say it!" I just shrugged. For my salvation was revealed. The Thing could not stand to be ignored. And at the end of my penance I was transferred to another group: Software Development.
I am one with the Force. The Force is with me. I am one with the Force. The Force is with me.4 -
A few months ago, I decided to let go some old clients with bad behavior and/or bad projects, since I noticed this was affecting my mental health (lowering my self esteem, make me feel depressed, anxious, etc).
I was exhausted of doing miracles in projects without git, build files, staging enviroments (yes... you can imagine), and receive all sort of curses when sudenly something stopped to work.
I set some requirements to work with any new project/client: 1) project needs to be under version control, 2) it must have staging enviroment, 3) I must work with build files.
As I still have contracts running, I'm communicating this to clients as soon as I finish my obligations.
Today, one of these clients told me they are leaving to work with another developer.
Reason: They said my new requirements are unreasonable and they prefer doing the old way.3 -
Man I really need to get this off my chest. So here goes.
I just finished 1 year in corporate after college. When I joined, the team I got was brilliant, more than what I thought I would get. About 6 months in, the project manager and lead dev left the company. Two replacements took their place, and life's been hell ever since.
The new PM decided it was his responsibility to be our spokesperson and started talking to our overseas manager (call her GM) on our behalf, even in the meetings where we were present, putting words in our mouth so that he's excellent and we get a bad rep.
1 month in, GM came to visit our location for a week. She was initially very friendly towards all of us. About halfway through the week, I realized that she had basically antagonized the entire old team members. Our responsibilities got redistributed and the work I was set to do was assigned to the new dev (call her NR).
Since then, I noticed GM started giving me the most difficult tasks and then criticizing my work extra hard, and the work NR was doing was praised no matter what. I didn't pay much attention to it at first, but lately the truth hit me hard. I found out a fault in NR's code and both PM and GM started saying that because I found it, it was my responsibility to fix it. I went through the buggy code for hours and fixed it. (NR didn't know how it worked, because she had it written by the lead dev and told everyone she wrote it).
I found out lately that NR and PM got the most hike, because they apparently "learnt" new tech (both of them got their work done by others and hogged the credit).They are the first in line to go onsite because they've been doing 'management work'. They'd complained to GM during her visit that we were not friendly towards them. And from that point on if anything went wrong, it would be my fault, because my component found it out (I should mention that my component mostly deals with the backend logic, so its pretty adept at finding code leaks).
What broke my patience is the fact that lately I worked my ass off to deliver some of the best code I'd written, but my GM said in front of the entire team that at this point "I'm just wasting money". She's been making a bad example out of me for some time, but this one took the cake. I had just delivered a promising result in a task in 1 week that couldn't be done by my PM in 4 weeks, and guess what? "It's not good enough". No thank you, no appreciation, nothing. Finally, I decided I'd had enough of it and started just doing tasks as I could. I'd do what they ask, but won't go above and beyond my way to make it perfect.
My PM realized this and then started pushing me harder. Two days back, I sent a mail to the team with GM in cc exposing a flaw in the code he had written, and no one bothered to reply (the issue was critical). When I asked him about it, he said "How can you expect me to reply so soon when it's already been told that when anything happens we should first resolve within the team and then add GM in the loop?" I realized it was indeed discussed, but the issue was extremely urgent, so I had asked everyone involved, and it portrayed him in a bad light. I could've fixed it, but I didn't because on the off chance if it broke something, they'd start telling me that I broke the tool, how its my fault and how its a critical issue I have to fix ASAP, etc. etc., you get the idea.
Can anyone give me some advice of how to deal with this kind of situation? I would have left but with this pandemic going on, market being scarce and the fact that I'm only experienced by 1 year, I don't think I qualify for a job switch just now.16 -
Update - The 'devRant trans-oceanic 21st century message in a bottle' community project is progressing nicely.
There is terrific research being done by the team in a slack channel. It is a great fun learning experience.
We have taken the 2000 year old message in a bottle concept and are breaking new ground leveraging very cool technology. We are still in phase 1 but at a high level devRant's much coveted stress ball will cross the Atlantic Ocean in a bottle type encasing.
We will use satellite tracking and gps to track devie throughout the journey. We will use Arduino or a similar microprocessor. We may use sensors and gyros to monitor the surrounding environment for temperature and depth.
We are also studying ocean currents, shipping lanes, weather data and bottle materials to make the journey as smooth as possible.
This is an official devRant sponsored project. We encourage you and any dev friends to join the conversation. Below is a link to the original rant which has the Slack channel info.
The sun never sets on devRant and we love intriguing projects!
https://www.devrant.io/rants/3030148 -
November brings .Net 5, for anyone who cares about that, and after listening to my husband watch Ignite "reveal" advertising container, and all the enterprise virtue signaling therein, I am now to the point where the only thing I can think is "Fuck you Microsoft, and Fuck .Net 5."
During a 30 minute speech, the director of the dotnet platform commits the following flagrant faux pas:
1. Introduces tons of visual studio easy buttons for shit we already do, no mention of VS code support.
2. Shows tools that anyone other than the most insular enterprise mouth-breather have been using for no less than 6 years
3. Gives absolutely no credit to the Open Source community projects backing the features he's showing
4. Shows nothing but mono-cloud integration, makes no mention of any other cloud targets for new features
5. Acts like "deploy your app the cloud from IDE" is something anyone should be doing in 2020
6. Showed an API repl that is pathetic compared to httpie when it was in alpha
7. Showed blazor loading from cache and said "Look at how instantaneous it is" (if you ignore the 5mb of cached payload it took to run the hello world demo)
8. Shows Project Tye, presenting it as a new groundbreaking xyz, fails to mention helm already exists
What's absent is what is most offensive:
- acknowledgment of community contribution
- no linux/mac tools, entirely windows-centric (which jives with my prediction of second-class citizenship for the people who contributed to .net core the most)
- cross-cloud capabilities
- bash/zsh (again with the untermensch relegation)
Fucking microsoft back to their old bullshit.24 -
I have got a new director at work. My previous director had to retire already, the man was already feeling it and he had been on the institution for more than 35 years....I am 30, so this tells you how much the man has been there.
This new dude.....has the presence of a Caterprie (Pokemon) or an Oompa Loompa. In contrast, the previous director felt like a 4 star General (never been in the presence of a 5 star since those occurrences are world war rare) but I had respected that man so much and loved working with him. I really did loved my boss, he was stern and professional, but kind and friendly to his staff, fiercely protective, no one took advantage of I.T while he was there, he would literally fight for us and took our word before anything else. The man was, well, a true man. A true leader.
He took a chance in putting me as the head of my department, but he had faith in me, and coached me and trained me as much as he could. Had the requirement for his position not been a masters he himself told me that he would have loved to make me his successor, even when I would constantly tell him that I was scared shitless of the work he did and the amount of things he did for the institution, to me this is a very laaaaaaaaarge cowboy hat to fill (this is Texas, he wore a hat, the saying is normally "shoes to fill", but fuck it)
This new guys looks away when the other managers are speaking to him. He constantly interrupts us. He constantly tells us about how the other institution in which he was (rival might I add) does X or Y, its fucking annoying to the point that me and the other managers have a drinking game, for every time he references his old institution we drink one beer over the weekend. It is Saturday night and I am 36 in in total (this is my favorite part of it tho) and it is just annoying.
His train of thought makes no sense to me:
"This application, where did you buy it? we tried purchasing one on Y when I was still there but found none"
Me: "Well, since it was a new government mandate and had nowhere to go we had to develop it in house"
Him: "We had tried to purchase what you guys had but found no place that sold it, so why didn't you try purchasing it?"
Me:.....well, because it was brand new, purchase it from where? We also don't like dealing with vendors that manage these sorts of things because every new requirement takes them weeks to produce on very high budgets, historically, my department has only had maintenance fees for the software that we have and even those applications crap themselves all the time and they take weeks to answer back to us.
Him: So you decided to develop it in house instead? we would never do that! back at y we purchased everything our engineers never really developed anything!
Me: Well then, what is the purpose of having engineers if they are not going to actually develop an application?
Him: IF there is something out there that is better then why should you reinvent the wheel?
Me: For this one I did not reinvent the wheel, I am not talking about creating a programming language from scratch, but how does custom solutions that specifically feed the needs of the institution to be produced otherwise? The department has developers for a reason, because they have very specific needs in here that can only come from a team of developers that are in house satisfying those needs.
Him: Well our engineers never had to do that. Sure projects sometimes had to put on holds because the vendor was busy, but such is the nature of development
Me: No it is not, the nature of development is to create things, it is one thing for my team to go through bugs and software considerations, it is another for me to not provide a service because some random company is taking two weeks on a $300 dllr an hour contract to put a simple checkbox on a form. If a project fails the board is not going to care that some vendor is not doing their job, they are just going to blame me, if that is the case then I would much rather the blame be actually mine than some sucky third party "developer" also, your engineers where not even engineers, they were people with a degree that purchased things, that's it, please do not compare them to my guys or refer them as engineers in front of me, they are not.
Him: Well, maybe.
MAYBE?!! motherfucker I did not kill myself learning the ins and outs of architecture and software engineering on my own time after my fucking bachelors in C.S for your codeless background ass to tell me MAYBE. My word IS the fucking WORD here, not yours. Fuck me I really dislike this dude's management practices.
The shitty part? He is not a bad person, he is not a bad dude that is out to get us, just a simple minded moron with no place as a leader.
I know leaders, I know what a leader is, this is not one.10 -
Allright, I'm pissed.
Warning: more than 4k characters written by a non native english speaker ahead.
Legend:
Storytelling
> Short summary of the current situation
> "Something being said"
> (Something being thought)
* Actions *
-- Background --
In an attempt to reorganize my desktop I accidentally deleted a folder I called "development". In there I stored links to all my IDEs (Not sure how you call these in english), but also some workspaces like unity (Not much stuff there, processing (just some hobby stuff) AND Eclipse (FUCKING EVERYTHING RELATED TO SCHOOL WEB DEVELOPMENT). Now 3 days have passed and I realized this important folder was missing. Cleared that windows trash the instant I deleted the trash on my desktop.
> Shit, Regret
Install a file restore programm. Do every possible search. Nothing found.
> Big shit
Deadline was in like 3 days. Week was fucking rough so:
> "Screw this, the teacher nevet corrects the assignments and also fuck JSP"
Fast forward 2 months to last week. Teacher starts checking assignments.
> Fuck
* Sees pattern: Only students with missing or bad marks are checked. *
* Feels save *
Teacher approaching me while working on current projects.
* Doesn't feel save anymore *
> "Well, I'ld like to see your THAT programm"
> Well fuck
* Tells the truth *
> "Well that's unfortunate, but I must write a mark. Do you really have nothing to show?"
* Remember that I worked on the school pcs when I started *
> (Better than nothing. Gotta try it)
* Teacher checks programm, not pleased *
> (Fuck me, but at least it's over...)
> Nope
* Teacher calls me over *
> "With the mark I had to write today you can't reach that good mark even with a good examination, what are we gonna do about this?"
> "Well, there were other assignments that were never checked. Could we replace that mark with one of those?"
* Teacher agrees *
> (Srly bless this guy for that support)
My best choice was an Android app we had to develop during December in pairs. I did the front end (90% of the whole work) and my partner the backend (10 %). I also did 30 % of these 10 %, because I had to review the shit he wasn't able to debug himself.
> brainlogic.exe provided by windows vista
This distribution was partly my fault since I overestimated the work needed for the backend, but also the fault of that fucker. I mean, he didn't tell me the professor already provided 90 % of the backend...
Rest of the week was really busy (always 1 or 2 things to study for each day, workout and family stuff).
Yesterday (It's past 12 already) I arrived at ~9 pm in the dorm I could finally start reviewing my code.
Internet gets shut down at 10 pm.
Gotta hurry.
* Opens project *
* Sees half a year old code *
* Fights urge to puke *
> (Alright I gotta do this. For the mark!)
* waits for gradle to index files *
* Remembers the fact that I haven't opened Android Studio in the last 2 months *
For those who don't develop with android studio: This is an equivalent to ~10k windows updates waiting to be installed
> (Well, gotta work with this kinda old version)
"gradle sync failed"
> ( Ok, just restart it. You're fine )
* Android Studio doesn't react anymore and/or renders *
* Waits 5 min *
* Restarts laptop *
* Android Studio is reacting again*
"gradle is synching"
9:45 pm: gradle is done and I can finally compile my app
> FML
* Sees App launched on phone *
* Almost pukes again *
> (This was the assigment for the UX chapter, so design doesn't matter)
UX is decent. Proceeds with testing stuff. Save paths work, but some bugs can be caused by going of it
* fixes as much as possible *
* Takes quick look at backend *
Date date = new Date (GregorianCalender.getInstance().getTimeInMillis());
C'mon, I asked you to be the backend. You got 90% of the methods already written by the teacher and had 2 months to write the interfaces to my Front end AND you come up with shits like that.
Note: this example is a minor example of brainlogic.exe
I did what I could to make improve my situation. Hopefully he doesn't discover the bugs. And If it's a backend bug then I could't care less, since that was not my job!
Wish me luck for today!undefined web development jsp school assignment not my job fuck up android studio tldr; not getting paid enough for this shit gradle blame backend9 -
My 14 year old self stared at Chrome and decided to consult Google on a random fleeting thought...
"How is software made?"
The search resulted in my downloading Visual Studio. Without any understanding of what it was or how it worked I somehow managed to create a new Winforms project.
I started to drag controls from the ToolBox onto the form, and I specifically recall thinking "Wow! This is easy.". Little did I know...
I then inadvertently double clicked either a control or the form which as most will know switches from the designer view to the code editor taking you to the code that drives the form.
"What the hell is this?"
I had absolutely no idea what I was looking at, but decided I was determined to understand what all of that random text did.
So, yeah, my first dev project was a Winforms App consisting of a single button that did absolutely nothing, but yet happens to be the most important app I have ever created.
To think I'd be working in an entirely different sector if it wasn't for that one Google search.4 -
I'm really close to just quitting coding all together. This job is sucking the life out of me. I've lost my interest in code and the idea that there are better jobs out there.
My "boss" who's not even really my boss but behaves like he is, is micromanaging my every tag, and is an information hog. He doesn't document, he doesn't tell me anything, I've been here six months and still don't know half of what I need to know to do my job properly!
I'm expected to implement a new responsive design, but we don't have design specifications.
Cool, you'd think, new ideas, complete overhaul! Let's get a good foundation in bootstrap going!
WRONG! It needs to fit in with the old, fuck- ugly pre 2000 design.
Not because of any design constraints in particular, but because HE wants it that way. You know what was fucking trendy in 2000? Tables. Tables fucking everywhere. YOU KNOW WHAT TABLES ARE NOT? RESPONSIVE YOU FUCKING ICE LOLLY CHEWER!
We have no development timeline, no process management, no fucking project management. THE FUCKING PASSWORDS WERE STILL STORED IN PLAIN TEXT UNTIL LAST MONTH YOU IRRESPONSIBLE BANANA DEEPTHROATER! 😤😤😤😤😤😤
I'm doing my best here to get something resembling the old page, but there needs to be some fucking compromise! We are in fucking 2017, let's work with Bootstrap instead of against it, how about that you fucking bald cactus!
I know enough about UI to know that the way we're going, this is just going to be another unusable fucking clusterfuck.
YOU KNOW THE BEST FUCKING PART? I'M A FUCKING BACKEND DEV AND I WAS HIRED AS SUCH! GIVE ME A DESIGN TEMPLATE AND I'LL DO MY BEST TO IMPLEMENT IT, BUT FUCK YOU FOR EXPECTING FRONT END LEVEL DESIGN KNOWLEDGE YOU DUMB FUCKING SPAGHETTI!14 -
DevOps required skillset:
* Frontend engineering
* Backend services
* Database administrator
* Security consultant
* Project management
* 3rd party contract negotiator
* Build system monitor
* Build system hostage negotiator
* Paging, alerting, monitoring
* Search server admin
* Old search server admin
* Old-old-new search server admin
* Redis, ElasticSearch, MySQL, PostGres, owner
* Agile coach
* No you shouldn't do that coach
* Oh, you did that anyway coach
* DNS: (Optional) It'll replicate when it wants, and how it wants to to anyway
* Multi-Cloud deployment strategist
* Must be able to translate Klingon to YAML, and YAML to MySQL
* Cost analyzer, reducer, and justifier
* Complex documentation generation in markdown that we should have done years ago anyway
* Marketing's email went to spam analyzer
* Wordpress is broke fixer
* Where the fuck does Wordpress run anyway?
* Ability to fix MySql running Wordpress on marketing's dusty laptop7 -
I call my git repos the field hospital.
I didn't finish my studies, but I seem to be the most qualified person to pick up the scalpel. Big corner of body bags. New brilliant ideas arrive, I do what I can with the time I have. Sometimes something survives, but it's usually too heavily mutilated to fully function. Unfinished refactorings develop into hardened scar tissue, the feature creep starts festering and leaking.
I should get better at triaging, just deleting old crap, pick one project and nurse it back to health.
But it's not easy to start with fresh focus, when your keyboard is still soaked in booze and the blood and tears of all the victims you've butchered.3 -
Before I left corporate America, I worked with a guy who was basically the definition of 'idiot savant' sans the actual diagnosis. He was ridiculously smart, but couldn't stay on task to save his life.
Like one time we landed a project with a major client. My team was running backend, his was running mobile integration. After a month of little to no visible activity, we approached him and he just said 'oh yea, i got sidetracked'... but he wasn't working on anything else. Just found some random shinny pebble that caught his attention and he bailed on everything else.
To make matters worse, his personal hygiene was nonexistent (I don't think he's showered since either), and he LOVED writing things in super-obscure languages that even the best we had hadn't ever heard of, with nonsensical (and often totally misleading) variable names and no inline comments. Trying to put someone new on something he'd touched was like asking an English professor to translate a 10K year old tablet dug up in the middle of the desert. Just didn't work.
But... the CEO flat out refused to get rid of him for years, until virtually every other employee simultaneously turned in our two weeks.3 -
So I had a fun week.
It started off with my boss replying to a co-workers email where he sent his new bank account, saying he doesn't need it untill we close off some baddly planned projects, meaning no paycheck.
Needless to say we were working night and days including weekends on it and put our best into it.
For the next part I need to explain a little background. We have this old legacy system I'm working with for the past 3 years. I keet raising the red flag we need a new one. Nothing happened. So every time I worked with it I kept thinking how to improve the parts. Almost two years went into thinking and planning the new system untill I got a green light. It was most satisfying - the day I got to build something good and awesome. I drew all the data structures, laid out the foundations and started building ontop of it. It was amazing and I was really proud of it. Then suddendly client wanted to see something and the decision was made we threw it together quickly with the old legacy system. It was on hold 'till then due to work overload.
Boss wrote me this week if I can put the project from git on a server, where he out sourced the completition into India where they will finish it. On thr question if they can't work on git, he replied: "should they?" -.-
To top it all up, I got a notice at the end of the week if I don't fill his shit time tracking system (that takes me one hour/day to insert all entries) by monday he'll deduct a sizable portion of my paycheck.
I AM WORKING FOR YOU ALL THE FUCKING TIME BECAUSE YOU LACK RESOURCES AND I THOUGHT A TEAM STICKS TOGETHER AND SAVES EACH OTHERS ASS! I DONT HAVE TIME TO ENTER YOUR FUCKING STUPID TIME ENTRIES IN YOUR FUCKING BUGGED SYSTEM EACH DAY ON TASKS THAT DON'T EVEN EXIST BITCH! MAKE IT BETTER FIRST!! OH! AND NO ONE IS MORE QUALIFIED TO FINISH THAT PROJECT THAN ME, I POURED MY FUCKING HEART INTO IT YOU PRICK!
woah.5 -
A few months ago I was working on a (totally underpaid project) where my friend and I had to basically rewrite the entire program our client was using.
So we started planning and wrote all sorts of documentation to show the client our ideas for the new flow of the program, the new structure of the GUI and a few more details of what would the inner workings of the new app. He seemed to like all those ideas and gave us the green light to go through with the project and start coding.
We spent a couple of months coding, redoing the front end from scratch (with a different framework even, so I couldn't reuse any code from the old version) and completely redesigning the back end so it would be better, faster, more scalable etc etc etc. During this process, we obviously showed the progress of the app to our client, explaining everything we had been doing, and he seemed to like every new version we showed him.
When we were in one of the last stages in development (basically sending versions of the app to the client for evaluation), the guy suddenly changed his mind. After agreeing on everything we had been showing him over the last months, he sent an email saying:
"...the new system makes the app too complicated. I want this program to be as simple to use as possible; so we should revert the "Policy" system to essentially what it was in the last major version. The only change I want to make is [...] and everything else is essentially the same as the last Policy system."
So basically he wanted us to FUCKING UNDO EVERYTHING WE HAD DONE AND REVERT THE FUCKING PROGRAM TO THE FUCKING VERSION HE HAD BEFORE HIRING US!!!! WHAT THE FUCK????
YOU WANTED US TO CHANGE YOUR APP AND THEN YOU SUDDENLY CHANGE YOUR MIND AFTER 3 FUCKING MONTHS WHEN THE PROCESS IS DONE???
GO FIND A SWORDFISH TO FUCK YOU IN THE ASS, IM NOT WORKING FOR YOU ANYMORE
God, it feels good to let that out.4 -
Just thought I'd share my current project: Taking an old ISA sound card I got off eBay and wiring it up to an Arduino to control its OPL3 synth from a MIDI keyboard. I have it mostly working now.
No intention to play audio samples, so I've not bothered with any of the DMA stuff - just MIDI (MPU-401 UART) and OPL3.
It has involved learning the pinout of the ISA bus connectors, figuring out which ones are actually used for this card, ignoring the standards a little (hello, amplifier chip that is wired up to the +12V line but which still happily works at +5V...)
Most of the wires going to it are for each bit of the 16-bit address and 8-bit data. Using a couple of shift registers for the address, and a universal shift register for the data. Wrote some fairly primitive ISA bus read/write code, but it was really slow. Eventually found out about SPI and re-wrote the code to use that and it became very fast. Had trouble with some timings, fixed those.
The card is an ISA Plug and Play card, meaning before I could use it I had to tell it what resources to use. Linux driver code and some reverse-engineering of the official Windows/DOS drivers got me past this stage.
Wired up IRQ 5 to an Arduino interrupt to deal with incoming MIDI data, with a routine that buffers it. Ran into trouble with the interrupt happening during I/O and needing to do some I/O inside the handler and had to set a flag to decide whether to disable/re-enable interrupts during I/O.
It looks like total chaos, but the various wires going across the breadboard are mainly to make it easier to deal with the 16-bit address and 8-bit data lines. The LEDs were initially used to check what addresses/data were being sent, but now only one of them is connected and indicates when the interrupt handler is executing.
There's still a lot to do after that though - MIDI and OPL3 are two completely different things so I had to write some code to manage the different "channels" of the OPL3 chip. I have it playing multiple notes at the same time but need to make it able to control the various settings over MIDI. Eventually I might add some physical controls to it and get a PCB made.
The fun part is, I only vaguely know what I'm doing with the electronics side of this. I didn't know what a "shift register" was before this project, nor anything about the workings of the ISA bus. I knew a bit about MIDI (both the protocol and generally how the MPU-401 UART works) along with the operation of a sound card from a driver/software perspective, but everything else is pretty new to me.
As a useful little extra, I made some "fake" components that I can build the software against on a PC, to run some tests before uploading it to the Arduino (mostly just prints out the addresses it is going to try and write to).46 -
It all started in the year 2013.
I was 13 years old back then. I was a fan of Minecraft and so I learned how to setup a bukkit server and ran it. Installing plugins was fun, because I could be a "hacker" and change the configs.
After a while, (~2014), when I was in the 9th grade of elementary school, I saw Unity. A free game engine. Of course, me being a 14 year old I was intrigued and so I downloaded it, made an account and a new project. I had absolutely ZERO knowledge of programming. Didn't even know what languages existed, so i resorted to presets and poorly put together characters + weapons.
After some time fiddling around with Unity, I've gotten a hang of the basics (not programming related).
My actual programming started when I started High School (year 2016). It's a computer engineering school and for the first part of the year, I've learned from my teacher in C# (Console.WriteLine/ReadLine/Loops/Variables). At the second semester I started to gain interest and motivation to program at home. I did the programs we made in school (random number guessing game) but better. Improved it, added colors.
After that, I started developing in Unity - Actually learning something and having the ability to develop something all by myself. It keeps driving me on. In the second year (the year I'm visiting right now) I tought myself HTML, CSS, JavaScript, jQuery, PHP. I'm very happy and also can't wait to discover and learn new things in these languages!
My latest project was an Android application for my father that he asked for (it calculated the price of the 3D print he would make).
// Sorry for the long post!
EDIT: Forgot to add a fun little detail. All my classmates make fun of me because I program so much !
Also: Tabs > Spaces8 -
Old rant about an internship I had years ago. It still annoys me to this day, so I just had to share the story.
Basically I had no job or work experience in the field, which is a common issue in the city I live in - developer jobs are hard to come by with no experience here. The municipality tried to counter this issue by offering us (unemployed people with an interest in the field) a free 9-month course, linked with an internship program, with a "high chance" of a job after the internship period.
To lure companies to agree to this deal, the municipality offered a sum of money to companies who willing to take interns. The only requirement for the company was that they had to offer a full-time position to the interns after the internship, as long as there were no serious issues (ex. skipping work, calling in sick, doing a bad job etc.).
On paper, this deal probably makes sense.
I landed an internship fairly quickly at a well-known company in the city. The first internship period went great, and I got constant positive feedback. I even got to the point where I ran out of tasks since I worked faster than expected - which I was fairly proud of at the time.
The next internship period was a weird mix between school (the course), and being at the company. We would be at the school for the whole week, expect Wednesdays where we could do the internship at the company.
When I met at work on that first Wednesday, the company told me that it made no sense for me to meet up on those days, as I was only watching some tutorial videos during that time, while they were finding bigger tasks for me - which in turn required that they got some designs for a new project. They said that due to the requirements they got from the municipality (which I knew nothing about at the time), they couldn't ask me to work from home - and they said it would "demoralize" the other developers if I just sat there on Wednesdays to watch videos. Instead, they suggested that I called in sick on Wednesdays and just watched the videos at home - which is something I would register to the workplace, so I wouldn't get in trouble with the school. It sounded logical to me, so I did that for like 5-6 Wednesdays in a row. Looking back at this period, there's a lot of red flags - but I was super optimistic and simply didn't notice.
After this period, the final 2 months of the internship period (no school). This time I had proper tasks, and was still being praised endlessly - just like the first period.
On the last day of the internship, I got called to a meeting with my teamlead and CEO. Thinking I was to sign a full-time contract, I happily went to the meeting.. Only to be told that they had found someone with more experience.
I was fairly disappointed, and told them honestly that I would have preferred if they had told me this earlier, since I had been looking forward to this day. They apologized, but said that there was nothing they could do.
When I returned for the last school period (2 weeks), the teacher asked me to join him for a small meeting with some guy from the municipality. Both seemed fairly disappointed / angry, and told me what still makes me furious whenever I think about it.
Basically after my last internship period, the company had called the municipality, telling them that I had called in sick on those Wednesdays, and was "a lazy worker", and they would refuse to hire me because of that.
I of course told them my side of the story, which they wouldn't believe (unemployed person vs. well-known company).
Even when I landed a proper job a few months later, the office had called my old internship for a reference - and they told the same story, which nearly made them decline my application. This honestly makes me feel like it's something personal.
So basically:
Municipality: Had to pay the company as the deal / contract between them was kept.
Company: Got free money and work.
Me: Got nothing except a bad reputation - and some (fairly limited) experience..
Do I regret taking the course? .. No, it was a free course and I learned a lot - and I DID get some experience. But god, I wish I had applied at a different company.
Sorry for my bad English - it's not my first language.. But f*ck this company :)8 -
So… I released v2.0.0 of devRant UWP a few weeks ago.
Then I got a lot of reports of problems on Windows 10 Mobile and older (than 1809) versions of Windows 10 on Desktop.
I decided to resubmit v2.0.0-beta16 to the store, and try to find the issue in the update… I didn't find it.
The code seems the same as the working version (at least the part I try to test is 100% equal).
So it seems I fucked up the vs project.
This means that to find the issue I can spend weeks to search it over and over inside the latest project (using shitty emulators of older Windows 10 builds to debug it), or I could just restore it to the old v2.0.0-beta16 (released in august) and implement again every single new feature and fix (something like 5 new features, dozens of improvements, changes and bug fixes).
In any case, this will require a lot of time (which I don't have at this moment).
I'm really sorry for this inconvenience, I know some of you use my client daily (~3.000 users I guess), I'm really glad someone likes it, and thanks a lot for the awesome reviews and feedback, but stable v2 (v2.1.0 at this point) will be available not earlier than in February.
Probably some of you have already download v2.0.0 while it was available in the store, and maybe it works on your device (please let me know in the comments below if you did, how is it going, and also if you like the new features and improvements).
After this epic fail, and more than 1 year (way too much) of v2 public beta, I want to throw the current project in the trash, and start it from scratch.
Which means I will start to work on v3 as soon as you will see v2.1.0 in the store, making it faster, lighter and with better support for the latest Windows 10 (Fluent Design and not) features, dropping the support for the very old UWP API.
Thanks for your attention.
Have a good day (or night)!5 -
Contenders for arseholes this week
- Elasticsearch as their implemented product identification and integration in client libraries like Python to exclude OpenSearch made a lot of things very painful. Yay....
- Microsoft decided to integrate kill switches in Exchange. Yeah.... Great stuff.
- Atlassian has another week of dumbness - after they botch release after release, they killed Slack with DNS
- Adoptium still hasn't managed to provide repositories after fucking up it's transition from AdoptOpenJDK
- No, a project with JDK 8 makes no sense anymore, take that shit and burn it. JDK 11 the same, would be great if we had a Repository working for JDK 17 Adoptium....
- unwanking a TLS setup by integrating an intermediary load balancer to deal with several outdated TLS implementation is a kind of thing that's really scary...
(TLS 1.3 in, TLS 1.1 - TLS 1.3 out... Theoretically all solutions have TLS 1.2… most of them non working. Solutions is a wild bunch from different vendors)
- If you buy a fucking new Apple with an Arm Chipset, ram it up so far up your arse it gets dissolved in stomach acid.
It's an arm. There's tons of compatibility problems of course. No you shouldn't listen to what the marketing says. No I cannot shit rainbows and make it work.
- German election. No politics I know, but still.
- New neighbors decided to move in. Friendly person's. Except I wanted to murder them since they choose 22 o clock for moving time.
- I forgot putting the heater on. Ever woken up frozen like fuck and having a hard week... It's a good combo to break any form of motivation.
The company next to me is renovating. Waking up to the feeling of an earth quake because they demolish their old building is another thing that makes me unhappy.
It's Friday. I survived.17 -
Let me tell you how shit flies in Aerospace&Defense companies in certain place in on earth
1. Your dev. PC is isolated from the internet. You can not download any software/library etc directly. "Legal" way takes literally days and you must all effort for it to work. I will not discuss the details of legal way but it is not asking IT team to download it for you, you do it yourself.
2. You use an archaic requirement standard that is somehow used by all other similar companies too. These companies f*ck each other in the arse when they are working on projects together(hiding details from each other which is necessary most of the times etc.) but they were kind to each other when it came to share shitty req. standard.
3. When you try to switch to new requirement standard, you waste weeks only to amend the old one, because everyone is using old one for all projects, so changing it would upset old guards in the company(which are people works in same project for 10 years, no personal development)
4. You came 1 minutes late, you fill the "minutely permission" form.
5. You already work long hours per day and they remove your small breaks during day, because developers use those breaks longer than intended(I wonder what might be the reason...)
6. A technology can not be adopted into current projects even it has objective advantages proven many times in the outer world, because old guards(developers), IT team and configuration management guys(poor man's dev ops role sometimes) can not change their ways.
I hate this shit...6 -
Why does almost everyone act as if the world they live in is perfect, or is supposed to be perfect?
This is about approaching IT infrastructures, but goes way beyond IT, into daily lives.
Daniel Kahneman wrote about the "Econs" - a mythical creature that behaves according to rules and rational thoughts, that everybody is guided by, as opposed to Humans, who are irrational, intuitive and emotional.
My beef is with a wider perception, beyond economical analysis, profit, investment and so on.
Examples:
Organization A uses a 15 year old system that is crappy beyond description, but any recent attempt to replace it have failed. Josh thinks that this is a crappy organization, any problem lies within the replacement of that system, and all resources should be devoted to that. Josh lives in a perfect world - where shit can be replaced, where people don't have to live with crappy systems. Josh is stupid, unless he can replace that old system with something better. Don't be Josh. Adapt to the fucking reality, unless you have the power to change it.
Peter is a moron who downloads pirated software with cracks, at the office. He introduced a ransomware that encrypted the entire company NAS. Peter was fired obviously, but Sylvia, the systems administrator, got off easily because Peter the moron was the scapegoat. Sylvia truly believes that it's not her fault, that Peter happened to be a cosmic overgrown lobotomized amoeba. Sylvia is a fucking idiot, because she didn't do backups, restrict access, etc. Because she relied on all people being rational and smart, as people in her imaginary world would be.
Amit finished a project for his company, which is a nice modern website frontend. Tom, the manager says that the website doesn't work with Internet Explorer 8, and Amit is outraged that Tom would even ask this, quoting that IE8 is a dinosaur that should've been euthanized before even hatching. Amit doesn't give a shit about the fact that 20% of the revenue comes from customers that use IE8, what's more important to him is that in his perfect imaginary world everybody uses new hardware and software, and if someone doesn't - it's their fault and that's final. Amit is a fucking asshole. Don't be like Amit.
React to the REAL world, not what you WANT the world to be. Otherwise you're one of them.
The real world can be determined by looking at all the fuck ups and bad situations, admit that they happen, that they're real, that they will keep happening unless you do something that will make them impossible to happen or exist.
Acting as if these bad things don't exist, or that they won't exist because someone would or should change it, is retarded.10 -
I've caught the efficiency bug.
I recently started a minimum wage job to get my life back in order after a failed 2 year project (post mortem: next time bring more cash for a longer runway)
I've noticed this thing I do at every job, where I see inefficiency and I think "how can I use technology to automate myself out of this job?"
My first ever application was in C++ for college (a BASIC interpreter) and it's been so long I've since forgotten the language.
But after a while every language starts to look like every other language, and you start to wonder if maybe the reason you never seriously went anywhere as a programmer was because you never really were cut out for it.
Code monkey, sure. Programmer? Dunno, maybe I just suffer from imposter syndrome.
So a few years back I worked at a retail chain. Nothing as big as walmart, but they have well over 10k store locations. They had two IBM handscanners per store, old grungy ugly things, and one of these machines would inevitably be broken, lost or in need of upgrade/replacement about once a year, per location. District manager, who I hit it off with, and made a point of building report with, told me they were paying something like $1500 a piece.
After a programming dry spell, I picked up 'coding' with MIT app inventor. Built a 'mostly complete' inventory management app over the course of a month, and waited for the right time.
The day of a big store audit, (and the day before a multi-regional meeting), I made sure I was in-store at the same time as my district manager, so he could 'stumble upon' me working, scanning in and pricing items into the app.
Naturally he asked about it, and I had the numbers, the print outs, and the app itself to show him. He seemed impressed by what amounted to a code monkeys 'non-code' solution for a problem they had.
Long story short, he does what I expected, runs it by the other regionals and middle executives at the meeting, and six months later they had invested in a full blown in house app, cutting IBM out of the mix I presume.
From what I understand they now use the app throughout the entire store chain.
So if you work at IBM, sorry, that contract you lost for handscanners at 10k+ stores? Yeah that was my fault (and MIT app inventor).
They say software is 'eating the world' but it really goes to show, for a lot of 'almost coders' and 'code monkeys' half our problem is dealing with setup and platform boilerplate. I think in the future that a lot of jobs are either going to be created or destroyed thanks to better 'low code' solutions, and it seems to be a big potential future market.
In the mean while I've realized, while working on side projects, that maybe I can do this after all, and taken up Kotlin. I want to do a couple of apps for efficiency and store tracking at my current employer to see if I'm capable and not just an mit app-inventor codemonkey after all.
I'm hoping, by demonstrating what I can do, I can use that as a springboard into an internal programming position at my current gig (which seems to be a company thats moving towards a more tech oriented approach to efficiency and management). Also watching money walk out the door due to inefficiency kinda pisses me off, and the thought of fixing those issues sounds really interesting. At the end of the day I just like learning new technologies, and maybe this is all just an excuse to pick up something new after spending so long on less serious work.
I still have a ways to go, but the prospect of working on B2B, and being able to offer technological solutions to common and recurring business needs excites the hell out of me..as cringy and over-repeated as that may sound.5 -
On the first day of Christmas, the bossman gave to me: The fact that my new computer purchase order needs to be OKed by the CEO and I need to continue working on a 2014 Mac Mini (i5-4260U, 8 Gig RAM, GPU shot by an ESD on the case long ago) for the next year.
On the second day of Christmas, my family gave to me... a good reason to get shitfaced
On the third day of Christmas, getting shitfaced gave to me: A hangover and some urgent plastic welding job that had to be done with a soldering iron. FML, I've had a headache before breathing in pure hydro-cyano-whatthefuckyougetwhenyoumeltplastics
On the fourth day of Christmas, my team gave to me: A legacy, age-old Rails 2 project that was written by an intern and never reviewed, went to prod in 2014 and can't be changed anymore, but needs to be changed after the fact that it has zero test coverage and needs 100 % now to prevent issues and costly manual testing.
On the fifth day of Christmas, devrant gave to me: The Idea that making fun of Christmas songs to get over the sheer amount of dicks that working over the twelve days of Christmas sucks.
To be continued...2 -
This is going to be a rant, but personally, I'm pleased with the outcome of my life now.
I was part of a community for a few years and decided to help them out with my knowledge of programming Lua nearly 2 years ago since they lacked developers for the project itself.
Since it was sort of a custom language that they modified how Lua worked on it, it took me a bit to adapt, but within a few weeks, I was pretty fluent in this so-called custom language they had. Began working on some major updates, additions, removals, and just optimizing this code base. It was a pretty old code base and needed a good chunk of love.
A few months later, I've implemented loads of features, optimized the base whenever I could, and then things start taking a turn for the worse. We get new 'developers' who haven't ever coded the language, and worse they couldn't afford to provide them development servers thus they ended up breaking my servers. I helped them and they learned, they were decent, but now the Seniors and CEO's of the project began to take a toll on me.
I was told that this community had a reputation of driving out developers, ruining their reputations, and that is what started happening. I started getting questioned if I was loyal to helping them, that I've become lazy, even though they were explained I've had mental health issues for a few years and have been hospitalized multiple times.
These sort of attacks kept happening for months, and then they finally pushed my buttons, where I was talking to another Senior of how we should redo the base since it's just so massive and a few tiny updates to the base take a few days to implement across the entire code. What instead happened was that I went to sleep, and this Senior told the CEO I was going to steal the code base and go sell it...
I woke up to messages of how the CEO is all pissed off, and that this what the Senior said. At this point, I started responding with, fuck it. I was so sick and fucking tired of their bullshit. I was the only fucking competent developer, and I did more work in the few months I was there then some people did in 2 or 3 years.
A few hours later I decided to go chat with the CEO and explained what was truly brought up, and he just brushed it off like I was lying. At that point, I lost it. I told him why the code base was horrible since he hired stupid ass developers. He didn't know how to code. People wanted certain items, and he wouldn't be able to add them for fucking months and players sit there making fun of it. Some people state the only differences they see within the code is the code I've done. Basically, he was an incompetent fuck that said he knew what he was doing, and had all these big plans for the future yet couldn't listen to the only competent developer and fucking claimed bullshit.
Now a few months have gone by, I'm looking at their community and it's basically dead with no proper updates except for copy and paste updates claiming to be custom coded. While I'm working on my real life businesses (Which are currently being a headache, but within the year should resolve its issues), starting University for my Computer Science degree here soon, and even considering building my own game here.
Basically, karma is a bitch and that's why when you get loyal people in your life, keep them. (Writing this at 3 am after a few drinks, hopefully, it made sense, I think it does.)
Anyways, goodnight everyone.5 -
VB3.
In my last rant I mentioned I used to convert VB3 code to .Net. Before that, I used to work on the VB3 product itself. This software emulated something from the real world, and as such complied with a bunch of regulations that changed on a regular basis, and always had additions and removals that were to be done on a strict schedule (e.g. "we're adding a new product next month, so we have to be able to sell it by the first of the month"). As such, it was a huge sprawling mess.
One day, I was given a task to change some feature slightly. The task was simple enough and really only required adding one line of code. I added that line and clicked "Run".
Error: Too Much Code
What? What do you mean too much code? I asked a colleague for help. "Oh, don't worry, it happens when a function is too long. Just remove one or two of the comments and try again." The comments were, naturally, old deleted code that was quite meaningless so I had no qualms about removing some. It worked, and I went on with my life.
This started happening on a regular basis on our larger functions. But there were always comments to remove so it wasn't a big issue.
One day, though, it happened on a five-line function. This was puzzling - the error had always happened when a function was too big but this one clearly wasn't. What could the error mean? I went to the same colleague.
Apparently, there's also a limit to how big the entire code base can be. "Just find a function that isn't used any more and delete it." And so I did. There were many such functions, responsible for calculating things which no longer existed so they were never called. For months, I'd find functions and remove them. Until there weren't any more. I checked every function and subroutine in our codebase, and they were all used; I checked every possible code path and they were all needed.
What do I do now, I asked? The colleague, who was an expert on VB3 but worked on another project, came and take a look.
"Look at all these small functions you made! No wonder you're running out of space!" Apparently each function created a lot of overhead in the compiled executable. The solution was clear. Combine small functions into large monolithic ones, possibly passing flags in them to do completely unrelated things. Oh, and don't comment on the different parts because we have no room for comments in our code base.
Ah, the good old days.5 -
My first job was actually nontechnical - I was 18 years old and sold premium office furniture for a small store in Munich.
I did code in my free time though (PHP/JS mostly, had a litte browsergame back then - those were the days), so when my boss approached me and asked me whether I liked to take over a coding project, I agreed to the idea.
Little did I know at the time: I was supposed to work with a web agency the boss had contracted to build their online shop. Only that he had no plan or anything, he basically told them "build me an online shop like abc(a major competitor of ours at the time)"
He employed another sales lady who was supposed to manage the shop (that didn't exist yet). In the end, I think 80% of her job was to keep me from killing my boss.
As you can imagine, with this huuuuge amout of planning and these exact visions of what was supposed to be, things went south fast and far. So far that I could visit my fellow flightless birds down in the Penguin's republic of Antarctica and still need to go further.
Well... When my boss started suing the web agency, I was... ahem, asked to take over. Dumb as I was, I did - I was a PHP kid and thought that Magento, being written in PHP, would be easy to master. If you know Magento, you know that was maybe the wrongest thing I ever said.
Fast forward 3 very exhausting months, the thing was online. Not all of it worked yet, but it was online and fairly secure.
I did next to everything myself, administrating the CentOS box the shop was running on, its (own) e-mail server, the web server, all the coding required for the shop (can you spell 12 hour day for 8 hour pay?)
3 further months later, my life basically was a wreck, I dragged myself to work, the only thing I looked forward being the motorcycle ride home. The system worked though.
Mind you, I was still, at the time, working with three major customers, doing deskside support and some admin (Win Server 2008R2 at the time) - because, to quote my boss, "We could not afford a full time developer and we don't need one".
I think i stopped coding in my free time, the one hobby I used to love more than anything on the world, somewhere Decemerish 2012. I dropped out of the open source projects I was in, quit working on my browser game and let everything slide.
I didn't even care to renew the domains and servers for it, I just let it die without notice.
The little free time I had, I spent playing video games and getting drunk/high.
December 2013, 1.5 years on the job, I reached my breaking point and just left, called in sick at least a week per month because I just could not see this fucking place anymore.
I looked for another job outside of ALL of what I did before. No more Magento, no more sales, no more PHP. I didn't have to look for long, despite what I thought of my skills.
In February 2014, I told my boss that I quit. It was still seven months until my new job started, but I wanted him to know early so we could migrate and find a replacement.
The search for said replacement started in June 2014. I had considerably less work in the months before, looks like he got the hint.
In August 2014, my replacement arrived and I got him started.
I found a job, which I am still in, and still happy about after almost half a decade, at a local, medium sized ISP as a software dev and IT security guy. Got a proper training with a certificate and everything now.
My replacement lasted two months, he was external and never really did his job - the site, which until I had quit, had a total of 3 days downtime for 3 YEARS (they were the hoster's fault, not mine), was down for an entire month and he could not even tell why.
HIS followup was kicked after taking two weeks to familiarize himself with the project. Well, I think that two weeks is not even barely enough to familiarize yourself with nearly three years of work, but my boss gave him two days.
In 2016, the shop was replaced with another one. Different shop system, different OS, different CI. I don't know why and I can't say I give a damn.
Almost all the people that worked at the company back with me have left for greener pastures, taking their customers (and revenue) with them.
As for my boss' comments, instructions and lines: THAT might not be safe for work. Or kids. Or humans in general. And there wouldn't be much left if you put it through a language filter...
Moral of the story: No, it's not a bad thing to leave a place if you're mistreated there. Don't mistake loyalty with stupidity!
And, to quote one of my favourite Bands: "Nothing matters when the pain is all but gone" (Tragedy + Time by Rise Against).8 -
Ignorant, stale old Dev I work with discovers huge bugs with a new project. A few weeks earlier I had brought up the fact that he does zero unit and behaviour testing and got basically laughed at.......
-
Two places: At a major NYC firm, I was in charge of social media. I was also involved with an intranet community. Something went bad with the intranet community project politics and I got blamed for it even though I had emails to prove I hadn't said/done what I was accused of. But to assert their dominance, my bosses called me to their office, sat me in literally a corner of the room, and interrogated me for 2 hours. The only thing missing was the bright light in my eyes and the "good cop" part of the routine. I'm ashamed to say they "broke" me and I just gave up and did what they told me to do to "fix" it even though I hadn't done anything wrong. The bosses were old enough to be my parents, so I wonder how much of that worked its way into the psychology of it all.
The second toxic workplace was where each month the boss would come from his home by the beach to tell us plebes what new ideas he wanted us to work on. We would just get done reporting on the results of his delusions of grandeur from the month prior and he'd pull the rug out and start us on some new thing. Never got any consistent traction on anything. He was the ultimate seagull manager: fly in, make a lot of noise, poop all over everything, and leave us cleaning up the mess. Oh, and we had to change the locks because we had to fire a customer service guy who was a little bit on the ragey side of things. Because of high turnover, I had seniority within 4 months of starting there.1 -
Fuck. I can't take this shit anymore.
There was a project where we had to implement third-party system for government agency processes management. For some reason, probably because my work is cheap for my boss, the task was assigned to me. Just as a reminder, I'm a .NET Dev. Zero experience in server management. Zero experience in external services implementation.
Anyway, system producent, also an government agency, got angry, becasue they can only earn money on implementation. They have to give the software to other agencies for free. Because of that I've got client program, incomplete documentation and broken scripts for database creation. It took me 2 months to get it all to work but at the end client was happy, my boss got paid and I've got 500 PLN (~130 USD) bonus.
Everything was fine for a while, but after a month server has started freezing everyday, some time before 7 am. The only way I found to make it work again was to restore snapshot made everyday at 10 pm. For a month I was waking up earlier and restored snapshot, and after that my boss took it upon himself. I tried few times to find a bug and fix it, but to no effect. Even person with much more experience with it tried to help but also couldn't find anything.
My solution? Copy all the data and configuration, create new machine, copy everything and check if the problem persists. If not, kill old server. Client won't even notice. But nooooooooo... It would cost my boss a bit of money and I'd need to work on it and he can't let it be, because I'm the only developer working on his flagship product. He'd rather wake up everyday and restore snapshot. Okay, as you wish.
And today, finally, everything went downhill. Snapshot wasn't created, server froze, backup can't be created. Nothing can be done. Client is furious, because they have had reported this problem and a few times restoration was too late and they couldn't work. No one knows how to fix it, I'm not working today (I'm still studying and am available only 2 days) and situation is really shitty.
BUT SURE. ITS BETTER TO RESTORE SERVER EVERYDAY THAN JUST FUCKING FIX IT.
Oh, also, there's no staging or any other real backup. We have snapshots for each day and that's that. Boss' order. Why do I even care...7 -
I'm exhausted.
After one and a half year after my last rant, I'm here again. I left the previous job as web developer after almost 12y. At the time I found 3 new jobs as developer; I chose the one with the largest company, the premises were really good. My 3 interviews were excellent. But what I found next was almost a nightmare.
I was literally "confined" for the first 2 months, no internet connection, no email address, very little communication with colleagues. My near colleague was sharing the code were I would work via a usb key. All this for "safety" purposes, because "here you start this way".
For me it was not so bad, I could take my time to study my work and do it (without Stack Overflow and only by reference guides, when needed - I felt proud in an old way). But the next months were really tough: no help to understand what I missed about the work I was doing (consider that I was working on a large database, previously used by an old ERP, on which other developers - prior me - wrote a lot of code, to make the company continue use all the data after the expiration of the ERP licences - speaking about a year 2000's Java application).
Now I find myself struggling, because the main project on which I was working has been set aside (apparently for some budget decisions); my work team constantly make me do some manteinance on the old code, but the main tasks are done by the old mate, "because deadlines are always pressing and there would not be enough time to explain you anything". I'm not growing.
I'm really becoming reluctant to write code, and whenever I do it, I constantly feel under pressure, and this makes me nervous and inclined to make errors.
Don't take me wrong, I was/am good at my work, but it's like I'm loosing that sparkle I had till a few years ago.
When I'm at home I try to study or write code, just to keep training my mind, but I'm really struggling and I'm worried about losing my brain for doing this job. I constantly forget things and lose focus.
Never felt this way. I am thinking about the chance to switch again and search for another company.6 -
Long rant 😤😤😤
Today I was going to hit my project manager in the face. I can't stand people like him. In every fucking meeting he starts talking about his past successes and we are forced to listen to him. In this sprint, we had a tough task which took more time than planned. So we didn't finish it till the deadline. After working hard all night long I finally managed to get the job done. And today guess what happened? He didn't fucking appreciate it. All he was talking was mediocre look of the module we've developed for the website. And it's not even my job to make a beautiful design as a back-end developer. At a point I wanted to resign. I don't know how much I will stand this situation. He has always been like this since he came to the company. The worst part is, he is not a senior developer or something. Al he talks about is some fucking old jobs he has done we don't know if they are real or not. From every meeting we suspect his skills are limited. He just knows how to talk. He has never reviewed a single line of code because he doesn't know PHP (yes I know, I know). Hell he doesn't know any back-end language and he is supposed to create a new architecture for the website. He don't have enough database skills neither. All he says he has worked as a mobile and front-end developer. So now I'm home and don't know If I should resign or not.4 -
I was reading the post made by another ranter in which he was basically asked to lower the complexity of an automation script he wrote in place of something everyone else could understand. Another dev commented that more than likely it had to do with the company being worried that ranter_1 would leave and there would be no one capable of maintaining the code.
I understood this completely from both perspectives. It makes me worry how real this sometimes is. We don't get to implement X tech stack because people are worried that no one would be able to maintain Y project in the event of someone leaving. But fuck man, sometimes one wants to expand more and do things differently.
At work I came to find out that the main reason why the entirety of our stack is built in PHP is because the first dev hired into the web tech department(which is only about 12 years old in my institution) only knew PHP. The other part that deals with Java is due to some extensions to some third party applications that we have, Java knowledge (more specifically Spring and Grails) is used for those, the rest is mostly PHP. And while I LOVE PHP and don't really have anything against the language I really wonder what would it be of the institution had we've had a developer with a more....esoteric taste. Clojure, Elixir, Haskell, F# and many others. These are languages and tech stacks that bring such a forward way of thinking into the way we build things.
On the other hand, I understand if the talent pool for each of these stacks is somewhat hard to come up with, but if we don't push for certain items then they will never grow.
The other week I got scolded by the lead dev from the web tech department for using Clojure to create the demo of an application. He said that the project will most likely fall into his hands and he does not know the stack. I calmly mentioned that I would gladly take care of it if given the opportunity as well as to explain to him how the code works and provide training to everyone for it :D I also (in all of my greatness) built the same program for him in PHP. Now, I outrank him :P so the scold bounced out of the window, plus he is a friend, but the fact remains that we reached the situation in which the performance as well as the benefits of one stack were shadowed by the fact that it holds a more esoteric place in the development community.
In the end I am happy to provide the PHP codebase to him. The head of the department + my boss were already impressed with the fact that I was able to build the product in a small amount of time using a potent tech stack, they know where my abilities are and what I can do. That to me was all that matters, even if the project gets shelved, the fact that I was able to use it at work for something means a lot to me.
That and I got permission to use it for the things that will happen with my new department + the collective interest of everyone in paying me to give support even if I ever leave the institution.
Win.13 -
15 years ago I had a job interview as technical leader. They asked me about the trendy framework in those days, Struts. I didn't know much to be honest. I actually started to study java the month before. I was 30 y.o. and I managed to sell myself well.
I got the job. I never saw Struts, the real job was to migrate a z/OS application written on PL/I for DB2 (all things where new to me, I programmed something in VB when I was younger, before studying a career in statistics). Anyway, somebody else already scaffolded Struts, I implemented some business logic here and there, and mostly tried to make sense of the monster-legacy.
Fast forward now.
Two months ago I was interviewed on the last version of Angular and AWS devops, kubernetes etc. I managed not to look completely idiot, but honestly, I never went beyond an Hello World in Angular, and kubernetes, well, I like the name.
I got the job as Technical Architect.
First project I'm assigned to: migrate a 15 years old Struts application to cloud.
Somebody has containerized everything.
Somebody will scaffold a dotNet application.
I'll watch. Maybe I'll write some nice powerpoint presentation. Maybe I'll fill in some business logic in some methods.
I wanted really to be a technical Architect and do things other modern people do.
I actually wanted to learn something.
Anyway.
For 160K$ a year is not bad, I wouldn't complain.3 -
Just started developing a to-do list that interacts with Calendar in swift.
Having done a lot of frontend development with js frameworks, xcode + swift + CoreData makes me want to blow my brains out.
I thought Java was verbose, but swift takes verbosity to a new level. Why does unwrapping variables make my program better?
I have already permanently broken my project twice by changing class names and changing the CoreData datamodel in xcode.
I had to create new projects, copy and paste the exact code from the old project into the new project and the code ran fine.
As soon as you need to do anything custom with a view, you have to pray to god someone has posted an example using very similar data.
Otherwise you have to read the apple documentation which is about as helpful as xcode's segfault dumps, unless you already know the names of the objects and methods that you need.2 -
Worst collaboration experience story?
I was not directly involved, it was a Delphi -> C# conversion of our customer returns application.
The dev manager was out to prove waterfall was the only development methodology that could make convert the monolith app to a lean, multi-tier, enterprise-worthy application.
Starting out with a team of 7 (3 devs, 2 dbas, team mgr, and the dev department mgr), they spent around 3 months designing, meetings, and more meetings. Armed with 50+ page specification Word document (not counting the countless Visio workflow diagrams and Microsoft Project timeline/ghantt charts), the team was ready to start coding.
The database design, workflow, and UI design (using Visio), was well done/thought out, but problems started on day one.
- Team mgr and Dev mgr split up the 3 devs, 1 dev wrote the database access library tier, 1 wrote the service tier, the other dev wrote the UI (I'll add this was the dev's first experience with WPF).
- Per the specification, all the layers wouldn't be integrated until all of them met the standards (unit tested, free from errors from VS's code analyzer, etc)
- By the time the devs where ready to code, the DBAs were already tasked with other projects, so the Returns app was prioritized to "when we get around to it"
Fast forward 6 months later, all the devs were 'done' coding, having very little/no communication with one another, then the integration. The service and database layers assumed different design patterns and different database relationships and the UI layer required functionality neither layers anticipated (ex. multi-users and the service maintaining some sort of state between them).
Those issues took about a month to work out, then the app began beta testing with real end users. App didn't make it 10 minutes before users gave up. Numerous UI logic errors, runtime errors, and overall app stability. Because the UI was so bad, the dev mgr brought in one of the web developers (she was pretty good at UI design). You might guess how useful someone is being dropped in on complex project , months after-the-fact and being told "Fix it!".
Couple of months of UI re-design and many other changes, the app was ready for beta testing.
In the mean time, the company hired a new customer service manager. When he saw the application, he rejected the app because he re-designed the entire returns process to be more efficient. The application UI was written to the exact step-by-step old returns process with little/no deviation.
With a tremendous amount of push-back (TL;DR), the dev mgr promised to change the app, but only after it was deployed into production (using "we can fix it later" excuse).
Still plagued with numerous bugs, the app was finally deployed. In attempts to save face, there was a company-wide party to celebrate the 'death' of the "old Delphi returns app" and the birth of the new. Cake, drinks, certificates of achievements for the devs, etc.
By the end of the project, the devs hated each other. Finger pointing, petty squabbles, out-right "FU!"s across the cube walls, etc. All the team members were re-assigned to other teams to separate them, leaving a single new hire to fix all the issues.5 -
devRant is awesome, but Disney also manages to light-up my day.
This is how Wall-E became a beloved member of our team, and helped me put a smile on my face throughout a very frustrating project.
It all started in a company, not so far far away from here, where management decided to open up development to a wider audience in the organization. Instead of continuing the good-old ping-pong between Business and IT...
'not meeting my expectations' - 'not stated in project requirements'
'stuff's not working - 'business is constantly misusing'
'why are they so difficult' - 'why don't they know what they really want'
'Ping, pong, plok... (business loses point) ping, pong'
... the company aimed to increase collaboration between the 2 worlds, and make development more agile.
The close collaboration on development projects is a journey of falling and getting back up again. Which can be energy draining, but to be honest there is also a lot of positive exposure to our team now.
The relevant part for this story is that de incentive of business teams throughout these projects was mainly to deliver 'something' that 'worked'. Where our team was also very keen on delivering functionality that is stable, scalable, properly documented etc. etc.
We managed to get the fundamentals in place, but because the whole idea was to be more agile or less strict throughout the process, we could not safeguard all best-practices were adhered to during each phase of a project. The ratio Business/IT was simply out of balance to control everything, and the whole idea was to go for a shorter development lifecycle.
One thing for sure, we went a lot faster from design through development to deployment, high-fives followed and everybody was happy (for some time).
Well almost everybody, because we knew our responsibility would not end after the collection of credits at deployment, but that an ongoing cycle of maintenance would follow. As expected, after the celebrations also complaints, new requirements and support requests on bug fixes were incoming.
Not too enthusiastic about constantly patching these projects, I proposed to halt new development and to initiate a proper cleaning of all these projects. With the image in mind of a small enthusiastic fellow, dedicated to clean a garbage-strewn wasteland for humanity, I deemed "Wall-E" a very suited project name. With Wall-E on board, focus for the next period was on completely restructuring these projects to make sure all could be properly maintained for the future.
I knew I was in for some support, so I fetched some cool wall papers to kick-start each day with a fresh set of Wall-E's on my monitors. Subsequently I created a Project Wall-E status report, included Wall-E in team-meetings and before I knew it Wall-E was the most frequently mentioned member of the team. I could not stop to chuckle when mails started to fly on whether "Wall-E completed project A" or if we could discuss "Wall-E's status next report-out". I am really happy we put in the effort with the whole team to properly deploy all functionality. Not only the project became a success, also the idea of associating frustrating activities with a beloved digital buddy landed well in our company. A colleagues already kickstarted 'project Doraemon', which is triggering a lot of fun content. Hope it may give you some inspiration, or at least motivate you to watch Wall-E!
PS: I have been enjoying the posts, valuable learnings and fun experiences for some time now. Decided to also share a bit from my side, here goes my first rant!3 -
It was a Monday morning, and I did what most people do - I got up late. When I came to senses, I realized I have an important client meeting today.
I ran towards my closet and grabbed my favorite shirt, but it was a mess, badly wrinkled.
But no problem, I decided to put this task on my old but trusty laptop, I waked up my laptop (Which has just celebrated its 12th birthday yesterday), it literally coughed 100 times as i opened 3-4 chrome tabs and android studio on it. Within a minute , my newly found laptop-iron become as hot as the surface of sun, i gently placed my shirt under it and in 5 seconds my shirt was looking brand new !!! I quickly got dressed up , while my laptop was cursing me at the back.
Luckily my meeting went well and we secured a new project, on my way home I was happy and satisfied that my oldy has found a new purpose of life as a makeshift iron.
I returned home, and to my surprise my laptop was'nt turning on....!!! I though maybe its tired from todays work so i let him rest..........3 -
Oh man. I have been waiting for this one. Gather round lil' chil'rens it's story time.
So. I was looking for a new project because my old one was wrapping up and that's what my company does. So I was offered some simulation type stuff. I was like "sure why not, I want to make a computer pretend it isn't a computer no more." Side note I should not be a psychiatrist.
So, prior to coming on to this job I felt stifled by my old job's process. This job was a smaller team so I thought the process would be a little smoother. But it turned out they had NO process. Like they had a bug tracking system and they held the meeting to add things to the system, but that was just fucking lip service to a process.
First of all, they used the local disk on the test box as their version control. and had no real scheme as to how they organized it. We had a CM tool but gods forbid they ever fucking use it. I would be handed problem reports and interface change requests, write a bug to track it, go into the code and about 75% of the time or more it had already been worked. However, there was no record of it being worked and I would have to fucking hunt that shit down in a terribly shitty baseline (standardize your gods damned indentation for fuck's sake) and half the time only found out it was done because when I finally located the piece of code that needed changing, the work was already done.
Then, on top of all that, they ask me what time I want to come in. I said 10am, they said okay. One day I roll in at 10 and my boss is mad. Because I missed a meeting. That was at 9. That I wasn't told about. He says I can keep coming in at 10am though (I asked and volunteered to help get him up to speed on the things I was working he said it wasn't necessary) so I did, but every time I missed a 9am meeting he would get pissed. I'm like PICK ONE!!! They move the meeting to 9:30am (which is not 10am).
This shit starts affecting my health negatively. Stress is apt to do that. It triggered an anxiety relapse that pushed me back in to therapy for the first time in 7 years. On top of that the air quality in the office is so bad that I am getting back to back sinus infections and I get put on heavy antibiotics that tear up my stomach along with the stress and new meds tearing up my stomach. So one day as I am laid out in pain, I call out sick. Two days in a row. (Such a heinous crime right.) Well I missed a test event, that I wasn't even the primary or secondary on.
So fast forward to the most pissed off I have ever been. I get called in to a meeting with my boss's boss. As it turns out, my coworkers are not satisfied by the work that I'm doing (funny because I thought I was doing pretty good given that my only direction was fix the interface change reports and problem reports. And there was no priority assigned to any of them).
And rather than tell me any of this, they go behind my back to the boss and boss's boss. They tell me I need to communicate (which I did) and ask for help when I need it (I never did). That I missed an important event (that I played no part in and gods forbid I be sick) and that it seemed like I didn't want to be there (I didn't but who WANTS to work a corporate job).
They put me on a performance improvement plan and I jumped to another project. I am much happier now. Old coworkers won't even say hi, not even those I was friendly with, but fuck them anyway.5 -
Throughout the years I have completed many projects successfully. Some projects really stood out and were awesome to do. This is not about these projects. It is however about one of my very first projects for my first real software development client many years ago, somewhere around the year 2000.
I was working for some years at TNO, a well known Dutch organization, and the lady at the reception asked me if I could help her husband out because he was strugling to get some web app developed. So I said sure, I can talk to him and see what I can do.
So I went to their house and talked to her husband. They were living in a huge villa and turns out her husband owns an international flower export business for which he needed some web app for. So we had a nice talk and he showed me some software designs he got from a couple of different big companies. He asked me my opinion about these designs. I remember answering something like that it looks very fancy but for me it didn't make much sense.
He replied that it didn't make sense for him as well and was disappointed that these companies didn't seem to understand him properly. It took about 3 months to get these designs which he thought were useless. So, I asked him to explain me what he was looking for.
Actually a pretty simple thing. He was using paper forms to have his clients order the flowers they need. Think of them as Excelsheets with 3 columns with a list of flower names and besides each column a column for the amount required. He would go to the flower auction at 4 in the morning to collect all these filled in forms, manually aggregate them on new forms, and then go to buy the flowers ordered.
This man had many clients and truck drivers. Some of them only worked or ordered at specific days. It was also important that one could easily indicate which flowers were really important to get.
Then comes this 20 year old guy (me) who delivered a working prototype in 24 hours. You can imagine how happy this man was. He said: if you built this for me I will pay you 10K. In the meanwhile for fun you can borrow one of my sports cars if you want.
I took the deal, drove a big fat sports car for about 1.5 months, I delivered and the man payed me as promised.
The web app I developed is today still being used every day. I don't think there is any other project out there, at least not that I'm aware of, that I have worked on and is still being used today in its form as it was originally developed.4 -
I've never used Windows in my day-to-day life. No kidding.
When I got my father's first computer, I used an old distribution called BBC Linux. I didn't have any computer knowledge, it was my first contact with a computer, so I went to a friend's house and asked for a CD to install on my computer. I don't know if this friend ended up making a "gotcha" and thought I'd give up, but I just read the manuals and fell in love. That was year 2000.
Then I used Conectiva Linux, then I went to Red Hat 9, then Slackware, then in 2007 I started using Solaris. And I stayed on Solaris (Solaris 10, Solaris Nevada and OpenSolaris) until 2011.
In 2011 I bought a Mac. I stayed at Apple until 2020, when I couldn't stand Apple forcing me to buy new computers (I still don't understand how a 2011 iMac, i5 (4 Hyper Thread cores) with 16GB of RAM, 1TB SSD only runs up to High Sierra).
Then I bought a Dell. It came with Windows 10, the first thing I did was install WSL2. I could not stand it, the system is bad, sorry. I installed OpenSuse and have been using it for two years.
It's just that every day someone tells me "how can you use this"? "There is no alternative to Windows, do you want to be different?"
I know that my story was the reverse of the "mainstream", so I'm going to talk about my vision of Windows, that in my brain it is actually the "alternative".
- Having a file explorer without "tabs" in 2022 is unthinkable for me.
- I love terminal. And the Windows terminal is very limited. "ps ... | awk ... | xargs ..." is a must for me. "find ./ -name '...' -exec ..."... these things on Windows are totally "different" and have the "powershell way" while all other operating systems keep the same form. And cygwin is not an option. As Wine for serious work is also not.
- Dragging a file into the terminal, and having it write its path, is so natural, that when Windows didn't do it, I was dismayed.
- I've always used StarOffice, OpenOffice and now LibreOffice. All the people in my story received my documents and reports as a PDF and no one complained. Until a coworker saw me editing in LibreOffice and said "oh I want it in word format". As long as he didn't know, everything was fine, right?
- Windows is paid. And is there advertising? I don't understand. And I refuse. If you want to display advertising, then excuse me. I have no problem paying, I'm not an opensource shiite. It's just that paying and not working bothers me much more than an opensource that I can fix or expect a fix knowing the good will of the people involved.
- Hyper-V is a joke. QEMU/KVM is better, and Bhyve on FreeBSD which is a very young project, is already a million times better than Hyper-V.
- Developing in C/C++ for Windows is only possible in two ways: Either you've always lived in Windows and your brain is conditioned, or you compile with MSYS2 (CLang or GCC).
- There is no significant evolution of the windows desktop since 95.
- Multiple workspace support with multiple monitors, not ready. It's another joke.
- REGEDIT does not need any comment.
- The system loses performance over time. I still don't know how Windows achieves this.
- I've seen people complain about desktop fragmentation on Unix and Linux. Many DEs end up leaving applications with different themes (like running a Qt application in Gnome and GTK in KDE), but to be quite honest, the lack of Windows standard bothered me much more. Even Microsoft's own software is completely different: Control Panel, Calculator, Paint and Office, To-Do, and Settings, have horrible style differences and look-and-feel fragmentation.
- Dark mode has not been implemented. It's another joke. Many applications are white while everything else is dark. Sorry, even on Linux which is a mess, this has been resolved. And well resolved.
- NTFS? Serious?
- C:, D:.. It doesn't convince me since DOS.
- Bloatware.
- News "biased" in the search bar is a lack of respect for those who use the computer to work.
And that. For me, Windows is the alternative operating system. I can't take Windows seriously, for me it's an experimental one like Haiku or ReactOS. It's good to play.
About market share, it doesn't convince me to use it. But convinces me to sell. I've always developed applications to run on Windows. And when I need it, I turn on a VM to compile the project. But in everyday life? Impractical.15 -
I dive in head first.
Some existing program annoys me, so I get this itch to write a selfhosted Spotify in Go, or a conky with 3D graphics in Rust.
I check the homepage of the language, download the tools, check which IDE is great for it.
Then I just start writing code, following the error corrections thrown by the IDE, doing web searches for all errors. Then when I run into a wall, I might check the reference docs or a udemy course.
Often I don't finish the project, because time is limited and I still have 4 million other things to do and learn, but at least I've learned a new language/tech.
Con: For tech which uses unique paradigms like Rust's memory management or Go's Goroutines, it can be frustrating to bash away at a problem using old assumptions.
Pro: By having a real demand for a product with requirements instead of a hello world or todo app, it's much easier to stay motivated, and you learn beyond what courses would teach you.5 -
Tuesday.
Director: we need to add our partner's project to our ci pipeline
CTO: we need to add ci to this repo, it should work via this tool (not the one we use now)
PM: we need to use this new tool, figure it out until Friday
TL: we need to move all our projects to this new ci tool, don't ask, the task is given by CTO
Me: okay
Friday.
Me: everything is ready except for this one old project
TL: we couldn't use it for one of our projects
PM: we had difficulties with the new tool
CTO: we couldn't add our partner's project to the pipeline
Director: *gives me a warning for being incompetent*1 -
Well, I was Always into Computers and Games and stuff and at some point, I started wondering: "why does Computer Go brrr when I Hit this Button?".
It was WinAPI C++ and I was amazed by the tons of work the programmers must have put into all this.
13 year old me was Like: "I can make a Game, cant be too hard."
It was hard.
Turns out I grabbed a Unity Version and tried Things, followed a tutorial and Made a funny jet Fighter Game (which I sadly lost).
Then an article got me into checking out Linux based systems and pentesting.
*Promptly Burns persistent Kali Live to USB Stick"
"Wow zhis koohl".
Had Lots of fun with Metasploit.
Years pass and I wrap my head around Javascript, Node, HTML and CSS, I tried making a Website, worked Out to some extent.
More years pass, we annoy our teacher so long until he opens up an arduino course at school.
He does.
We built weather stations with an ESP32 and C++ via Arduino Software, literally build 3 quadrocopter drones with remote Control and RGB lighting.
Then, Cherry on the top of everything, we win the drone flying Contest everyone gets some nice stuff.
A couple weeks later my class teacher requests me and two of my friends to come along on one of their annual teacher meetings where there are a bunch of teachers from other schools and where they discuss new technology and stuff.
We are allowed to present 3D printing, some of our past programming and some of the tech we've built.
Teachers were amazed, I had huge amounts of fun answering their questions and explaining stuff to them.
Finally done with Realschulabschluss (Middle-grade-graduation) and High school Starts.
It's great, we finally have actual CS lessons, we lesen Java now.
It's fuckton of fun and I ace all of it.
Probably the best grades I ever had in any class.
Then, in my free time, I started writing some simple programs, firstvI extended our crappy Greenfoot Marsrover Project and gave it procedural Landscape Generation (sort of), added a Power system, reactors, Iron and uranium or, refineries, all kinds of cool stuff.
After teaching myself more Java, I start making some actual projects such as "Ranchu's bag of useful and not so useful stuff", namely my OnyxLib library on my GitHub.
More time passes, more Projects are finished, I get addicted to coding, literally.
My days were literally Eat, Code, sleep, repeat.
After breaking that unhealthy cycle I fixed it with Long Breaks and Others activities in between.
In conclusion I Always wanted to know what goes on beneath the beautiful front end of the computer, found out, and it was the most amazing thing ever.
I always had constant fun while coding (except for when you don't have fun) and really enjoyed it at most times.
I Just really love it.
About a year back now I noticed that I was really quite good at what I was doing and I wanted to continue learning and using my programming.
That's when I knew that shit was made for me.
...fuck that's a long read.5 -
I was unemployed and had to sent out 10 or so job applications per month to e eligible to receive the money substitution for unemployment...
Anyways, not many jobs fit my experience, so I was sending out to those with higher/different requirements aswel.. That day I was meeting my sister and she was already waiting for me, so I quickly sent out a totally unpersonalised application for a job I wasn't qualified for. Next day I got back response email with a self grading questionaire I didn't really understood, all about MS technologies I never worked with..which means I didn't know how to grade myself..I decided to ask around people to try to help me grade myself, but then I totally forgot about that in the next days and never replied to that email.
Anyways, week later I got email for job interview from a sister company (found that out later, snooping through linkedin). I was surprised someone requested a meeting with me, especially without the agenda (at that time I was not aware it was a job interview).. Anyways I went there, found out the guy interviewing me thought they lost my questionaire. I explined the situation and he just decided to ask me around to see what I know. So we talked about my past experience and the guy who was doing the interview explained what is what & and explained what I did before and together we figured out what I know and what my experiences are... After we were done, he said that everything else, the payment and other stuff about the job position I should discuss with the director. Not to ask questions, but negotiate.. O.o And just like that I got the job, because they liked my CV & attitude (I like to learn new stuff) and they thought I'd fit in perfectly.
I'm still working there, it's been 4 years now, I think.. loved it since the day one.. Got 'promoted' to another project, crappy old code noone wants/dares to touch but I love it! The guys think I am weird cuz I like to solve/fix things and make them better, and previous employees who worked on that project have all lost their shit and quit. They are all wondering how I can handle this, but little do they know about devrant & my love for the crazy!!2 -
My most satisfying bug fix?
I found a core concurrency issue in this gnarly homegrown ORM and reported it to the lead devs, who (very defensively, having written the damn thing) argued that it would never pop up in a prod environment and I was stupid for even bringing it up. Theoretically, this bug could cause pretty much every foreign key to be assigned to the wrong parent, but only if multiple instances of the application were open/running at once. They were so certain it would never happen on live that they explicitly instructed me not to fix it. After all, this bug had been active for many years on a previous project and nobody complained.
Problem was, that previous project was something that only a single user had open most of the time (think: a manager). The new project was something that would be used by multiple people at the same time (think: all the employees). Once we released this new-project-with-old-orm, it didn't take long at all for our customers to start complaining.
After that, they let me fix the bug. :) -
Many people were hired to work on new product, but no one have told them that for one or two quarters they will have to maintain 20 years old project. I was ranting about this, but in the end accepted my fate, wiped tears with money and moved on. However one of devs took another path. When he was asked to work with .aspx and jquery 1.X instead of react, he just said : "Not going to happen" and left the building.5
-
Fml... you keep getting the weekly discussions right on point.
I started with the last guys right out of university... just out of Hospital.
With a brand new degree and a Crohn’s diagnosis I stepped into the first place I found hiring. They were good guys, after a junior dev... to get stuck in their muck.
I did! I nailed project after project, tricky development after tricky development. I spent 5 years with them and over those years things changed.
They had a mass cull... the original idea was to get rid of the useless middle managers, the ones managing other managers being managed by another manager for no real reason.... the ones that do fuck all with their day.
But the fucking idiots upstairs put the job of working out the cull in the shitty middle managers hands.
So, instead, they cut the titles senior, junior and everything in between. Everyone was just a thing, no senior things, no junior things. Just things.
Once they’d done that they said “we’ll we have this many things, they’re all the same, let’s get rid of the things with the highest pay checks because the other things can do it just as well for less money”...
And that’s how they cut 50% of their senior techs.
I was one of the ones left behind but the damage became obvious quick. The middle managers barked out orders at people who couldn’t complete them, and everything went to shit.
My team was rebranded twice in as many years... an obvious ploy for funding, but the cost of the team fluctuated like hell because contractors had to fill the senior positions at 3 times the cost.
Then the managers started barking out Self contradictory orders. Do this, but this way...
This would work, but not that way... try explaining that to a group of non-technical, useless as fuck middle managers. It took months, and shit flows downstream so we got the bulk of the hassle for it.
Then my boy Morpheus, got a warning... they threatened his contract for saying “this will work, but not that way”.
He kept the contract, and the manager giving him the warning said he didn’t think he should... but he, and all the middle fuckwits don’t have the balls to stand up against nonsense.
That was the breaking point for me, I handed in my notice and told them a month was what they could have.
I didn’t have a position or an idea of where to go, a few long-standing offers as back up in a pinch but not the perfect job.
On the Thursday I decided I was done, I let my manager know. Then I boshed the fuck out of my CV and updated my profiles.
My phone started ringing off the hook, a senior NG2/MEAN/Ionic dev on the market is like candy to recruiters. They’re lovely too.
I went to a few interviews that were okay but not great. Then a company got in touch... one that I immediately recognised as an IT book publisher. They said they were looking for NG/NG2 devs, senior. winner! Set up the interview.
So I’d spent the weekend with the missus, about an hour away from mine and 2 from the interview. I hadn’t planned on staying there but at 6ish she looked over at me and said “do you have to go” <- imagine that with puppy dog eyes from a gorgeous Slovenian lass.
I folded quicker than a shitty pancake toss.
We spent the night together but that meant I had to be up at 6, to go back to mine, iron my interview clothes and make it to the train to manage the interview. Fuck. I did it, but I was at the interview wired on caffeine and struggling to be awake and coherent. I still managed, that’s what I do, I make do and try to do well regardless of the situation.
That comes from being ill btw, when you’re dealt a shitty hand you learn to play it well.
They were good guys, the heads all knew what they were on about, not the middle management bs I was used to.
They demoed me live with an ng1 test, which was awesome as hell to play with.
We chatted, friendly and cool guys! I loved the place.
The end of the week they got me in for second round. Ng2 and competence test, again I went for it!
Positive feedback and a “we’ll get back to you ASAP, should be by Tuesday”...
Tuesday was the Tuesday before the Friday I was due to leave the old company... I was cutting it close.
On the Monday the offers started rolling in, a few C# ASP MVC positions, cool but I was holding out for the guys I’d interviewed with.
Then Tuesday comes around, I’m nervous as fuck but it’s okay because I knew regardless I can pay the rent in December with one of the offers.
Then said yes!
The thing that seemed most important in the process was my ability to talk to any fucker. If you’re coming up to interview, talk to everyone, the grocer, your barista, the binmen, anyone. Practice that skill above all others.
I start tomorrow morning! I can’t wait.
Final thought: middle managers are taints.7 -
I've been staffed on a old ongoing project, first day.
0. Compatibility has to be guaranteed down till IE9... ppf.
1. Front end made in XHTML+JS(jQuery)... bah, ok.
2. XHTML+JS is actually generated by PHP5.4, not a line is actually statically served... beh, funny, ok.
3. PHP files are the output of an XSLT transform of a bunch of XMLs... meh, seriously? Oooook.
4. XMLs are the product of the serialisation of a truck of stateful JavaEE6 DTOs populated magically (undocumented) with data coming from a SQL DB... WTF mode!!!
5. Session logics lives within PHP-land at point 2, front end makes ajax calls here that propagates to another WS out of our control that triggers -somehow- (undocumented) our Java backend at point 4 to generate new XMLs and then reach front end again. Kill me now.
Boss: look... it's too slow for the client, it's too heavy on our servers: fix it. Ah, and we sold 85% test coverage by October. You're the man for the job. (I'm a Node.js fullstacker and right now there's not even a testing scaffold, ofc).
Me: prod is on Linux or Windows?
Boss: RHEL7.
Me: rm -rf / as root. Done.
Boss: I know I know...
Me: ...
I think time has come...6 -
So I'm on vacation right now to visit family. I received an email from the head of department that, due to our department getting 7 new hires in one day, the seating arrangement has been changed.
My new seat is next to this one developer who's old enough to be my dad. He's a very nice guy and all, but the problem is he burps ALL. THE. TIME. I've never met anybody more gassy. His burps don't stink, thank God, but they're loud enough that it's seriously jarring.
You know how us devs can be completely in the zone until some marketing dickbag taps you on the shoulder and asks you to check your email or help with something that is absolutely not your job and you completely lose all focus and have to start over? Its exactly like that, except it happens every 10 minutes.
Another thing is, my back is now facing away from the wall, towards the rest of the office. The nearest section to mine is management. That means that anybody, including the CEO, can walk up right behind me and see what I'm doing at all times.
I really hate that. Id much rather be next to the wall to have some sort of privacy. Somehow sitting next to burpy guy is still the thing I'm most annoyed about though.
I tried to ask for a different seat, but my manager effectively said that I have no choice but to sit there because that guy is part of my team, and teammates should sit together. He forgot about the fact that, while the work him and I do is indeed related, I've been working on a solo project for the past few months and I don't need to be next to anybody in particular because I'm the only one working on this thing. Theoretically, I could sit in the toilet with my laptop and get my work done just fine. Maybe when I talk to him face to face in the office I can convince him to have some mercy on me.
The bright side is I'm very excited about meeting those 7 new hires I mentioned. They seem to be smart, capable people so I look forward to working with them and learning from them. Every cloud has a silver lining. 😊7 -
So I joined this financial institution back in Nov. Selling themselves as looking for a developer to code micro-services for a Spring based project and deploying on Cloud. I packed my stuff, drove and moved to the big city 3500 km away. New start in life I thought!
Turns out that micro-services code is an old outdated 20 year old JBoss code, that was ported over to Spring 10 years ago, then let to rot and fester into a giant undocumented Spaghetti code. Microservices? Forget about that. And whats worse? This code is responsible for processing thousands of transactions every month and is currently deployed in PROD. Now its your responsibility and now you have to get new features complied on the damn thing. Whats even worse? They made 4 replicas of that project with different functionalities and now you're responsible for all. Ma'am, this project needs serious refactoring, if not a total redesign/build. Nope! Not doing this! Now go work at it.
It took me 2-3 months just to wrap my mind around this thing and implement some form of working unit tests. I have to work on all that code base by myself and deliver all by myself! naturally, I was delayed in my delivery but I finally managed to deliver.
Time for relief I thought! I wont be looking at this for a while. So they assign me the next project: Automate environment sync between PROD and QA server that is manually done so far. Easy beans right? And surely enough, the automation process is simple and straightforward...except it isnt! Why? Because I am not allowed access to the user Ids and 3rd party software used in the sync process. Database and Data WareHouse data manipulation part is same story too. I ask for access and I get denied over and over again. I try to think of workarounds and I managed to do two using jenkins pipeline and local scripts. But those processes that need 3rd party software access? I cannot do anything! How am I supposed to automate job schedule import on autosys when I DONT HAVE ACCESS!! But noo! I must think of plan B! There is no plan B! Rather than thinking of workarounds, how about getting your access privileges right and get it right the first time!!
They pay relatively well but damn, you will lose your sanity as a programmer.
God, oh god, please bless me with a better job soon so I can escape this programming hell hole.
I will never work in finance again. I don't recommend it, unless you're on the tail end of your career and you want something stable & don't give a damn about proper software engineering principles anymore.3 -
True story
Was free at work so applied for a stretch project.
PM: you know mobile dev?
Me: yes, built a few apps
PM: good, we have an old app we want you to take the JAR change everything but the look of it and make it a new hybrid app with the required features.
Me: *kill me please*
PM: and use WordPress as the server.
Me: ...........
Accepted the challenge. Did the entire app in ionic and build a server for it with SpringBoot. Client loves it PM is still doesn't know😂2 -
I just told my director that the solution for a particular problem that we have involves Machine Learning. For which I had already applied a VERY small app to make sense of an old database to make a NEW one since the old one broke every notion of how a db is supposed to be set (meaning that I recreated the project from scratch)
And on the same message I told him that I was not willing to do it using M.L since I was not paid enough to bring this level of heat to the institution.
Normalize telling mfkers that your skills are worth more.
I am paid well, but not enough to out of the blue tell mfkers that my ml based algo can save them./
Fuck em, fuck em hard, fuck em good, fuck em without even using spit.
I don't do this shit because I am paSSiOnate, since there lies the trap: "I mean, I love it so I guess I can do it, I do this on my free time either way" <---- no bitch, shit is expensive on the real world, don't do that wtf is the matter with you? *slaps* companies don't see it as a: "oh shit, employee X can do this! value!" they see it as "greaaaaat, I can save money on this", so fuck em.
Normalize it, y'all are wizards, advisors of kings, no company today survives without I.T. About motherfucking time y'all bitches take this shit by the horns and do with it what you want.
People form third world countries that need work: shit don't apply to you, currently, but we will make it apply to you on the rising, my kings, stay strong.4 -
I'm out of my mind bored. I'm an unemployed person with a great job. You'd think this would be awesome. It's torture.
I work for a consulting company. I get paid whether or not they have work for me. They haven't for several months. I'm not hearing anything. I don't know when it will change.
I'm a skilled developer in a few very popular languages - nothing remotely in the ballpark of old or obsolete. I hear that's in demand. I spend most of my time answering questions on Stack Overflow. I really like to help people, but it boggles my mind that the people struggling with the stuff I help them with all have actual work to do and I don't.
I like to learn about new stuff, but I'm just not interested in learning another framework or anything else to add to the giant pile of stuff I'm already not using. It's not fun anymore.
I don't want to do another side project, either. I have a job as a software developer. That should, at some point, involve developing some software.
This is sucking the life out of me. It's harder and harder to get out of bed and come to work. I've held off looking for another job because I'm hoping this will change. The people here are great. I could go somewhere else and it could suck for completely different reasons.
Ironically, this is close to the reason why I left my last job. Ten years ago I went through a spell where I just gave up and stopped coming to work for over a month. No one noticed. Other people were stressed about getting laid off. Some of them were. Not me.
Am I part of some weird experiment to see how insane someone can go in this totally screwed-up circumstance? Are people following me around with cameras?
I'd love to find something else, but by all outward appearances I had already found an awesome place to work. There's only one thing missing - the work.
Thanks for listening. I'm just going to put my head on my desk for a while and despair. What is wrong with this industry? We're a mess on so many levels.12 -
Code fuckup day or what?! After two weeks where I wasn't on my project and a co-worker handled it, I came back to my project and reviewed what he had done so far.
Me: "I don't understand how this new code part here can work?"
Him: "Uhm, actually, it doesn't, somehow."
Me: "..."
Then he had checked in his stuff with spaces while the whole project is with tabs. And variables that were used in a different way, but still under the old name, now completely misleading. Bypassing existing infrastructure and defines with "just for this case" hacks. But the best was tracking higher level state by peeking into lower level data buffers, even pulling out their data definitions into global header files - instead of using proper states in the higher layer itself.
NOT! IN! MY! FUCKING! PROJECT!!!
So I spent the day cleaning up the shit to fight off software rot right in the beginning.4 -
My very first rant here was about the mess of ticket submission and ticket tracking applications we use, and about how we were moving to a single unified system some day.
Well, that day is today. And, predictably, it went horribly wrong.
So the way it's supposed to work is people login to the portal, search for what they want to request, then fill in details and submit. It creates a request ticket assigned to the appropriate team. (The old way involved a bunch of nonsense that you can see in my first rant).
The thing is, I found out about this today, when I got a company-wide email saying the new system was live as of this morning. None of us knew it would happen today. Not that I could've foreseen any issues just by getting the announcement early, but still, usually people find out about these things beforehand.
So, ecstatic to finally be rid of the old ticket tracking system, I log into the new system and look for our request form, which is, of course, not there. I check the old system and see that they combined every single "general request" into a single request where you pick which team the request goes to.
So I finally find the right request, pick the right department from the drop-down, and see that the request looks much better than it did on the old system. Out of curiosity, I look at the list of people who are part of that department.
I am not on the list.
My ENTIRE TEAM is not on the list.
Because they migrated the team data to the new system a year ago, when the issue tracking/reporting portion of it went live. My current team was hired approximately six months after that and apparently updating the team data in the new system isn't part of our Onboarding process yet.
So... Bright side is I guess I will have a lot of free time soon since nobody can submit new project work to my team?
tl;dr: they took a great software product and implemented it so poorly that our team can't use it.3 -
This is my first post. I felt like if I'm wrote this I'll just be a big fat crybaby, but i need to release this pressure from me.
I've been pretty burnt out past 6 month.
So a little bit backstory here, I've come from broken family, and currently on my 7th semester of college. But I've been part of small startup as mobile apps developer for a year and a half now.
6 month ago, it just a year of recovery from a toxic relationship that basically ruins my college life. I have really bad GPA (bad score for being absent from classes), basically no friends, and a barely passable (or even bad) skill in Android Dev. Then I got new girlfriend that really supportive for me. But after 2 months, her parents ask me if I would marry her or not. because if not, I have to broke up with her (We're in Indonesia and both of us is Muslim, so outside marriage relationship is kinda in "grey area" depend on who you ask). So I have to choose to marry her or not, and I choose the marriage. I think I have enough saving and just enough income to support both of us.
Then it's been a downward spiral from there.
The startup that I've been working on were in a pretty bad shape. I've been underpaid since the beginning (and that's not really a problem for me at that time, that's my choice and I blame no one) but abysmal growth and some miss management force us to scale back and makes me basically in a non-paying jobs.
So I take college break for a semester and been trying to find projects here and there for marriage savings, but because the weak employee protection here, lots of the projects I have completed have yet to pay the fee (even until today). And even if they paid me, most of it were really low paying jobs (we're talking $200 per 3 weeks project here, to be fair, for our average GDP, it's not bottom-low).
And the deadline is approaching, our marriage date is settled in (very) early January 2019, and i've been in this "not yet graduated but needs job" limbo. Most of employer here still has the old "Degree Based" Job specs, and not "Skill Based" one. so because de-jure I've still a "College Student" no Job listing is willing to take me in. I've apply to almost 30 Job Listing and just get interview once, and still failed because I can't move to the company area, too far and have too expensive living cost vs the salary ($300 living cost vs $450 salary, while i need to give money to my girlfriend back home for a living).
So I switch my direction to Competitions with Extra Job offering as a Bonus, and I've been pretty close to winning one, held by CIMB Bank, but still failed. It's little bit better now because CIMB came interested with me but there is red flag which I need to graduate with decent GPA before July 2019, and in current GPA? it's practically impossible.
Can it getting worse? oh it can. Remember I come from broken home family? it's inherently hard to keeps communication with both of my parents that to this day still despise each other. And while my mother is still supportive to my marriage, my father isn't. He even basically disowned me last week because my one-sided decision to marry my girlfriend, and blame my mother for being the "bad influence" for me.
And now, today, December 16th, and I'm still in this weird Limbo and have nowhere to go. with $0 in my pocket (have spent all of my savings for marriage preparation) And our marriage is approaching. I almost given up.23 -
This is a proposal for an entirely free and open source rant like site/app.
devrant today has a couple of problems that I hate:
* Posts in the wrong categories (usually by new users)
* Low effort posts in the "recent" feed
* Good posts in the "algo" feed that are too old
* Longtime bugs
* No official code format in comments, ffs.
* Unimplemented features (like inability to search posts in android, or inability to mute posts in web desktop)
* Lack of admin involvement with the community
but it also has some aspects that I like a lot:
* Admins aren't trigger happy to suspend/ban you
* The avatars are awesome and help to associate users to faces
* The ++ system is good enough
* The community isn't too big so you know pretty much everyone
* There's a lot of variety in the roles and techonologies used by users
* Experienced ranters are usually smart
* Super simple UI
* The comments have only one level (as opposed to reddit comment trees)
This project should try to reimplement the good things while fixing the bad things.
I wrote two posts about a possible manifesto, and an implementation proposal and plan.
https://rantcourse.ddns.net/t/...
https://rantcourse.ddns.net/t/...
I think the ideas outlined there are very aligned to concerns of privacy and freedom users here vouch for.
This project is not meant to **purposefully** replace/kill/make users abandon devrant. People can continue using devrant as much as they want.
I'm hosting a discourse site on a 5$ linode machine to discuss these things. I don't know if it's better than just github.
If you feel that you would like to just use github issues, let me know. I'll create a github org tomorrow, and probably setup gitter for more dynamic discussion.21 -
rant & question
Last year I had to collaborate to a project written by an old man; let's call him Bob. Bob started working in the punch cards era, he worked as a sysadmin for ages and now he is being "recycled" as a web developer. He will retire in 2 years.
The boss (that is not a programmer) loves Bob and trusts him on everything he says.
Here my problems with Bob and his code:
- he refuses learning git (or any other kind of version control system);
- he knows only procedural PHP (not OO);
- he mixes the presentation layer with business logic;
- he writes layout using tables;
- he uses deprecated HTML tags;
- he uses a random indentation;
- most of the code is vulnerable to SQL injection;
- and, of course, there are no tests.
- Ah, yes, he develops directly on the server, through a SSH connection, using vi without syntax highlighting.
In the beginning I tried to be nice, pointing out just the vulnerabilities and insisting on using git, but he ignored all my suggestions.
So, since I would have managed the production server, I decided to cheat: I completely rewrote the whole application, keeping the same UI, and I said the boss that I created a little fork in order to adapt the code to our infrastructure. He doesn't imagine that the 95% of the code is completely different from the original.
Now it's time to do some changes and another colleague is helping. She noticed what I did and said that I've been disrespectful in throwing away the old man clusterfuck, because in any case the code was working. Moreover he will retire in 2 years and I shouldn't force him to learn new things [tbh, he missed at least last 15 years of web development].
What would you have done in my place?10 -
When I started off working on this particular project under a new technical manager, I used to love working overtime because the work and the problem we were trying to solve was really interesting. My technical lead was also a really awesome dude and I was able to learn a lot of things under his guidance. A couple of times, I didn't even mind working on the weekends too in case we wanted to meet some strict deadlines. I wanted to make sure that my team's brand name does not get spoiled and we deliver on what we promise.
It was all good until all the management started taking our overtime and weekend work for granted. It took me some time to realize this. Now it almost became a part of standard expectations. It was getting irritating. Managers could see this uneasiness but chose to do nothing.
The work increased, so did the team and the communication channels. The newbies in the team now worked overtime and on weekends. And everybody started acting as if it was normal. That's when it stuck me that I am responsible for inculcating this unsustainable and life sucking culture in the team. I stopped working overtime and started questioning the set deadlines, often asking them to postpone things. Management got furious and changed their focus on the newbies who'd work overtime, often rewarding them to reinforce the behavior.
I tried undoing it, asking managers that the team will not work on weekends. There was friction and managers would agree but the old bad habited cultural spore would pop up tume and again and the team would go back to the regular overtime and working weekends thing. As more time passed, the managers would circumvent me and start talking to others in the team, giving them work and deadlines directly because I started to say 'No' when I felt the need to do so. I tried to protect some folks in the team who would not be able to speak up but were frustrated. I started caring less about the team's brand and more about colleagues who were suffering due to such unethical (and illegal?) practices being normalised in the team.
Trying again and again to get back to 'normal', I failed everytime. Unsure of how far I'll be able to go on with this without getting severly burnt in the process and seeing no respite, I decided to move on. I put in my resignation two weeks back and want to start a fresh in another company.
I feel I am responsible for bringing this into the team without realizing the repurcussions of my working overtime. Staying in the team for more than 3.5 years, I could actually feel how managers have no fucks about your personal life and work life balance (despite showing oh so much concern about the well being of my family) and would reward anyone who works as per their whims and fancies. I wish I never get to work for a management such as this.2 -
I am now the only experienced developer and the person responsible for the delivery of a project AFTER WE ARE ONE MONTH PAST THE DEADLINE! All because user wants to replace the old system with new system with all EXACT SAME FUCKING FEATURES!
-
So one of my clients had a different company do a penetrationtest on one of my older projects.
So before hand I checked the old project and upgraded a few things on the server. And I thought to myself lets leave something open and see if they will find it.
So I left jquery 1.11.3 in it with a known xss vulnerability in it. Even chrome gives a warning about this issue if you open the audit tab.
Well first round they found that the site was not using a csrf token. And yeah when I build it 8 years ago to my knowledge that was not really a thing yet.
And who is going to make a fake version of this questionair with 200 questions about their farm and then send it to our server again. That's not going to help any hacker because everything that is entered gets checked on the farm again by an inspector. But well csrf is indeed considered the norm so I took an hour out of my day to build one. Because all the ones I found where to complicated for my taste. And added a little extra love by banning any ip that fails the csrf check.
Submitted the new version and asked if I could get a report on what they checked on. Now today few weeks later after hearing nothing yet. I send my client an email asking for the status.
I get a reaction. Everything is perfect now, good job!
In Dutch they said "goed gedaan" but that's like what I say to my puppy when he pisses outside and not in the house. But that might just be me. Not knowing what to do with remarks like that. I'm doing what I'm getting paid for. Saying, good job, your so great, keep up the good work. Are not things I need to hear. It's my job to do it right. I think it feels a bit like somebody clapping for you because you can walk. I'm getting off topic xD
But the xss vulnerability is still there unnoticed, and I still have no report on what they checked. So I have like zero trust in this penetration test.
And after the first round I already mentioned to the security guy in my clients company and my daily contact that they missed things. But they do not seem to care.
Another thing to check of their to do list and reducing their workload. Who cares if it's done well it's no longer their responsibility.
2018 disclaimer: if you can't walk not trying to offend you and I would applaud for you if you could suddenly walk again.2 -
So, with couple of new people in senior managerial roles, pink slips started flying left and right before the holiday season. That didn't happen before in the company. It's still relatively small and when people left that was for better paid or more interesting work.
While I can understand that from the business perspective and especially for a few who might have been considered dead weight (devs and other roles), I have a serious problem with the way it was handled. It's one of those 5 minute notices. If we weren't remote, I guess escorting out by security would follow.
Most recent person to go is actually one of the most senior devs at the position that became redundant over time, as it clashed in the "pyramid" with another dev. He was involved in many aspects of the product and greatly contributed to the overall success during years of hard work, i'd say maybe more than any of us.
He didn't fuck up anything major as far as I know, his services were just not needed anymore, compared to the other guy. Saving money. I get that.
At T-1 day he prepared a demo of his project. Meetings, Slack, everything as usual. Next thing we got was a "we wish him well in future endeavours" e-mail.
What I find most disturbing is the fact his account was removed immediately, and then we were asked to get any files and anything else we might need, all over personal communication channels (private e-mail, Skype etc.) because he was locked out of all company accounts.
I seem to have have survived this year. One thing they have definitely achieved, based on some off the record chat and some public updates, tweets etc I can see, is for many of us to start networking, polishing CVs and generally stop giving many fucks about the company and the outcome.
I've myself started brushing up on some new skills (stacks) and some old ones (algorithms, etc.) I may need any day now, as it seems.
If they can basically tell "thank you and fuck off" to one person maybe most involved with the company growth, with zero dignity and respect for the person, then fuck them.4 -
Me apprentice 18 years old in germany: I don’t want to go in another team
Also me in the new team after 2 days: playing with my new boss during work CSGO and say everyone we are to busy with the big project3 -
I rarely tell this story because it's hard to believe and would show me in a bad light if people don't believe its details. I know there have been foolish moves from my part, and more stuff should have been agreed to in writing, and I did step into a legal grey area. However I am pleased with what I did and how it all turned out, and this is as close to the truth as possible without needing to explain too many details.
I was once a team lead in an outsourcing company. We had a flexible payment plan depending on results. That helped me motivate myself and my team. Things worked great.
But then the boss started acting like shit:
1. Flexible payment means minimum, right?
2. Promises are made to be broken, as long as your employees have hope and work overtime for a whole month just to finish an important project before schedule, right?
3. Who needs a good, comfortable, SAFE work environment when you can save 30$ on not buying a new crappy chair in place of the old broken crappy chair, if it can be maintained standing by just a bit of duct tape and careful balancing on it? It's not like that developer who earns 30$ per hour has anything else to think about than balancing on a broken chair, right?
I'm a very calm person at work. I never ever raised my voice at anyone for 10 years of my career. Except this situation. I pulled the boss out of the office so his secretary wouldn't hear what I had to say. I threw this everything into his face.
A guy from sales got out of the office to go to the bathroom, and when he heard me, he carefully snuck back into the office (I didn't see him. He told me this over a beer after he left).
Of course I quit on the spot, convinced most of my team members to leave (wasn't hard, I just had to offer a secure plan, which I did), and helped my team members to get good positions elsewhere, and assisted others in starting their own business, by stealing customers from this company (the asshole did not foresee this when he prepared the labour contracts), after he accused me of plagiarism (that I stole code from somewhere else) and used that excuse to not pay me what we agreed upon.
I didn't want litigation. I just used karma, while remaining in the legal realm.
Within a month after this, more than half of his company was gone, and he was left with only a fraction of the revenue he was making before, since the only ones left were people that did not produce value (sales that had nothing to sell, accounting that had nothing to account, etc.), and just one person maintaining one remaining contract that was bringing barely enough money to sustain half of these people.
Now I want to congratulate you for actually finishing reading this :)1 -
I'm halfway in on a six-month disaster contract where I'm converting a massive site written over 7~8 years to a new system. Manager has had us restart about 4 times and there are other departments who want to take over. The deadline is so tight that I've stuck with the original plan and kept my code flexible to be changed if the manager wants to go with the other teams' ideas. ("Okay, manager: here's a clone, tell the other team to prove that works") The lead dev, to my horror, didn't write any code and was let go in November.
Manager hired a new dev part-time whose commitment is on something entirely separate that is required in order for the deadline to be pushed to Summer. (new thing for old thing)
New dev has an attitude, basically wants to start over, and is already acting like I'm his subordinate, very patronizing, very dodgy when asked to explain a strong opinion (THIS IS A SECURITY PROBLEM!!!1). I really have no idea what my manager promised to him. Also found out that manager hired an agency to create a roadmap of the project (WHY?!!! WHY NOW?!). I've been burned once already with the previous lead, and I'm not wild about working with yet another person who wants to burn the whole thing to the ground and start completely over, especially not someone who wants to engage in a dick-measuring contest.
Do you guys have any advice? I mean, other than quitting? I'm going to see this through, but I'm burned out.3 -
I think I might change my middle name to "I told you so"
Couple of weeks ago I proposed integrating a daily process job into an existing WPF application (details of what+why would be too long to explain) and the manager suggested I make the changes
Me: "I can do it, but Jay has the most experience with that application. I don't have his WPF skills"
Mgr: "How hard can WPF be? If it uses the MVVM pattern, it should be a snap."
Me: "Its nearly an 8 year old WPF project with several chefs in that kitchen. I pretty sure I could figure it out, but that is a difference between 2 weeks and 2 days. Integration is pretty straight forward, Jay could probably do it in a day."
DevA: "WPF is easy. MVVM makes it even easier. I worked on the shipping app."
Me: "That's was a brand new, single page app, but yea, it should be easy."
DevB: "WPF has been around a long time and the tools have really matured. I don't understand what is so difficult."
Me: "I didn't say anything would be difficult, I know with that application, there is going to be complexity we need to figure out."
DevB: "It uses the MVVM, so all we need is the user control, a view model, controller, and its done."
DevA: "Sounds easy to me."
Mgr: "If you need more time to work on the vendor project, I'll have DevB work on the integration."
<yesterday>
Me: "How is the integration going?"
DevB: "This app is a mess. I have no idea how they got the control collections to work. If I hard-code everything, I can get it to work. This dynamic stuff is so confusing. Then there is the styling. Its uses dark mode, but no matter what I do, my controls show up in light mode."
Me: "The app uses Prism, so the control configuration is in, or around, the startup code."
DevB: "That makes sense. Will it fix the styling too?"
Me: "I have no idea. When I looked at it, some controls loaded the styles from the main resource, other's have it hard-coded. Different chefs in the kitchen, I guess. How far have you got?"
DevB: "I've created invoice button. That is as far as I got"
Me: "I'm finished with the vendor project and I'll be wrapping up the documentation today. I can try to help next week."
DevB: "Thanks. I think we might have to get Jay to help if we can't figure this out."
Me: "Good idea"
Two weeks and only a button. A button? I miss Delphi.3 -
Nope, definitely not going to work for that customer anymore. Fuck this shit. At least for this week.
My background: mid-30 years old, some kind of business & IT consultant / lead dev working for a mid sized CRM consulting company, with approx 15 years of experience in development and software architecture, most of the time "thinking" in C#, still learning new languages, being a cloud evangelist and team lead. We usually have customers with customers (B2B/B2C).
Personality type "campaigner" (ENFP-A).
Today the project lead of my client (a big corporation in the energy industry) told me that he still didn't order all the necessary resources for the cloud project. Just to be clear: He's on the client side. We (the architects, one internal and me) told him one month ago what we need for the beginning. Just a few things - an Azure subscription, a license for the CRM platform, and our dev tools.
And now let's guess when the project is planned to begin? Yeah, right: 1st of April. NO APRIL'S FOOL. And guess what? Next Tuesday we'll do the onboarding for the new (external) devs, and NOTHING will be ready. Yeah, just let us build stuff in our minds, and on the whiteboards, because it's an AGILE project, right? We don't need any systems and tools...
And now he sent me the questionnaires which need to be answered before any cloud service can be ordered by the corporate IT. And yes, he didn't answer a single thing, and just meant "Those are architecture questions" (they are not) and (of course) "please provide the answers until Monday morning, so we can FINALLY order the services."
Yeah, you fucktard. Of course it's MY FAULT now. Maybe I should write an email to your boss asking how we can speed things up a little bit...3 -
Feeling pretty accomplished for someone who did no "work" today lol. I needed to work on side gigs but instead I:
1) Factory reset a 2011 Macbook Pro I'm selling and reinstalled Mojave using a patch (this laptop is officially unsupported by Mojave as of June).
2) Migrated all personal files from my windows desktop to my NAS. I'm turning this computer into a gaming rig now that I exclusively use my 2017 Macbook Pro for development.
3) Setup RDP from my macbook to my desktop.
4) Fixed registry errors and deleted junk apps off my desktop.
5) Erased and formatted all USB drives I had lying around.
6) Packaged up an old Xbox One for my brother-in-law which will get mailed tomorrow (included a few USBs for him since I rarely use'em).
7) Tested streaming my Xbox One X from my PC but it's laggy as F (both are wired, have static internal IPs, and use my router for DNS...it's just the app I guess).
8) Scored a like-new Scuf Vantage for my PS4 for $140 (the guy who was selling it paid $214 a month ago lol). I traded my spare Xbox One S for a PS4 slim and in an attempt to get used to it, I got this controller with thumbsticks in the same position as Xbox's.
9) Fixed and updated my Synergy app (mouse/keyboard sharing - I can use PBP on my 38" LG ultrawide and it's fairly seamless going between them).
10) Cloned a buddy's repo and set the project up to work locally.
11) Starting to get some work done while watching the Vikings game.1 -
I recently started working on a 3 months old project, that was outsourced to two Indians genius. One of them left just before I arrived.
I had the chance to discover those guys were not using any version control system, just exchanging a zip file. I don’t even talk about the codebase, never seen such a mess …
Even better the project managers, were not using any IT program to follow the project advancement, but just Excel!!!
After a few days I realised that the remaining dev was not committing anything, the guy was always lying, (so many people died around him + some emergencies)
So, the guy got fired, but don’t worry management found new genius to save the project 🙂
Can someone tell me if outsourcing is really working?7 -
The happy moment you start a new project a Find that you can use your old code, then realizing you don't remember how it worked but use it anyway.1
-
Ahhhh.. the great feeling of starting a new project at work after the stresses and health deterioration of maintaining old code bases.
-
Something that really bothers me about the oop idea of "oop allows better code reuse" is the fact that I have yet to encounter a situation where I need to reuse old code for a new project.
And the code I do want to reuse I've put into a library and made genetic anyway. Something which can easily be done with any language supporting generic programming, object oriented or otherwise.6 -
Finally had a weekend to myself to work on some projects. I got my hands on a Sonoff switch. Did a manual flash of some new firmware and got it setup on my crappy old washer to do a little DIY smart home upgrade.
Always nice to get to do a personal project 😊 Just wish I had time to tinker more.3 -
(I'll give some context before the rant: I'm part if the IT department of a manufacturing company (actually I'm 1/2 of the department), and all the applications (old an new - except the ones used on production line) used in the company are my responsibility, that including most of databases too... Also, English isn't my native language so there will be some words or phrases that I'll probably write wrong... Sorry for that, if there are any corrections, I'll be glad to hear them)
So...
There will be an implementation of new "control point" on the "shipping department" which consists on a electromechanical equipment controlled by a PLC. And despite the original concept was a collaboration between 2 departments (we, IT, and Production Control), I was never taken in consideration about anything of the project... To be fair, I forget about its existence until two weeks ago.
So, a few days I learned that there are a huge delay regarding the original deadline (mainly because the supplier was delayed with the delivery of their system), and since two weeks (less, actually, because some holydays in between) I'm learning how to integrate that "P.o.S" into an existing application on a PC using a serial communication (not the main problem, as I've done that before... With another brand of PLC's) while avoiding buying any additional software (to get the communication done and in a easy way) and that sort of things... But discovering in the process that it will be necessary to acquire such additional SW in order to finish the job ASAP.
When suddenly I get the "news" that it's almost all my duty (and responsibility) to meet the original deadline, because it doesn't matter how the other departments screw all the schedule, it's the job of IT to get the shit done in time... And what is worst: they didn't said that in such straight manner, no, the implied it while making a quick test with the general manager.
I mean, WTF? Besides doing a "respectable" number of "user support" activities in a dialy basis, I also need to manage the activities of other departments? And also fix their screw ups on a schedule that I just learned days before?
And also there is a coworker (one of whom screwed up) that, almost every time she see me, is asking "how much until you'll finish?"
As I read on a meme years ago: "please, give patience, because if you give strength, I'll need bail money too..."
Damn... I don't know of the benefits of this work are worth all this nonsense -
So about 3 weeks ago I was laid off from my dream job due to corporate bullshit. From the feedback received since then it is clear that the company made a mistake hiring a brand new React dev while they really needed an experienced one. Because the consultants who were supposed to be weren't. And the other in-house front end dev was an elitist asshole. And I never received proper feedback until it was too late. Actually I still don't have proper feedback save for some vague stuff which really sounds like the kind of feedback you'd give someone in the middle of their learning process. They even said eventually given more time I could have made it. But alas they felt they had to make a call in the best interest of the company.
Things moved fast since then, I took a week to recover and then I spent time updating my resume before getting back in touch with the recruiter who got me my last job. Great guy and he was happy to help me again. Applied to some positions, got some replies, first in person interview I go to they are immediately willing to take me on.
So now I'm supposed to start tomorrow but somehow I'm having my doubts. The company isn't an IT company but rather a fashion company. They believe in developing in house tools because past attempts with external companies resulted in them trying to push their vision through. Knowing who they worked with I agree, they tried to oversell all the time. But after talking with their developers I noticed they are behind on their knowledge. But so am I. So there was no tech interview which means I am getting an easy way in. And if they honour their word I'll be signing tomorrow for around my old wages.
So you'd think that sounds good right? And yet I'm worried it's going to be another shit show working on software without proper analysis or best practices. I mean the devs aren't total idiots, they are mediors like me and I think their heart is in the right place. They want to develop a good project but it will be just us 3 making a modern .net wpf application with the same functionality of the old Access based system currently in use. I was urged by the boss to draw on my experience and I think he wants me to help teach them too. But I'm painfully aware for my decade since graduating I'm a less than average .net dev who struggles with theory and never worked a job where I had someone more experienced to teach me. I coasted most of the time in underpaid jobs due to various reasons. But I'd always get mad over shitty code and practices. Which I realize is hypocritical for someone who couldn't explain what a singleton class is or who still fails at separation of concerns.
So yeah my question for the hivemind is what advice would you give a dev like me? I honestly dislike how poor I perform but it often feels like an insurmountable climb, and being over 30 makes it even more depressing. On the other hand I know I should feel blessed to find a workplace who seems to genuinely believe that people grow and develop and wishes to support me in this. Part of me thinks I should just go in, relax, but also learn till I'm there where I want to be and see if these people are open to improving with me. But part of me also feels I'm rushing into this, picking the first best offer, and it sure feels like a step backwards somehow. And that then makes me feel like an ugly ungrateful person who deserves her bad luck because she expects of others what she can't even do herself :(4 -
Boss: Why are you trying to build the old program?
Me: Because I need to determine behavior of why old program works with data that new program does not.
Boss: Does it affect the output?
Me: No, but...
Boss: STOP! Just filter it.
Me: Okay.
Boss: Go write new fun code, not work on old shit.
Me: Thank you for saving me from myself.
In reference to:
https://devrant.com/rants/4666401/...2 -
(first post/rant on here)
So I recently started at a new company. I was kinda aware that the project I'm working on would be rather old school (to put it in a nice way :-)).
Part of my job is to 'industrialize' and update/clean up the existing code so there is less time spent on fixing bugs due to bad design.
One of the first things I had to do was to write a new interface to integrate with external software.
I already noticed some rather nasty habits, like prefixing every variable with m (don't know why), private fields for every property (all simple properties) and a whole lot of other stuff that either is obsolete or just bad practice.
Started writing clean code (simple classes with properties only, no m prefixing, making sure everything is single responsibility, unit tests, ...).
So I check in the code, don't hear much from it again besides the original dev/architect that started the project using my code to further work on that integration.
Now recently I started converting everything from TFVC to Git (which is the company standard but wasn't used by our team yet). And I quickly skimmed through my code to check if everything was there before pushing it to the remote repo.
To my surprise, all the code I had written was replaced by m prefixed private variables used in simple properties. BL classes were thrown in together, creating giant monstrosities that did everything. And last but not least, all unit tests were commented out.
Not sure what I got myself into ... but the facepalming has commenced.14 -
Me:To my new boss I think its fare we adopt version control for the project we working on.
Boss: No need just do what we hired you for.
Me:Its my second day of work and don't know how this will play out
Am beginning to dislike this boss he still sticks to old practices4 -
I no longer work for a startup company. On Monday I’ll start work for a real company, one that values project managers and their infrastructure. As a DevOps engineer, I value the IT resources that power my old companies SaaS platform. My old position is not being back filled and they’re hiring a full time dev instead of and Ops engineer. They have chosen to proceed with zero employees who know Azure or the platform their own software runs on.
Word to the wise when choosing to work for a startup. Ask these questions:
- Do they have a dedicated product manager/owner , who isn’t also the CFO?
- Do they value infrastructure and their IT resources ?
- Do they have decent powered laptops to work with?
- Do they have too much technical debt because they’re always building new features ?
- Do they work 18 hour days because they set poor work/life boundaries ?
- Who handles Support tickets , and what’s a typical support issue like?
- Do they have a branching and merging strategy? Don’t accept “we’re too small” as an answer! It’s a trap that they don’t want one.1 -
Ok now I'm gonna tell you about my "Databases 2" exam. This is gonna be long.
I'd like to know if DB designers actually have this workflow. I'm gonna "challenge" the reader, but I'm not playing smartass. The mistakes I point out here are MY mistakes.
So, in my uni there's this course, "Databases 2" ("Databases 1" is relational algebra and theoretical stuff), which consist in one exercise: design a SQL database.
We get the description of a system. Almost a two pages pdf. Of course it could be anything. Here I'm going to pretend the project is a YouTube clone (it's one of the practice exercises).
We start designing a ER diagram that describes the system. It must be fucking accurate: e.g. if we describe a "view" as a relationship between the entities User and Video, it MUST have at least another attribute, e.g. the datetime, even if the description doesn't say it. The official reason?
"The ER relationship describes a set of couples. You can not have two elements equal, thus if you don't put any attribute, it means that any user could watch a video only once. So you must put at least something else."
Do you get my point? In this phase we're not even talking about a "database", this is an analysis phase.
Then we describe the type dictionary. So far so good, we just have to specify the type of any attribute.
And now... Constraints.
Oh my god the constraints. We have to describe every fucking constraint of our system. In FIRST ORDER LOGIC. Every entity is a set, and Entity(e) means that an element e belongs to the set Entity. "A user must leave a feedback after he saw a video" becomes like
For all u,v,dv,df,f ( User(u) and Video(v) and View(u, v, dv) and feedback(u, v, f) ) ---> dv < df
provided that dv and df are the datetimes of the view and the feedback creation (it is clear in the exercise, here seems kinda cryptic)
Of course only some of the constraints are explicitly described. This one, for example, was not in the text. If you fail to mention any "hidden" constraint, you lose a lot of points. Same thing if you not describe it correctly.
Now it's time for use cases.
You start with the usual stickman diagram. So far so good.
Then you have to describe their main functions.
In first order logic. Yes.
So, if you got the point, you may think that the following is correct to get "the average amount of feedback values on a single video" (1 to 5, like the old YT).
(let's say that feedback is a relationship with attribute between User and Video
getAv(Video v): int
Let be F = { va | feedback(v, u, va) } for any User u
Let av = (sum forall f in F) / | F |
return av
But nope, there's an error here. Can you spot it (I didn't)?
F is a set. Sets do not have duplicates! So, the F set will lose some feedback values! I can not define that as a simple set!
It has to be a set of couples, like (v, u), where v is the value and u the user; this way we can have duplicate feedback values in our set.
This concludes the analysis phase. Now, the design.
Well we just refactor everything we have done until now. Is-a relations become relationships, many-to-many relationships get an "association entity" between them, nothing new.
We write down on paper every SQL statement to build any table, entity or not. We write down every possible primary key or foreign key. The constraint that are not natively satisfied by SQL and/or foreign keys become triggers, and so on.
This exam is considered the true nightmare at our department. I just love it.
Now my question is, do actually DB designers follow this workflow? Or is this just a bloody hard training in Pai Mei style?6 -
Why invite me to a 3 hour meeting where my old manager just pretends I don't exist and is trying to push me out of the project completely?
He's just bitter because I asked my new manager advice because he was too busy trying to get a new job at a different company.. rather than being my manager. -
Looking through some code from a new project at my old job.
It seems they are sending off some audio files from interviews into an online transcriptions-service, and putting the result unsanitized into a string-concatenated INSERT-statement into the db.
I look forward to the demo, I’m going to yell “single quote Drop table users semicolon dash dash” -
I don't know what to do with my life anymore, as a self taught web developer, I started like anybody doing HTML, CSS and js, and then I met PHP and WordPress.
why the fuck PHP is ugly ? and why WordPress is uglier ? I tried to learn how to build a simple plugin in WordPress but the hooks system make me want to kill my self, how the fuck PHP powers 80% of the web ? every time I write PHP I wish I was never born, the problem is that I can't change job because I am old and I live in a fucking country who is technologically primitive, they fucking know only PHP and JAVA, no Node, No Ruby, No Python, only fucking PHP.
I learned React, I learned Node but you know what I did this last year ? I raped a themeforest theme for about dozen plus websites, A SINGLE THEME FOR MORE THAN DOZEN CLIENTS, my boss does not care, only me who is not sleeping at night because a tried to customize a Prestashop theme and it gave me cramps in the stomach, I feel depressed and useless, I want to quite my job but I can't, I have mouths to feed, WHY THE FUCK DID I FELL IN LOVE WITH PROGRAMMING, I was happy fixing computers, what can I do if the only project that I have are WordPress and Prestashop?
how did you do to stay sane when working with wordpress and prestashop ? are you not human ?I can't take it anymore.
I need a new road map, fuck it I will focus only on JS and Node and fuck PHP.10 -
So, I am feeling low in life. I want to do so many things and not a single one is going as planned. On top of that Bitcoin has taken a plunge and my funds are stuck with a shitty exchange and I cannot withdraw till tomorrow.
Le a github issue appears and I am thinking what went wrong now. I had added a few new features to the app which would have broken the old configurations. So, I ask this guy to re-configure and test.
After about 2 hours I get a reply from the guy saying "Thanx for the great new features and for creating this great open source project!!!"
This made my day. And I am thinking Life's good. Life is so easy and we make it so difficult for us. The first thing I am doing after this review is write this rant. Now back to work.2 -
I have been keeping this inside for long time and I need to rant it somewhere and hear your opinion.
So I'm working as a Team Lead Developer at a small company remotely based in Netherlands, I've been working there for about 8 years now and I am the only developer left, so the company basically consists of me and the owner of the company which is also the project manager.
As my role title says I am responsible for many things, I maintain multiple environments:
- Maintain Web Version of the App
- Maintain A Cordova app for Android, iOS and Windows
- Working with pure JavaScript (ES5..) and CSS
- Development and maintenance of Cordova Plugins for the project in Java/Swift
- Trying to keep things stable while trying very hard to transit ancient code to new standards
- Testing, Testing, Testing
- Keeping App Stable without a single Testing Unit (sadly yes..)
- Just pure JavaScript no framework apart from JQuery and Bootstrap for which I strongly insist to be removed and its being slowly done.
On the backend side I maintain:
- A Symfony project
- MySQL
- RabbitMQ
- AWS
- FCM
- Stripe/In-App Purchases
- Other things I can't disclose
I can't disclose the nature of the app but the app is quite rich in features and complex its limited to certain regions only but so far we have around 100K monthly users on all platforms, it involves too much work especially because I am the only developer there so when I am implementing some feature on one side I also have to think about the other side so I need to constantly switch between different languages and environments when working, not to mention I have to maintain a very old code and the Project Owner doesn't want to transit to some more modern technologies as that would be expensive.
The last raise I had was 3 years ago, and so far he hasn't invested in anything to improve my development process, as an example we have an iOS version of the app in Cordova which of course involves building , testing, working on both frontend and native side and etc., and I am working in a somewhat slow virtual machine of Monterey with just 16 GB of RAM which consumed days of my free time just to get it working and when I'm running it I need to close other apps, keep in mind I am working there for about 8 years.
The last time I needed to reconfigure my work computer and setup the virtual machine it costed me 4 days of small unpaid holiday I had taken for Christmas, just because he doesn't have the enough money to provide me with a decent MacBook laptop. I do get that its not a large company, but still I am the only developer there its not like he needs to keep paying 10 Developers.
Also:
- I don't get paid vacation
- I don't have paid holiday
- I don't have paid sick days
- My Monthly salary is 2000 euro GROSS (before taxes) which hourly translates to 12 Euro per hour
- I have to pay taxes by myself
- Working remotely has its own expenses: food, heating, electricity, internet and etc.
- There are few other technical stuff I am responsible of which I can't disclose in this post.
I don't know if I'm overacting and asking a lot, but summarizing everything the only expense he has regarding me is the 2000 euro he sends me on which of course he doesn't need to pay taxes as I'm doing that in my country.
Apart from that just in case I spend my free time in keeping myself updated with other tech which I would say I fairly experienced with like: Flutter/Dart, ES6, NodeJS, Express, GraphQL, MongoDB, WebSockets, ReactJS, React Native just to name few, some I know better than the other and still I feel like I don't get what I deserve.
What do you think, do I ask a lot or should I start searching for other job?23 -
Currently working on app that is about 10 years old at work. Here’s how today has gone:
Can’t run application locally because the process management engine doesn’t allow access locally, can’t access in development because process management engine doesn’t work here either, can run app in test but waiting on special server access to get the logs.
Make the request to security to access the server - they decline it telling me that the form I submitted is outdated and to submit a new one. Requires three approvals, am still waiting on them.
Every time I make a change and want to test, I have to commit the changes, wait for them to build. Release the changes, build the release project and then deploy it in bamboo.
I can’t wait for my new job to start.1 -
Worked on a WordPress Multisite project that required digging around to find ways to hook into areas that weren’t meant to be hooked, create and add custom core files that would withstand updates, ensure certain plugin capabilities were available even if the current site didn’t load them, and a variety of other black magic that I’m too fried to remember off the top of my head.
By the end of the project I more or less felt like a god in WordPress—There’s little I could ever want to get it to do that I didn’t know how to do.
Then again, this is all probably a long way of saying I learned some very bad ways to do things. Mercifully, it’s fully documented with PHPdoc blocks down to the loop level so that even a 3-year-old should be able to figure out the logic...
All this to say, I’m definitely ready for a new project.3 -
A (work-)project i spent a year on will finally be released soon. That's the perfect opportunity to vent out all the rage i built up during dealing with what is the javascript version of a zodiac letter.
Everything went wrong with the beginning. 3 people were assigned to rewrite an old flash-application. Me, A and B. B suggested a javascript framework, even though me and A never worked with more than jquery. In the end we chose react/redux with rest on the server, a classic.
After some time i got the hang of time, around that time B left and a new guy, C, was hired soon after that. He didn't know about react/redux either. The perfect start off to a burning pile of smelly code.
Today this burning pile turned into a wasteland of code quality, a house of cards with a storm approaching, a rocket with leaks ready to launch, you get the idea.
We got 2 dozen files with 200-500 loc, each in the same directory and each with the same 2 word prefix which makes finding the right one a nightmare on its on. We have an i18n-library used only for ~10 textfields, copy-pasted code you never know if it's used or not, fetch-calls with no error-handling, and many other code smells that turn this fire into a garbage fire. An eternal fire. 3 months ago i reduced the linter-warnings on this project to 1, now i can't keep count anymore.
We use the reactabular-module which gives us headaches because IT DOESN'T DO WHAT IT'S SUPPOSED TO DO AND WE CANT USE IT WELL EITHER. All because the client cant be bothered to have the table header scroll along with the body. We have methods which do two things because passing another callback somehow crashed in the browser. And the only thing about indentation is that it exists. Copy pasting from websites, other files and indentation wars give the files the unique look that make you wonder if some of the devs hides his whitespace code in the files.
All of this is the result of missing time, results over quality and the worst approach of all, used by A: if A wants an ui-component similar to an existing one, he copies the original and edits he copy until it does what he wants. A knows about classes, modules, components, etc. Still, he can't bring himself to spend his time on creating superclasses... his approach gives results much faster
Things got worse when A tried redux, luckily A prefers the components local state. WHICH IS ANOTHER PROBLEM. He doesn't understand redux and loads all of the data directly from the server and puts it into the local state. The point of redux is that you don't have to do this. But there are only 1 or 2 examples of how this practice hurt us yet, so i'm gonna have to let this slide. IF HE AT LEAST WOULD UPDATE THE DATA PROPERLY. Changes are just sent to the server and then all of the data is re-fetched. I programmed the rest-endpoints to return the updated objects for a very reason. But no, fuck me.
I've heard A decided (A is the teamleader) to use less redux on the next project and use a dedicated rest-endpoints for every little comoutation you COULD DO WITH REDUX INSTEAD. My will is broken and just don't want to work with this anymore.
There are still various subpages that cant f5 because the components cant handle an empty redux state in the beginning, but to be honest i don't care anymore. Lets hope the client will never find out, along with the "on error nothing happens"-bugs. The product should've been shipped last week, but thanks to mandatory bugfixes the release was postponed to next week. Then the next project starts...
Please give me some tips to keep up code quality over time, i cant take this once more.
I'm also aware that i could've done more, talking A and C about code style, prettifying the code, etc. Etc. But i was busy putting out my out fires, i couldn't kill much of the other fires which in the end became a burning building (a perfect metaphor for this software)4 -
It's important to redo old projects and ideas, here is why:
I worked on a project about 6 months ago, it was mostly just a "coding challenge" and I worked on the project for 3 days and I didn't get it to work. But I started working on the project again from scratch 2 days ago and I got it to work this time!
The moral of this story:
Just making new projects makes it hard to see how much you've grown and improved. But redoing old projects (even if they worked) gives you a concrete representation on how much you've improved (and if you have at all😉)3 -
I'm the lead dev on this team. The project is split into multiple separate modules to comply with separation of concerns, and so new devs don't need the whole fucking codebase (risking them running away with everything) to contribute to the project as a whole.
So we don't need a fucking config file to enable and disable features.
So we don't need to upload a 500mb monolith every time we want to test a change.
So we can test old fucking versions of modules without merging it back into the entire codebase.
What did this fucking dev do? He was having one small issue with Maven. One. It wasn't updating his local snapshots to the correct Artifactory version.
He decided, instead of trying to fucking fix it: HEY, LETS IGNORE THE LEAD DEV'S DEMAND TO KEEP THEM SEPARATE. IM GOING TO MERGE THEM INTO ONE MODULE FOR SOME FUCKING REASON.
I refuse to continue working with this dev if he's going to sidestep my demands and undermine my authority. He wants to go it alone? Be my fucking guest. I'm not touching his shitty single-codebase monolithic monstrosity.
If this is going to be a regular fucking occurrence, he can eat a dick and choke on it.2 -
We rewrote the whole thing, except for iFraming some old pages in. We had to, the system was fucking awful and couldn't cope with any of the new mission critical requirements.
Client didn't understand the scope. Our project leader somehow snuck it in and we worked on it for months. We were sure we'd be kicked off the whole project... Somehow things didn't crash and burn. How it didn't blow up defies rational thought and the laws of physics. The new system worked, the client was happy, and boss made a lot of money.
Lead dev worked weekends for what feels like an eternity, it really was his baby and no one else on our company could have done it. It's where I finally learned how to do things the proper way; DDD, unit testing and TDD, architecture, building strong components in front-end, you name it. Before that I had a great nose for code smells and how not to do stuff, but now I got to see a proper system for the first time. It was glorious.
Then lead dev left and the system degraded quite a bit because new team didn't keep to the architectural patterns or general best practices. But we had a good run.1 -
To finish my photography portfolio website and get it online. I've been putting this off for YEARS. Just started again (and from scratch) and I've been making some progress for the last couple of days. I don't want to even look at that old project I scrapped, or maybe I will once I finish (read: publish) this one.
My problem before was that I was always looking at the big picture and was trying to figure everything out in one go.
In contrast with that, I now figured out a relatively simple and straightforward way to start off with no back end at all and just use static resources instead (with some logic to parse them every time I "upload" new stuff), which should be fine even in the long run if I end up being too lazy and/or busy to do the back end. In general, I now try to tackle small tasks one by one (even if I don't always write them down and/or track them) and realise that it's better to be done (even not in the best way I imagine it) than to not be done at all. It's as if I learn how to do stuff properly for the first time. Oh, well...5 -
ME - me, TM - teammate
I was just recruited to the company. We're starting new project based on few modules.
ME: So this module will do X and Y, I will use good old interfaces and design based on abstractions so that stuff does not get glued too much.
TM: But why? Make good old processor with all the logic and throw objects at it.
ME: B-but unit tests, decomposition and othet stuff...
TM: *insists and forces me to agree*
ME: *gets shit done his way, TM checks on code review and complains but generally doesnt give a fuck*
ME: Ok, its done. Lets get shit shipped.
TM: Well, we were just told by PM that we will need to process one more source with much different logic that does not fit current solution (he did meant GOD-PROCESSOR, idea of his).
ME: What do you mean? *injects another contextual implementation of processing logic to template method pattern solution*.
TM: I will tell PM you cant make it because of the implementation.
ME: But I just did it...
TM: Impossible, processor needs to be reimplemented. Get your shit together!
ME: *still doesnt get the shit about the god processor love*
TM: *rage quits next month*
ME: *module gets reused once more 2 month later, profit* -
Lets create new project!!!! Oh our favorite package is 5 major released ahead. It completely another piece of technology after 7 years of development. Lets use 7 years old package!!!
-
TLDR;
When governments started printing money to cure new pandemic and crash current market with great inflation I took all my savings, got a loan and bought biggest property I could afford. Every major news station was talking about end of world, but this was not I was scared of. I was scared of the helicopter money that would wipe my 5 years old savings.
When I was about to sign loan papers to buy my first apartment I got an email that my contract will end in 3 months. I said ok, the contractor company will find me something else.
I asked and they assured me they will do it. After my contract end just before summer holidays there was silence from contracting company and then after 5 years of me earning them piles of money, after finished project and congratulations from customer they offered me most shitty job they had where people resign after a week. I said I don’t want to land in another shit hole bring it back to life for another 2-5 years and kill myself when they offer me same shit afterwards so I resigned.
It was so fucked up that even the boss from the client I was contracting asked me if I lost my job cause I finished all that they wanted. I said it’s not your fault man. I will be ok, but I wasn’t.
I had apartment I couldn’t move in cause I needed to renovate. Loan I needed to pay. Rented apartment, accountant and business that was loosing money cause I was without contract, the world was locked down and everyone was depressed.
I said ok, I still have some savings left so I I started looking for something new but market was dead. Everyone was gone for holidays after winter lockdown. I was burning money and trying to figure out what to do.
After 2 months of nothing, when I started thinking about finding some temporary job to not loose everything I worked for, things moved. I started attending hiring meetings and solving tests everyday, also from big four gang but I didn’t passed trough hr due to how they say I’m to independent and I need to look for consulting business or do something on my own.
People asked why I don’t do something on my own and I politely answered that I want to work there.
I was about to run out of money when I got a call that company is looking for me cause I was doing similar things they want to do. During interviews it was pleasant small talk about what id did over those years and what they want to do, 2 days later I joined small team. I barely managed to survive a month for a first paycheck.
Since then we created new product for a company. Now the person who hired me is leaving and I think I should also leave the ship and find other things to do.2 -
So new job started.
Just for context- old company was shit.
Promised the world but.
No benefits.
Terrible project management.
High pressure.
But green field interesting work (except by now it’s a few years in so it’s a ‘browning’ field but I was on it from the start).
New company first impressions..
Seems a fantastic company.
True to their word they have money for tools.
Making time for personal development.
Much bigger development community/department.
Seems like the term are under far less pressure so far at least.
But a MASSIVE amount of tech debt.
People seem to want to do the right thing and they’re making time to try and deal with it.
But one or two are very opinionated as to how to deal with it.
So this could go either way and only time will tell I guess.
Trying not to over analyse every little thing they say but I’m hyper sensitive to it at the minute while in the early days.
As always the real challenge in IT is the people not the tech. I count myself as part of the problem, sure I will form some opinions and sharing them too.3 -
Very important lesson I learned while working with Xcode:
Always have multiple major versions installed and ready to be used.
Xcode 9 can't convert old Swift 2.2 project to Swift 4 and can't open the "old" project? Xcode 7 can help you.
Xcode 9 crashes randomly while moving top level packages? Xcode 8 can help you.
Yeah, always funny to find new bugs in Xcode...4 -
So, a new web project came for some small layout changes, nothing to fancy.
It was on the hands of another company and the client didn't want to work with them anymore. Basic Magento with a custom theme.
As I was wondering through files, I found out that the old devs echoed, in ".phtml" files, contents from ".txt" files located in base directory. I was shocked and went forward with it. The core of Magento had tons of this "echo"s. Several minutes later I found out that they "coded" another administration panel besides Magento, that had "authentication" with hard-coded user/pass inside index.php and a session start. That admin panel just rewrote the contents of .txt files using textareas. Why/what/when the fuck..they've forgotten the admin password?!?!!!!
This was like 3-4 years ago.
Worst project i've seen, ever... -
About slightly more than a year ago I started volunteering at the local general students committee. They desperately searched for someone playing the role of both political head of division as well as the system administrator, for around half a year before I took the job.
When I started the data center was mostly abandoned with most of the computational power and resources just laying around unused. They already ran some kvm-hosts with around 6 virtual machines, including a cloud service, internally used shared storage, a user directory and also 10 workstations and a WiFi-Network. Everything except one virtual machine ran on GNU/Linux-systems and was built on open source technology. The administration was done through shared passwords, bash-scripts and instructions in an extensive MediaWiki instance.
My introduction into this whole eco-system was basically this:
"Ever did something with linux before? Here you have the logins - have fun. Oh, and please don't break stuff. Thank you!"
Since I had only managed a small personal server before and learned stuff about networking, it-sec and administration only from courses in university I quickly shaped a small team eager to build great things which would bring in the knowledge necessary to create something awesome. We had a lot of fun diving into modern technologies, discussing the future of this infrastructure and simply try out and fail hard while implementing those ideas.
Today, a year and a half later, we look at around 40 virtual machines spiced with a lot of magic. We host several internal and external services like cloud, chat, ticket-system, websites, blog, notepad, DNS, DHCP, VPN, firewall, confluence, freifunk (free network mesh), ubuntu mirror etc. Everything is managed through a central puppet-configuration infrastructure. Changes in configuration are deployed in minutes across all servers. We utilize docker for application deployment and gitlab for code management. We provide incremental, distributed backups, a central database and a distributed network across the campus. We created a desktop workstation environment based on Ubuntu Server for deployment on bare-metal machines through the foreman project. Almost everything free and open source.
The whole system now is easily configurable, allows updating, maintenance and deployment of old and new services. We reached our main goal for this year which was the creation of a documented environment which is maintainable by one administrator.
Although we did this in our free-time without any payment it was a great year with a lot of experience which pays off now. -
Day 1 of a new semester in college. Our 50 yr old H.O.D is a guest lecturer of this new subject called "Industrial Management" (why its included in the syllabus of CSE degree i wonder) . As there were only 6 students , the guy went on like a drunkard telling life lessons :
1) only 20% of the people in a company are only working. Rest 80% of them are just using sugar coated words at the right place ; doing politics and taking credits of the others .
2) those 80% getting benefits are usually the bosses (and in his example, the senior deans and H.O.Ds buttering the administrative dept and director ) and the hardworking 20% are the Juniors or the new joiners ( and in his example, the latest recruited ,honest teachers. Makes sense why we have shitty teachers :/ ). They altogether make sucesses to the company(although its just those 20%hardworkers doing the actual job) . But at the time of salary everybody gets the benfit.
3) Its always perfect to throw blames at senior or junior. (explaining how a parent complaining about the poor study environment to director is made to think that it's only the fault of his own child. blames going from director to dean to HOD to teachers to your own child's mistakes.)
4) Being your boss's favourite is super important. He gave example as : 2 teachers meets him with 100% results and 100% reviews. One of them is a known asshole with 0 knowledge, who makes jokes and sexist comments during the class, gives free attendence and question papers before the exam{therefore 100%reviews} . But he is dean's great ass-licker . The other one is honest hard-working teacher with real reviews and results. So he says he shows their combine results to the director along with his own buttering and ass licking, gets a hike himself and permit to give hije to one junior teacher. And who would it give hike to? The ass licking asshole, because that's how it works. What about the honest teacher?what reply would he get? Simply, appreciations and sugar coated words : "thank you for working so hard. But you did not do anything new. You were only hired to DO hardwork and give good results"
( and i was like fuck? Like seriously? Because that is something resonating with what i once heard in my internship :"yeah you are developing nice and all good, but that's what you are expected to do. You were only hired to achieve results, and you did nothing new". So that's what we are missing? Ass licking?-_- )
5) He believed its important to "look working" than being "actually working" . Quoting an example from his days as a dev, he told a story about how he once worked on a project with deadline of 1 month . He was young and worked hard and in 2 days completed the complete project and accidentally reported success to boss instead of his seniors. The boss simply congratulated his team(seniors and him) and assigned them another project. Later that day , he got an ass-wipe scolding from his seniors that if he had kept his mouth shut, they would have simply watched movies and relax for next 15 days, and submit the project during the salary time to gain bonus attention.
He even gave his short mantra or principle for such situation "kaam ki fickar kar, fickar ka zickar kar, par kaam mat kar " (get worried and tensed about the work. Display your tention and worries to the world (esp bosses) . But don't work.)
And there were many other short stories like that.
Mann, i was about to shout " you corrupt asshole ", but one thing He just told us about the importance of being in boss's good books made me stop ( nd he is a fucking HOD, senior to teachers)
But hell he told some relatable truths. Make me sad about the job life.
Bloody Office politics :| -
Hey! This is a followup to my last story.
TL;DR: I thinking of quitting my old job, got an offer at a startup, about the same pay, but much better working conditions.
First of all, the meeting with my lead. It was a performance report on her side to me, and I got 100 to 110% in performance in all points. My lead said "this team without you wouldn't be this team anymore" - which makes me feel a little bit bad for her if I decide to quit. She is a great team lead, but I don't belive the old company is worth my time anymore.
Now to the new company. Shortly after that performance report meeting, I had a call with the ceo, and what do I have to say besides: What a cool dude. He listened to me, asked me questions about my previous jobs (not just as programmer) and so on. But because first looks are deceiving, I went to their office last thursday. And wow. Their are exactly what I imagined them to be. Cool, young folks, 100% tech enthusiasts, and open minded.
One of the new hires in the new company wanted a 6 months internship between his studies. Instead they offered him a full time job - for the 6 months. They even offered me to pay back my scholarship that I will own my old company for leaving early. This is awesome.
The only things that will be worse than my old job are, that I have to negotiate payment instead of yearly increases, 4 days less paid vacation, so only 26 days, and 40h weeks. And they have no workers council, which isn't good, but it's not the worst either.
I got them fixed on 57.000€, not including an up to 10.000€ annual bonus. The way you achieve your bonus seems good to. It's split in two parts, internal and external bonus. Internal bonus is when you engage with internal events like tech calls, sharing your knowledge on your main IT topics, etc. External Bonus is a bit more complicated, but also straight forward. You work on projects for customers, and if you have less than 3 weeks a year that you dont participate in an project, you get the full bonus.
Last friday, I filed a request for a certificate of employment from my current team lead, this is odd for her because I have never done it before, and she asked why I requested it. I said to her that we can talk about it, and she agreed but didn't call me, yet.
Lastly, another good friend of mine will be employed by my team soon, but for a fraction of the payment that I currently receive! He is doing the exact same work, and even worse, he is doing project managment for his main developer project too! And is getting less paid... I just cant...
Yesterday we needed to update a few cloud instances, the only other person who knows about setting up CICD and our OpenShift Containers than me is only in part time and works two days a week, his trainee didn't know anything, so it's up to me. This isn't hard or anything, but it shows that this system our mangement maintains will fail soon, maybe even with me going? I sure hope so tbh.
One of you guys said, I should go to my team lead and negotiate a higher pay, but the truth is, that because we are a big ISP we have an collective agreement for payment and are grouped by tasks (which is bull shit btw, because I'm doing tasks much higher paid than currently). This also means that I cannot simply jump in another group, and can only increase my current pay to about 115%, which is done automatically every year by 5% up to 115%. Anything above is considered extra, but I don't think they will go with it.
I will decide this week about my future at the old company, but I really don't know what to do...2 -
It's was the forth year of my college, in the corner of the world in south India, I wanted to something to combine both medicine and the coding that I learnt, I started learning about heart murmurs, it's basically a skill based diagnosis that only 1 in 20 heart specialists can make by hearing the heart beat and listening to a small murmur that happens during the systolic cycle or the diastolic cycle. I wrote a program to learn a lot of sample murmurs and try to find (very bad hand made logic) the similarities between two wave patterns, the problem started with noise so I went out and built a new stethoscope with a carbon mic inside a normal stethoscope head and try filtering the sound at source (worked well enough at that time) I then tried to find people to test it on, but alas I was not able to find patients as doctors are not supposed to reveal them etc. I wanted to show them visually how a murmur pattern would look like and I stole some code and made a plotter for the wav file and presented everything. By that time I got a lot of close amazing friends involved and they helped me solidify the project and we won the best project award and I got my first gold medal of my life at the end of my academic life :) it was one of the best moments of my life. Second only to the joy of getting married to wife. May be third if I put getting a job in Microsoft India Development Center.
I still wish I could dig that code up and write it properly with what I have learnt today but work is never ending and I find great problems to solve everyday which I know I can make a difference, may be when I get retired I will dust out that CD with the decades old c++ code and write one last program...3 -
How do I help my colleague in fighting harrassment?
This is the story of a helpless employee facing everyday harassment. Im trying to help. Seeking for your thoughts
Backstory fast forwarded: My company acquired another company. So we handle all their projects and clients now, but its a completely new domain. So we needed new people. Hired 4 employees + 1 team lead to start with. But the project process got delayed and they were free for a month. So i took 2 of them in my project and gave them some small tasks to help us over. They loved working with my team and were learning new stuff apart from what they usually did. And we were also happy of their contribution. We became good friends. All of this was in March 2020 before covid-19 was taken seriously.
About my company: I love this company. I have been in this company for more than 4 years now. People are really nice. Parties and fun events. Lot of smart and ambitious people. So company and people are awesome.
Coming back to the story. Lets call the team the 4 and team lead T. The 4 were happy that someone like T was in their team. This T had all the best knowledge about stuff and life was going to be awesome for the 4. Or was it?
Story starts: So I talk to one of these 4 on daily basis. Lets call this friend F. F is a real gentle person. Intelligent and dedicated to work. F is awesome to work with. And always enjoyed working. F is a team player and very very soft person. F is fking workoholic. So few days after project starts, F tells me work was not going well. F is getting real frustrated at work and not able to deal with it or find solution.
What happened:
This person T, who was supposed to help these 4, is real piece of shit. He is impatient, arrogant and MFing dick head. Aaaarggggg.
All the good qualities of a leader like supporting the team, boosting confidence, guiding team when they make mistakes, teaching them, were all missing from this person. T was a machine with no emotion and only clock working jerk. I have no idea how T cleared interview process, because one of the interview round is also about cultural fit into company. I know this because i take interviews for other domains. We have rejected lot of such well qualified but arrogant candidates.
So whats the problem now: this team of 4 are learning new tools and taking over the clients requests from old company. Most of the stuff is new for them. So in tat case people need lot of time to understand and figure out shit. people make mistakes while learning and you know have to deal with it. Person T abuses these 4 when something goes wrong. That's one.
Second, the T definitely knows more than these 4. So if these guys dont understand certain stuff they ask T. But T does not help them learn. T will either say busy or run away by saying thats simple and ull know when time comes. REALLY MF???
Third, T does not talk nice. T is rude and does not listen to team members. For eg, If F says some task cannot be done for some reason T will say, "y cant u do it? U r capable of doing it. Tats y u r in this job". And then point number one and two happens. Never responds to emails and messages. But if someone else does the same will not tolerate that and abuses them. List goes on.
So y not escalate and deal with that T:
This person F and other 3 are still under probation and they think complaint or escalation will back fire. These people do not want to lose job in between all this pandemic shit. They are scared.
So this was happening for a while. And i was giving lot of tips on how to handle certain situations. And how one should communicate these.
But being a gentle, soft and workoholic person, F focussed on work and assumed things will get in place as time goes by.
Today, F could not meet a requirement. So T told some shit which got F all sad. and F called up me late night and started crying explaining what happened. I felt real bad. I asked F to file harrassment case. F refused saying it was F's mistake on not completing requirement. WHO THE FK CARES. PEOPLE CANNOT TALK SHIT. I told ill file harrassment case against T. (We have a policy where others can also file if person is not courageous enough). But F did not allow me.
Then after calming down, I told F that telling the problems to me wont solve them. You have to talk to T directly and tell him on face not to talk like this. Or tell the manager about whats happening. Or tell the the HR about this. F said tat cant be done. I was like Y THE FK NOT.
Because the other 3 are not ready to talk about this to anyone as they fear they'll lose job. So if F talks and people question other 3 they might bail out. WAT THE HOLY SPIRIT.
so after lot of convincing F is still not going to
Talk to anyone about this.
So i have decided ill write an anonymous email to HR, the manager and other senior people in the organisation about whats happening.
I really dont know how itll go. Ill keep updating you guys. Feel free to share ur thoughts.3 -
Being a front end developer and working in a team of motivated "full stack" developers sucks big time.
So, recently joined this new company with a very small project which just started, basically a cloud version of a really old desktop app. Few people from the team completely from the asp dotnet background decided the architecture few months before I joined in.
So, they did it something like this -
- mono repo dotnet project with VueJs app served within it (because that would be maintainable 😑)
- vue app served by pointing the built files through dotnet index file (simply because they didn't care about the gift to the front end world which is webpack or even had any knowledge about it 😑)
- added typescript because, u know it's cool 😑, without even knowing that they don't possess that team which know how to write the types (f***ers write classes for every payload object coz they don't know what interfaces are)
- no loader to load typescript, they are running tsc in watch mode and we have .js and .js.map for every .ts file in our project which some teammates are even pushing to repo
Recently, I added eslint with git hooks to the project so that everyone will at least stick to the coding standards. Now, to avoid the errors they are bypassing the git hooks by uninstalling the library and then installing it after the commit😂😂
Then we have a girl who uses document.getElementById to programmatically change styles in a Vue project😑😑😑😂
Then we have dotnet people using dotnet coding conventions all over the front end app.
People, how do I deal with these so called "full stack" people?12 -
I have a really old Toshiba NB200-10P notebook with Intel Atom CPU and 2 gigs of RAM and 32 bit architecture... It was made for Windows XP, and now it barely runs Windows 7... So I'd like to give new life to this old piece of hardware with Linux (for basic tasks like Office, and maybe coding with Notepad++)...
I really like Manjaro, but after they ditched 32 bit support, the Manjaro-32 community project seems a bit unstable...
So, could you devs please recommend some reliable - and somewhat good-and-simple-looking - Linux distros?20 -
This always gets me:
Developers complaining that their 4 year old / cheap ass computer is slow.
Get. A. New. One.
It's not that hard.
Here, let me do one for you:
https://computeruniverse.net/en/...
I just went to a site that delivers across Europe, and selected a cheap laptop with a decent CPU and SSD. Short on RAM, sure, and without a Windows License. But you can buy RAM for an additional 50$, and that brings you to a total of 550€, delivery included. And it will WORK. And it will be fast.
It's too expensive?
No, not exactly. Wherever you are in the world, if you can code decently, good enough to have the right to complain about development tools, you are eligible to at least 10$ per hour income as a freelancer across the globe. I've had such opportunities offered to me by many organizations, especially non-profit ones that need cheap employees. I actually was offered more but let's stick to 10$ per hour.
So that's 1600$ per month. Enough to buy 3 such laptops. Oh, taxes, I forgot. So you get 2 laptops. Wait! You need food and everything else. Well if you're in a country where that offer actually makes sense, then it's likely that you can live off of 400$ per month quite well. Maybe 800$ if you need to pay rent.
So that's roughly 1 month of work for a laptop that will make you not waste time on waiting for stuff.
Sweet! 1 Month! What does it get me?
Well assuming that you have no laptop, it gets you A JOB that pays you 1600$ per month.
But if you DO have a laptop, you can sell it for cheap, and benefit from the following:
1. Boot-up time from 30-60 seconds to 10 seconds.
2. Installing software - from 1 minute to 10 seconds.
3. Opening a browser - from 10 seconds to 1 second.
4. Opening an advanced text editor (Atom, VS.Code) - from 10 seconds to 1 second.
5. Searching for a file on your entire hard drive - from 1 hour to 2 minutes.
....
You get the point. Waiting is reduced by several times.
So how much do you really wait when coding?
Well are you compiling? Are you opening a new project and the IDE needs to re-index the files? Are you opening programs like a terminal emulator, browser and such? Are you using virtual machines for dev environments?
Well all of these processes become several times faster. Depending on how often you do it, you'll be saving yourself from 1 hour per day to upto 4 hours per day (my case, where a HDD would be just out of the question).
How much is that time worth? At least 10$ per day. If you're working for 20 days per month, 240 days per year, that's a total of 2400$. And for the life time of that crappy laptop of 2 years, that's 4800$ saved. And that's with hugely conservative numbers. Nobody pays 10$ per hour any more, except if you've just started in the industry. I know because I've been there.
Please, for all that's sacred to you, justify right here, right now, HOW THE FUCK can you not afford to get that 8GB of RAM, that cheap ass SSD for 100$, or even a brand new laptop (hey! it's even portable and has FHD graphics on it!) for 550$.
That's why every time I hear someone who is a professional developer complain that they don't have money for a decent machine, I have to ask: why the fuck are you wasting yours and everyone else's time?!10 -
Entirely my fault. I was getting frustrated that the CSS I had copied and pasted from an old project was not appearing properly. It just wouldn't work. Spent an hour before I lost my shit and closed the IDE, to discover that I was saving the old project repeatedly and hadn't even touched the new project which was serving.
-
There was a task to upgrade, refactor and rewrite azure functions project. It was assigned to guy who was about to leave the company. After 2 weeks at his last day at 16:50 he committed the changes. He literally copy pasted the old project into new file structure and left the building. FUCKING ASSHOLE.
-
You're asked if you know how to use git, you say you can but you can't.
You decide to change your entire codebase because you realized your previous approach was a bad idea.
You ask how to change the old repository-content for the new project, you receive answer but you can't get it to work, you don't ask again for help.
What's the logical consequence? Create a public GitHub-Project and dump the entire customer-project under NDA into it -.-* -
I need guidance about my current situation.
I am perfectionist believing in OOP, preventing memory leak in advance, following clean code, best practices, constantly learning about new libraries to reduce custom implementation & improve efficiency.
So even a single bad variable name can trigger my nerves.
I am currently working in a half billion $ IT service company on a maintenance project of 8 year old Android app of security domain product of 1 of the top enterprise company of the world, which sold it to the many leading companies in the world in Govt service, banking, insurance sectors.
It's code quality is such a bad that I get panic attacks & nightmares daily.
Issues are like
- No apk obfuscation, source's everything is openbook, anybody can just unzip apk & open it in Android Studio to see the source.
- logs everywhere about method name invoked,
- static IV & salt for encryption.
- thousands of line code in God classes.
- Irrelevant method names compared to it's functionality.
- Even single item having list takes 2-3 seconds to load
- Lag in navigation between different features' screens.
- For even single thing like different dimension values for different density whole 100+ lines separate layout files for 6 types of densities are written.
- No modularized packages, every class is in single package & there are around 100+ classes.
Owner of the code, my team lead, is too terrified to change even single thing as he don't have coding maturity & no understanding of memory leak, clean code, OOP, in short typical IT 'service' company mentality.
Client is ill-informed or cost-cutting centric so no code review done by them in 8 years.
Feeling much frustrated as I can see it's like a bomb is waiting to blast anytime when some blackhat cracker will take advantage of this.
Need suggestions about this to tackle the situation.10 -
Joined a new startup as a remote dev, feeling a bit micromanaged. So this week I joined an established startup as a senior mobile dev where I work remotely.
Previous two devs got fired and two new guys got hired (me as a senior dev and another senior dev as a teamlead, also third senior dev will join next week).
Situation is that codebase is really crappy (they invested 4 years developing the android app which hasn't even been released yet). It seems that previous devs were piggybacking on old architecture and didn't bother to update anything, looking at their GIT output I could tell that they were working at 20-30% capacity and just accepting each other MR's usually with no comments meaning no actual code reviews. So codebase already is outdated and has lots of technical debt. Anyways, I like the challenges so a crappy codebase is not really a problem.
Problem is that management seems to be shitting bricks now and because they got burned by devs who treated this as a freelance gig (Im talking taking 8-10 weeks pto in a given year, lots of questionable sick leaves and skipping half of the meetings) now after management fired them it seems that they are changing their strategy into micro managament and want to roll this app out into production in the next 3 months or so lol. I started seeing redflags, for example:
1. Saw VP's slack announcement where he is urging devs to push code everyday. I'm a senior dev and I push code only when I'm ready and I have at least a proof of concept that's working. Not a big fan of pushing draft work daily that is in in progress and have to deal with nitpicky comments on stuff that is not ready yet. This was never a problem in 4-5 other jobs I worked in over the years.
2. Senior dev who's assigned as the teamlead on my team has been working for 1 month and I can already see that he hates the codebase, doesn't plan on coding too much himself and seems like he plans on just sitting in meetings and micromanaging me and other dev who will join soon. For example everyday he is asking me on how I am doing and I have to report this to him + in a separate daily meeting with him and product. Feels weird.
3. Same senior dev/teamlead had a child born yesterday. While his wife was in hospital the guy rushed home to join all work meetings and to work on the project. Even today he seems to be working. That screams to me like a major redflag, how will he be able to balance his teamlead position and his family life? Why management didn't tell him to just take a few days off? He told me himself he is a senior dev who helped other devs out, but never was in an actual lead position. I'm starting to doubt if he will be able to handle this properly and set proper boundaries so that management wouldn't impact mental health.
Right now this is only my 1st week. They didn't even have a proper backend documentation. Not a problem. I installed their iOS app which is released and intercepted the traffic so I know how backend works so I can implement it in android app now.
My point is that I'm not a child who needs hand holding. I already took on 2 tickets and gonna push an MR with fixes. This is my first week guys. In more corporate companies people sit 2 months just reading documentation and are not expected to be useful for first few months. All I want is for management to fuckoff and let me do my thing. I already join daily standup, respond to my teamlead daily and I ping people if I need something. I take on responsibility and I deliver.
How to handle this situation? I think maybe I came off as too humble in the interview or something, but basically I feel like I'm being treated like a junior or something. I think I need to deliver a few times and establish some firm boundaries here.
In all workplaces where I worked I was trusted and given freedom. I feel like if they continue treating me like a junior/mid workhorse who needs to be micromanaged I will just start interviewing for other places soon.5 -
Looking at an old Java project, running java 1.6, test folder doesn't even exist and the "old but gold" java.utils.Date class is used throughout the whole thing. How do I initialise a new date again...? I actually just googled that :D At least the constructor parameters are named nicely... wait.. what...1
-
> mmmmh this old code I wrote for my previous job could be handy now, lemme just git pull the thing real quick
> clone the repository in my new pc
> can't deploy because I intentionally didn't commit any of my old credentials, no env files other than the example, and everything is smooth clean to prevent some dumb fuck like me from just grabbing the project and do whatever
There's an old IHateForALiving giving me the middle finger. -
I joined a a new company .. the Technical team leader .. is coming from a lawyer background.. and feel threaten by new technology and insist on using old technology so he feel relevant !
The project manager has a background of business management which I understand but .....
It's been 3 days and am asking my self if I made the right choice by joining such company ...3 -
I propose renaming the title "project manager" into "plim". Why? Well, there is an old soviet nursery rhyme:
I came up with a new word
A funny word called Plim
And I repeat it over:
Plim, Plim, Plim!
It jumps around shouting
Plim, Plim, Plim
Nobody cares about it
Plim, Plim, Plim -
So I've been hired as a senior software developer with all the tags included (mentoring, innovating, pushing forward changes) for a company that is trying to move away from waterfall development (yup, it's 2019 and this exists) to a more iterative workflow.
I was initially hired and sent out to do some "field work" abroad for 3 months and then worked "remotely" from the local office with our field partners.
During all this time it seemed that my ideas go through smoothly, there was a lot of chatter about how things are moving forward, how new projects, innovations and new methodologies are implemented.
And yet, after my "remote" work has finished and I have to do things locally more, all of the skeletons fell out. It's just talk, nothing seems to be changing at all and yet any attempts to talk with the brass is like hitting a brick wall.
Not only that, I've been handed a 12 year old project with no possibility to refactor, no technical documentation, very few comments and in a terrible style.
The atmosphere in the company is odd as hell. People are either not very initiative, nor they seem to really care about all of the "changes" that "should be happening".
It almost feels that I've arrived in a company that still lives in 2007 more or less.
Should I quit, or perhaps it's a little "too soon" (have spent 7 months in the place already)? What I don't want is to get in the same train again (work for a company for 8 - 12 months, feel burned out because of the divergence between actual things done and "plans" and then change the job).5 -
We are all about structures, clean code and many other things that make our life easier, right?
Well... It's not all white and black...
As talked many times, projects can be rushed... Client budgets can be low at the start and only then grow...
Let me take an example:
Client X needs a tool that helps his team perform jobs faster. They have a $500 budget. So... Testing, clean architecture and so on - are not really a viable option. Instead, you just make it work and perform that task as needed. So the code has minimal patterns, minimal code structure, a lot of repetitive parts and so on.
Now... Imagine that 3 months pass by without any notice and clients are ultra happy with the product. They want more things to be automated. They contact developers and ask for more things. This time they have a bigger budget but short timeframe.
So once again, you ignore all tests, structure and just make it work. No matter what. The client is happy again.
A year passes and the client realizes that their workflow changed. The app needs total refactoring. The previous developer has no time for adjustments at this point and hires a new company. They look at the code and rants spill out of their mouth along with suicidal thoughts.
So... What would you do? Would you rant about "messy project" or just fix it? Especially since people now have a bigger budget and timeframe to adapt to changes.
Would you be pissed on such a project?
Would you flame on previous devs?
Would you blame anyone for the mess?
Or would you simply get in and get the job done since the client has a "prototype" and needs a better version of it?
---
Personally, I've been in this situation A LOT. And I'm both, the old and new dev. I've built tons of crappy software to make things work for clients and after years - they come back for changes/new things. You just swallow the pill and do what is needed. Why? Well, because it's an internal system and not used by anyone outside their office. Even if it's used outside the office - prototyping is the key. They didn't know if the idea would work or be helpful in any way. Now they know and want it done correctly.6 -
Finally got rid of my old job I ranted about so much. Started a new one on Monday. A bit anxious and terrified (there is a lot to learn) but it feels good. The team is fun and they know what they are doing. BUT most importantly: they know how to plan projects and know how to intervene if a project is about to run out of resources. NICE.
I'll keep you posted on how it goes3 -
I would like to have more time to work on the old, lonely, dust gathering site I started to build. There was a lot of new skills I wanted to test and train. But my personal life is getting stressful in the last time. Wife broke her leg and my son started in kindergarten.
I'm starting a new job in Dec, so I quit my current job. I had to reduce my work hours to collect my son from kindergarten. Sounds like I have much time now? Nope, there somehow is few time for programming. I enjoy bouldering (thats where the leg thing happend 🙄) and that's where even more of my time goes.
I see my project become ugly in the meantime, because there are even more new things I read about and would like to use... -
So, I need to search for a new job again. The thing killed my project.
15 years of Java experience in my resume, I look a like a sterotypical 35 years old programmer, I’m applying for expert roles. But every remote technical interview starts with:
- what is the difference between ArrayList and LinkedList?
- what is a hash map?
The hardest part is to keep smiling to the camera, pretending I don’t have the answer memorized by repeating it for the last 15 years of interviewing, and not rolling my eyes.
And before you ask, I do know what garbage collector is.5 -
When I was younger I had a decision to go into hardware or software. I chose software and have loved it.
Recentily I just spent 5 hours trying install a Linux distro on an old server. I made no progress.
I made the right decision. Hardware freaking sucks! You spend hours working on outdated pieces of crap and find that to fix your problem you need to sell you kidney to finance your project. Not to mention you have to wait for literally everything! It's like gradel builds everywhere! Want to install a new distro on your USB? Bam, 5min gone. Want to boot into bios and change one setting? BAM! more time wasted...
A note to the sysadmins out there: thank you. I love you. I am so happy you do this kind of work so I don't have to.3 -
Tldr: I think I made a company fire some dev a year ago.
I was working for this company remotely, alone, on a very big and old legacy php project where they still used echo '<code><code/>'; and i was a very junior junior front end developer, needed to make the website work somehow (whole new design). They brought in a random guy to work with me, and we started working.. I was using bitbucket to version my changes, and I asked him to do the same. He tried pushing his changes once and then practically never again because he started working in files that i was working on and there were git conflicts, and he gave up, even though i asked him to do that... he then statted using general classes to style the page (like .color) with absolute positioning and it broke everything everywhere. He then proceeded to minify half of the php files 'because of performance', I remember talking to other few people in the company and he disappeared a few more days later. I never finished the project because they stopped it randomly and i think i got him fired even though he could've continued working in the company -
I didn't know why I didn't ever told it:
I did a few multiplayer projects in Unity 4 Engine (beloved old multiplayer) and I wanted to create a custom dedicated server within the Unity engine.
I created a new project and started programming. The clients even connected to the server but I couldn't figure out how to sync the world's because the blocks the world was made of existed in both projects,but had different IDs (didn't knew there were IDs).
After a bit of googling I found out that it isn't possible to sync these projects. Tired of myself giving up I tried a different route and found out that these IDs would sync of you exported them as asset pack. So I did!
And it worked ❤️❤️❤️❤️
So I could have a less power heavy dedicated within the unity engine.
(PS: I knew I just could made a server in C# or so with sockets and what ever, but 12 year old me doesn't knew sockets) -
Due to a service window, we were requested by customer to set up a separate instance of the same web application so they could keep working.
The separate instance was set up and all parties were informed.
Customer and project manager complain that people are still using the old instance, to which I replied I sent an email informing which instance should be used.
Their response: "You wrote to use the new instance, but you didn't write NOT to use the old one."1 -
Nothing really successful, but someone once wrote an article about my old buggy version of JS select plugin...on website noone visits :( Anyway, I think, the new version is pretty good and fast and would be happy to see it somewhere, especially search is fast af.
I have one more project which could have been successful. Never finished, never ended and never used...no time for it... -
So I started at a new company about two months ago. I was hired as a Senior .net developer, which I am well qualified. I also told them that I did MVC but haven’t done react or angular.
So my first project with this company is building a react-native app. (Never done a native app either) The craziest thing is I am the most senior on this project too.
What is even crazier, I still work for my old company on the side, and the only .net I am doing is for them. And even funnier, my old company thought the reason I was leaving was to do more .net development.2 -
I started as intern at the place. Worked unpaid for 4 months. Then they started paying. That's when shitload started. 5 web developers and 10 projects. 1 months later they fire one of us. Next month they fire another one. 3 developer and 8 projects. No documentation for they projects that were already started before I went there. Provide support for 3 year old project and nothing for reference. Salary was paid 10/15 days after the month war over. I couldn't take it anymore so I have a two months notice before leaving job. A month later all of the 3 android developers gave their notice. After we left, they haven't still paid us our final month's salary. Reason was it was not formal east of leaving and they projects we worked on haven't rolled out to market yet.
Talked and then mailed them the resignation two months in advance is not formal then I don't know what is.
Also how can the project be rolled out when there is specification change every 6 hour to 1 day on the project. Also we completed what was given to us and then the project hasn't rolled out because of new changes in the specification. -
You had two additional weeks to improve your project.
You could research different marketing strategies to increase revenue. You could add some new features to attract more users and ensure your existing users are satisfied. Finally, you could optimize performance to make your UI quicker.
But you’ve chosen to write some unit tests. Now that two weeks are gone, you got no new features, no performance improvements and no new marketing strategies while your competitors got them all.
Tests caught obvious bugs that can even be caught by static typing, but you by definition couldn’t write tests that’ll catch unpredictable bugs, so they are still present.
After six months you realize you have to rewrite a major part of your project because your project (surprise-surprise) has to chase market needs to stay relevant. Your tests are thrown into trash along with your old code.
“Having trouble with code quality? Write a lot of tests. And I mean a *lot*. Test every file in isolation. Mock as many imports as possible.
When you're done, your code will still be bad, but now your tests will make sure it's impossible to improve anything in any meaningful way.”12 -
i had an epiphany today, in a discussion with the software architect of our new project.
i'm having the epic job to design & implement a prototype for a C++ library in a new software project and collected some inspiration in our "old" software, where i'm maintaining the module that fulfills the same functionality (i thought). i've been maintaining this module for around a year now. i analyzed the different features and stuff to consider and created a partial model of the new library.
when i showed it to the architect today, he was like "oh my god, no no no, you don't need all this functionality, this shall not be part of the new library!"
this was the moment when i realized how deeply fucked up the code base of the old module is.
imagine it like this:
you want to automate the process of making yourself a good ol' cup of coffee.
the reasonable thing would be to have
- a smart water boiler where you set parameters water temperature and amount of water to be fetched from the water supply
- a smart coffee bean grinder where you can set type of beans, amount of beans and grinding fineness
- a component where water and ground coffee are joined to brew the coffee, where parameters like duration, pressure etc. are set
- a milk tank where amount of milk, desired temperature and duration / speed of foaming can be set
- a sugar dispenser where amount of applied sugar can be set
- optionally, additional modules with spices, syrup, ice cubes, whatever for your very personal coffee experience
on requesting a coffee, you would then configure and orchestrate all components to your wishes to make you a fine cup of coffee. you can also add routines like "makeCappucchino()", "makeEspresso()", or whatever.
our software is not like this.
it is like this:
- a smart water boiler consisting of submodules that know how to cook water for e.g. "cappucchino with sugar" or for "espresso without sugar, but with milk and ice cubes"
- 5 smart bean grinders that know how to grind beans for e.g. cappucchino, espresso, latte macchiato and for 73ml of water preheated to 82°C
- a very smart sugar dispenser that knows how to add sugar to 95, 98 and 100°C coffee and to coffee made of BOTH coffee arabica AND coffee robusta beans.
etc. etc., i think you're getting the gist.
when i realized this, it was like, right in front of my eyes, this terrible pattern emerged like a foul, corrupted caleidoscope of chaos, through the whole code base of this module.
i've already known how rotten from the core this code base is, but today i've actually identified a really bad pattern that i hadn't realized before. the whole architecture is so bloated that it is hard to have an overview of the whole thing. and it would require a LOT of refactoring to repair this pattern.
but i guess it would also be infinitely satisfying because i could probably reduce the code base for 30% or something...
but unfortunately, this is never going to happen, because screw refactoring.
it's a great feeling to start this new library from scratch, tho...6 -
I was fine with Eclipse. Then everyone around me told me that Eclipse is old and IntelliJ is new and super cool and makes me super fast and much more productive. Finally in our company we got a Ultimate 2018 license and I started to use it. There is a function: import from Eclipse. Hey cool - let’s import and go... but no. After importing I needed one day to get that running. But I’m not really convinced. After that... ok let’s try another project where colleagues have used IntelliJ already. But after checking out - that also didn’t work well and I spent the whole day it running locally. Although it’s a maven project. Up to know I think Eclipse is better in handling Tomcat and better shows the version control state of files. And for me the workspace concept of Eclipse seems to be better than the project concept of IntelliJ. But maybe I just have to get a better understanding of IntelliJ. Hopefully I can do my first coding in IntelliJ tomorrow. Maybe then I can see all the benefits. So far...4
-
Ever feel like your boss is playing buzzword bingo with your project?
We have new project. Buzzword bingo words for us: microservices and cloud. We're moving our old, big, monolithic app to microservices.
And very strong demand that we keep all nasty solutions gathered in there for the last 10+ years working.2 -
Tabs, or No Tabs? I did the same as this commentor 2 years ago. I can code so quick now because of this simple switch. Here's why:
(source, Laracasts.com)
Ben Smith
"I think the most beneficial tip was to do away with tabs. Although it took a while to get used to and on many occasions in the first few days I almost switched them back on, it has done wonders for my workflow.
I find it keeps my brain more engaged with the task at hand due to keeping the editor (and my mind) clutter free. Before when I had to refer to a class, I would have opened it in a new tab and then I might have left it open to make it easier to get to again. This would quickly result in a bar full of tabs and navigation around the editor would become slow and my brain would get bogged down keeping track of what was open and which tab it was in. With the removal of the tab bar I'm now able to keep only the key information in my mind and with the ability to quickly switch between recently opened files, I find I haven't lost any of the speed which I initially thought I might.
In fact this is something I have noticed in all areas of writing code, the more proficient I have become with an editor the better the code I have been writing. Any time spent actually writing your code is time in which your brain is disconnected from the problem you are trying to solve. The quicker you are able to implement your ideas in code, the smaller the disconnect becomes. For example, I have recently been learning how to do unit testing and to do so I have been rewriting an old project with tests included. The ability to so quickly refactor has meant that whereas before I might have taken 30 seconds shuffling code around, now I can spend maybe 5 seconds allowing my mind to focus much better on how best to refactor, not on the actual process of doing so."
jeff_way Mod
"Yeah - it takes a little while to get used to the idea of having no tabs. But, I wouldn't go back at this point. It's all about forcing yourself into a faster workflow. If you keep the tabs and the sidebar open, you won't use the keyboard."2 -
Other peoples' code... (in C++)
I am finding what some people consider good code is not as described. I found a class that provides strings. Great it gives me paths and stuff. I incorporated it in a new project.
segfaults
Hmmm, it must have an init function... It does, but not in the class. It has a friended init function:
friend init_function(). If this function is not created and called external to the class then the class will segfault...
okay...
I implement this. I use code from another project that implements this correctly. The friend class allows the private constructor to be called to create the main instance of the class. So its a fucking cryptic ass singleton. I look at this class. It uses a macro to decide what to function call in the class. The class already has function names for each call it needs to make. The class is literally a string lookup table. I vow to redo this shitty code, someday...
I start to wonder what other fragile code I will find. Not long later I keep getting errors on malloc. Like any malloc that is called results in a segfault. The malloc is not at fault though. I run valgrind and find a websocket library is returning an object a different size than the header file describes.
WTF...
Somebody has left an old ass highly modified definition of the websocket header in a location in that I include headers (partly my fault). I eliminate that from my include path. All is well, everything behaves. I will be making sure this fucking header is not used and it is going to die. Wasted a bunch of time.
Lessons learned: some code is just fucked and don't leave old ass shit you tried laying around.5 -
$ rails new [old side project but this time I will finish it (sikes)]
$ cd [project]
[ Inserting "gem 'webpacker' ~> '3.0.0'" in Gemfile ]
$ bundle install
$ rails webpacker:install
$ rails webpacker:install:react
node_modules weights 97.4 mo 🙄3 -
I’m so frustrated and I don’t know whether to blame my 2015 Mac, Audacity, both, or my present inability to be able to afford a new Mac because EVERYTHING/EVERYONE IN MY HOUSE IS BREAKING, NEEDS THERAPY OR BRACES, AND LIFE IS NOTHING BUT EXPENSES!
I had just finished tediously transferring, restoring, and trying to export tracks from some old cassette I had of a jazz concert I played in years ago. Audacity froze because my Mac is now apparently underpowered at 8GB of RAM. But Audacity autosaves and on restart usually can restore you back to where you left off. So I tried to force quit it.
I couldn’t even force quit the stupid app and had to totally restart. I think that ruined whatever autosave I had because it could only restore half of the work I’d done. Another freeze finished off the Audacity project, making it TOTALLY BLANK AND WORTHLESS. I just deleted the whole damned thing and will have to start over. I WAS MINUTES AWAY FROM BEING DONE AFTER HOURS OF WORK!!!!!
Now the Mac wants to update to a supplemental release. With each release this expensive boat anchor gets slower and slower.
I just wanna throw all tech out the window. Every damned thing is planned obsolescence in 2 years and made in China anymore and I HATE giving that totalitarian regime any more of my money. Apple is complicit. ALL computer companies are. They could just bring the jobs back here and walk the walk, but they’re all talk.3 -
Looking for recommendations on electronics learning kits. My 16 year-old son has recently been tearing into old electronics and trying to make new stuff with the components. I want to give him a more formal and engaging intro to what it is he’s playing with and how many other cool things he could do. He does struggle a bit with math and gets discouraged easily if he doesn’t understand new concepts or why they’re relevant. So, if you know of a good learning kit that balances lots of cool possibilities with good documentation and tutorials, I’d appreciate a little help.
I’m currently looking at Elegoo. https://amazon.com/EL-KIT-008-Proje...4 -
How is it called when I rant about something my colleagues experienced and I just supported his debug session? Third party rant? Anyway, here's the thing.
Other team built some project specific code right in the heart of their software, which in itself would be worth a rant. But as you might guess, it's getting rantier.
For a new project the same code is used, but needed some tweaks. Now guess what happened:
1) Someone took the code, refactored it, made project specific stuff configurable, everything works fine now
2) Someone changed the code completely for the new project, everything seems to work fine for 5 months, then the old project needed a new release 💣 -
To be honest with you, I’ve never had a bad experience with PHP.
Yes, it’s “dirty” compared to something like Haskell, but it’s not a bad thing. Dirty things usually bring simplicity and allow implementing the intended case super quickly, at the cost of breaking apart at scale. There are no bad tools, there are wrong tools for the job.
Premature optimization is the root of all evil. The more I launch new projects for me/other companies, the more I come to the realization that the vast majority of the projects out there will never see scale. They will be proven non-viable/impractical and deemed obsolete way before they outgrow the $20 VPS they were hosted on.
Sometimes (all the time, really) launching quickly like there is no tomorrow is the most viable business strategy. If (yes, “if”, not “when”) your project outgrows PHP and gets to the point when PHPs abstraction model is the bottleneck, you’ll have the money to rewrite the project in any language out there, trust me.
As someone said on biking subreddit to a person that asked how to buy the newest super-aero helmet, “if the aerodynamics of the old helmet is what holds you back, someone will be sending you the new one for free”.6 -
I NEED COFFEE HELP PLZ! :'(
I have a long time working on a project, since I started taking coffee in the mornings i realized that the coffee sucks..
So i looked for it and realized that old coffee was processed every day with the new coffee...
Anyways..
Im up to shitty project, shitty pc, shitty documentation, stress, pressure..w/e i don't care..
What I can't FUCKING stand is a disgusting coffee that tastes horrible! D:<
Is it too much to ask?? :'(6 -
I just started a new project with a new client who once off-handedly mentioned offering us stock options if the site is successful. He's paying us real money to do the site and I hope he doesn't pull the old "Oops, I'm out of money. Would you like stock options?" move. Thanks to hellobonsai.com contract language I think we're covered.2
-
My old client, contacted me for a new project. He contacted at the right time when I'm getting rejected for jobs and just simply being bored with college. Excited to have extra cash to have fun at college and have a working purpose.2
-
I'm 22 years old and 1.5 years into my first Startup Job. (and second Dev job)
I feel kind of uncomfortable now and I would like to ask your opinions.
I'll start with the work related description of my situation and later add a bit of my life situation.
I develop as hobby since I can think. I'm pretty engaged and love to do things right. So I quickly found myself in the position of the de-facto lead fullstack Developer.
Although, to be clear, were only a few devs - which are now replaced by not so many other devs. I feel often like the only person able to design and decide and implement in a way that won't kill us later (and I spend half of my time fixing technical debt).
I mostly like what I do , because it's a challenge and I feel needed. I learn new things and I am pretty flexible in work time. (but I also often work till late in the night, sacrificing friendship time)
But there are so many things I would love to do and used to do, but now I have no motivation to develop outside of my job.
I don't really feel that what my company is doing is something I find valuable. (Image rights management)
I earn pretty well - in comparison to what I'm used to: 20€/hour, Brutto 2.800 / month for 32 hours a week. In Berlin. (Minus tax and stuff it's 1.800€). It's more than enough for what I need.
But when I see what others in similar positions earn (~4.000), I feel weird. I got promised a raise since nearly a year now. I don't feel I could demand it. I also got the hint that I could get virtual shares. But nothing happened.
Now what further complicates the situation is that I will go to Portugal in April for at least half a year, for joining a social project I love. My plan used to be that I work from there for a few hours a week - but I'm starting to hesitate as I fear that I will actually work more and it will keep me from fully being there.
So, I kind of feel emotionally attached - I like (some of) the people, I know (or at least believe) that the company will have a big problem without me. (I hold a lot of the knowledge for legacy applications) .
But I also feel like I'm putting too much of myself into the company and it is not really giving me back. And it's also not so much worth it... Or is it?
Should I stick to the company and keep my pretty secure position and be financially supported during my time in Portugal, while possibly sacrificing my time there?
Should I ask for a raise (possibly even retroactively) and then still quit later? (they will probably try to get my 1 month of cancelation period upped to 3).
Also, is this a risk for my "career"?question work-life what? purpose startup safety hobby work-life balance life career career advice bugfixing7 -
Q)whats the worst that could happen when i change my github name?
(PS1 : i already went through official docs , but couldn't understand that. https://help.github.com/articles/...)
Assume that I have a very average profile, with no repo having any forks but many many forked projects of others. I have also contributed to some other people's project .
1) i got my profile link on many websites and forms. will they redirect to my profile?
2) i think the git in my lapp has to be configured again for global configs. That won't be problem but I think i have to reclone old local reps again. right?
3) my contributions on other and my own projects : will they stilll show my new name?8 -
Heck yeah,
So an old Ionic 3 project wont work on the newest CLI.
I check around for the error, update some dependencies, sure enough it starts working again, all is great or so I thought.
Later something weird starts happening, upon pushing a new view on the navCtrl, the navParams are null on the next view.
I later find out that navCtrl is becoming navParams just on the first bit of the view loading, so I do a dirty fix just to keep working on the functionality from my browser, I know very well this will cause problems later on, this is just so I can keep working on functionality.
I finish all of the functionality and I'm ready to compile for android, I run my script, the dirty fix comes to bite my butt now.
I remove the dirty fix hoping for it to work just well on the apk.
Now gradle doesn't find ddmlib.jar, some 15 minutes of troubleshooting do nothing.
Fuck it, I'll just create a new project from the CLI and drag all the code there so that navParams work as expected.
Sorry Ionic, but the world is not our oyster when subtle changes in dependencies produce such unexpected behaviour, with some fucking view parameters!.
I'm looking forward to get done with all the current projects to jump back to native.1 -
Your time is better used somewhere else, let the intern write the documentation. While the project was transitioning to a whole new team with no one from the old one.1
-
You ever had a boss that made you feel like his bitch but he never really earned the title
You also know from a technical skill perspective you’re more competent.
And the only job he seems to do is micromanaging you. He just puts things under a microscope looking for a flaw. He always finds a flaw so in the off chance it breaks he’s always in the clear.
He’s the guy who sticks with the programs the he was taught when he was still at school and never really tried something new out of the box. He gives the reasons the he wasn’t formally trained in the other programs . I’m not talking cinema 4 here. I’m talking Matlab preference over python. Using lab-view as a production level development platform instead of going to something more approved by the industry.
He doesn’t take risk but he pushes those risks on you so if you fail he can say it wasn’t him
He’s never wrong but he’s never right either.
You’re sitting there doing the cunt work and breaking the sweat and he passes the achievements as under his management. You never really get the credit because “he guided you “. You go through hell fixing bugs and he disappears. He says he’s always a call away when what you really needed is someone taking the heavy tasks not throwing the entire project on your back.
I never call that piece of shit bcz he just throws some other bullshit that doesn’t make sense and emphasizes that might be the problem.
I once had a problem with the com port on a pc and was trying to figure out the problem. I asked him and he said that it might be bcz I’m connecting to the PC via VNC. I was like what the hell. What does that have to do with anything. I just ended up restarting the port and it bloody worked.
The saddest part is that I’m scared is that I might end up like him. In the same dead end job. Even though he guides me we work in a place where the job title doesn’t really change. Funny thing is that officially I have the same job title as him .
He’s been in the place for 5years when I came. Can someone imagine that? To work and work and then to be seized up with another brat who’s the same as you title wise.
You’re close the age of 40 and you work in a place where a 20 something year old walks in with the same Position as you.
I worry that I might end up the same if I stay long enough. That I’ll learn everything I can learn and just stop progressing and the only thing I can do is say how shit can break but wouldn’t know how to fix .
Pointing out problems because they are easier than fixing. Just plomonting into existential nihilism with no purpose.
I once told him I wanted to quit. He pretended he didn’t hear it. He then then said what do you see in this job in 5 years
I told him me not in it.
He said “seriously what do you want in this place “
I said “if I’m still her in 5 years I’ll be missing a toe because I would have shit myself in the foot”
I now realize that by convincing me to stay he might have convinced himself that staying for that long wasn’t a bad idea. He was looking for justification that he’s decision wasn’t that bad at all.
You give your life to a job and at the end it takes one away.
I don’t want to be like that and I think that’s what bugs me the most. That I’m so close to this individual that I feel sooner or later if I’m not careful I’ll end up in the same place. The same dread3 -
Me, working hard on a SQL project with a deadline that is half what it should be with no support from the other people on the project and was mostly made with with data I imagined would be in there cos no one could get me any fucking shit done (i.e. effectively designed, built, tested, fixed, upgraded, documented on my own for an entire weekly/monthly/ad-hoc analysis process that would output various reports for internal/external/management)
Manager - man who is a known waste of space but for some reason is in charge of the smallest part of the project, shouldn't have been fucking involved fucking management guzzling stain magnet...
Manager: Hey, do I need to refresh the database?
Me: .................
Me: .................
Me: ............I dunno, do you think we should refresh the database that this entire project is reliant? I mean...why do we need up to date transactions to analyse? Wait....you telling me it's not been being refreshed this ENTIRE time?
Manager: No....you never said I should. So should I?
Me: ..................I never said you should!?!? Are you not in the meetings talking about dependencies?????? Do you think i should have up to date trans or just run this with old stuff????? Why would you not update it!??!!?!?!? Its transactions...... (Desperately trying not to punch through my screen, through his, into his throat)
Manager: ..............
Me: .................
Manager: I think i'll refresh it and add it to the job?
Me: ....................(goes back to work cursing with music in so I think its quiet but who knows).
Tard, don't know how he even gets to work without someone holding his fucking hand.
Happy ending, I don't work there anymore :p
Sad ending, his spirit of tard follows me to my new jobs and possesses someone (or three sometimes) -
I've been a consultant in the area of mobile apps for five years now and have stayed at the same company since getting my degree.
In the beginning I had an immense passion and worked on a lot of side projects/pro bono stuff during my free time. Around the same time as the pandemic hit I simply lost all my interest and energy, life has been going to work, go home, find something to eat and go to bed. I can't even find joy in playing video games, working out or cooking anymore, it's always browsing youtube/netflix because I can't find it in me to commit to anything that requires focus.
The project I'm currently in no longer gives me the ability to grow technically, it's just the same old stuff over and over with no opportunity to do proper maintenance or explore new approaches/frameworks/etc.
I recently found out that I make around 25-30% less than my peers in the same field and location, this was a blow for me since I keep getting praised both from customers, management and my fellow developers.
A year ago I asked management to find me a new project with the motivation that I don't want to stall my growth, they have yet to heed this request since I'm not easily replaced.3 -
I actually do have something to rant about!
The people I've decided to work with... are complete and utter fools. They don't want to keep updated with new practices and merely talk about awesome stuff... Let me elaborate.
The first person is someone I spent really many hours just writing with, I've helped him build on his personal project, which has now become our project (which I've done most of the work on now). He keeps writing about things that aren't fucking relevant for the current task - furthermore, he completely refuses to use any type of collaboration software in order to keep an eye on tasks we want to, and already have completed. He likes Git but doesn't provide helpful git messages, sometimes even stuff like 'forgot this'.. never any freaking description of what's actually been done! Not even after agreeing it should be done, he just doesn't understand what a helpful message is apparently.
I might be a bit special regarding wanting to follow practices, but how the fuck do you make any amount of money by being so ignorant!? He was a WP 'developer' a while ago, and has since changed to JS and are using a framework which he doesn't understand - he can't even remember what the documentation states.
So why do I 'work' with him? He knows a lot of phrases he's read in books, blogs, and the likes. That makes him really inspirational and positive and he really wants to become successful(like me!). But over the last few months, I've realized how bad he is at programming - he doesn't know basic programming concepts and have a hard time applying any sort of knowledge to his programming. If it's not pre-built, he can't use it, not even if the documentation has specific examples. He barely grasps the concept of binding data to a variable. He wouldn't know how to access it again though, it's just for the sake of binding it to some existing functionality.
The other guy really likes his old style. He hired me to maintain some application. Which has turned out to be a hell of several small tasks he needs to be finished or reworked - with no clear definition of the task. Most of the time, he'll do some initial changes, show the changes to me, vaguely explain what they do (not what he's trying to achieve) and first THEN ask me to do these changes, most often in some files that don't exist (he uses the wrong filenames so I have to guess/ask where the changes need to be made).
To top it all off, old syntax is used and don't get me started on the spaces+tabs for indenting lines... Because I've already added a great ESLint+Prettier conf and everything should be nicely formatted according to pre-defined rules.
But he won't take the time to install some plugins in his editor and I'm left with sometimes buggy, badly formatted code (the code I have to make changes with!) - that's while he several times have agreed that I can do what I want and that he even questions his own ways when looking at my changes which he calls by-the-book.
So why the motherfucking fuck do I keep working with him?
Well, he keeps paying so that's really nice - I haven't been able to properly execute the bigger tasks(which pays more) though, due to a lack of information or some badly written code I couldn't quite figure out how works (at a glance).
He also keeps talking about these new projects he wants to make.. he even has these freaking papers with descriptions and data-structures and we converse really good about these new awesome projects. He also likes cryptocurrencies(which is an interest of mine he has inflamed quite a bit) and lastly, he seems like a genuinely nice guy who I'd like to spend some time with even besides coding and work.
So now I stand here - stuck with people that make me feel like a demi-god or something because I use a git style-guide and ESLint+Prettier with the Airbnb style-guide.
What should I do? I'd really like some remote work and have a desperate need for money... So much so, that I might even have to pick up a fulltime job, in order to save my sorry ass - all because I like speaking with people who just like the thought of programming...
I'm actually quite lonely with my thoughts and they are the two only people I've had some sort of relationship with - who has an invested interest in programming/dev... I really like that, despite having to follow their thoughts as they surely can't follow mine.
Please be my friend or give me some paid work lol.
Also, I've been moving the last couple weeks - those weeks has been the most stressful of my life and have not contributed to my overall wellbeing and relations with people... It's good to be back at the computer again and be reading some devRant though!1 -
when you think you're done coding and can finally start writing...
So you guys have seen my Unreal Engine adventures. I have to use a plugin for it, on top of everything, to extract some data. I've been using this plugin since ages on another pc, but now I had to set it up from scratch since this is a new project, new models, etc.
There is a new version. If I use the new one, it will break the chain which is to follow.
The old version is so legacy that the guy who wrote it does not remember how to set it up.
After hours, and tons of hacks and outcommenting stuff (there is physics involved with which I do nothing), it finally starts doing something. Finally!
Although I'm slowly loosing my sanity in the process....
Even if it now records the data, I cannot say if this is good enough or if the poses are all wonky now.
And that is my masters thesis. Submission deadline is on monday. Ha.
Ironically, since the start of this thesis, I felt like this will either make me or break me. ;D So much fun... FK2 -
Hm... Apparently I've been doing TDD all along... it's just that I don't save the tests in a seperate project.
I just keep editing Main() to test whatever i'm working on (each class).
Also the NJTransit site is sneaky as ****. It seems the devs know a bit about how to prevent site scraping by checking Headers and Client information...
Took all afternoon to get this test to pass....
it works in Chrome but not in my code... and even after I spoofed all the headers... including GZIP.... it wouldn't work for multiple requests...
I need to create a new WebClient for each request.... no idea how it knows the difference or why it cares... maybe it's a WebClient bug...
And this is only the test app. Originally was supposed to be built in React Native but that has it's own problems...
Books are too old, the examples don't work with the latest...
But I guess this also has a upside... learn TDD and React rather than just React... hopefully can finish this week...
I'm actually on vacation... yea... i still code like a work day... 10AM - 8PM....2 -
I was asked to revisit some code yesterday - code that I had written at a much better time in my life. I was productive, I was on top of my project and we were delivering value to the organization.
I'm at a point now where I haven't written any code for months. I've been documenting and designing and arguing with teammates over inane shit. It's been an absolute slog, and I've started looking at what it would take for me to actually quit since I've got a kid on the way, and I've been bringing the stress and anxiety home from work. I've got so much money in options and salary, it's basically impossible for me to leave for better work.
I'd consider this the lowest point in my professional career. Four years of college - where I beat alcoholism and depression (mostly) only to end up at a place that I fucking hate, but cannot leave. It's affecting my family. I've drank more in the past 6 months than I have in my entire life.
And now I have to start repurposing old code to work on a new project that is fucked up 5 ways from Sunday. I honestly don't know how much further I can stretch my professional ethics to keep this shitload of cash flowing into my savings.3 -
I'm really trying my best to improve but the work I'm doing (both the code and the business theme) is so god damn boring that I feel like I'm torturing myself just trying to keep up. How am I supposed to learn and build myself when everything is so dull and gray? I can't even talk semi-passionately about the work I do, its all just picking up user stories with lengthy business specs on them updating old code or writing up some new code to fit some business / API standard I know nothing about. Occasionally I'll review other code from a developer doing the same thing and sift through trying to find some way to improve a project I don't care about. Hold down the nausea that comes from fighting off the mental fatigue as I struggle to find the words to explain how a component I made works in terms I don't understand too people that know and care much more than I do...
I'm exhausted, I'm burnt out. This isn't me, and every day I wake up and tell myself that my salary makes me happy because it gives me the ability to do the things I enjoy and live on my own and provide for loved ones, and then struggle to swallow the lump in my throat as I drive in the cold to a giant corporate office with a thousand other Me's doing the same shit but better and improving.
I honestly love what my company offers me as compensation, I'll likely not find any better. But once I have some experience under my belt and some debt paid off I have GOT to find a jobs somewhere that doesn't drain the will to live out of me2 -
Hey guys...
Ever visited https://www.instructables.com ??
DMNNNN I just can't leave... So many cool Ideas...
I don't have anything to do with the site, found it yesterday while searching for arduino stuff, and MANNNN .... It has the best pratical tutorials I ever saw... Not like most, where they teach you the basics...
Most sites, first arduino APP, light a Led
Instructables, First App, Instructions with pictures and videos on how do connect the Arduino, install IDE (this is the most basic tutorial after all). then the tutorial, Light 4 leds and do a lightshow...
:p
I'm In Love
Btw, new project, got my old Niko Dc Car working again, after like 30 years...2 -
Seriously guys, how do you deal when remotely collaborating with lets say not the most motivated and competent devs?
Our scrum team got formed about 6 months ago from leftover devs of other teams, choosing a couple competent devs at the core and other devs who were kinda gotten rid of by their old teams, and after 6 months of working together I can see why.
Situation is that we are 7 devs in our team and 4 of devs are not pulling their weight. They are seniors on paper, but in reality not really.
They rarely take something complex to work on and even if they do, they make sure they take as much time as possible. Two of them are contractors who I imagine decided to treat the job as a paycheck and nothing more. There is no initiative, no push to make things better and in general attitude is to do bare minimum: only what is being asked and then delaying the hell out of tasks.
Im not exaggareting: Im talking about every possible way of dragging out the tasks: delaying communication, sitting around for a few days while not asking for new tasks to work on if they are blocked, also avoiding standups. Working for days on very basic comments in their MR's. Getting "sick" for a couple days on deadline when things get tough, so that someone else would come in, refactor and save the day. Once or twice it could be a coincidence, but nowadays I can already guess ahead of time what kind of trick they will pull now.
Our project is an android app where we have to support few different tablets, so the most recent new trick that I witnessed is devs avoiding hardware delivers, sometimes for months. Idea seems to be if you dont ping your team that you dont have hardware, then you can avoid working on related tasks with that hardware.
Worst part is that they get away with it. Our teamlead is a senior dev who is first time teamlead, doesnt code anymore and doesnt want to rock the boat. He is the type of teamlead who sets arbitrary deadlines, makes it sound that they are urgent and takes a few days off in the middle of chaos just before deadline. Restrospectives don't help at all and if I try to bring up stuff directly to him he tells me to bring it up during retrospectives. We discuss issues, rant a bit ant then continue carying on like nothing happened and nothing changes.
So little by little in the past 6 months we came to this point where 2-3 devs are carrying the weight of the team and are in a constant crunch mode, while others are allowed to slack. Its becoming ridiculous.
Problem is that this is starting to affect our morale. Only way that is left to keep my sanity right now is to pull away sometimes and also slack. Then I come back at full capacity, give my best for a couple weeks until I have to go and fix some basic leftover task that has been purposefully dragged out for 2 months and left unfinished, then I just want to scream and I know that its time to disconnect again.7 -
Finally, I finally got my dream job, but three weeks after starting, I will say I am going into depression.
First, I have to learn a new language (the lang is less than 7 years old) on the job. The language is so different from the paradigm I am used to-from OOP to functional programming, it has very little confusing documentation and a small but growing community.
Though I have been able to show some work, goddamit, it's taking me blood and sand to adjust and be productive.
My onboarding tasks are fixing bugs and implementing a feature, and it has been like walking in a dark tunnel.
I have to face my problem alone as all the devs in the team have swapped.
I rarely sleep, and I recently started to have an existential crisis!
Also, I work part-time on another project, and my output is so poor due to the fact that I am trying to adjust to the new job. Just this evening, I got a call from the manager who was passively aggressive, complaining and asking me to rethink (a passive way of saying "you are fired, if you do not...").
I am feeling anxious. It is taking so much time daily to adjust to the new job.
Will the depression pass?10 -
WTF is wrong with with you VS?!111 I only updated these efing NuGet packages and my whole project goes down the toilet? Don't tell me these files are not there!! THEY ARE!!!! I SEE THEM!!!
...ohh i forgot, my fault! these files in my packages folder are the new ones and YOU STILL WANT THE OLD FILES BECAUSE YOU FORGOT TO UPDATE YOU FUCKING PROJECT FILE! -
I worked at my previous job about 8 years (hired out of school) and wasn't actively looking for a new one; I had a lot of freedom and liked my boss and colleagues, but the pay was mediocre and I was under a lot of pressure because I was the sole architect, engineer, and programmer for a good number of important applications.
Anyway, my brother-in-law told me that his employer was looking for a developer and that previous candidates fell through, and that the pay was a lot more and they're good about raises (which was like pulling teeth at my then-current job) so I applied and went for an interview.
They basically gave me an offer on the spot and wanted me to start in 2 weeks. I told them that it would be hard since I'd basically be cutting my boss's Achilles by leaving so soon and suddenly (just hiring someone would take at least a month, not counting getting applicants), but they were adamant, as the position had been vacant for a few months at that point. I got them to agree to 3 weeks and pulled the trigger, but offered to help out in my old position for a few months cause we had a big project in progress I was leading.
So the new job is great: it's a much younger office and I'm having more fun and there's a lot less pressure. Meanwhile, at the old job, the project I was leading got scrapped and the asked me to do other odds and ends until, after screwing something up I basically told them I'm done. They got a new guy quickly due to a lucky turn of events, but he couldn't pick up where I left off on a lot of projects: they're going to rewrite one because of it. My one colleague still likes to point out that I left without them having knowledge of my code (besides that I always said I'd answer questions, plus it's been 6 months now and my code is all on a TFS instance they all have access to).
I still feel a bit guilty even though I have no reason to. -
Oh here's a good one. When the managers realised one of our apps is a giant hunk of crap that wasnt thought through at all and was lazily thrown together, and their solution is "meh let's just rewrite it in Swift on our new platform. And those other guys can maintain the old one and continue to do hotfixes for it until we are done".
I've been telling them for the past year that its the worst codebase I have ever seen and the lack of tests is disgusting and not something we should dare to release to paying customers (especially when those customers work in healthcare!!!). The best part was when one of them promised we would all be working on the new shiny platform by Christmas. That was last year. And I'm currently the poor bugger doing the legacy maintenance and in the process of trying to get moved to a new project. So much for managers promises amirite... -
#define AUDIOLB_EXIT_ON_ERROR(hres) \
if (FAILED(hres)) { goto Exit; }
#define AUDIOLB_SAFE_RELEASE(punk) \
if ((punk) != NULL) \
{ (punk)->Release(); (punk) = NULL; }
Looking through old audio code I wrote. Found these macros. Will most likely reuse for a new project. It works damnit!
Do you feel lucky?!7 -
Every time there is a new project, we programmers swear to ourselves that we will code it better this time. We get elated that we do not have to deal with the tech debts piled up in the old module.1
-
Budding Developer here...
I've tried to teach myself Web Dev over the past 10 yrs on/off... Sad. But now I'm actually in a developer role moved up from IT helpdesk a year ago.
In the past year I've learned SQL, SSRS, SSIS, database concepts, and.... VB6. I am a master at none due to having to cram so much in a year while taking on various projects, issues, and learning the organizations software infrastructure and processes. I also taught myself current HTML, CSS, and basic Javascript. Learning the different basic concepts with each.
Over the past couple months I've been given a new project and now learning ASP.NET and C#. Actually trying really hard to get adept at these as I'm finally doing Web Developing in my role...
I am also dealing with multiple major family issues and a near 2 yr old that we cosleep with that still doesn't sleep through the night.
Why the crap is it so easy to convert an enum to a string but takes 50 functions to convert a string to an enum???
Cast, convert, parse... Why so much logic???
When the online teacher says type why do I have to rifle through 7 different meanings in my head before I know what kind of type he's referring to??4 -
Working on a tiny new project, can't build DLL libraries from our old projects. Contain mixed version of .Net written in VB and C#
Asked our senior developer to help me out.
...
After an hour, he's still not able to build it.
...
So he basically implemented some features I needed on the fly...
😂
DLL hell is real! -
I understand the reasoning behind switching to a new, maybe better, technology, but for fuck sake, it’s against typical Microsoft strategy to “kill and shoot to the dead corpse” something instead of maintaining backward compatibility. Why they’ve changed?
I still can develop VB6 software for Windows 11 that just works. But you removing newer tools for no reason.
In short: Xamarin is dead, and that’s alright, but they are even deciding to “remove” development tools from future updates of VS 2022. Why?? Keep it optional, allow me to write legacy code (just 4 years old actually) a bit longer. 🙃
And also, .NET MAUI doesn’t seem “great”, at least at the first sight.
Why you’re forcing me to switch to it if there are 0 benefit for my product?
It’s so bad the only way to bring developers is this one?!
What is incredible to me is that the “industry field”, which is HUGE is so often ignored because of the “customers field”. Keep them separated. If you don’t want to support old tools, just don’t, but leave them there.
They killed Windows Mobile 6.5 which was old but still alive and fine in the industries, you had the biggest market share in PDAs and decided to give it to fucking Google.
The manufacturers kept selling WM devices even in 2020… and they stopped just because you stopped selling licenses.
You acquired Xamarin, gave everyone for free the tools to keep writing .NET for Android and move the industry apps, and now you are saying “actually fuck you, do it again, even though nothing really changes, but convert your entire project to this bs we’ve created”. Why???
Microsoft response: it’s just a few clicks and everything works fine.
My response: No, it’s not… the entire UI is rendered in a different way, I have to rewrite the whole UI of my app and a lot of modules stopped working because of nuget packages I can’t install anymore…
I have to spend additional time to make it work THE SAME as before, not better. So what’s the fucking point?17 -
I have to write my IoT coursework in an Ubuntu VM running on Linux 3.2. VBox Guest Additions doesn't support this Ubuntu version, neither does anything else. Contiki, the operating system we're coding for has been abandoned for many years, the devs moved to a new project called Contiki NG. If I try to compile with any standard above ANSI C it fails with cryptic errors deep inside the OS. The docs for the old Contiki are paginated with JS so I can't use the browser's fulltext search, but they also don't have proper bulitin search.
This cannot be legal. They are violating every accessibility guideline in existence. I just need the text to be slightly larger and even I have to go through hell. I imagine blind, deaf or dyslexic students just give up.3 -
My employer has an application for product ordering/maintenance. Sounds pretty normal. It's an Excel spreadsheet that uses VBA to do the work, with a ton of SQL functions for row validation and procedures for database functions.
The guy that wrote it was a contractor who left the company well over 5 years ago.
No one on my team knows VBA. Me being the new guy gets tasked with this shitty VBA application's upkeep. Any time one of the braindead users fat fingers a value and the form blows up, I'm responsible for telling them exactly why they are stupid and sometimes I have to fix it for them because of the protections on the spreadsheet.
I've been asking the business to back a project for my team to develop a replacement but there is already so much happening for IT at my workplace, and my team is so under staffed (3 devs? Really?) That we spend most of our time fixing broken old shit.
We get an intern next month. Hopefully things improve soon because this tucking time bomb application sucks for everyone involved.3 -
Starts search and replace.
Trys to replace a type in the whole Project.
Syntax Check: lol no, apparently everything is broken now, good job
(literally my whole project was marked red)
Reverts changes
(project still marked red)
Syntax Check: lol what? Your code already looked like shit before, won't let you compile this.
It was a bug which breaks the syntax check after big replace requests. Had to start a new project and copy my code step for step, so it didn't break again. However I've forgotten to replace the type before I copy...
Another story regarding this shit:
Renames Variable
IDE: oh, let me help you by replacing all old var names with the new one
Agrees
IDE: oh shoot, didn't know it could break things
Wants to revert
IDE: did you think I would go through this mess again?! Do it yourself!3 -
I find it hopeless to achieve anything with applications aimed at non-devs, such as PowerPoint. How the hell can it be so difficult to use the same theme in one presentation as in another? If it had been code, I would just have copied the XML, XAML, include, link, script or whatever code in whatever language on whatever platform from the old project and pasted it into my new project. But with "user-friendly" apps I have no control of how anything actually works. I give up, my presentation will be unthemed. Maybe it's for the better anyway, less distracting graphics.5
-
I need to finish a project where the boss is a nice woman (maybe 55 years old), and her assistant (30-35 years old). Guess who is always asking about any single button? Who is always saying "But that label is ugly", "I don't understand that", "Maybe we need some new features..." Yeah, the assistant. She hates us and we hate her1
-
Just got excited about maybe using rethinkDB for some new project.. 10 minutes later I stumble upon an old notification that it's shutting down.. well...1
-
So. My new machine at work has decided that running visual studio is too hard and our build script has decided that building vcxproj files is too hard. And our one sysadmin for our team of 100+ is the only one allowed to fix it.
Luckily I have an old box that *only* takes 45 minutes to run our build, a hangover, apparently I am going through early manopause because it is hot as fuck in this office, and today is the day that everyone wants to loudly ask every question ever.
I guess what I am saying is I blame everyone else for my bad decisions and project them into my you-me instead of focusing on my me-me. Also I really don't want to talk to the S.A. He is difficult.undefined this place is a tinder box spiritual awakening fucking dad who thought a 1 to 100 ratio was a good idea -
When you're trying to fix a bug in your project and realize the problem is a bug in the platform your project is built on.... FML
---
Searches mailing lists for the problem
-- Hours later --
Finds that bug might be fixed in the new unreleased build.
--
Installs release candidate of new build.
--
Still broken.... *Facepalm*
Now to try an old build and see if that works...2 -
Two years ago we took over this project which has been a nightmare to maintain. It's a set of netcore 2.1 webapps running on an on-prem windows machine. Everyone who has worked on it so far has quit, leading to two episodes of it being passed on with near zero handover.
Its function is fairly simple, so naturally we have been nagging to redo it and cloudlift it.
I was finally given one week to see how far I'd get, and had a poc running in Azure after one day; 4 apps in clean net6, SSO, and managed identities. The only thing lacking was setting up the authentication for third parties.
And... they still don't want "something new" when the old one works. Back to IIS and debugging windows event logs.1 -
Programmer looking for a new language
I have been a JavaScript developer for a few years now (non professionally) and I really like the language. I mainly program for execution with NodeJS rather than web, because I feel like I get more freedom (e.i. the ability to use a computer file system).
I normally never use other people's libraries and instead either write my own library/ies for the specific task or use an old one. I only ever use someone else’s if I need a quick frame work to test an idea, never for something I will actually use.
I prefer to work object / class orientated.
I have worked on distributed servers with NodeJS before, however trying to distribute a load across one computer across it's multiple threads has proved problematic due to the heavy delays of standard io transfer speeds.
Why do I want to switch?:
•Because JavaScript is not at all created with multithreading in mind, and pretty much any multithreading solution is a bodge and allot of the time it is more efficient to work single threaded.
•Also, I get the sense that JavaScript + NodeJS is not used often in the programming industry comparison to other languages like; ruby, python, and I don't want to get stuck in a nesh language of which would decrease my employment chances heavy.
Side Note: I have been working on a pet project to have a distributed database (made with nodejs), and so far, there are no language specific problems, but I feel like it would be more efficient if I used a programming language designed more to cater for multi threading.5 -
Stitching old frameworks / libraries together...
What a lovely joy.
An override here... Testing if it runs.
Oh lovely, shitty shaded jars.
Creating other project for shitty shaded jar.
An override here, an override there...
Oh we need some system property to unfuck JVM upgrade...
Since it's shaded, need to add overrides for the non shaded and shaded variant...
Done...
Back to framework / library....
Another override, another system property...
Its seemingly endless.
Stitching together old shit with new shit to get JDK 20 plus running.
I hate everything. -
Have you ever found a infinite task? Well, I did.
So, the software that I'm working now was under responsibility of another company for development and maintenance (I'll call them X) from 2014 to last month , and the company I work for was handling only with the business part. Now we took all the development for us as well.
This software has a lot of reports , so it has a lot of templates for this reports.
When X was handling the software, they asked the client and the old project manager if they wanted the templates to have the client's products dynamic (no need to change the template when adding a new product) or hardcoded for some products they already had, they choose hardcoded because it would be faster. Butterfly effect.
Fast forward to this week, the team leader designated a task for me, It looked easy at first, just fix 2 templates, easy.
Oh boy, I was so wrong.
I fixed the first template, discovering in the process the hardcoded things, had to add the product reference in a lot of places.
So i went to the second item, a super template that they use to put together some smaller templates.
It was really weird, I couldn't find all the templates that it was supposed to use, and I didn't really know the exact problem, the only thing I knew was that it was not being generated, the reason could be the super template itself or one of the 15 smaller templates, that could happen to have sub templates.
So I called the team leader and explained to him wtf was happening, he called the senior business analyst, that called the PM, we agreed that it would be infinite because of those fucking hardcoded things, they prepared a excel sheet with this and a lot of other problems and will send this to the client, explaining that we'll need a lot of time to put this new product up and running.
Now I'm in the middle of this shit storm seeing a time of darkness in the future.
Ps: This new product was supposed to be inserted in the software since last November, when it was under X responsability, and they analyzed it and said that it would take 190 hours to be completely done, the client refused. It was the first rain drop of what would become a shit storm. -
Been working on an Android app for some time. Silly me too lazy to use VCS. Anyway, one day android studio just could not build my project and errors that should not be errors popped up everywhere and nothing I did fixed the problem. Somehow my project got corrupted. 3 hours later of googling and trying to recover my project I had to resort to creating a new project and manually port the old files in one by one :( but all I have to say is WHAT THE FUCK ANDROID STUDIO3
-
Currently having very funny project lead, who gives on the spot estimates for 9 years old very pathetic quality code having Android app in security domain. Memory leaks, bad practices, typos, CVEs etc. you name it we have it in our source of the app.
Since 5-6 sprints of our project, almost 50% of user stories were incomplete due to under estimations.
Basically everyone in management were almost sleeping since last 7-8 years about code quality & now suddenly when new Dev & QA team is here they wanted us to fix everything ASAP.
Most humourous thing is product owner is aware about importance of unit test cases, but don't want to allocate user stories for that at the time of sprint planning as code is almost freezed according to him for current release.
Actually, since last release he had done the same thing for each sprint, around 18 months were passed still he hadn't spared single day for unit testing.
Recently app crash issue was found in version upgrade scenario as QAs were much tired by testing hundreds of basic trivial test cases manually & server side testing too, so they can't do actual needful testing & which is tougher to automate for Dev.
Recently when team's old Macbook Pros got expired higher management has allocated Intel Mac minis by saying that few people of organization are misusing Macbooks. So for just few people everyone has to suffer now as there is no flexibility in frequent changing between WFH & WFO. 1 out of those Mac minis faced overheating & in repair since 6 months.
Out of 4 Devs & 3 QAs, all 3 QAs & 2 Devs had left gradually.
I think it's time to say goodbye 😔3 -
Ok so another short rant about project I ranted before. We are developing Android and iOS social app for around 6 months, apps should have been in store during September . Turns out sometimes during August Apple decided that all apps of appstore that communicate with server have to implement ipv6 also Amazon had support ipv6 on its old ec-classic instances but not on new ec-vpc instances. I have worked until middle of the night trying to find work around for this but at the end we need to find another host that supports ipv65
-
My work had Project Management software before to track tasks and issues, but the new boss wanted to switch to some new support tool. A bit annoying, but no problem.
After decommissioning the old (free) PM software, he decided to put off the new software implementation. Instead, he created a shared g suite inbox that we have to log in to and check for issues. No routing, no priorities, no notes section, no progress tracking, no tasks.
Now I have to give progress updates several times a day on my tasks because there is literally nowhere for me to report my progress. I have no idea what my priorities are since we have literally nowhere that specifies priorities. This is a PM and support nightmare, and as a former SCRUM master I'm about to lose it!6 -
short: The admin with enough xp is ill, there is no one with xp with varnish is and after 1 restart varnish outputs only 503.
long: there original admin is ill but he gave me an project to migrate an typo3 installation to a new server. Thats ok.
Plan: I move 150 GB of data with rsync to the new server, let specialists do something and switch ips between the new and old and clear varnish with a restart.
Reality: +2 hours to migrate the data, because of false infos from the admin, 7 hours preparing the switch, 5 minutes switch, 3 hours to find out the F*****G varnish is the single point of failure. I and the t3 guys agree to see the next day what went wrong.
ALL HAPPENED TODAY!
Plan for tomorrow: speak with the boss to account the extra hours to that day so i dont get over 10 hours and debug that fucking varnish and delete some servers from another project from the backupsystem and monitoring.3 -
I ran `git rebase` on a shared branch and pushed it to the origin. It messed the whole history. I tried a few things to fix what I did (I don't remember the commands I tried) but I only made it worse.
The final result? Even though I was new to the project, every old commit in the history was changed to include my name as the author of that commit.
Lesson learned the hard way :hands_down_emoji:3 -
// long rant sorry
A few jobs ago I had a meeting that was scheduled for 15 mins. It was not going to be a bad meeting. I was looking at the people that were invited a few dev's, few pm's, and this one guy (Fuck!!). This one guy we will call him R.
So R is a pm but not just any pm he is the pm that will keep asking why like a 5 year old trying to understand how a car works. To top it off he loved to debate in the work place anything and everything. How something worked or why something was the way it is.
So this one meeting was about a project that I had started on my own and turned in to this huge project. I was super excited it was one of those project that you are excited to work on and love to add new things to it. The meeting was to talk about how it was going to be used and what customers sites this was going to be added to in the coming weeks. 15 mins not bad.
Well the meeting comes we finished in about 10 mins I was trying to get out of the room before R started. Well I waited a little a little to long and sure enough he asked the question. "What about this drop down?". Instantly I thought "FUCK!!! Here we go." Now I don't remember what his exact question was about said drop down but it ended extending the meeting by another 30 mins with me almost cussing him out and walking away.
There was a heated debate about this thing and R continuing to ask questions and want to debate this. I was only saved by the lead dev and lead pm say that they think that this is something that could be talked about at a later date. Lucky for me I was leaving the company in the following weeks. -
That feel when you're saving for a laptop and trying to work on a project for a client but your laptop is quite old (3 years and 5 months in my case) and decides to go crazy when for months ago, the same stuff open wouldn't lead to a variety of freezes.
I mean, there's new specs and stuff but spending in the £1-2 grand on a new one (at least one more up-to-date and with better specs) isn't going to happen anytime soon especially with the new job coming soon.
At least, I can do some of the stuff on my phone 😅. -
Aka... How NOT to design a build system.
I must say that the winning award in that category goes without any question to SBT.
SBT is like trying to use a claymore mine to put some nails in a wall. It most likely will work somehow, but the collateral damage is extensive.
If you ask what build tool would possibly do this... It was probably SBT. Rant applies in general, but my arch nemesis is definitely SBT.
Let's start with the simplest thing: The data format you use to store.
Well. Data format. So use sth that can represent data or settings. Do *not* use a programming language, as this can neither be parsed / modified without an foreign interface or using the programming language itself...
Which is painful as fuck for automatisation, scripting and thus CI/CD.
Most important regarding the data format - keep it simple and stupid, yet precise and clean. Do not try to e.g. implement complex types - pain without gain. Plain old objects / structs, arrays, primitive types, simple as that.
No (severely) nested types, no lazy evaluation, just keep it as simple as possible. Build tools are complex enough, no need to feed the nightmare.
Data formats *must* have btw a proper encoding, looking at you Mr. XML. It should be standardized, so no crazy mfucking shit eating dev gets the idea to use whatever encoding they like.
Workflows. You know, things like
- update dependency
- compile stuff
- test run
- ...
Keep. Them. Simple.
Especially regarding settings and multiprojects.
http://lihaoyi.com/post/...
If you want to know how to absolutely never ever do it.
Again - keep. it. simple.
Make stuff configurable, allow the CLI tool used for building to pass this configuration in / allow setting of env variables. As simple as that.
Allow project settings - e.g. like repositories - to be set globally vs project wide.
Not simple are those tools who have...
- more knobs than documentation
- more layers than a wedding cake
- inheritance / merging of settings :(
- CLI and ENV have different names.
- CLI and ENV use different quoting
...
Which brings me to the CLI.
If your build tool has no CLI, it sucks. It just sucks. No discussion. It sucks, hmkay?
If your build tool has a CLI, but...
- it uses undocumented exit codes
- requires absurd or non-quoting (e.g. cannot parse quoted string)
- has unconfigurable logging
- output doesn't allow parsing
- CLI cannot be used for automatisation
It sucks, too... Again, no discussion.
Last point: Plugins and versioning.
I love plugins. And versioning.
Plugins can be a good choice to extend stuff, to scratch some specific itches.
Plugins are NOT an excuse to say: hey, we don't integrate any features or offer plugins by ourselves, go implement your own plugins for that.
That's just absurd.
(precondition: feature makes sense, like e.g. listing dependencies, checking for updates, etc - stuff that most likely anyone wants)
Versioning. Well. Here goes number one award to Node with it's broken concept of just installing multiple versions for the fuck of it.
Another award goes to tools without a locking file.
Another award goes to tools who do not support version ranges.
Yet another award goes to tools who do not support private repositories / mirrors via global configuration - makes fun bombing public mirrors to check for new versions available and getting rate limited to death.
In case someone has read so far and wonders why this rant came to be...
I've implemented a sort of on premise bot for updating dependencies for multiple build tools.
Won't be open sourced, as it is company property - but let me tell ya... Pain and pain are two different things. That was beyond pain.
That was getting your skin peeled off while being set on fire pain.
-.-5 -
I'm getting kicked out during probation period and I'm about to have interview in a new place in the next week or two. During interview, should I be honest tell them or just cover it up? What should I tell them if they are prying?
The problem underlined was communication problem. I'm in charge to maintain old project made by other engineer now an "upper dude". Upper dude and I have different views and at some point he start being unreasonable getting heated up looking down on me provoking me. I took the bait and it doesn't end well. The next day after lunch I'm scheduled with HR and well, fired.
I know he's provoking and I took the bait. At that point I don't know how to improve the situation other than saying yes to him so I just wing it. But if I did say yes, it would slowly cause problem which I'm not willing to handle. Its damn near stupid reason to do it his way and I don't want to do it.
My track record in 2 previous place was great. My concern is what if an HR person be like "Eww this man fail probation. He must be suck". How screwed am I?8 -
Today we picked an old (6 months old) iOS project back to add some features. We clone repo and run `pod install` to pull the dependencies.
There seems to be a bug with FBSDKCoreKit (facebook SDK) and the only solution is to delete the Podfile.lock
if we do this, it will pull the new version of every dependency, and the public API of each dependency is broken. Meaning we have to spend about 18 hours+ just to make this shit compile.
Fuck this shit!! -
In the past 3 months I worked on a new frontend project at work using "new things" like vue.js and webpack including Babel polyfills on production for the first time. Now the project is almost done an I've been sent on to other tasks on our older projects to help follow the deadline at these projects.
It is a hard cut to switch my head back to the old legacy code after this long time only working with the new stuff and technologies. I feel much less productive at the moment, because I know how much time I could safe if I just could use the new technologies. But there is now way around this. Finally I now have to maintain Symfony 1.2 and jQuery again instead of building new awesome stuff in this exiting new technologies.1 -
FOR FUCKING FUCK SAKE
I have a shit ton work to do. Just finished (hopefully) all of my exams, came back to work and got tasked with simultaneously developing a new app (Android), adjusting some of my own code to work with client's specific requirements in completely different project (C#) and also I have to fix a legacy app (Android) because UE comitee will be visiting us on wendesday.
I've never seen this code earlier. I've never seen this WHOLE SHITTY PROJECT. Guy that was developing this left few years back.
It's a complete spaghetti. 550 FUCKING LINES OF CODE for a one class, most of the methods are deprecated and won't even try to work on Android > 4.0. No documentation. Nothing works. Whole code is ridden with bugs, warnings and looks like it's glued together with duct tape. I even had to migrate from fucking Maven to Gradle it's that old. -
So we used to build these awful "promotion" pages for a leading manufacturer in the area. Because the website was old as dirt, there was no CMS and everything was static html using Coldfusion for a few include files like for the nav and such.
Every year we would get a new project to tweak the promotion details a little, and change the year from 2011 to 2012, etc.
My predecessor put the digit "1" in an HTML file called year.html, then included it like:
"valid from January 1 though December 31, 201<cfinclude template="year.html">..."
Why? Just why? And if you're going to use include files, for Pete's sake at least use the proper .cfm file extension!1 -
I am currently weeks apart from releasing my pet project, which I am working on for almost 6 years now. Of course, there were a few stops here and there, but overall I've spent a lot of time and effort on this to make it work. It is far from complete but I am really happy with the results.
Now, since I am not a professional by any means - it is all a hobby for me - I was wondering, that how much my work would cost, if it were to made by professionals. Below the details so you can get a grasp of the thing.
The whole system is for our family business. We are selling parts for an old-timer truck model. The website was pretty much done already, people like it, it only needed some polishing and adding of the new features. But the thing behind it is monstrous (at least for me).
Apart from the custom-made CMS for the website (most of it was done already and didn't need to change), we can handle orders, partners, prices, stocks, overdue partners, pretty much anything a CRM would do.
There is a logic to automatically make orders based on import prices, or give the customer a custom discount based on the price gap of each product. There are products, which can contain other products, and their prices are dynamically changed based on a given formula, once an underlying product price changes. We can send e-mails when an order status changes, and there is also a page, where a user can interact whit their order, like changing the shipping or the delivery address. The system is (or will in the following weeks) also connected to multiple shipping companies' API, so we can order deliveries and print labels directly from our system. The whole thing is a custom made Laravel project by the way. There are countless more features, but I've just spent 2 hours explaining all to my father and was only be able to cover like half of it.
And why it is all custom made, you ask? Well, the business logic is a bit twisted, so it would be hard to operate as a regular web shop, since the availability of the products are uncertain, given the fact that it is a model, which isn't manufactured in 30 years. So, we can't just accept and send orders without confirming. It is also a thing, that people usually don't know what they need to order for their truck, so we have to help them, so they don't waste their money and the precious last pieces of a part unnecessarily.
Sorry for this rather long post, and it might feel like I just want to brag (well, I kinda do), but I am honestly interested in what such a custom product would cost in the market.
Thank you for your time answering.6 -
Being pretty much the only one who has some knowledge of how to code and get my way around tech (even if minimal, I'm too lazy for my own good) in my familiar household - and by extension, my family (Family extends FamiliarHousehold - LoL I'm sorry) - (my brother is on his first grade of a programming course in high school, I'm a 2nd grade uni student aiming to become a game dev) sometimes I wish I knew nothing of it.
Don't get me wrong, I do like working on code (if in Java. C is making me wanna tear my eyes out) but sometimes ignorant family members push me through the edge.
I worked on a business thing my family started this summer and one of the "jobs" was managing everything via a website.
Fair enough, I knew nothing of it when I started but I learn fast and just like that I knew my way around it. The problem came when I had to teach the person who started the project how it worked. This doesn't sound all that bad except he is kinda in the stone age regarding informatics.
He got a computer a few years ago and he pretty much only played poker in it, and he still had one of those old nokias you could throw to a wall and get a hole into it. The computer is like 9y and runs like crap.
To make things worse he bought a new phone, a smartphone, and pestered me to teach him. I swear trying to teach him is like repeating the same thing 1000x and pray he keeps it in his head. Spoiler: he doesn't. ( sanity--; )
So to try and easy my suffering I decided to make a manual for the website (which is outdated by now because the team behind the website did a 180 and some things looks different), but it acted as if I'd done nothing. ( sanity--; )
To top this off he keeps on saying I don't wanna help him. ( sanity--; )
This kept going for the whole damn summer, and meanwhile I had to go back to uni and in the first days I still got like 4-5 calls/day, half of those might about the smallest things because he's so panicky.
Like (both examples happened while I was still there but it kinda goes along those lines sometimes):
- (During the period they changed the website the first time since we're there; they were mostly doing changes back and forth and testing because it had a new layout for a day or 2 before going back; also the site was totally functional, except for a thing or 2)
Him: "They're changing the website, why are they doing that?"
Me: "Because it's their website and they can?"
Him: "WHY DIDN'T THEY LET US KNOW"
Me: "They don't have to, they don't work for you." ( sanity--; )
Or (during the same period; the pages have a menu on the left; one of the submenus has a counter that resets every time the session ends; during that maintenance time they must've "disabled" the function because the number kept growing even after the session ended):
Him: "WHY IS THE NUMBER GROWING?"
Me: "They're working on the code, relax, it's nothing."
Him: "But why." ( sanity--; )
The only quesion he pretty much hasn't asked me yet is why "Is the website's colour this one and not that one?".2 -
So. As some of you may remember. I got a new job. However! I didn't end up taking it. They ended up terminating my current boss and gave me his job (and salary to boot).
They then told me to begin rebuilding the department and expanding it, something my old boss was not a fan of.
What tips do you guys have for building and managing a team? I've never ran one before. So I'm looking for advice on a project management platform. We are a C# shop so If it has nice integration into VS all the better.
Thank you and rant on! I am sure I will have some ranting about hiring and junior fuckups soon!2 -
This cunt android studio, asshole. Every fucking day it would show me a pop up saying, "hey, update gradle", I always ignored it until today and that mofo has fucked up my project. Spent last 3 hours debugging as to why it is not able to resolve dependencies which were working fine earlier. And every time I click on "try again" it will resolve the dependency which it wasn't able to earlier but instead find a new one to fuck with and throw an error. Had to come back to old version resume my work FFS.2
-
Is there some sort of tool where I can put in a package.json and it show what the latest version of each can be used or which package(s) is blocking any upgrade?
Have a project that has lots of dependencies but they are very old and some maybe deprecated or are preventing new libraries from being installed5 -
Finally finished my macOS+iOS project.
Mac app which play your YouTube playlist while displaying changeable image next to the player with the workout you are doing. It has features like:
-saving workout details in calendar
-download the currently playing video
-remove song from current playlist and add it to playlist with Old songs
-save the remaining songs of the playlist shuffled to new playlist to listen to them from your phone while you take a bath after the workout for example
-the app detects three playlists based on the description:
*”music” in description for Music playlist
*”newest old” in description for Old songs playlist
*”rest songs” in description for rest songs playlist(the songs you didn’t listened to from music playlist, this playlist is auto generated on exit if you want)
-the app can play any playlist or video from YouTube sent by the iOS app over tcp and add a song to your Music playlist if you liked it.
The iOS app features:
-gesture control for the main app over TCP
-chart for the weekly calorie burn retrieved from calendar.
View images: http://imgur.com/a/likbS -
See I'm a curious case.
Back when I graduated high school my father and I started a startup. We build an Android app revolving around personal safety. It was cool. Had news coverage. It flopped.
In the process off the two months time it took me to build the fucker I had to "Learn" Java and the Android SDK enough to push this app out.
I burned myself out and on top of that I felt like I did not really learn the language. So now years later I want to Learn C# for myself for game Development with unity. However I also want to learn Web Development Properly. Which I have tinkered with on and off since the old days of Xhtml when I built a website for my senior project in HS.
I still feel burned out. Anyone else with a similar feel. I know it's silly being burned after one failed project. But it does not help either that I rushed through learning Java did not retain fuck all and now I feel like I can't learn anything new because mental blockage. Even reading this sounds stupid.
Might also be new shiny object syndrome. Between C# and JS. Lol.6 -
So I'm a Java Dev used to work develop products on Google Clpud Platform. Technology stack used was Java, REST API/Webservices, Firebase, Google Cloud Datastore. Now that I've resigned from there (because of limoted opportunities) and joined a new company in another city.
And in new company I've been assigned to a project which is developed using Java Swing, SQL Server only.
So my question is:
Is it worth working on Java Swing which is a fairly old tech or should I look for another job: a webapp developer using Google Cloud Platform or AWS technology stack. What can be the wise move here in my case?
Really need a direction here guys. :) -
So at the end of our sprint retrospective we (me and one other dev) apologize to the project owner for the fact that QA had to happen on dev for a few days because the database changes were not properly applied by the DBA. It was a one time thing, a little weird but not a big deal.
A few hours later we get a call from a new DBA saying that the project owner said that we wanted the old DBA off our project. So now we sound like assholes ruining a guy's self confidence and made working with him awkward as hell.
Thanks, project owner. -
Im creating a "settings" functionality of sorts, unique per "account"
Ideally I'd create a new table, FK it with the Accs table with each Setting variable being a column
But im also inclined to just turn it into a JSON and not bother with N columns for it specially since arrays are involved in the settings
Could version it to ensure that if Settings change on code-level, old accs with old settings dont get fucked up
Now this is a pet project so im free to experiment, not bound by high level design documents
What do y'all prefer/recommend? JSON<->Settings Obj or plain old Table/column with FKs9 -
Comment in our code, followed by 3 identical SQL queries with only the table name different (Admin, regular user, old regular user).
Then we duplicated the entire project as it being a contract first webservice prevented us from changing it's signature to accommodate the needs of a new application.2 -
Android studio is a fucking demon that clings to your projects' soul.
>> Was working on project "a"
>> Thought of doing something different, but didn't wanted to create a whole new project or integrate changes here, so simply copied the project in a new folder "a_copy".(even copied the cache for faster build)
EXPECTATIONS :
1) i will be simply working on a copy of the project.
2)every changes made in a_copy will remain in a_copy.
3) when trying to build and run , my old app will be updated with new changes.
4) And if those changes doesn't fit, i will be simply removing a_copy files, going back to unaltered project "a" .
5) Building and running project "a" will update my previously updated app back to old state
REALITY :
1) ANY CHANGES MADE INTO PROJECT a_copy ARE REFLECTED BACK TO PROJECT "a" ! EVEN WHEN PROJECT "a_copy" IS CLOSED!
2) NO CHANGES OCCUR IN "a_copy", it remains in the same state as that of "a_copy", before all those changes got reflected!!
WHAT THE ACTUAL FUCK? its like studio treated the whole project copy as some windows shortcut?!?!1 -
New ERP project has been going for 1.5 years. Project team comes to me asking to create an import process from old ERP to new ERP in 4 months, oh we need data loaded into Test today so we can complete end-to-end user testing. Project team doesn't have any requirements documented or know what data is needed in new ERP. I have never used/seen either ERP system. Project team keeps changing what is required in the new ERP weekly, and they don't understand why all the imports into new ERP are bad.
-
I'm needing an idea for a new project. I began tinkering with one of my old C# projects and I'm just **disgusted** with the amount of crap in there.
What do you guys think, should I finish it or move on?
Any good ideas on how to find another idea for a new project?3 -
Why the fuck would Google promote Jetpack Compose as a stable toolset when it doesn't even support a basic feature such as a scrollbar.
A. Fucking. Scrollbar.
LazyColumn can't even come close to being as powerful as Recyclerview.
Here's an idea, before launching something and touting it as something usable, and encouraging people to drop the old, battle tested tool for the new shiny one, how about you make sure the new doesn't lack features present in the old one?
Seems logical, right?
Methinks somebody was just looking for a promotion because, clearly, Jetpack Compose is a half-baked product.
Now, developers will have to suffer because project managers will read about the new framework and ask devs to use it, then wonder why the app is suffering.2 -
So as a personal project for work I decided to start data logging facility variables, it's something that we might need to pickup at some point in the future so decided to take the initiative since I'm the new guy.
I setup some basic current loop sensors are things like gas line pressures for bulk nitrogen and compressed air but decided to go with a more advanced system for logging the temperature and humidity in the labs. These sensors come with 'software' it's a web site you host internally. Cool so I just need to build a simple web server to run these PoE sensors. No big deal right, it's just an IIS service. Months after ordering Server 2019 though SSC I get 4 activation codes 2 MAK and 2 KMS. I won the lottery now i just have to download the server 2019 retail ISO and... Won't take the keys. Back to purchasing, "oh I can download that for you, what key is yours". Um... I dunno you sent me 4 Can I just get the link, "well you have to have a login". Ok what building are you in I'll drive over with a USB key (hoping there on the same campus), "the download keeps stopping, I'll contact the IT service in your building". a week later I get an install ISO and still no one knows that key is mine. Local IT service suggests it's probably a MAK key since I originally got a quote for a retail copy and we don't run a KMS server on the network I'm using for testing. We'll doesn't windows reject all 4 keys then proceed to register with a non-existent KMS server on the network I'm using for testing. Great so now this server that is supposed to connected to a private network for the sensors and use the second NIC for an internet connection has to be connected to the old network that I'm using for testing because that's where the KMS server seems to be. Ok no big deal the old network has internet except the powers that be want to migrate everything to the new more secure network but I still need to be connected to the KMS server because they sent me the wrong key. So I'm up to three network cards and some of my basic sensors are running on yet another network and I want to migrate the management software to this hardware to have all my data logging in one system. I had to label the Ethernet ports so I could hand over the hardware for certification and security scans.
So at this point I have my system running with a couple sensors setup with static IP's because I haven't had time to setup the DNS for the private network the sensors run on. Local IT goes to install McAfee and can't because it isn't compatible with anything after 1809 or later, I get a message back that " we only support up to 1709" I point out that it's server 2019, "Oh yeah, let me ask about that" a bunch of back and forth ensues and finally Local IT get's a version of McAfee that will install, runs security scan again i get a message back. " There are two high risk issues on your server", my blood pressure is getting high as well. The risks there looking at McAfee versions are out of date and windows Defender is disabled (because of McAfee).
There's a low risk issue as well, something relating to the DNS service I didn't fully setup. I tell local IT just disable it for now, then think we'll heck I'll remote in and do it. Nope can't remote into my server, oh they renamed it well that's lot going to stay that way but whatever oh here's the IP they assigned it, nope cant remote in no privileges. Ok so I run up three flights of stairs to local IT before they leave for the day log into my server yup RDP is enabled, odd but whatever let's delete the DNS role for now, nope you don't have admin privileges. Now I'm really getting displeased, I can;t have admin privileges on the network you want me to use to support the service on a system you can't support and I'm supposed to believe you can migrate the life safety systems you want us to move. I'm using my system to prove that the 2FA system works, at this rate I'm going to have 2FA access to a completely worthless broken system in a few years. good thing I rebuilt the whole server in a VM I'm planning to deploy before I get the official one back. I'm skipping a lot of the ridiculous back and forth conversations because the more I think about it the more irritated I get.1 -
Joined a new team at work hoping to learn something new. Was told by the team lead that they will be starting development on a new project that I was interested in.
Guess what it was all a fucking lie. I'm assigned a task to create documentation for some legacy java shitcode without any fucking comments.
Fine I get it, they say it's required going down the road of the new project as it will work alongside the old application. But the code is so fucking bad. For starters
-The db host and credentials are hard-coded in a million places
-it stores user credentials in plain text
-its creating files in the fucking filesystem to store things instead of storing it in the db
-each functions ranges from 100 to 8000 lines of code
Who even codes like this 🤯
And I can't fix these issues. All I need to do is document every function and class and package. Fine. Fuck this shit -
after moving back to my home country, buying an apartment and after my career started to head to nowhere because there is nothing to code for me in work, just manager stuff, I am returning to coding after work to get back into shape, practice more, learn new stuff (and the old stuff)
wanted to create a small webapp with laravel/vue, holy fucking shit how hard it is (for me) to setup your env
install composer -> command php not found
o.O im pretty sure i had php on this machine HOW THE FUCK WOULD I HAVE ALL THESE PROJECTS HERE THEN
install php8.1 -> no such package
-.-
upgraded to ubuntu 22.04, install php8.1, composer
create new laravel project -> 3 errors, missing laravel/pint, phpunit
* visible confusion * i told you to create a project, if you need it, why didn't you... oh, wait
composer install -> same
well, * looks left, looks right * --ignore-platform-reqs
but still getting the chills from a new project, now I go sleep and tomorrow I start my journey to get back to business, wish me luck -
Joined a new project.
The core of the application has references to pretty much everything in the entire codebase, both api and database layer.
On top of that it uses extension methods instead of mappers or normal methods on classes in order to "keep classes short", so many methods are unnecessarily hidden from view.
Tried to fix it, got told to revert back to the old version because "it might be wrong, but at least it's wrong everwhere". Guess I'm making bolognese for dinner.1 -
I got relegated to updating an old project. It takes just 35 lines to do what we can write as a single liner in the new one.2
-
lol so I got a new oldish laptop (so it doesn't break the bank) for my upcoming trip where I focus on working on my own project.
Didn't want to splurge since I have another laptop that I regularly use. just didn't want to take through customs since it's 8 years old.
Already used up half of the storage (128/256gb) from installing rider and wsdl lol.
thinking maybe I need to actually return it and get a more powerful machine o.o they are so expensive though12 -
Fucking hate to explain basic shit to computer illiterate. Usually I don't mind, but right know I working on the project, want to automate one thing I need to do every morning, put two numbers to web page(I will explain details maybe in next rant). So I am only one who fix, buys computers, printer(for some problems I call for other repair man.). Generally speaking working as IT guy. Firm has like 50 computers, some of them has SCADA software. Some computers have Win 7, some win 8 and others win 10, can't upgrade those computers, not enough money(I can deal with this problem). And yes, computer buying is not the fastest, easiest thing too. Because is public firm, I need to do public buying(I don't know how to translate to english), and most of the time wins the lowest price, I am ok with that. But I can't on item specification write I want that model pc or it components. Example: I can't write I want intel processor, however I can write number of cores, frequency. But it's not that bad, usually i have template for all things I buy. One of the worst thing is this, our firm bought new bookkeeping software version, old version was using visual foxpro framework. Good thing I didn't initiate the purchase, because right know I would be jobless, not because I would be fired, but because our senior accountant would drive me crazy. In fact accountants drive me crazy, but I can handle it for now. As I wrote before our form has about 120 workers, major part of workers are old, like my parents age. (I am 28 btw. Mom is 55.). As you all know what happens if you say you work with computers. So our accountants are like 60 years old, got new program, don't know how to work with it, and they ask me how to do certain things. if I don't know how to I ask program's support, every question is like 90 Eur. So in short accountants expect I should know their work and how program works. If I try say something they don't like, they try to make my day hard. Next thing is our billing program. Man that worked before me done some payments import. And when I came everyone expect me to do that. Ok I did that because that people working with billing program would probably fuck it up. And I semi automated that, so I don't mind that much. Sometimes that program fucks up, like it happened yesterday, it send email invoices attachment without filename. Example: people got this attachment ".pdf"(no filename, only extension), And if you save it you need do OPEN WITH command and then select pdf reader or rename file (I don't know what easier). And surprise surprise our firm, customer support redirects all phone calls, emails to me. But I did explain to customer support what to say to people. Still they redirect it to me.
PS: This is my first job after school. I work as part time.
TL;DR Thinking my life, carrier choices. accountants are not the nicest people.8 -
At the place I intern, we're managing a project that's quite old (about 8 years). There's a specification document that discusses features but the mentioned stuff has been subject to incremental changes over the years so that these documents no longer fully discuss exact specifications of a particular feature. I'm curious on how you keep track of such incremental changes to a feature? Do you update the specification document with the new requirement document or is there some other way to do it?1
-
Really hate it when a project is switching focus every month or so. You start focusing and committing a lot of time to make things work. Taking initiative to enhance things. Then some weeks later management is switching focus and you have to port all fixes in the new code base. Then some weeks later you have to work on the things you did before but with some adjustments that result in the old code not being possible to use and you have to port fixes again. When complaining you sometimes get the question "how hard can it be, it's just some code". Some motivation is lost every time. And repeat this like a "while true" loop.
-
I started with cakephp 2. I did a TON of projects with it and made my own reusable plugins for future projects and everything was nice and smooth.
then cakephp 3 came out with breaking changes and was not backwards compatible. I learned the new rewritten ORM and tried to do a project with it along with plugins.
then cakephp 4 came out with breaking changes and was not backwards compatible...
ok... look i dont claim to know more than the people writing frameworks but u want people to use ur framework u cant fuck them up in every major release and render their old projects unupgradable... fuck you im switching to laravel this was the last straw3 -
Short : I'm in a situation where I fucking hate to go to office everyday because the business team thinks I'm their bitch
Long : Exactly one year ago I joined this small company, few months ago all the senior devs started working on revamping the old shitty ERP they have into new one.They put me in charge of taking care the support for a project we work before.Now fucking asshole from the BA team sit on my shoulder every day and forcing me to do anything he thinks he want.Right now I'm doing a data migration from massive excel files from client. It's in a shitty format I asked help from senior devs they said it's impossible to import this shit.But my asshole team lead also support that BA fucker.
I can't sleep everyday normally because of stress.My notice period (relieving period) is 3 months.I just feel like every end of day I wanna kill all those motherfuckers11 -
macOS - just nothing makes sense.
You try to go away from the deprecated stuff, use the new shinier API to stop and start services with launchctl (bootstrap/bootout vs. load/unload). And how does this stellar OS thank you for that? By crashing your service. Thanks for nothing.
From developer perspective this whole OS is just such a nightmarish clusterfuck. If you want to set up code signing with some special entitlements and you try to use the provisioning profiles as advertised, it's like pulling the one-armed bandit. It will plunder your coins and sanity. You try to compile it, it fails or the executable will be killed - you enable and disable the automatic codesigning in Xcode, or delete and download you old code signing cert and suddenly it works. It's just random - and you have to perform random walks on the Xcode project settings to make it run. So Apple turned us into Xcode clicking monkeys... -
A philosophical question about maintenance/updating.
There is no need to repeat the reasons we need to update our dependencies and our code. We know them/ especially regarding the security issues.
The real question is , "is that indicates a failure of automation"?
When i started thinking about code, and when also was a kid and saw all these sci fi universes with robots etc, the obvious thing was that you build an automation to do the job without having to work with it anymore. There is no meaning on automate something that need constant work above it.
When you have a car, you usually do not upgrade it all the time, you do some things of maintance (oil, tires) but it keeps your work on it in a logical amount.
A better example is the abacus, a calculating device which you know it works as it works.
A promise of functional programming is that because you are based on algebraic principles you do not have to worry so much about your code, you know it will doing the logical thing it supposed to do.
Unix philosophy made software that has been "updated" so little compared to all these modern apps.
Coding, because of its changeable nature is the first victim of the humans nature unsatisfying.
Modern software industry has so much of techniques and principles (solid, liquid, patterns, testing that that the air is air) and still needs so many developers to work on a project.
I know that you will blame the market needs (you cannot understand the need from the start, you have to do it agile) but i think that this is also a part of a problem .
Old devices evolved at much more slow pace. Radio was radio, and still a radio do its basic functionality the same war (the upgrades were only some memory functionalities like save your beloved frequencies and screen messages).
Although all answers are valid, i still feel, that we have failed. We have failed so much. The dream of being a programmer is to build something, bring you money or satisfaction, and you are bored so you build something completely new.13 -
Right guys and gals, I need your opinions.
Recently was approached by a recruiter who thought I’d be a good fit for a role, a role that is a step up from senior dev but without moving into people / project management.
More like a bridge between architects and senior devs.
I thought what the hell, why not. So I agreed to go for it.
It could be quite a decent payrise (though that wasn’t my motivation for going for it) and I like the idea of doing more mentoring, design and research than I do now. It would involve stuff like learning new tech, coming up with examples and implementations of how the dev team need to use it to churn out user stories.
For the last few years I’ve been mainly a back end developer, which didn’t start by choice and I always liked to be full stack.
But the recruitment process for this role has been quite slow (number of reasons) and since then I’ve been given a new piece of work at my current employer doing some greenfield angular work, plus the c# back end.
I’m really, really enjoying this angular work. Haven’t done it for a while and it feels great to get back into it. Seem to be picking it back up with no problems, like the old magic is still there.
Also the money at my current place is good enough.
So now I’m wondering if I should bail on this other role in favour of seeing this out and maybe going back to being full stack (tho for reasons I’ll outline below in the long term that might have to be elsewhere)
But I’m also trying to remind myself that up until enjoying this work there’s a reason I decided to go for this other role.
Current place is a small company that has no project management process. It’s chaos, and everything’s an emergency. There are no requirements for anything, not enough people etc. No one has a clue how to run an IT project.
The one thing we do have is good development practices in our team and we have been greenfield for the last 12 months working on a new product. But we do tend to be pigeon holed into looking after a specific service/area.
But this new place if I got the role, is a bigger company (I’ve worked in small, medium and massive companies so I know what the difference is like), they’re a household name, they have resources for learning, putting people through aws certs, etc. They give people time each week to invest in themselves. Much more agile.
And thinking about it now you don’t often see a role that allows you to ‘move up’ without having to take on people/project management and still having time to be hands on.
(Just maybe more hands on with strategic work than delivering user stories for business as usual)
So just in general, what do you think? -
Guys, i am having a tough time in work. So, i am sharing the story and questions here-
Initially, i was doing well with new projects and other existing projects where implemented new features.
But recently, i am assigned to a old project created by clients and some senior developer worked on it .
Ps: I was also assigned to this project 8 months earlier but was reassigned to other projects.
Now, Our senior developer who worked on it resigned because of the messy project and a lot of pressure from boss.
my colleague also resigned because of this.
Due to this, all this pressure thrown upon me. I am working on it relentlessly but i am soo burned out that i am actually feeling sick and constantly having headache.
And main thing is that the project has so many errors which iam getting during testing and i have to fix all of the error.
And yes they have documentation but shitty unreadable documentation . My manager also rebuking me why i dont remember things said to me 8 months earlier. (That time i just joined the company)
I don't know what will happen to me if i cant tackle this project.
And what should i do in such cases as my mental health is deteriorating day by day.3 -
The worst part about starting a new project is choosing what framework to make it in. Everyone always has their wrong opinion. No, we aren’t going to use rust. No, not react. Not angular you old man.6
-
Anyone else planning to raise buried projects from their grave on New Year's Eve....? :P
P.S.- might come with a resolution or two while at it!1 -
Should I start a new project or re-do an old one? 🤔
The old one is actually being used by people, but I've been modding that damn game for years now...1 -
In my college project I am stuck with dumbos. I thought because of of experience in industry I would make them learn something. They don't anything other data entry, a lot of which can be automated. And I work the code which involves building APIs and 2 different Android apps. They are 3 and I am one. Till today they never bother to install the dev environment. Today I told them to get their laptops so they could connect to my laptop server and work with it. But no one bothered to get their laptops. All of them were using my one laptop. Can you imagine 3 people sitting on one machine instead of 3. And I have to sit there doing nothing😑. I went out to chill for sometime knowing that I could do nothing useful without my laptop. And when I return I find that instead of adding new entries, these people kept on editing old entries.🤦🏻 I mean how dumb could anyone be. Power of 3 brains. I can handle 0 work done, but this is negative work. I could done it myself by writing some automation script. And these people tell people behind my back to my friends that they do all the work😡. I have reached the limits.2
-
This is a repost of an original rant posted on a request for "Community Feedback" from Atlassian. You know, Atlassian? Those beloved people behind such products as :
• Thing I Love™
• Other Thing You Used One Time™
• Platform Often Mentioned in Suicide Notes, Probably™*
Now this rant was written in early 2022 while I was working in an Azure Cloud Engineer role that transformed into me being the company's main Sysadmin/Project Manager/Hiring Manager/Network Admin/Graphic Designer.
While trying to simultaneously put out over 9000 fires with one hand, and jangling keys in the face of the Owner/Arsonist with the other, I was also desperately implementing Jira Service Desk. Normally this wouldn't have been as much of a priority as it was, but the software our support team was using had gone past 15 years old, then past extended support, then the lone developer died, then it didn't work on Windows 10, then only functioned thanks to a dev cohort long past creating a keygen....which was now broken. So we needed a solution *now*.
The previous solution was shit of a different tier. The sight of it would make a walking talking anthropomorphised sentient puddle of dogshit (who both eats and produces further dookie derivatives) blush with embarrassment. The CD-ROM/Cereal Box this software came in probably listed features like "Stores Your Customer's First AND (or) Last Name!" or "Windows ME Downgrade Disk Included!" and "NEW: Less(-ish) Genocide(s)"!
Despite this, our brain/fearless leader decided this would be a great time to have me test, implement, deploy, and train everyone up on a new solution that would suck your toes, sound your shaft, and that he hadn't reminded me that I was a lazy sack enough lately.
One day, during preliminary user testing I received an email letting me know that the support team was having issues with a Customer's profile on our new support desk. Thanks to our Owner/Firestarter/Real World Micheal Scott being deep in his latest project (fixing our "All 5 devs quit in the last 12 months and I can't seem to hire any new ones" issue (by buying a ping pong table)), I had a bit of fortuitous time on my hands to investigate this issue. I had spent many hours of overtime working on this project, writing custom integrations and automations, so what I found out was crushing.
Below is the (digitally) physical manifestation of my rage after realising I would have to create / find / deal with a whole new method for support to manage customer contacts.
I'm linking to the original forum thread because you kind of need to have the pictures embedded in said reply to get really inhale the "Jira-Rant" ambiance. The part where I use several consecutive words as anchor links to tickets with other people screaming into the void gets a bit sweet n' savoury too - having those hyperlinks does improve the je ne say what of it all.
bit.ly/JIRANT (Case Sensitive)
--------------------------
There is some good news at the end of this brown n' squirty rainbow though!
Nice try silly little Jira button, you can't ruin *my* 2022!
• I was able to forget all about Jira a month later when I received a surprise vacation home! (To be there while my Mom passed away).
• Eventually work stress did catch up to me - but my boss thoughtfully gave me a nice long vacation! (By assaulting *while* firing me (for emailing in a vacation request while he was a having a bad (see:normal) day))5 -
At this stage, I feel like I'm too old to setup a new project and setup a database and write migrations and all that. I just wanna all that setup for me and I do something less mundane. It's probably why I don't start any new projects anymore.5
-
Wanted to start a little project of writing a website from scratch with a given template. No framework, just a basic thing. Apparently I've already done some work, long ago. And of course, I don't understand several parts anymore that are written. All knowledge and context gone. fuck...
At least I've realized I went for BEM css, instead of my utility css approach nowadays. Now the css has become hard to change, without accidentally breaking things. Also no git, surely because it was "just a small thing". Almost about to delete and redo. Fuck fuck fuck!1 -
New guy taking over senior software developer since the last one seemed to burn out / got tired of all the bullshit. His coming replacement has a habit of making 'software walkthroughs' for every repository we have. The project organization is so badly managed and we only ever work on requirements when we have something concrete. After Outlook-declining one of the walkthroughs I get this little gem from him in an IM:
Guy: <Old Snr Dev> felt that you built the base for it and it would be good if you are there as you might take it forward is what <Manager> told me
Me: yeh but it is like so straightforward
and basically there are other projects on github which do the exact same thing
Guy: okay, just that I have not seen the code yet. Or anyone else to take it forward
Me: i think - go through it when you need to
if there are problems, then ask
WTF? You didn't even check it yourself and you want me to handhold you as a senior software developer? Totally nuts.2 -
Coming home fully energized to work on a collaborative project, turn on linux pc (quite old, but works best with git), open github, start git pull, open vs code, click on reminder to download new version -> open new chromium tab (takes longer than normal...?), open start menu
....
....
? ... pc frozen😔😥
forcing shutdown, restart ... wifi gone😓? oh come on!!😑😣4 -
I love linux because i dont have to forced to do frickin update like windows did.
Because i have an experience after update linux mint i cant even start the main GUI program. After boot only show blank console. It seem linux update broke the compatibility between my graphics card.
At least now i dont have to update because thats an option. The output of update is not different than windows.there is a chance you broke your OS.
But the struggle is when i need to install new app in linux. Sometimes need more than hour to find out why it doesnt work from the first time.
Any help here?
So this start from the office. In the office i usually use low spec laptop that work slowly. Then i found this IDE called rapidclipse. Its very promising with GUI builder and can build cross platform mobile app using only java built on top vaadin framework.
When i use it on low spec laptop hackintosh at office it work well although it take more time than other kind of eclipse and i dont need to install any kind of app again, just download-install-create new project-run on tomcat-work well.
Then i go to home to try this new tool , IMO my low spec PC still have more power to run something than old hackintosh. Because usually i use android studio with no problem. In the old hackintosh it went too long to build gradle only.
Then i install rapidclipse, then run desktop shortcut. Then it said i need to install correct java to use correct JavaFX.
After search on SO they said i must install jdk from oracle.
Ok so i got openjdk in my linux.wtf what is the different idk but dont have time to find out.
I install jdk from oracle.
Than finally can open the rapidclipse.
Wow , this gonna be fun.
Then create new project. Just a new project.
So im waiting. I see the progress at 10%. But still no increment on that.
I switch to other app for several minutes.
Then when switched back th app still at 10% and now is at no responding state. So i force close.
After that open rapidclipse again.
The previous new project can be opened. Yay, i think.
But so many error there. Omg.
So i create new project again.
But, but, i just repeated the first error then close again then try it again for several time. But still same output.
After an hour, i give up.
But still, why , just why it work like this. No error or whatsoever.
Back later i have a problem like this on different app.
Idkwhy.1 -
[opinions welcome]
I'm just furious right now!!!
So I'm on this project where we have to make a whole *very old* website look like it's brand new.
Thing is, the whole point of the project is to make exactly the same pages as on the existing website smh. No UX or UI suggestions.
Just put the navbar in a component that looks like a tab bar, who cares anyway!?
Btw, I'm in charge of the UI.
My colleagues and I (mostly my colleagues) made a react components library and we use it for this project.
Fucking inputs get thrown into tables and all that, but hey, that's what the client asked for.
So here I am with my shiny new page, and I just hand it over to the front-end dev who just arrived.
She's supposed to feed in the data.
I don't give a fuck you use flow or redux or whatever fancy tooling.
Just call your back-end, get the data, format it and feed my damn table with it. That's it.
So today, after 5 weeks she's in, she calls a meeting where she's screening a presentation to the team complaining about how long it took her to understand what I did and change it completely.
Pieces of code on screen, saying it's crap and it shouldn't be like that.
I'm not responsible for inputs in fucking table, the client is!
Of course I have nested components with data passed through all the way: it's a series of fucking radio buttons within a table within a form!
During 5 weeks, yoy didn't even come to me once saying it's not what you expected or you're having trouble with my work!
And there we blaming my job like I'm the bad guy?!
Tonight, everyone's going home thinking I'm no good at what I do and completely lost, all because of her.
If you got this far, I'd like to hear from you on how I should act with her and how to tell her what she did is awfully wrong?4 -
There is no perfect library for you
Recently I tried to update a very old hobby project by adding new features, but sadly in my case these features depended big on an external library, and because of how this library handle their things I just can't make it work for my use case cuz again how the library works, at the end I removed the library and installed anther one that solved my case
Now I will make clear that I'm not blaming anyone here, not even me, devs that creates free libraries created the library for their use case in the first place and then thanks also to contributors (library users) that library became good for the common use cases, it just time that will tell if the library will keep with the updates and not breaking things
So we should be very thankful for the devs that creates free open source projects that tries to make the devs life easier -
Any tips for onboarding a new joinee to a couple-month old Django back-end project and eventually take it over, as my tenure ends?
The newbie is from a theoretical CS background and only knows very basic Django.
It's gonna be fine, I know; I'm just not sure how to go about handing over the project since even with coding best practices and detailed comments and a README.md, there's still a lot of stuff happening in the background that I know only because I've worked with it daily.3 -
So trunk-based is the new approach everyone is using, because it is so cool.
I used gitflow for the last projects with azure devops, set up the pipelines like tipically in 1 week if I had other things to do with the help of the portal clicking through things. PR-s triggered pipelines, everything worked cool.
But then trunk-based got momentum, so I worked with this client where 2 developers worked for !!!3 months!!! to setup trunk-based pipeline. It was not my money, so I did not say a thing. They were using infrastructure as code.
I am all in for automation, but seriously? Then again, another project where a DevOps team took 1 dev-month to setup the pipeline + meetings. And what do you get in the end? So that the same image goes on all environments? Like how many releases do you have for prod in a year. Lets say 24. 24 x 5 minutes of manual work for the release, that is 2 hours. So my question is why would you spend 2 hours of manual work while you can automate it merely in a month? Everyone loves to code, but using the ui on the DevOps portal saves you so much time. I don't get this. Maybe I am getting old :D4 -
Spent most of my day trying to create a new project that looks like the rest of our old projects. A quick GitHub template would go a long way please.
-
My team and me nearly finished a big new feature for our website.
I am a junior dev and this was the first big thing I was in charge of and now that I see how it unfold I feel really bad.
It consists of php backend (integrated into a 20 years old monolith) and vue frontend (punctually jumpstarted by a clusterfuck of typescript files included into php rendered html) and especially the frontend part looks so bad.
Vue is relatively young in our project and almost nobody has a clue about it. I learned so much about vue in the process, but the result is a behemoth of awfulness that grew over several months.
I have a really strong desire rewrite the whole mess, but I will never be officially allowed because it works and practically all the flaws in our code base are subject to the classic
"well, someday, somebody probably has to do something about that, but for now let's start this shiny new feature"
So for now I think about doing it secretly and pass it to my buddy to review it. I guess chances are high that not even the colleagues in my team (apart from my buddy) are going to notice, since they aren't as interested into vue as I am and don't have the overview over this features code as I do, but on the other hand it feels like something I could get in trouble for and apart from the cursed code base my company is great.
Have you ever bin that disgusted by your own production code before it was even one year old?3 -
I’ve built a ’self-serve’ inline-app/widget for our customers to book a moving quote appointment themselves. One of the ‘pages’ has a couple address autocomplete form fields. I went with a service called placekit, but used a CDN they offer. There is a more robust node.js library they offer, but couldn’t get it working. To be fair, I am completely new to node.js. I want to learn it, any recommended tuts, or readings? The company I work for is really invested in old technologies, we use SVN still. Does node play well with SVN? The IT lead for my department is opposed to connecting node to our DB, but I think we will be forced to for our upcoming automated testing project, it too is node, that’s what prompted my goal to learn it.2
-
9 Ways to Improve Your Website in 2020
Online customers are very picky these days. Plenty of quality sites and services tend to spoil them. Without leaving their homes, they can carefully probe your company and only then decide whether to deal with you or not. The first thing customers will look at is your website, so everything should be ideal there.
Not everyone succeeds in doing things perfectly well from the first try. For websites, this fact is particularly true. Besides, it is never too late to improve something and make it even better.
In this article, you will find the best recommendations on how to get a great website and win the hearts of online visitors.
Take care of security
It is unacceptable if customers who are looking for information or a product on your site find themselves infected with malware. Take measures to protect your site and visitors from new viruses, data breaches, and spam.
Take care of the SSL certificate. It should be monitored and updated if necessary.
Be sure to install all security updates for your CMS. A lot of sites get hacked through vulnerable plugins. Try to reduce their number and update regularly too.
Ride it quick
Webpage loading speed is what the visitor will notice right from the start. The war for milliseconds just begins. Speeding up a site is not so difficult. The first thing you can do is apply the old proven image compression. If that is not enough, work on caching or simplify your JavaScript and CSS code. Using CDN is another good advice.
Choose a quality hosting provider
In many respects, both the security and the speed of the website depend on your hosting provider. Do not get lost selecting the hosting provider. Other users share their experience with different providers on numerous discussion boards.
Content is king
Content is everything for the site. Content is blood, heart, brain, and soul of the website and it should be useful, interesting and concise. Selling texts are good, but do not chase only the number of clicks. An interesting article or useful instruction will increase customer loyalty, even if such content does not call to action.
Communication
Broadcasting should not be one-way. Make a convenient feedback form where your visitors do not have to fill out a million fields before sending a message. Do not forget about the phone, and what is even better, add online chat with a chatbot and\or live support reps.
Refrain from unpleasant surprises
Please mind, self-starting videos, especially with sound may irritate a lot of visitors and increase the bounce rate. The same is true about popups and sliders.
Next, do not be afraid of white space. Often site owners are literally obsessed with the desire to fill all the free space on the page with menus, banners and other stuff. Experiments with colors and fonts are rarely justified. Successful designs are usually brilliantly simple: white background + black text.
Mobile first
With such a dynamic pace of life, it is important to always keep up with trends, and the future belongs to mobile devices. We have already passed that line and mobile devices generate more traffic than desktop computers. This tendency will only increase, so adapt the layout and mind the mobile first and progressive advancement concepts.
Site navigation
Your visitors should be your priority. Use human-oriented terms and concepts to build navigation instead of search engine oriented phrases.
Do not let your visitors get stuck on your site. Always provide access to other pages, but be sure to mention which particular page will be opened so that the visitor understands exactly where and why he goes.
Technical audit
The site can be compared to a house - you always need to monitor the performance of all systems, and there is always a need to fix or improve something. Therefore, a technical audit of any project should be carried out regularly. It is always better if you are the first to notice the problem, and not your visitors or search engines.
As part of the audit, an analysis is carried out on such items as:
● Checking robots.txt / sitemap.xml files
● Checking duplicates and technical pages
● Checking the use of canonical URLs
● Monitoring 404 error page and redirects
There are many tools that help you monitor your website performance and run regular audits.
Conclusion
I hope these tips will help your site become even better. If you have questions or want to share useful lifehacks, feel free to comment below.
Resources:
https://networkworld.com/article/...
https://webopedia.com/TERM/C/...
https://searchenginewatch.com/2019/...
https://macsecurity.net/view/...