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 - "clean everything"
-
Too much stupid today..
Client: "Our server is almost full, fix it"
Me: "Okay, you can upgrade the VM, or I can see if theres anything that can be cleaned up?"
C: "Clean it up"
Me: *Finds 5 extra MySQL DB's that amount to 50-60GB in total*
Me: "Well I can remove some of your extra databases, and some of the local backups, as they're also backed up offsite. They're currently unused and dated back to the beginning of 2017, everything is out of date anyways."
C: "No"
Me: "Okay, is there a reason?"
C: "No"
Me: "Okay, so we'll upgrade the VM?"
C: "No"
Me: "I'm sorry, but those are really your two options"
C: "Just fix it"
...................
...................
...................
What in the ducking fuck !@#$#%?
If you're so fuggin smart, then why do they pay me?
I'm clearly stupid and unable to read your mind.21 -
Confessions of a Programmer
#1
If a client is an unbearable asshole during the initial communication, I look for every excuse to pad on the hours for the estimate to get paid more. If a client goes above and beyond in their douchbaggery, I tack on an additional $40/hour.
#2
Sometimes I will present an elaborate solution to a client, but really I'm just reading off the features of a plugin or library I'm going to download or buy after the call. Not because I can't build it myself, but because I'd rather spend more time on other/my own projects.
#3
Clients assume because I know one language, I know them all. Rather than turning down the work, I take a crash course to work in that language, or outsource the work and clean it up afterwards, whichever is more practical at the time.
#4
I use cPanel on a dedicated to manage our client websites. I'm not paid enough to bother with setting up everything manually.
#5
Certain projects I build have a 3-day backdoor built into it. If the client doesn't pay upon completion, a unique hash triggered as a GET variable deletes a core file in my work, rendering the work useless. If it wasn't triggered by the 4th day, the file allowing me to trigger this backdoor is removed. This is only used for clients where the project must be launched on their servers, or if there has been a previous issue collecting payment.
#6
I slip in the initial contract that all preceeding phone calls will be monitored and recorded, and that they acknowledge the recordings are admissable in court. This has saved me from losing money twice now.
#7
I have never used an IDE. (I know, I know, it's really inefficient and dumb, but I'm just more comfortable with Sublime. Plus I often find myself mobile and without my computer, so I have to program from my phone.)
#8
Each day resembles a betting spectacle of which work will be late, which will be rushed out and which will never see the light of day.
#9
I have used "sick" and "family emergency" as an excuse to just sleep in far more than I can count.
#10
When a client from hell crosses over the line in their conduct (such as getting very nasty and personal, or sending threats), I anonymously report them to the BBB and on RipOffReport.21 -
** Makes a design for a landing page, in a Single-page format. My designs are usually clean and "aerated" (breathing, uncluttered). **
** Pm comes in **
Me: Oh hey! I've finished my mockups
PM: Ah nice, let's see... ** comes to my screen **
---
PM: Not bad, but can you remove this spacing, this spacing, and this one and this one... oh and that one too?
** corrects them as she says, everything starts looking cluttered and I dislike it **
PM: Great! Can you export them in pdf?
Me: Sure.
** PM goes away **
** Proceeds to re-make the mockups more "breathing" with an evil smirk **9 -
Navy story time, and this one is lengthy.
As a Lieutenant Jr. I served for a year on a large (>100m) ship, with the duties of assistant navigation officer, and of course, unofficial computer guy. When I first entered the ship (carrying my trusty laptop), I had to wait for 2 hours at the officer's wardroom... where I noticed an ethernet plug. After 15 minutes of waiting, I got bored. Like, really bored. What on TCP/IP could possibly go wrong?
So, scanning the network it is. Besides the usual security holes I came to expect in ""military secure networks"" (Windows XP SP2 unpatched and Windows 2003 Servers, also unpatched) I came along a variety of interesting computers with interesting things... that I cannot name. The aggressive scan also crashed the SMB service on the server causing no end of cute reactions, until I restarted it remotely.
But me and my big mouth... I actually talked about it with the ship's CO and the electronics officer, and promptly got the unofficial duty of computer guy, aka helldesk, technical support and I-try-to-explain-you-that-it-is-impossible-given-my-resources guy. I seriously think that this was their punishment for me messing around. At one time I received a call, that a certain PC was disconnected. I repeatedly told them to look if the ethernet cable was on. "Yes, of course it's on, I am not an idiot." (yea, right)
So I went to that room, 4 decks down and 3 sections aft. Just to push in the half-popped out ethernet jack. I would swear it was on purpose, but reality showed me I was wrong, oh so dead wrong.
For the full year of my commission, I kept pestering the CO to assign me with an assistant to teach them, and to give approval for some serious upgrades, patching and documenting. No good.
I set up some little things to get them interested, like some NMEA relays and installed navigation software on certain computers, re-enabled the server's webmail and patched the server itself, tried to clean the malware (aka. Sisyphus' rock), and tried to enforce a security policy. I also tried to convince the CO to install a document management system, to his utter horror and refusal (he was the hard copy type, as were most officers in the ship). I gave up on almost all besides the assistant thing, because I knew that once I left, everything would go to the high-entropy status of carrying papers around, but the CO kept telling me that would be unnecessary.
"You'll always be our man, you'll fix it (sic)".
What could go wrong?
I got my transfer with 1 week's notice. Panic struck. The CO was... well, he was less shocked than I expected, but still shocked (I learned later that he knew beforehand, but decided not to tell anybody anything). So came the most rediculous request of all:
To put down, within 1 A4 sheet, and in simple instructions, the things one had to do in order to fulfil the duties of the computer guy.
I. SHIT. YOU. NOT.
My answer:
"What I can do is write: 'Please read the following:', followed by the list of books one must read in order to get some introductory understanding of network and server management, with most accompanying skills."
I was so glad I got out of that hellhole.6 -
!rant
I built a decently large project at work, and everything works perfectly. It's beautiful, it's fast, it's light, it's organized and clean, and deploying is a breeze. I'm very proud of it.
The biggest reason, though, is that it uses exclusively technology I had never touched before:
• React
• Redux
• ES6/Babel
• Webpack
• Express.js
• Material Design
• Apple lappy (I'm a linux girl)
I was completely new to all of these, including my dev machine. Every single aspect of the project was outside my skillet.
But it went from my first experimental `import React from 'react'` to production-ready in three weeks. I'm really proud 😊14 -
I work in a company where I'm the only developer, with everyone being designers or marketing or sales. Typically like the scene from Silicon Valley.
Moto was to create a ticket selling website for their products, and make sure they worked as well. It was all fine, until deadlines were discussed. They wanted it done within 2 weeks, the entire backend dashboard, API and front end.
I told them it's almost impossible to do it, but they insisted on it. So, I made a minimal dashboard and told them, I haven't completed a few things, such as if you edit data in one place, it won't reflect in other tables. So, be careful while editing the data.
They nodded their head for everything, yesterday was site launch and 2 hours before that one bastard decided to changed the product names to something "catchy" but failed to change the same in other places.
I had used the name as foreign key, so querying other DBs became a fuck all issue, and eventually API stopped giving any response to front end calls.
I got extremely pissed, and shouted at that dude, for fucking everything up. He said, you're the tech guy and you should've taken all this into account.
I sat and hardcoded all the data into database again, made sure site is live. Once it was live, these guys call a company meeting and fire me saying I was incompetent in handling the stressful situation.
At that moment, I lost my shit and blasted each of those people. The designer started crying since her absurd designs(though great) couldn't be realised in CSS that too within 2 weeks time.
One of the worst experience for working for a company. I could've taken the website down, and told them to buzz off if they'd called, I couldn't get myself to do it, hence ranting here.
I seriously feel, all these tech noob HRs need to get a primer course on how to deal with problems of a programmer before they get to hire one, most of these guys don't know what we're trying to tell in itself.
I find devRant to be the only place where I can get someone to understand the issues that I face, hence ranted.
TL;DR: Coded ticket selling site in 2 weeks. 3 hours to launch, data entry dude fucks up. I clean all the mess, get the site online. Get fired as soon as that happens.
Live long and prosper. Peace.16 -
Mainly a story with some ranting sprinkled on top :)
My grandma used to refuse to turn her PC off because ONE SINGLE WINDOWS 8.1 UPDATE like 2 years ago made it so that Windows would turn the PC on by itself, nevermind it was fixed in the next update, she would simply refuse to try to turn the PC off from that point on... I never looked at the uptime but the PC was sitting on a carpet and all the fans were struggling to keep spinning, so much dust! When I asked her why it's so dusty all around the PC (the table that the PC was under was covered in a really thick layer of dust) she replied that the chambermaid comes every Wednesday to clean up the whole flat so she has no idea. I set up a camera that was recording the whole room so I could see what was going on... sure enough the chambermaid avoided anything that looked like it could have some ICs in it with a distance of at least 2 meters... When I showed the video to my grandma she was like: Yes, she is scared of electronics...
Seriously fuck me... Allright, I cleaned the whole table, carpet and the inside of PC, everything ran so quietly that I wasn't sure if I plugged the fans in.
Anyway after this I had to record the PC one whole night so I could prove to my grandma that it would not turn on by itself and she can in fact turn it off.
Fuck me... what a bad week that was...
PS: Yes, my stories do not have a point :)5 -
Although this is gonna sound like bullshit, this happened to me for real. Since that moment I use even more backup services AND I regularly check EVERYTHING.
Had a backup of my important data (still used mainstream services back then) on:
- Hotmail email attachments
- Google Drive
(Both link to another email account).
- A few data backup services
- DVD
- USB
- External HDD.
I wanted to copy some backup data over again:
1. Walk to my staple of HDD's, tried to grab it, somehow missed and knocked the whole fucking pile over. HDD broken.
2. Well fuck, let's go put some of my clothes in the washing machine for clean clothes at study/monday. After this shit being in the washing machine for just a few minutes, I realized my backup USB stick was in one of my pockets, in the washing machine. FUCK. Couldn't stop it so I waited till the end, tried it and well, it wasn't working at all anymore.
Fuck my fucking life slightly right now.
3. *remembers about the backup disc*. I forgot to keep it in its case, very deep scratches and so on, unreadable. FUCKING FUCK.
4. Right, I still have those online services! *tries to login to all of them (including hotmail/gdrive) but forgot the password. Well, let's login to my backup account then (hadn't used that one in years). Account was suspended for some reason.
Started to get really anxious because every online backup service was linked to that email address.
Contacted customer support. They really couldn't restore it because of some issues they weren't allow to tell me. Sorry but I couldn't retain access.
5. Well this is fucked up. Couldn't get into any of the backup/hotmail/gdrive accounts anymore.
I tried contacting their support but never got any replies.
This was the moment I realized I fucked up big fucking time because damn, this stuff at this level hardly happens to anyone.
FUCK.37 -
Never have I been so furious whilst at work as yesterday, I am still super pissed about going back today but knowing it's only for another few weeks makes it baerable.
I have been the lead developer on a project for the last 3~ months and our CTO is the product owner. So every now and then he decides to just work on a feature he is interested in- fair enough I guess. But everything I have to go and clean up his horrendous code. Everything he writes is an absolute joke, it's like he is constantly in Hackathon mode "let's just copy and paste some code here, hardcoded shit there and forgot about separation of code- it all goes in 1 file".
So yesterday he added a application to the project and instead of reusing a shared data access layer he added an entirely new ORM, which is near identical to the existing ORM in use, for this one application.
Being anal about these things, the first thing I did was delete his shit and simply reference the shared library then refactor a little code to make it compatible.
WELL!! I certainly hit a nerve, he went crazy spamming messages on Slack demanding I revert as it broke ONE SINGLE QUERY that he hadn't checked in (he does 1 huge commit for 10 of everyone else's). I stuck to my principals and explained both ORM's are similar and that we only needed one, the second would cause a fragmented codebase for no benefit whatsoever.
The lead Dev was then forced to come and convince me to revert, again I refused and called out the shit quality of their code. The battle raged on via the public slack group and I could hear colleagues enjoying the heated debate, new users even started joining the group just to get in on mine and the cto's difference of opinion.
I even offered to fix his code for him if he were to commit it, obviously that was not taken well ;).
Once I finally got a luck at the cluster fuck of shit he had written it took me around 5 minutes to fix and I ever improved performance. Regardless he was having none of it. Still the demands to revert continued.
I left the office steaming after long discussions with the lead Dev caught in the middle.
Fortunately my day was salvages with a positive technical discussion that evening at a company with whome I had a job offer from.
I really hate burning bridges and have never left a company under bad terms but this dictator is making me look forward to breaking the news today I will be gone in 4 weeks.4 -
The most pissed off I've been at work?
Client X came to us for a website.
We secretly outsourced the work.
Client X is coming for a visit in 10 mins...
MD to me: "I've told them your lead dev on this. They're not super-technical so if they ask you about the project just tell them it's going well."
Now I'm not a comfortable blagger, I don't have that kind of confidence, so to ask me to lie like this makes me feel really stressed and uncomfortable. Furthermore, I had literally no idea about any aspect of the work we were supposedly doing for this client. I can barely contain my panic but my colleagues help me piece together a basic understanding.
The MD returns: "They're here now. Can you quickly go and check that the toilets are clean."
WHAT THE FUCK!? The little prick. I'd knock him out if wasn't so meek and pathetic. I tell myself that I'm being helpful and nice but in truth I'm just his fucking doormat and he has zero respect for me.
I have no problem cleaning stuff (we all basically tidy up behind us) but this is something he could have done. Furthermore, who cares? None of us leave the loos with piss on the floor and shit smeared across the walls. They're never anything less than client-ready so to ask me to check means that he's already checked them himself and one of the loos is not quite shiny enough.
The reader may feel that this is no big deal (and in some ways you're right) but everything about this scenario was fucked up. The MD had embroiled the whole company in a lie and assumes we're all okay with that, then to add insult just nonchalantly orders me to clean the bogs. The cunt.
FWIW The client didn't ask to talk to me or use the toilet during their visit.8 -
Root rents an office.
Among very few other things, the company I'm renting an office from (Regus) provides wifi, but it isn't even bloody secured. There's a captive portal with a lovely (not.) privacy policy saying they're free to monitor your traffic, but they didn't even bother using WEP, which ofc means everyone else out to the fucking parking lot four floors down can monitor my traffic, too.
Good thing I don't work for a company that handles sensitive data! /s But at least I don't have access to it, or any creds that matter.
So, I've been running my phone's connection through a tor vpn and sharing that with my lappy. It works, provides a little bit of security, but it's slow as crap. GET YOUR SHIT TOGETHER, REGUS.
AND WHILE YOU'RE AT IT, CLEAN THE SHIT OUT OF THE FUCKING BATHROOM FFS.
Ugh. $12/day to work in a freaking wind tunnel (thanks, a/c; you're loud as fuck and barely work), hear other people's phone conversations through two freaking walls, pee in a bathroom that perpetually smells like diarrhea, and allow anyone and everyone within a 50+ meter radius to listen to everything my computer says.
Oh, they also 'forgot' to furnish my office, like they promised. Three freaking times. At least I have a table and chair. 🙄
Desk? What desk?
Fucking hell.17 -
Boss comes in and gives me some js code for syncing data (he hacked it together the other day, really messy with like 5 callback lamdas stacked into each other)
Boss: Make it faster and more reliable and add some progress indicator
So i look at the code and he literally pulls all the data as one json (20+ MiB). Server needs multiple minutes to generate the response (lots of querys), sometimes even causing timeouts....
So i do what everyone would do and clean up the code, split the request into multiple ones, only fetching the necessary data and send the code back to my boss.
He comes in and asks me what all this complexity is about. And why i need 5 functions to do what he did in one. (He didn't -.-). He says he only told me to "make it faster and show progress" not "to split everything up".
So I ask him how he wants to do this over HTTP with just one request...
His response: "I don't care make it work!".
Sometimes i hate my job -.-11 -
Wow... this is the perfect week for this topic.
Thursday, is the most fucked off I’ve ever been at work.
I’ll preface this story by saying that I won’t name names in the public domain to avoid anyone having something to use against me in court. But, I’m all for the freedom of information so please DM if you want to know who I’m talking about.
Yesterday I handed in my resignation, to the company that looked after me for my first 5 years out of university.
Thursday was my breaking point but to understand why I resigned you need a little back story.
I’m a developer for a corporate in a team of 10 or so.
The company that I work for is systemically incompetent and have shown me this without fail over the last 6 months.
For the last year we’ve had a brilliant contracted, AWS Certified developer who writes clean as hell hybrid mobile apps in Ion3, node, couch and a tonne of other up to the minute technologies. Shout out to Morpheus you legend, I know you’re here.
At its core my job as a developer is to develop and get a product into the end users hands.
Morpheus was taking some shit, and coming back to his desk angry as fuck over the last few months... as one of the more experienced devs and someone who gives a fuck I asked him what was up.
He told me, company want their mobile app that he’s developed on internal infrastructure... and that that wasn’t going to work.
Que a week of me validating his opinion, looking through his work and bringing myself up to speed.
I came to the conclusion that he’d done exactly what he was asked to, brilliant Work, clean code, great consideration to performance and UX in his design. He did really well. Crucially, the infrastructure proposed was self-contradicting, it wouldn’t work and if they tried to fudge it in it would barely fucking run.
So I told everyone I had the same opinion as him.
4 months of fucking arguing with internal PMs, managers and the project team go by... me and morpheus are told we’re not on the project.
The breaking point for me came last Wednesday, given no knowledge of the tech, some project fannies said Morpheus should be removed and his contract terminated.
I was up in fucking arms. He’d done everything really well, to see a fellow developer take shit for doing his job better than anyone else in [company] could was soul destroying.
That was the straw on the camels back. We don’t come to work to take shit for doing a good job. We don’t allow our superiors to give people shit in our team when they’re doing nothing but a good job. And you know what: the opinion of the person that knows what they’re talking about is worth 10 times that of the fools who don’t.
My manager told me to hold off, the person supposed to be supporting us told me to stand down. I told him I was going to get the app to the business lead because he fucking loves it and can tell us if there’s anything to change whilst architecture sorts out their outdated fucking ideas.
Stand down James. Do nothing. Don’t do your job. Don’t back Morpheus with his skills and abilities well beyond any of ours. Do nothing.
That was the deciding point for me, I said if Morpheus goes... I go... but then they continued their nonsense, so I’m going anyway.
I made the decision Thursday, and Friday had recruiters chomping at the bit to put the proper “senior” back in my title, and pay me what I’m worth.
The other issues that caused me to see this company in it’s true form:
- I raised a key security issue, documented it, and passed it over to the security team.
- they understood, and told the business users “we cannot use ArcGIS’ mobile apps, they don’t even pretend to be secure”
- the business users are still using the apps going into the GDPR because they don’t understand the ramifications of the decisions they’re making.
I noticed recently that [company] is completely unable to finish a project to time or budget... and that it’s always the developers put to blame.
I also noticed that middle management is in a constant state of flux with reorganisations because in truth the upper managers know they need to sack them.
For me though, it was that developers in [company], the people that know what they’re talking about; are never listened to.
Fuck being resigned to doing a shit job.
Fuck this company. On to one that can do it right.
Morpheus you beautiful bastard I know you’ll be off soon too but I also feel I’ve made a friend for life. “Private cloud” my arse.
Since making the decision Thursday I feel a lot more free, I have open job offers at places that do this well. I have a position of power in the company to demand what I need and get it. And I have the CEO and CTO’s ears perking up because their department is absolutely shocking.
Freedom is a wonderful feeling.13 -
Today we moved to a new office in the next building.
It is a very big upgrade, since it is bigger and nicer.
So I ask where the bathroom is and go in the direction told, and the bathroom is so nice! Huge mirror, everything is clean and new.
On the way out I find that it was the girls bathroom....15 -
a client wants a nice clean website that doesn't look like it's 10 years old. then they ask for like everything that made the old site terrible5
-
I was assigned a girl that's new to the industry (but with a master's degree).
I had high hopes, as people told me she is quite a curious fellow. As I am just a junior Dev with 2 yrs of experience Ididn't know if I could handle her.
We started working on a project. Which was a change request for a previous project I had developed. I gave her 2 days to read and understand the functional requirements of previous project and this CR. Then explained everything too.
Then I gave here another 3 days to read the previous design document to learn how this code worked.
I asked her multiple times if she has any questions. She said she got everything. Cool.
One week goes by. We start to code the CR while she is shadowing me. I explained why we chose one of the two approaches. And why we are making any of the changes. She as usual nodded in agreement.
I asked her to create Unit test cases.
She couldn't write even one. So, I quizzed her, she knew nothing about the project! Nothing at all!
FUCK!
I wrote down the test cases in short hand and told her to document it (by reffering previous UTC). She wrote the test cases in short hand in the document. And she reused the previous document and did not even clean it out.
After fixing the document I asked her to execute them. But nope, she doesn't even know how the application flows for this project. FML.
It took her 3 days to write and test 8 test cases.
Now she is assigned to me in another project. This one is more complicated. And I gave her a function skeleton to complete. I figured that it will take me 15 minutes so let's give her a day. But nope. 3 days no progress.
I get it someone might not be quick to grasp something. But you know what grinds my gears? That even after this you act like a know it all! Fuck! For someone who hasn't worked with her she is the most dilligent developer.
How the fuck does someone survive masters and suck so bad!22 -
I don't want to write clean code anymore :(
I read Clean Code, Clean Coder, and watched many uncle bob's videos, and I was able to apply best practices and design patterns
I created many systems that really stood the test of time...
Management was kind enough to introduce me to uncle bob clean code in the first place, letting us watch it during work hours. after like one year, my code improved 400% minimum because I am new and I needed guidance from veterans...
That said, to management I am very slow, compared to this other guy, they ask me for a feature and my answer would be like "sure, we need to update the system because it just doesn't support that right now, it is easy though it would take 2 days tops"
they ask the same thing for the other guy : "ok let me see what I can do", 1 hour later, on slack, he writes : done. he slaps bunch of if-statement and make special case that will serve the thing they asked for.
oh 'cool' they say -> but it doesn't do this -> it needs to do that -> ok there is a new bug,-> it doesn't work in build mode-> it doesn't work if you are logged in as a guest, now its perfect ! -> it doesn't work on Android -> ok it works on android but now its not perfect anymore.
and they feel like he is fast (and to be fair he is), this feature? done. ok new bugs? solved. Android compatibility ? just one day ... it looks like he is doing doing doing.
it ends up taking double the time I asked for, and that is not to mention the other system affected during this entire process, extra clean up that I have to do, even my systems that stood the test of time are now ruined and cannot be extracted to other projects. because he just slaps whatever bools and if statements he needs inside any system, uses nothing but Singleton pattern on everything. our app will never be ready-for-business, this I can swear. its very buggy. and to fix it, it needs a change in mentality, not in code.
---------------
uncle bob said : write your code the right way, and the management will see that your code generates less errors, with time, you will earn respect even though they will feel you are slow at first.
well sorry uncle, I've been doing it for a year, my image got bad, you are absolutely right, only when there is no one else allowed to drop a giant shit inside your clean code.
note: we don't really have a technical lead.
-------------------
its been only two days since my new "hack n' slash" meta, the management is already kind of "impressed" ... so I'll keep hacking and slashing until I find a better job.9 -
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 -
I was recuited to do devops work for a client. The project started in late '14. Until mid '15 I was forced to just sit there and do nothing. And I mean nothing. The ops team needed my help but the project lead didn't allow that (endless discussions). Somewhere around the end of '15 I could start to work and quickly learned that I had to report to two leads that couldn't disagree more on what to do and how to do it. I also learned that the companies mentality is "Clean me but don't get me wet". So the ops team demands a lot but is really uncooperative with everything. So I am currently sitting between three grindstones and everything I do is worthless. Because nobody agrees with anybody and I cannot fulfill my job for which I have been hired: Make ops more efficient because they are drowning in manual work. My job is further complicated by the following facts: This company uses no standard whatsoever but their own. Thru this they have created a Rube-Goldberg-Machine. But they think their system is the greatest in the world and the only one that makes sense. Which makes automation pointless because it is not maintainable. They call it diversity and they say that it is the clear reason why automation is not for them even though they schedule meeting after meeting in which they discuss about how to automate things. But in general they do just block everything useful and sabotage my work. And behind my back they make me the reason for the fail. Every real decision is blocked anyway. Also the ops guys think they are the leetest in the world. And everything they invent is above and beyond. If you ask them why they have over 400 VLANs for example (in a company of unter a thousand employees) they stutter and stumble because they cannot explain their complicated shit. They also change their decisions like underwear. Another really "kewl" thing they just did: They hired a devops engineer and everybody loves him. During the interview he said that he has no prior experience with devops whatsoever and it will take him around six month to get started on the basics of devops. I could go on for hours here about the insanity of this company that in my opinion will cease to exist within the next 5 years, if you ask me.
Long story short I am getting out of there by the end of march and will be on sabbatical shortly after because I am burned out. And I mean burned out. Not like "Oh I am burned out". I mean really burned out, with health problems and everything. Another external guy got out here last month because of the same health conditions.4 -
The goal of one of my CS assignments was to learn about makefile, and during the last minute - literally while I was waiting for the professor to come over - I was just making everything presentable and getting rid of noise. I figured putting rm -r *.* in clean would be a good way to get rid of all the debug output.
To be fair, my project folder was indeed pretty clean afterwards.7 -
I'm currently rewriting perfectly clean and functioning Scala code in Java (because "Enterprise", yay). The amount of unnecessary boilerplate I have to add is insane. I'm not even talking big complicated code but two liners or the lack of simple things like a range from 5 to 10.
Why do I have to write
List<Position> occupiedPositions = placedEntities.stream()
.flatMap((pe) -> pe.occupiedPositions().stream())
.collect(Collectors.toList());
instead of simply
val occupiedPositions = placedEntities.flatMap(_.occupiedPositions)
Why on earth does `occupiedPositions.distinct` suddenly become a monstrosity like `occupiedPositions.stream().distinct().collect(Collectors.toList())` where the majority of code is pure boilerplate? And this is supposed to be the new and better Java8 api which people use as evidence that Java is now suddenly "functional" (yeah no, just no).
Why do APIs that annotate parameters with @Nullable throw NullPointerExceptions when I pass a null? Why does the compiler not help prevent such stupidity? Why do we use static typing PLUS those annotations and it still crashes at runtime like every damn dynamic, interpreted language out there? That's not unfortunate, it's a complete waste of time.
Why is a simple idea like a range from x to 10 (in scala literally `x to 10`) not by default included in Java? There's Guava's version of Range which does not have a helper for integer ranges (even though they are the most used ones). Then there's apache.commons version which _has_ a helper for integers, but is strangely not iterable (wtf I don't even...).
Speaking of Iterable: How difficult could it be to convert an abstract Iterable<T> into a concrete List<T>? In scala it's surprisingly `someIterable.toList`. I found nothing like that so I took to stackoverflow where I found a thread in which people suggested everything from writing your own ListUtils helper class, using Guava (which is a huge dependency!) to using the new Java8 features inline (which is still about three lines long). I didn't know this was such a hard problem in computer science, TIL.
How anyone can be productive in this abomination of a language is beyond me now, even though I've used it for many years while learning to code (back then I didn't know there were much better ways to do things). The only good part is that I have to endure this nonsense for only about 3 days longer then I'm free again!12 -
Took me hours to set this shit up and finally everything is clean and ready for work
Thank you
Good luck💦little one💦13 -
When I discovered Clean Code, design patterns, TDD and BDD. It just clicked. Ever since everything build so easy and obviously. I no longer have most of the code problems folks rant here about.
That's when it came to me: it's not enough to know how to write code. To climb off those amateur shoes I must adopt those methodologies, so that the code would be decoupled from me, from my style, and I've got to let tests drive my code rather than vice versa to have a flexible and reliable codebase that is cheap and easy to maintain/extend.40 -
!rant
So I am building a website and already finished it and ready to be deployed.
Got server access and found that there are many other websites files and folder.
Note : multiple copies of website that I am working on.
So I raise my concern with client about which folder is actually handling the website. She contact the old dev guy and got the webroot for that website. She told me to delete everything and clean it up and make tge current websites available.
I realize that there are many other websites may rely on those files and folder and inform about the consequences. And finally told her I will not touch any files except for the website I am working on.
So, I deployed the website and works good as expected. After 3 weeks clients comes back with an issue that one of her websites is notworking and trying to blame me for it.
Fyi : before my deploymemt she says that she will talk to hosting providers to clean their webspace. I am not sure on that yet.
So I tried to do auditing and found that after 2 days frm my deployment some has already wiped everything from those other websites.
I showed my audits and its someone did it.
You should contact your hosting provider or the other dev who she contacted for wiping.
From the begining I am telling that lady to take backups. She said no need.
The reason I didnt took it because I am not working on those website and obviously client isnt going to pay me for those back.
There is still more to go waiting for her resonses.3 -
Fuckity fuck.
It's weekend.
To all you abusive, micromanaging arseholes… Light a magnesium torch up in your arse and make us smile.
To all you motherfucking dumb cunts who can play 8 hours instead of working, but are unable to cope with the simple task of documentation:
Resign and stay away from civilization as far as you can. Alternative: Self castration and removal from the gene pool
To all the narcisstic workaholics who think everyone must be available everytime... Hop into a meat grinder, it's nice and cozy - I've been told.
It's weekend and I've finished everything. First time in half a year that I can return to a normal weekend schedule.
Dobby is free. And Dobby will stuff a sock so far up your arse that you can lick it clean if you disturb dobby.
:) *happy smile*7 -
Greetings from Denmark! Thought I would join after a lot of lurking, and tell a little story, as to how I fucked up when I started in my company.
I've been there around 10 days and had never used git besides just add, commit, and push. I was told to work in feature branches, and I did, I was playing around trying to learn, and got some merge conflicts, made a lot of unnecessary commits etc. I was told to clean it up before I merged into dev. And as I didn't know git I asked how I could do that. I was told I could force push in my branch, and that it was okay as long as it was only inside my branch. I tried that and saw my command line force pushing to all branches including dev, and master. My heart skipped a couple of beats, and I went directly to my Lead developer and asked what happend. He got a bit mad at me for pushing in dev and master, and override all the commits there had been made. I tried to explain I didn't he did not really believe me, I was so nervous. Luckily everything came back to normal with people's local branches being pushed etc. But that day I learned about git's push matching config, and my lead was luckily only mad in the heat of the moment and even apologized for getting mad. Just one of my little fuck up's in my short time as a developer7 -
Every time I have to deal with my boss code and lack of convention and everything that makes a clean code I just want to scream like a bitch and punch him in the face without minding breaking my own hand.8
-
I'll use this topic to segue into a related (lonely) story befitting my mood these past weeks.
This is entire story going to sound egotistical, especially this next part, but it's really not. (At least I don't think so?)
As I'm almost entirely self-taught, having another dev giving me good advice would have been nice. I've only known / worked with a few people who were better devs than I, and rarely ever received good advice from them.
One of those better devs was my first computer science teacher. Looking back, he was pretty average, but he held us to high standards and gave good advice. The two that really stuck with me were: 1) "save every time you've done something you don't want to redo," and 2) "printf is your best debugging friend; add it everywhere there's something you want to watch." Probably the best and most helpful advice I've ever received 😊
I've seen other people here posting advice like "never hardcode" or "modularity keeps your code clean" -- I had to discover these pretty simple concepts entirely on my own. School (and later college) were filled with terrible teachers and worse students, and so were almost entirely useless for learning anything new.
The only decent dev I knew had brilliant ideas (genetic algorithms, sandboxing, ...) before they were widely used, but could rarely implement them well because he was generally an idiot. (Idiot sevant, I think? Definitely the idiot part.) I couldn't stand him. Completely bypassing a ridiculously long story, I helped him on a project to build his own OS from scratch; we made very impressive progress, even to this day. Custom bootloader, hardware interfacing, memory management, (semi) sandboxed processes, gui, example programs ...; we were in highschool. I'm still surprised and impressed with what we accomplished.
But besides him, almost every other dev I met was mediocre. Even outside of school, I went so many years without having another competent dev to work with. I went through various jobs helping other dev(s) on their projects (or rewriting them), learning new languages/frameworks almost every time: php, pascal, perl, zend, js, vb, rails, node, .... I learned new concepts occasionally (which was wonderful) but overall it was just tedious and never paid well because I was too young to be taken seriously (and female, further exacerbating it). On the bright side, it didn't dwindle my love for coding, and I usually spent my evenings playing with projects of my own.
The second dev (and one one of the best I've ever met) went by Novo. His approach to a game engine reminded me of General Relativity: Everything was modular, had a rich inheritance tree, and could receive user input at any point along said tree. A user could attach their view/control to any object. (Computer control methods could be attached in this way as well.) UI would obviously change depending on how the user could interact and the number of objects; admins could view/monitor any of these. Almost every object / class of object could talk to almost everything else. It was beautiful. I learned so much from his designs. (Honestly, I don't remember the code at all, and that saddens me.) There were other things, too, but that one amazed me the most.
I havent met anyone like him ever again.
Anyway, I don't know if I can really answer this week's question. I definitely received some good advice while initially learning, but past that it's all been through discovering things on my own.
It's been lonely. ☹2 -
When managers look at my code, it’s shit, it’s over complicated, it’s overly difficult to read, it took too long, it’s too much for a simple ticket, i handled too many edge cases, we’ll never need most of it, why did I bother making it extensible when it’ll never need to change, how dare I use “unless”, why did I bother writing all these comments, why did I update the documentation that nobody reads because it’s outdated, etc. They say I should be more like the legendary devs and push janky code quickly, and complain that I don’t have any flops (problems in prod) like those are a good thing.
When my coworkers look at my code, they say it’s clean, amazingly easy to read, a monster feature that’s somehow still a joy to review and work on, it makes their lives easier, that it does exactly what it should in all cases, that they learned something from reading it, and thank me for the comments and documentation. And marvel that I finished it so well in so little time.
Am I bragging? Not intentionally; I’ve heard these things repeatedly since I started here, and the contrast between the above is so stark.
In reality, the managers are just idiots who were promoted far above their competence, and make everything worse. (Gee, who woulda thought?) It’s just so frustrating.14 -
New job was killing me. remote team has an 8 hour time difference to us, and no understanding of it. Constant last minute invites to meetings at 10pm my time. Made worse by the fact that many were unnecessary, duplicates or just plain pointless. So for the last few weeks of last year I made in my mission to clean it up.
New plan: move my hours around on Mondays, stay later, move all the meetings back to back and get everything out of the way for the rest of the week.
First day back and heres how the new plan is shaping out:
- 5:30pm meeting organiser decided we actually need 2 almost identical meetings instead. Sends out a big team meeting for the same time as my 1st meeting at 5pm, as well as the existing one for 5:30pm. Already agreed on by everyone else, so had to go.
- Cancelled my original 5pm meeting for today, said we'll re-arrange it for earlier going forward (not enough time for notice for remote team).
- Went into my new 5pm meeting, turns out we don't need 2. Got everything done by 5:30pm.
- Just to be safe though, a new invite will be sent around for the hour of 5 - 6 "Just in case".
- My 6pm meeting just got cancelled as she has a conflict (despite setting it up 2 months ago)
- Now I have to wait around, after hours for my 6:30 meeting.
..... believe it or not, this is progress.
Happy new year!6 -
Today is the first time my pc fully crashed. I keep always everything updated and never had a problem. I didn't know what went wrong. After I opened my pc up I found out that a mouse family was living in my pc. Maybe I should clean the hardware more8
-
Two days ago I went to change an Nvidia driver on my Linux mint partition and it ended up breaking everything, all my fault because I'm so new to Linux, anyways to dig that hole deeper I looked for ways to fix it, found some random command that managed to destroy mint even more lol. I had no start menu and cinnamon kept going into recovery mode.
But the next day after spending time working through what to do I managed to fix it, I basically downloaded mintmenu again and uninstalled the graphics driver
All in all I think I've come closer to learning how fun Linux is, it was fun fixing what I broke rather than actually clean installing mint again.
Morale of the story: don't randomly use commands found on the net that has 3 upvotes lol9 -
Okay guys, this is it!
Today was my final day at my current employer. I am on vacation next week, and will return to my previous employer on January the 2nd.
So I am going back to full time C/C++ coding on Linux. My machines will, once again, all have Gentoo Linux on them, while the servers run Debian. (Or Devuan if I can help it.)
----------------------------------------------------------------
So what have I learned in my 15 months stint as a C++ Qt5 developer on Windows 10 using Visual Studio 2017?
1. VS2017 is the best ever.
Although I am a Linux guy, I have owned all Visual C++/Studio versions since Visual C++ 6 (1999) - if only to use for cross-platform projects in a Windows VM.
2. I love Qt5, even on Windows!
And QtDesigner is a far better tool than I thought. On Linux I rarely had to design GUIs, so I was happily surprised.
3. GUI apps are always inferior to CLI.
Whenever a collegue of mine and me had worked on the same parts in the same libraries, and hit the inevitable merge conflict resolving session, we played a game: Who would push first? Him, with TortoiseGit and BeyondCompare? Or me, with MinTTY and kdiff3?
Surprise! I always won! 😁
4. Only shortly into Application Development for Windows with Visual Studio, I started to miss the fun it is to code on Linux for Linux.
No matter how much I like VS2017, I really miss Code::Blocks!
5. Big software suites (2,792 files) are interesting, but I prefer libraries and frameworks to work on.
----------------------------------------------------------------
For future reference, I'll answer a possible question I may have in the future about Windows 10: What did I use to mod/pimp it?
1. 7+ Taskbar Tweaker
https://rammichael.com/7-taskbar-tw...
2. AeroGlass
http://www.glass8.eu/
3. Classic Start (Now: Open-Shell-Menu)
https://github.com/Open-Shell/...
4. f.lux
https://justgetflux.com/
5. ImDisk
https://sourceforge.net/projects/...
6. Kate
Enhanced text editor I like a lot more than notepad++. Aaaand it has a "vim-mode". 👍
https://kate-editor.org/
7. kdiff3
Three way diff viewer, that can resolve most merge conflicts on its own. Its keyboard shortcuts (ctrl-1|2|3 ; ctrl-PgDn) let you fly through your files.
http://kdiff3.sourceforge.net/
8. Link Shell Extensions
Support hard links, symbolic links, junctions and much more right from the explorer via right-click-menu.
http://schinagl.priv.at/nt/...
9. Rainmeter
Neither as beautiful as Conky, nor as easy to configure or flexible. But it does its job.
https://www.rainmeter.net/
10 WinAeroTweaker
https://winaero.com/comment.php/...
Of course this wasn't everything. I also pimped Visual Studio quite heavily. Sam question from my future self: What did I do?
1 AStyle Extension
https://marketplace.visualstudio.com/...
2 Better Comments
Simple patche to make different comment styles look different. Like obsolete ones being showed striked through, or important ones in bold red and such stuff.
https://marketplace.visualstudio.com/...
3 CodeMaid
Open Source AddOn to clean up source code. Supports C#, C++, F#, VB, PHP, PowerShell, R, JSON, XAML, XML, ASP, HTML, CSS, LESS, SCSS, JavaScript and TypeScript.
http://www.codemaid.net/
4 Atomineer Pro Documentation
Alright, it is commercial. But there is not another tool that can keep doxygen style comments updated. Without this, you have to do it by hand.
https://www.atomineerutils.com/
5 Highlight all occurrences of selected word++
Select a word, and all similar get highlighted. VS could do this on its own, but is restricted to keywords.
https://marketplace.visualstudio.com/...
6 Hot Commands for Visual Studio
https://marketplace.visualstudio.com/...
7 Viasfora
This ingenious invention colorizes brackets (aka "Rainbow brackets") and makes their inner space visible on demand. Very useful if you have to deal with complex flows.
https://viasfora.com/
8 VSColorOutput
Come on! 2018 and Visual Studio still outputs monochromatically?
http://mike-ward.net/vscoloroutput/
That's it, folks.
----------------------------------------------------------------
No matter how much fun it will be to do full time Linux C/C++ coding, and reverse engineering of WORM file systems and proprietary containers and databases, the thing I am most looking forward to is quite mundane: I can do what the fuck I want!
Being stuck in a project? No problem, any of my own projects is just a 'git clone' away. (Or fetch/pull more likely... 😜)
Here I am leaving a place where gitlab.com, github.com and sourceforge.net are blocked.
But I will also miss my collegues here. I know it.
Well, part of the game I guess?7 -
TLDR - you shouldn't expect common sense from idiots who have access to databases.
I joined a startup recently. I know startups are not known for their stable architecture, but this was next level stuff.
There is one prod mongodb server.
The db has 300 collections.
200 of those 300 collections are backups/test collections.
25 collections are used to store LOGS!! They decided to store millions of logs in a nosql db because setting up a mysql server requires effort, why do that when you've already set up mongodb. Lol 😂
Each field is indexed separately in the log.
1 collection is of 2 tb and has more than 1 billion records.
Out of the 1 billion records, 1 million records are required, the rest are obsolete. Each field has an index. Apparently the asshole DBA never knew there's something called capped collection or partial indexes.
Trying to get approval to clean up the db since 3 months, but fucking bureaucracy. Extremely high server costs plus every week the db goes down since some idiot runs a query on this mammoth collection. There's one single set of credentials for everything. Everyone from applications to interns use the same creds.
And the asshole DBA left, making me in charge of handling this shit now. I am trying to fix this but am stuck to get approval from business management. Devs like these make me feel sad that they have zero respect for their work and inability to listen to people trying to improve the system.
Going to leave this place really soon. No point in working somewhere where you are expected to show up for 8 hours, irrespective of whether you even switch on your laptop.
Wish me luck folks.3 -
So I'm back from vacation! It's my first day back, and I'm feeling refreshed and chipper, and motivated to get a bunch of things done quickly so I can slack off a bit later. It's a great plan.
First up: I need to finish up tiny thing from my previous ticket -- I had overlooked it in the description before. (I couldn't test this feature [push notifications] locally so I left it to QA to test while I was gone.)
It amounted to changing how we pull a due date out of the DB; some merchants use X, a couple use Y. Instead of hardcoding them, it would use a setting that admins can update on the fly.
Several methods deep, the current due date gets pulled indirectly from another class, so it's non-trivial to update; I start working through it.
But wait, if we're displaying a due date that differs from the date we're actually using internally, that's legit bad. So I investigate if I need to update the internals, too.
After awhile, I start to make lunch. I ask my boss if it's display-only (best case) and... no response. More investigating.
I start to make a late lunch. A wild sickness appears! Rush to bathroom; lose two turns.
I come back and get distracted by more investigating. I start to make an early dinner... and end up making dinner for my monster instead.
Boss responds, tells me it's just for display (yay!) and that we should use <macro resource feature> instead.
I talk to Mr. Product about which macros I should add; he doesn't respond.
I go back to making lunch-turn-dinner for myself; monster comes back and he's still hungry (as he never asks for more), so I make him dinner.
I check Slack again; Mr. Product still hasn't responded. I go back to making dinner.
Most of the way through cooking, I get a notification! Product says he's talking it through with my boss, who will update me on it. Okay fine. I finish making dinner and go eat.
No response from boss; I start looking through my next ticket.
No response from boss. I ping him and ask for an update, and he says "What are you talking about?" Apparently product never talked to bossmang =/ I ask him about the resources, and he says there's no need to create any more as the one I need already exists! Yay!
So my feature went from a large, complex refactor all the way down to a -1+2 diff. That's freaking amazing, and it only took the entire day!
I run the related specs, which take forever, then commit and push.
Push rejected; pull first! Fair, I have been gone for two weeks. I pull, and git complains about my .gitignore and some local changes. fine, whatever. Except I forgot I had my .gitignore ignored (skipped worktree). Finally figure that out, clean up my tree, and merge.
Time to run the specs again! Gems are out of date. Okay, I go run `bundle install` and ... Ruby is no longer installed? Turns out one of the changes was an upgrade to Ruby 2.5.8.
Alright, I run `rvm use ruby-2.5.8` and.... rvm: command not found. What. I inspect the errors from before and... ah! Someone's brain fell out and they installed rbenv instead of the expected rvm on my mac. Fine, time to figure it out. `rbenv which ruby`; error. `rbenv install --list`; skyscraper-long list that contains bloody everything EXCEPT 2.5.8! Literally 2.5 through 2.5.7 and then 2.6.0-dev. asjdfklasdjf
Then I remember before I left people on Slack made a big deal about upgrading Ruby, so I go looking. Dummy me forgot about the search feature for a painful ten minutes. :( Search found the upgrade instructions right away, ofc. I follow them, and... each step takes freaking forever. Meanwhile my children are having a yelling duet in the immediate background, punctuated with screams and banging toys on furniture.
Eventually (seriously like twenty-five minutes later) I make it through the list. I cd into my project directory and... I get an error message and I'm not in the project directory? what. Oh, it's a zsh thing. k, I work around that, and try to run my specs. Fail.
I need to update my gems; k. `bundle install` and... twenty minutes later... all done.
I go to run my specs and... RubyMine reports I'm using 2.5.4 instead of 2.5.8? That can't be right. `ruby --version` reports 2.5.8; `rbenv version` reports 2.5.8? Fuck it, I've fought with this long enough. Restarting fixes everything, right? So I restart. when my mac comes back to life, I try again; same issue. After fighting for another ten minutes, I find a version toggle in RubyMine's settings, and update it to 2.5.8. It indexes for five minutes. ugh.
Also! After the restart, this company-installed surveillance "security" runs and lags my computer to hell. Highest spec MacBook Pro and it takes 2-5 seconds just to switch between desktops!
I run specs again. Hey look! Missing dependency: no execjs. I can't run the specs.
Fuck. This. I'll just push and let the CI run specs for me.
I just don't care anymore. It's now 8pm and I've spent the past 11 hours on a -1+2 diff!
What a great first day back! Everything is just the way I left it.rant just like always eep; 1 character left! first day back from vacation miscommunication is the norm endless problems ruby6 -
I think I want to quit my first applicantion developer job 6 months in because of just how bad the code and deployment and.. Just everything, is.
I'm a C#/.net developer. Currently I'm working on some asp.net and sql stuff for this company.
We have no code standards. Our project manager is somewhere between useless and determinental. Our clients are unreasonable (its the government, so im a bit stifled on what I can say.) and expect absurd things from us. We have 0 automated tests and before I arrived all our infrastructure wasn't correct to our documentation... And we barely had any documentation to begin with.
The code is another horror story. It's out sourced C# asp.net, js and SQL code.. And to very bad programmers in India, no offense to the good ones, I know you exist. Its all spagheti. And half of it isn't spelled correctly.
We have a single, massive constant class that probably has over 2000 constants, I don't care to count. Our SQL projects are a mess with tons of quick fix scripts to run pre and post publishing. Our folder structure makes no sense (We have root/js and root/js1 to make you cringe.) our javascript is majoritly on the asp.net pages themselves inline, so we don't even have minification most of the time.
It's... God awful. The result of a billion and one quick fixes that nobody documented. The configuration alone has to have the same value put multiple times. And now our senior developer is getting the outsourced department to work on moving every SINGLE NORMAL STRING INTO THE DATABASE. That's right. Rather then putting them into some local resource file or anything sane, our website will now be drawing every single standard string from the database. Our SENIOR DEVELOPER thinks this is a good idea. I don't need to go into detail about how slow this is. Want to do it on boot? Fine. But they do it every time the page loads. It's absurd.
Our sql database design is an absolute atrocity. You have to join several tables together just to get anything done. Half of our SP's are failing all the time because nobody really understands the design. Its gloriously awful its like.. The epitome of failed database designs.
But rather then taking a step back and dealing with all the issues, we keep adding new features and other ones get left in the dust. Hell, we don't even have complete browser support yet. There were things on the website that were still running SILVERLIGHT. In 2019. I don't even know how to feel about it.
I brought up our insane technical debt to our PM who told me that we don't have time to worry about things like technical debt. They also wouldn't spend the time to teach me anything, saying they would rather outsource everything then take the time to teach me. So i did. I learned a huge chunk of it myself.
But calling this a developer job was a sick, twisted joke. All our lives revolve around bugnet. Our work is our BN's. So every issue the client emails about becomes BN's. I haven't developed anything. All I've done is clean up others mess.
Except for the one time they did have me develop something. And I did it right and took my time. And then they told me it took too long, forced me to release before it was ready, even though I had never worked on what I was doing before. And it worked. I did it.
They then told me it likely wouldn't even be used anyway. I wasn't very happy at all.
I then discovered quickly the horrors of wanting to make changes on production. In order to make changes to it, we have to... Get this
Write a huge document explaining why. Not to our management. To the customer. The customer wants us to 'request' to fix our application.
I feel like I am literally against a wall. A huge massive wall. I can't get constent from my PM to fix the shitty code they have as a result of outsourcing. I can't make changes without the customer asking why I would work on something that doesn't add something new for them. And I can't ask for any sort of help, and half of the people I have to ask help from don't even speak english very well so it makes it double hard to understand anything.
But what can I do? If I leave my job it leaves a lasting stain on my record that I am unsure if I can shake off.
... Well, thats my tl;dr rant. Im a junior, so maybe idk what the hell im talking about.rant code application bad project management annoying as hell bad code c++ bad client bad design application development16 -
Bob Martin. His books Clean Code and the Clean Coder, and all his talks on architecture, SOLID and TDD. I could listen to him talk for days, and he taught me everything i know about writing clean code.2
-
1. Being the only single wringable neck to keep 40+ websites afloat, plus 3-5 new ones coming in or being built each month all with an overseas team that uses Google Translate to communicate and who are also in an active war zone.
2. Being fired for being “too old” in my mindset about how to do things. I had just turned 40 and my boss was 24 and distracted by all the shiny frameworks when all the marketing person needed was a simple off-the-shelf CMS-based site to publish company offers.
3. Jumping into the middle of a HUGE clusterfuck of thousands of Slack channels, wikis, and Jiras and an outmoded content management system while trying to learn the ropes from a guy who has no time to teach properly and then who abruptly leaves the company with scant documentation on everything that he held mainly in his own head. And there was no way I.T. was going to allow him to have the ability in Zoom to make a video of his training sessions, for no discernibly good security reason at all.
4. Working for only 9 months at two separate companies for two separate frat dudes who could have been clones of each other and whose egos made them into seagull managers* in every sense.
5. Being told by a new employer that they’re hiring me to be the head of their new web team only to find myself shuttled off to obscure contractor roles at MegaCorp Inc and AcmeCorp Inc.
I have 17 more years of this shit ahead of me before I can retire.
*If you haven’t heard of this: Someone who flies in, makes a lot of noise, shits all over everything, and flies out leaving everyone else to clean up the mess.2 -
I remember making a product for my customer that was using a db
When I tested the product before showing it to the client, everything was good and fast and clean.
When I gave it to my customer, he was very happy, after few days he emails me about the product was very slow, I checked the database and it had a lot of *testing* shit made by him and when I asked my customer why the db has so much useless things he told me that he was learning how to it. I had no words, can't you just create a database MongoDB, MySQL or whatever you want to learn locally and play with it? Then he emails me later about a fucking refund because HE fucked up with the permissions of the db5 -
Be me
Got on clean Keto, dietitian and everything, been low carb for damn near two years now, constant checkups to see that I am good. I am
Go from 245 lbs (108 kilograms) to 179 lbs(81 k) in the span of time.
Clothes don't fit. Get new ones
Got weights to train at home, cuz there are sweaty people at gyms, and I ain't bout that life fam.
Wake up at 4 or 5 depending on the training routine. Mixed with proper cardio.
Get to work. Unable to have breakfast cuz cafeteria is closed.
Fuck
I can feel my body eating itself.
Looks good af naked tho
die in front of the keyboard13 -
So one rant reminded me of a situation I whent through like 10 years ago...
I'm not a dev but I do small programs from time to time...
One time I was hired to pass a phone book list from paper to a ms Access 97 database...
On my old laptop I could only add 3 to 5 records cause MS access doesn't clean after itself and would crash...
So I made an app (in vb6) , to easily make records, was fast, light and well tabbed.
But now I needed a form to edit the last record when I made a mistake...
Then I wanted a form to check all the records I made.
Well that gave me an idea and presented the software to the client... A cheesy price was agreed for my first freelance sell...
After a month making it perfect and knowing the problems the client would had I made a admin form to merge all the databases and check for each record if it would exist.... I knew the client would have problems to merge hundreds of databases....
When it was done... The client told me he didn't need the software anymore.... So I gave it to a friend to use as an client dabatase software... It was perfect for him.
One month later the client called me because he couldn't merge the databases...
I told him I was already working in a company. That my software was ready to solve his problem, but I got mad and deleted everything...
He had to pay almost 20 times more for a software company to make the same software but worst... Mine would merge and check all the databases in a folder... Their's had to pick one by one and didn't check for duplicates... So he had to pay even more for another program to delete duplicates...
That's why I didn't follow programming as a freelance... Lots of regrets today...
Could be working at home, instead had a burn out this week cause of overwork...
Sorry for the long rant.2 -
This is something I'll never forget.
I'm a senior UI engineer. I was working at a digital agency at the time and got tasked with refactoring and improving an existing interface from a well known delivery company.
I open the code and what do I find? Indentation. But not in the normal sense. The indentation only went forward, randomly returning a bunch of tabs back in the middle of the file a few times, but never returning to its initial level after closing a tag or function, both on HTML and JS.
Let that sink in for a minute and try to imagine what it does to your editor with word wrapping (1 letter columns), and without (absurd horizontal scrolling).
Using Sublime at the time, ctrl+shift+P, reindent. Everything magically falls beautifully into place. Refactor the application, clean up the code, document it, package it and send it back (zip files as they didn't want to provide version control access, yay).
The next day, we get a very angry call from the client saying that their team is completely lost. I prove to the project manager that my code is up to scratch, running fine, no errors, tested, good performance. He returns to the client and proves that it's all correct (good PM with decent tech knowledge).
The client responds with "Yeah, the code is running, but our team uses tabs for version control and now we lost all versioning!".
Bear in mind this was in 2012, git was around for 7 years then, and SVN and Mercury much longer.
I then finally understood the randomness of the tabs. The code would go a bunch of tabs back when it went back to a previous version, everything above were additions or modifications that joined seamlessly with the previous version before, with no way to know when and so on.
I immediately told the PM that was absurd, he agreed, and told the client we wouldn't be reindenting everything back for them according to the original file.
All in all, it wasn't a bad experience due to a competent PM, but it left a bad taste in my mouth to know companies have teams that are that incompetent, and that no one thought to stop and say "hey, this may cause issues down the line".4 -
Don't you hate it when your co-worker does dumb things, but thinks it's the "clean code" way?
The following is a conversation between me and a co-worker, who thinks he's superior to everyone because he thinks he's the only one who read the Clean Code series. Let's call him Bill.
Me: I think the feature we need is quite simple, our application needs to call this third party API, parse the response and pass it to the next step. Why do you need to bury everything under an abstraction of 4 layers?
Bill: bEcAuSe It'S dEcOuPlInG, aNd MaKe ThE cOdE tEsTaBlE
Me: I don't know man, you only need to abstract the third party api client, and then mock it if you want. Some interfaces you define makes no sense at all. For example, this interface only has 1 concrete implementation, and I don't think it will ever have another. Besides, the concrete implementation only gets the input from the upper layer and passes it down the lower layer. Why the extra step? I feel like you're using interface just for the sake of interface.
Bill: PrOgRaMmInG tO iNtErFaCe, NoT cOnCrEtE iPlEmEnTaTiOn!!!
Me: You keep saying those words, I don't think they mean what you think they mean. But they certainly do not mean that every method argument must be an interface
Bill: BuT uNcLe BoB blah blah blah...
Me: *gives up all hope*14 -
In the Ruhr area (Germany) we have some very old, very strange words with strange meanings. One of those words is ‚Prutscher‘.
A Prutscher refers to a person who does things but never gets a good result, due to lack of knowledge or simple carelessness. Most of the time, Prutschers are people who are interested in certain subjects and often work in the related jobs, but who lack the motivation to properly train themselves, learn what there is to learn and to always keep up with their technologies .
Here are a few examples I've stumbled upon so far in my career:
- Developers in their 60's who read a book about PHP 25 years ago and decided to become a software developer. Since then haven't read anything about it. Who then now build huge spaghetti monoliths for large companies, in which they prefix every function, every variable and constant with their initials and, of course, use Hungarian notation.
- People who read half a fucking tutorial about <insert any fancy js framework here> and start blogging/tweeting about it
- Senior web developers who need to be told what the fuck CORS is and who can't even recognize CORS related errors in their browser console.
- People who have done nothing else for 18 years than building websites for companies on Wordpress 1.x and writing few lines of PHP and Javascript from time to time. Those who are now applying as a frontend dev due to the difficult economic situation and are surprised that they are not accepted due to a lack of experience.
- Developers who are the only ones working on Windows in the team and ask their Linux colleagues for help when Windows starts bitchin.
- People who have been coding for 30 years, have worked with ~42 languages and don't know the difference between compiled and interpreted languages in the job interview.
- Chief developers at a large newsletter-publisher who think it's a good idea to build your own CMS (due to a lack of good existing ones, of course).
- Developers who have been writing PHP applications for multinational corporations for 25 years and cannot explain how PHP is executed. They don't even know what the fucking OPcache is, let alone fpm. FML
- People who call themselves professional developers but never ever heard of DRY, KISS, boy-scout rule, 12-Factor App, SOLID, Clean Code, Design Patterns, ...
- Senior developers wondering why the bash script won't run on their fucking Windows machine.
- Developers who consider Typescript to be a hindrance and see no value in it.
- Developers using ftp for deployments in 2022
- Senior Javascript Developer applying for a job and for whom Integer is a primitive data type in JS.
- Developers who prefer to code without frameworks and libraries because they are only an unnecessary burden/overhead and you can quickly code everything up yourself.
- Developers who think configuring their server(s) manually is a good idea.
You fucking Prutscher. What you have already cost me in terms of work and nerves. I can't even put it into words how deeply I despise you. I have more respect for the chewing gum that has been stuck in my damn trash can for the past 3 years than I do for you guys. You are the disgrace of our profession. I will haunt you in your dreams and prefix every fucking synapse of your brain with MY initials.
As a well-known german band once sang in a very fitting song: I wouldn't even piss on you if you were on fire.
If you recognized yourself in one of the examples here: FUCK YOU!29 -
> Last year wrote a unittest - I was asked to delete it
> no design patterns. Not a single one
> no encapsulation
> fucked up inheritance [I had no idea it was possible at all...]
> generics every-fucking-where
> I could go on...
this month the lead dev was not in and I had to make a new feature. Guess what I did :)
tdd [coverage >90%], a couple of builders, a factory or two, two composites, one decorator, only a few generics - only where really needed. Private fields, not a single @Autowired field [they were fucking my tdd], nicely abstracted integrations, and so on. Everything is writen according to clean code: max 10loc methods, <140col lines, reusable constants and utils, SOLID as a rock, etc.
Due date is next week. Took me 3 weeks to craft it.
Guess who's gonna be piiiiiiiiiiiiisssedd 😁
the best part - I don't even work there, our company was hired for xx hours as helping hands 😁
that's not all. They have like 6 envs and their deployment is all-fucking-manual. Will try to learn how to dockerize that app and deploy it on docker. Gosh I wish I could see his face when he's back 😁
p.S. From ethical point of view, he's the only dev who believes his code is perfect. No other dev in the team agrees. AND he once said: 'it's gonna be my way or no way at all'. So I don't think I did wrong... Did I? :)8 -
var m = Me()
var f = Friend()
f.speak("I just wiped my whole disk drive with everything on it and I just realized how much I didn't care about all those movies I didn't watch or the TV shows that I'm keeping on the side...... It's like a clean new PC and I feel so free")
m.speak("Stop with the spiritual bullshit. You were installing Windows and it was a mistake right?")
f.cryAndNod()
m.sigh()7 -
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 -
Ok friends let's try to compile Flownet2 with Torch. It's made by NVIDIA themselves so there won't be any problem at all with dependencies right?????? /s
Let's use Deep Learning AMI with a K80 on AWS, totally updated and ready to go super great always works with everything else.
> CUDA error
> CuDNN version mismatch
> CUDA versions overwrite
> Library paths not updated ever
> Torch 0.4.1 doesn't work so have to go back to Torch 0.4
> Flownet doesn't compile, get bunch of CUDA errors piece of shit code
> online forums have lots of questions and 0 answers
> Decide to skip straight to vid2vid
> More cuda errors
> Can't compile the fucking 2d kernel
> Through some act of God reinstalling cuda and CuDNN, manage to finally compile Flownet2
> Try running
> "Kernel image" error
> excusemewhatthefuck.jpg
> Try without a label map because fuck it the instructions and flags they gave are basically guaranteed not to work, it's fucking Nvidia amirite
> Enormous fucking CUDA error and Torch error, makes no sense, online no one agrees and 0 answers again
> Try again but this time on a clean machine
> Still no go
> Last resort, use the docker image they themselves provided of flownet
> Same fucking error
> While in the process of debugging, realize my training image set is also bound to have bad results because "directly concatenating" images together as they claim in the paper actually has horrible results, and the network doesn't accept 6 channel input no matter what, so the only way to get around this is to make 2 images (3 * 2 = 6 quick maths)
> Fix my training data, fuck Nvidia dude who gave me wrong info
> Try again
> Same fucking errors
> Doesn't give nay helpful information, just spits out a bunch of fucking memory addresses and long function names from the CUDA core
> Try reinstalling and then making a basic torch network, works perfectly fine
> FINALLY.png
> Setup vid2vid and flownet again
> SAME FUCKING ERROR
> Try to build the entire network in tensorflow
> CUDA error
> CuDNN version mismatch
> Doesn't work with TF
> HAVE TO FUCKING DOWNGEADE DRIVERS TOO
> TF doesn't support latest cuda because no one in the ML community can be bothered to support anything other than their own machine
> After setting up everything again, realize have no space left on 75gb machine
> Try torch again, hoping that the entire change will fix things
At this point I'll leave a space so you can try to guess what happened next before seeing the result.
Ready?
3
2
1
> SAME FUCKING ERROR
In conclusion, NVIDIA is a fucking piece of shit that can't make their own libraries compatible with themselves, and can't be fucked to write instructions that actually work.
If anyone has vid2vid working or has gotten around the kernel image error for AWS K80s please throw me a lifeline, in exchange you can have my soul or what little is left of it5 -
I secretly wish everything at work fails because everyone is so fucking stupid every time it makes me cringe when I have to talk to someone or watch someone explaining something to me.
Everything seems to lack planning and focus, our PMS act more like clients than like managers, its a total fucking mess and I have to clean some of it this week.
It's getting so much on my nerves that I had to open my whiskey for the first time this year, damn. -
I love static sites and fancy new frameworks. Had an interview some time ago at a medium sized company. They specifically wanted someone to build static sites and introduce the company to Vue and Gridsome.
I got really excited for my first project. It was a wordpress site and I had to build a custom WP theme for it. Not exactly what I expected. Also I had no prior PHP knowledge, nor any experience with Wordpress. So I got really upset, because it wasn’t the technologies I was used to.
The first week was hard, I wanted to quit. But once something clicked. And I realized I know this. This is not PHP, not Wordpress, not Vue, but just simply a programming language. At the core everything programming language is the same. PHP became comfortable, Wordpress conventions didn’t bother me. I realized I can use great technologies with WP too. I get to know twig, added some sass, compiled everything nicely with webpack. And after a month I have a beautiful, fast and efficent site. I love it.
I realised that I don’t love the languages and frameworks. I love coding itself. I love creating efficent and reliable, clean code. No matter the architecture.
And my advice for you is to stop hating particular languages and serious debates on what is better, and hating your job when you can’t code in your new shiny framework. Love coding itself, because it’s a wonderful activity. We are creators, we are artists. Not <insert specific programming language here> developers.16 -
I AM TIRED
warning: this rant is going to be full of negativity , CAPS, and cursing.
People always think and they always write that programming is an analytical profession. IF YOU CANNOT THINK IN AN ANALYTICAL WAY THIS JOB IS NOT FOR YOU! But the reality could not be farther from the truth.
A LOT of people in this field whether they're technical people or otherwise, just lack any kind of reasoning or "ANALYTICAL" thinking skills. If anything, a lot of of them are delusional and/or they just care about looking COOL. "Because programming is like getting paid to solve puzzles" *insert stupid retarded laugh here*.
A lot of devs out there just read a book or two and read a Medium article by another wannabe, now think they're hot shit. They know what they're doing. They're the gods of "clean" and "modular" design and all companies should be in AWE of their skills paralleled only by those of deities!
Everyone out there and their Neanderthal ancestor from start-up founders to developers think they're the next Google/Amazon/Facebook/*insert fancy shitty tech company*.
Founder? THEY WANT TO MOVE FAST AND GET TO MARKET FAST WITH STUPID DEADLINES! even if it's not necessary. Why? BECAUSE YOU INFERIOR DEVELOPER HAVE NOT READ THE STUPID HOT PILE OF GARBAGE I READ ONLINE BY THE POEPLE I BLINDLY COPY! "IF YOU'RE NOT EMBARRASSED BY THE FIRST VERSION OF YOU APP, YOU DID SOMETHING WRONG" - someone at Amazon.
Well you delusional brainless piece of stupidity, YOU ARE NOT AMAZON. THE FIRST VERSION THAT THIS AMAZON FOUNDER IS EMBARRASSED ABOUT IS WHAT YOU JERK OFF TO AT NIGHT! IT IS WHAT YOU DREAM ABOUT HAVING!
And oh let's not forget the tech stacks that make absolutely no fucking sense and are just a pile of glue and abstraction levels on top of abstraction levels that are being used everywhere. Why? BECAUSE GOOGLE DOES IT THAT WAY DUH!! And when Google (or any other fancy shit company) changes it, the old shitty tech stack that by some miracle you got to work and everyone is writing in, is now all of a sudden OBSOLETE! IT IS OLD. NO ONE IS WRITING SHIT IN THAT ANYMORE!
And oh my god do I get a PTSD every time I hear a stupid fucker saying shit like "clean architecture" "clean shit" "best practice". Because I have yet to see someone whose sentences HAVE TO HAVE one of these words in them, that actually writes anything decent. They say this shit because of some garbage article they read online and in reality when you look at their code it is hot heap of horseshit after eating something rancid. NOTHING IS CLEAN ABOUT IT. NOTHING IS DONE RIGHT. AND OH GOD IF THAT PERSON WAS YOUR TECH MANAGER AND YOU HAVE TO LISTEN TO THEM RUNNING THEIR SHITHOLE ABOUT HOW YOUR SIMPLE CODE IS "NOT CLEAN". And when you think that there might be a valid reason to why they're doing things that way, you get an answer of someone in an interview who's been asked about something they don't know, but they're trying to BS their way to sounding smart and knowledgable. 0 logic 0 reason 0 brain.
Let me give you a couple of examples from my unfortunate encounters in the land of the delusional.
I was working at this start up which is fairly successful and there was this guy responsible for developing the front-end of their website using ReactJS and they're using Redux (WHOSE SOLE PURPOSE IS TO ELIMINATE PASSING ATTRIBUTES FOR THE PURPOSE OF PASSING THEM DOWN THE COMPONENT HIERARCHY AGIAN). This guy kept ranting about their quality and their shit every single time we had a conversation about the code while I was getting to know everything. Also keep in mind he was the one who decided to use Redux. Low and behold there was this component which has THIRTY MOTHERFUCKING SEVEN PROPERTIES WHOSE SOLE PURPOSE IS BE PASSED DOWN AGAIN LIKE 3 TO 4 TIMES!.
This stupid shit kept telling me to write code in a "functional" style. AND ALL HE KNOWS ABOUT FUNCTIONAL PROGRAMMING IS USING MAP, FILTER, REDUCE! And says shit like "WE DONT NEED UNIT TESTS BECAUSE FUNCTIONAL PROGRAMMING HAS NO ERRORS!" Later on I found that he read a book about functional programming in JS and now he fucking thinks he knows what functional programming is! Oh I forgot to mention that the body of his "maps" is like 70 fucking lines of code!
Another fin-tech company I worked at had a quote from Machiavelli's The Prince on EACH FUCKING DESK:
"There is nothing more difficult to take in hand, more perilous to conduct, or more uncertain in its success, than to take the lead in the introduction of a new order of things."
MOTHERFUCKER! NEW ORDER OF THINGS? THERE 10 OTHER COMPANIES DOING THE SAME SHIT ALREADY!
And the one that got on my nerves as a space lover. Is a quote from Kennedy's speech about going to the moon in the 60s "We choose to go to the moon and do the hard things ..."
YOU FUCKING DELUSIONAL CUNT! YOU THINK BUILDING YOUR SHITTY COPY PASTED START UP IS COMPARABLE TO GOING TO THE MOON IN THE 60S?
I am just tired of all those fuckers.13 -
Hey, it's 2023.
If your component isn't written in TypeScript, I'm not using it :)
"TypeScript is overly complicated!!!" why, because it pointed out everything wrong in your JS code?
"TypeScript is not flexible!!!" why, because it makes you not rely on fragile "only possible in javascript" patterns?
"TypeScript isn't needed!!!" why, because you've never worked on a project with more than 100 lines of code where dependency management and clean code policies were implemented?
god just stop with the JavaScript purist BS, you aren't going to win this battle, and it's even worse because not only are you injuring everyone in the software community, you're injuring your own productivity and skillset
actually, you know what, fine. just use pure JS and HTML implementations. see you in 10 years when i'm retired and you are still running around in circles wondering why the world has left you behind24 -
So we have an API that my team is supposed send messages to in a fire and forget kind of style.
We are dependent on it. If it fails there is some annoying manual labor involved to clean that mess up. (If it even can be cleaned up, as sometimes it is also time-sensitive.)
Yet once in a while, that endpoint just crashes by letting the request vanish. No response, no error, nothing, it is just gone.
Digging through the log files of that API nothing pops up. Yet then I realize the size of the log files. About ~30GB on good old plain text log files.
It turns out that that API has taken the LOG EVERYTHING approach so much too heart that it logs to the point of its own death.
Is circular logging such a bleeding edge technology? It's not like there are external solutions for it like loggly or kibana. But oh, one might have to pay for them. Just dump it to the disk :/
This is again a combination of developers thinking "I don't need to care about space! It's cheap!" and managers thinking "100 GB should be enough for that server cluster. Let's restrict its HDD to 100GB, save some money!"
And then, here I stand trying to keep my sanity :/1 -
My life didnt go as smooth as i expected. Everything happened as expected, i knew what going to the uni requires, i knew everything...
But i didnt accounted for my mental health. Since forever i have thought that im lazy or something like that, that i can do everything i just have to do it. Oh how wrong was I. It went from my projects being frozen for a long time due to lack of motivation to neglecting important living activies. Even my health suffered a bit. Everytime i failed, even the simplest task no matter why i always felt even worse. Even the most basic tasks were unimportant for me. Even some minor tasks that i failed gave me huge guilt. Not to mention that my family wont help me with my mental health at all, (they cant see what is realy happening they always think im lazy) (but maybe they could fucking figure out that being sad liteary for years is bad). My contact with friends is limited, im always scared to go or more often scared to ask is they have time to meet because they are ALWAYS busy...
So that was my life, alone, against people who were demanding (and my mother who thought that her hard work was everything i needed, but no. Money, food and clean house isnt everything that human requires to propely function!). Now I have scheduled a meeting with the specialist, i hope the uni has better ones than the other ones i had. I hope he will help me and i will get out that life downwards spiral.5 -
Wtf Microsoft ?!?
Clean install of windows 10 pro, got everything set up, now Microsoft Store does not work because I need an app to open ms-windows-store ?!?
Common answers found on Google does not solve the problem -_-6 -
Some days you write your code and it all goes well.
All your tests pass, you write clean code, you solve your problems nicely.
Other days everything that can go wrong, will go wrong.
...the latter was the case for me today.4 -
CEO: What are your plans for these hollidays?
Me: Clean up the house. I haven't had much time because we've had some busy last few months.
CEO: Seriously? Are you joking? (I could see in his eyes, "why would a talented programmer ever waste their time doing menial housework...") I mean, you could be working instead and earning a couple more bucks...
(Fuck him, none of his business...)
Me: I can't delay it this time. My wife has dust allergies.
CEO: Oh. Ok. I get it. When I was a kid, my father and I had some serious dust allergies. The house maid had to clean everything thoroughly at least once a week.
Not surprised...10 -
!dev
I‘m not shitting you, a can of Guinness just fucking exploded in my bed room..
Last weekend i had a few drinks too much and I took a Guinness to my room to „watch a movie and fall asleep“. I fell asleep before even starting a movie. So I didn’t even open the can.
Today I was looking for a cable on my night table and accidentally hit the can with my elbow.
It just fell in the side and FUCKING EXPLODED. The can is split in half.
My whole bed, my good shoes, my mattress, the floor, my bills and EVERYTHING IN A RANGE OF 5 FUCKING METERS IS SOAKED.
How the fuck can that even happen?
Tried to clean everything with water and opened the windows to get my my shit dry again, but now I have to sleep on the couch in the living room until that stuff is try again..😤😤😤
Need a Guinness to calm down.
I know cans can „leak“ if it’s too hot but we had 19C max in the last week..
Happy weekend to you..6 -
That I am not good enough for this shit.
Recently left my job because anxiety, a lot of it.
Tbh, I should not burntout myself, because:
- salary was a shit
- the scrum was a lie, there was no end of the sprint, so no retrospective meeting ever done.
- They change the """sprint""" task pile at any moment, usually adding more tasks for the same sprint.
- previous project manager was an idiot who said "yes" at EVERYTHING the client asked, even if the request was outside tje scope of the project.
The project was heavily delayed, and I was the only developer left on the most hideous backend you can imagine (the code was just tje very definition of "what not to do"). NO UNIT TESTING at all.
My task: clean the mess so we have a """stable""" release (with the tests), add the new features and re-do the backend again, but this time properly.
8 months of develop for this shit and they wanted the stable-shit-backend in a month and the new backend in other month "because everithing was already done in the shitty one". Do not forget the new features too.
So, I was doing the imposible to try to do tje task, overdoing hours and reading the docs of the project (because I was new in it), but it take me.a lot of effort to simply correct bugs because of complexity of the code and not understanding fully some parts of the project.
Then the comments like "why this is not finished yet?" Or "I do not understand why this is taking so long"
So, I had poor sleep, I was anxious because my inhability to do the imposible and in the end, a feeling kind of defeated because I quit.
So... that.
Sorry if something is wrong typed or so, english is not my native language.5 -
Just read a comment on rant that stated "You’d be surprised as how disgusting people are especially in the work setting.". In regard to bathrooms. This reads true, for my current place of work
I was about to reply to that, but I thought this is worthy of a rant of its own. Allow me to quote some emails...
"We have had reports of excrement being left on toilet seats, which surely could be seen by the person responsible before they left the cubicle. "
"very poor toilet hygiene in some the ladies toilets.
Firstly, someone person should I say.... has used a toilet brush to clear a blockage in the Ladies loo nearest [removed]. They obviously couldn't unblock the toilet due to the density of the blockage and therefore.. returned the brush to it's holder full of the blockage!! "
"The phantom "snot" wiper is back and is using the back of the toilet door nearest the [removed] as a tissue! Again.. the poor Cleaner has had to clean this up... "
"Toilet paper being put in the Urinal blocking the system in [removed] and faeces being left on the toilet floor in [removed]. This goes without saying that this can't go on and it's not the cleaners job to be cleaning such messes! "
Its ever worse in our other office that contains a call centre. A lady was fired for leaving shit in the stairwells on multiple instances. She had been fired from her last role for the same thing.
There were also reports of subway subs been left in the toilet bowl.
You also find the most curious items in the waste bins (they have no lid, we're not search through them - just to make that clear) everything from half eaten sandwiches to watermelon.15 -
Was cleaning up some of the old files on my system and found the first ever raycast program I had written.. in c++
This was during a time im pretty sure all of you guys just like me learnt the things that you could possibly do using code.
The experience of the first time I ran this and saw the sprites appear was the awe all of us have experienced in our own ways.
The reason I found this picture interesting is many of us end up losing the wonder and sense of excitement that got us into development in first place.
Go back , clean up your drives .. find your old code. I'm sure there is no better feeling than looking at the past you , writing bad code , with a probably bad language on a bad editor with sleepless nights to get nothing more than the output we wanted.
It's amazing when you realise everything is better when it's simple. -
Today I learned why it’s so important to have life outside engineering (better put, I remembered this).
For the last couple of weeks, we’ve been working hard to catch some deadlines, contributing to a large oss project. Getting up at 4am, working with the team in my timezone, having some time with family then working with people with 6-9 hour difference was extremelly challenging and I was so tired I literaly was a fucking pain to bear with.
Today, on Saturday, my wife started cleaning the bathroom sink drain. You know, started... “won’t fix” was not an option. First, the dirt and the smell, mmmmmm, you just have to love it. And then the thing collapses (yes, I was optimistic, trying to clean it just partly - I learned not to fix if it aint’t broken, I wonder where).
It’s of course built of trivial parts, but the water just finds its way. Needless to say, I am afraid of it :). In the end, it got resolved. Just as any bug we squash - with some anger and plenty of dirty words.
During the whole thing, I thought to myself, that all that stress at work is quite bearable; it put everything back into a perspective. Great feeling!1 -
I lost all my data from a terrible accident. By using recovery software over the course of a week (because the computer I had to use to recover it was less than adequate), I managed to recover most data. Upon restoring the data to the SSD, there was numerous corruption issues, strange glitches, etc. I tried running many system recovery tools, repairing the registry, disk check, everything. Today, I could not install Visual Studio Community updates because... it couldn't. It just popped up a blank window and that's it. I tried everything. Eventually, that combined with every other issue I've had, apps not working because of corrupt files and having to reinstall basically everything I've tried to use anyway, I decided to do a clean install.
So I'm waiting for many many many installers, right now. Nanite was only the tip of the ice berg. I guess what I'm trying to say is...
How's everyone doing? :)2 -
A few days ago Aruba Cloud terminated my VPS's without notice (shortly after my previous rant about email spam). The reason behind it is rather mundane - while slightly tipsy I wanted to send some traffic back to those Chinese smtp-shop assholes.
Around half an hour later I found that e1.nixmagic.com had lost its network link. I logged into the admin panel at Aruba and connected to the recovery console. In the kernel log there was a mention of the main network link being unresponsive. Apparently Aruba Cloud's automated systems had cut it off.
Shortly afterwards I got an email about the suspension, requested that I get back to them within 72 hours.. despite the email being from a noreply address. Big brain right there.
Now one server wasn't yet a reason to consider this a major outage. I did have 3 edge nodes, all of which had equal duties and importance in the network. However an hour later I found that Aruba had also shut down the other 2 instances, despite those doing nothing wrong. Another hour later I found my account limited, unable to login to the admin panel. Oh and did I mention that for anything in that admin panel, you have to login to the customer area first? And that the account ID used to login there is more secure than the password? Yeah their password security is that good. Normally my passwords would be 64 random characters.. not there.
So with all my servers now gone, I immediately considered it an emergency. Aruba's employees had already left the office, and wouldn't get back to me until the next day (on-call be damned I guess?). So I had to immediately pull an all-nighter and deploy new servers elsewhere and move my DNS records to those ASAP. For that I chose Hetzner.
Now at Hetzner I was actually very pleasantly surprised at just how clean the interface was, how it puts the project front and center in everything, and just tells you "this is what this is and what it does", nothing else. Despite being a sysadmin myself, I find the hosting part of it insignificant. The project - the application that is to be hosted - that's what's important. Administration of a datacenter on the other hand is background stuff. Aruba's interface is very cluttered, on Hetzner it's super clean. Night and day difference.
Oh and the specs are better for the same price, the password security is actually decent, and the servers are already up despite me not having paid for anything yet. That's incredible if you ask me.. they actually trust a new customer to pay the bills afterwards. How about you Aruba Cloud? Oh yeah.. too much to ask for right. Even the network isn't something you can trust a long-time customer of yours with.
So everything has been set up again now, and there are some things I would like to stress about hosting providers.
You don't own the hardware. While you do have root access, you don't have hardware access at all. Remember that therefore you can't store anything on it that you can't afford to lose, have stolen, or otherwise compromised. This is something I kept in mind when I made my servers. The edge nodes do nothing but reverse proxying the services from my LXC containers at home. Therefore the edge nodes could go down, while the worker nodes still kept running. All that was necessary was a new set of reverse proxies. On the other hand, if e.g. my Gitea server were to be hosted directly on those VPS's, losing that would've been devastating. All my configs, projects, mirrors and shit are hosted there.
Also remember that your hosting provider can terminate you at any time, for any reason. Server redundancy is not enough. If you can afford multiple redundant servers, get them at different hosting providers. I've looked at Aruba Cloud's Terms of Use and this is indeed something they were legally allowed to do. Any reason, any time, no notice. They covered all their bases. Make sure you do too, and hope that you'll never need it.
Oh, right - this is a rant - Aruba Cloud you are a bunch of assholes. Kindly take a 1Gbps DDoS attack up your ass in exchange for that termination without notice, will you?4 -
If this isn't the worst thing.
I was asked to develop a WordPress plugin as an intern developer and I've been on it since last week. I got stuck when i finally had the loops running but couldn't find a way to format the output without overwriting the existing values on each iteration.
For the last one week I've been showing the progress on my code to the CTO and this is how it has been.
Me: Hello. Everything is coming along fine, I have most of the functions running properly, do you mind looking into the algorithm?
CTO: Oh not at all, let's see what you got. Omg great code for an intern. I think you should add a new variable there and maybe clean up that function over there because it's deprecated now and yeah HaHa, Great work.
Me: Thanks xD I'll have it finished latest next week.
CTO: Oh great. I can't wait to see what you'd have by next week so we can install it on our WordPress.
*Next finally week comes and I'm done with the code.
Me: Hello, I'm done with the entire code! Want to take a look? The plugin works just exactly as described.
*CTO takes a look
CTO: Omg?
Me: Omg?
CTO: This is completely bad programming practice, so you are running 4 nested loops that all send queries to our data base and make changes to data. This would have a very drastic effect on the server considering the traffic we get.
Me: But you saw this exact code last week and said it was okay, I only changed some CSS since the last time.
CTO: Omg, we can't accept this, you have to develop it again from the scratch without using those loops and queries.
Me: What? Okay, fine. Any hints?
CTO: Yes.
Me: What?
CTO: Just start. That's the greatest hint I could ever give. And also, always have a plan before you begin.
Me: Yeah, thanks for those. It's the first time I'm hearing them and they would totally be applicable to building this thing.2 -
The design process.
Call me old fashioned - but clean-code/clean-architecture/SOLID is not as important as simplicity and coherence.
I JUST NEED FUNCTION THAT DOES STUFF! But noooooo better overly design EVERYTHING!4 -
I once agreed to maintain and develop an application used in a different section of the school to keep inventory and make sure everything is where it is supposed to be.
At first there was enthusiasm, together with 2 of my classmates we agreed and git clone-d the .NET application that now graduated students built and maintained for the past few years. What could go wrong right?!
It became clear that the original students that worked on it followed an older curriculum, meaning they still got taught .NET instead of the core variant that we get now, not only that but it also seemed that they either did not fully grasp the Clean/Onion architecture or didn't get it in class since there were infrastructure components in the 'Domain' project of the solution. Think of 2 DBContexts in the domain model, yep.
One of us bailed in the first week, the other one and I felt bad for the people using the app so we went on and tried to work on the first bugs that were described in a document. One of these bugs was 'whenever I filter on something in the list, everybody gets to see that filter on their screen instead of only me'. Woah that's weird! Let's see how they put that together!
Oh god, they are using a _static_ variable to store filters, no wonder that it doesn't work properly. Ever heard of sessions?!
Second bug: Sometimes people can't create an account when we sign them up from the admin panel. Alright that is weird, let's figure that one out! Wait a second it seems to work in development? What's this about.
Oh wait I can't create an account on production either? Oh that's weird, wait a second... Why do I have to put my e-mail in a form that was sent to me through e-mail? Why is my address not filled in already? OOH, if someone types in the wrong e-mail address (which is easy since our school has 4 variants of the same f*cking e-mail address) it won't work since it can't recognize the user! Brilliant! Remove e-mail input box and make a token/queryparam determine the user account.
Ah that seems good, it's a mess but it seems a tiny bit better now, great! We're making progress and some sweet buck.
Next bug, trillions of 50x errors on random pages, that's a weird one.
Hm everything works in development, that's odd. Is the production data corrupted?
DID I MENTION that in order to get into the system in development we have to load in a f*cking production database backup ON OUR DEVELOPMENT MACHINE and then ask one of the users' password to login to it and create an account for ourselves? Seeding? What's that, right?!
Anyway, back to bug fixing. I e-mail the the people responsible for the app and get a production admin account, oh I also can't ssh into it because of policies so I have to do everything over e-mail and figure out what's causing the errors. I somehow also wonder if they have any kind of virtualization in place, giving students a VM to do that stuff in doesn't seem so weird does it ? Even with school policies?
Oh btw, 'deploying' means sending a .zip file to a guy in another building and telling him how to configure it, apparently this resulted in a missing folder that the application needed to work and couldn't make on its own. This after 2 weeks of e-mailing back and forth.
After 3 months i quit out of despair and sadness, and due to the fact that I just couldn't do it anymore. I separated everything into logical subprojects and let the last guy handle it, he was OK with that and understood why I left.
Luckily, around that time I already had an actual job at a software development company :)3 -
Told a teacher I finished a week worth of exercises, and asked for the next one
"This code is not yours. It's too clean, redo everything"
... what, is it wk64 already ?3 -
I never thought clean architecture concepts and low complicity, maintainable, readable, robust style of software was going to be such a difficult concept to get across seasoned engineers on my team... You’d think they would understand how their current style isn’t portable, nor reusable, and a pain in the ass to maintain. Compared to what I was proposing.
I even walked them thru one of projects I rewrote.. and the biggest complaint was too many files to maintain.. coming from the guy who literally puts everything in main.c and almost the entire application in the main function....
Arguing with me telling me “main is the application... it’s where all the application code goes... if you don’t put your entire application in main.. then you are doing it wrong.. wtf else would main be for then..”....
Dude ... main is just the default entry point from the linker/startup assembly file... fucken name it bananas it will still work.. it’s just a god damn entry point.
Trying to reiterate to him to stop arrow head programming / enormous nested ifs is unacceptable...
Also trying to explain to him, his code is a good “get it working” first draft system.... but for production it should be refactored for maintainability.
Uggghhhh these “veteran” engineers think because nobody has challenged their ways their style is they proper style.... and don’t understand how their code doesn’t meet certain audit-able standards .
You’d also think the resent software audit would have shed some light..... noooo to them the auditor “doesn’t know what he’s talking about” ... BULLSHIT!8 -
I'm a python fanboy, not gonna lie.
I love everything about it. It's clean syntax, ready to use out of the box-ness, convenient built-in functions.
The one thing I hate is the official documentation. It's ugly, hard to navigate and a cluster fuck.
But it has proper information, so it's fine I guess. tsch12 -
Im getting tired of this fucking scrum team.
First of all let me introduce our backend team which takes 3 weeks to add one fucking column to database and in the end turns out they fucked up RabbitMQ RPC implementation so the column is not syncing with our app at all so now we have to wait 2 extra weeks until that will be working. Best part is that backend fucker who fucked up doesnt even feel like hes blocking a feature and would rather sit for extra few days and do nothing until he gets reassigned his pile of shit back to him than clean up his own shit.
Then we have business analytic who doesnt know how to define tasks properly so I have to record each grooming meeting so I would know what to fucking implement because he doesnt even bother to take proper notes. Which results in not fully defined tasks, which results in unexpected behaviours and MR's stuck in limbo for weeks.
Also lets not forget QA guy who doesnt even bother writing scenarios, I as an app dev have to write them myself just to be sure that fucker will test everything thoroughly.
Then we have fucking devs from consultancy agency who apparently have 6 years of experience (I have barely 2) and these fuckers are spamming me daily with the most basic questions. After each grooming they rush to assign themselves tasks which are not even defined properly yet and not even in this sprint, but fuckers are lazy so thy want to reserve easier tasks for themselves. Pathetic.
At least I have a decent senior on my team, but sometimes he patronizes me so much that I start asking me what I am doing in this team.
Fuck this shit, I asked for a 43% raise and if Im not getting it in 2-3 weeks im outta here. Fuckers.5 -
Does anyone get the feeling that as they become more senior, they care less about meeting "best practices" and more of just "good enough"?
Best practices being everything in those books about TDD, unit testing, design patterns, design artifacts.
Good enough: enough so it won't blow up in prod, some tests but not 80-90%, some docs. Basically not like those public docs, open source projects/frameworks where function is covered
When I first started professionally, I was all about efficiency, good design, reducing technical debt, clean code.
But now, I look at problems and instinctively I may make these decisions but I don't really think about it much. First goal is to just get something working, clean it up later... Maybe.6 -
Step 1. Learn to code .
Step 2. Exchange code for money.
Step 3. Exchange money for car, soap & a clean shirt.
Step 4. Profit.
[GOTO: Step #1]
Lol. OK on a serious note coding improved my love life, it drastically reduced the frequency of dates - but dramatically improved the quality and duration of my relationships.
I used to believe that anyone/thing had the potential to be great - and (like me) all they needed was a little time to seize an opportunity.
This essentially meant there were no deal breakers and I spent a lot of time giving people benefit of the doubt and investing a lot of time & effort supporting and trying to build on aspirations that would turn out to simply be fantasies I was indulging.
I still idealistically believe that everything/one has infinite potential - only now I know which problems are worth solving, which are purely for fun or a thought experiment and which should immediately be thrown out and refactored.
All the ambition in the world is void without drive.1 -
TL;DR:
JuniorDev ignores every advice, writes bad code and complains about other people not working because he does not see their result because he looks at the wrong places.
Okay, so I am really fed up right now.
We have this Junior Dev, who is now with us for circa 8 months, so ca. a year less than me. Our first job for both of us.
He is mostly doing stuff nobody in the team cares about because he is doing his own projects.
But now there's a project where we need to work with him. He got a small part and did implement that. Then parts of the main project got changed and he included stuff which was not there anymore. It was like this for weeks until someone needed to tell him to fix it.
His code is a huge mess (confirmed by senior dev and all the other people working at the project).
Another colleague and me mostly did (mostly) pair programming the past 1-2 weeks because we were fixing and improving (adding functionality) libraries which we are going to use in the project. Furthermore we discussed the overall structure and each of us built some proof-of-concept applications to check if some techniques would work like we planned it.
So in short: We did a lot of preparation to have the project cleaner and faster done in the next few weeks/months and to have our code base updated for the future. Plus there were a few things about technical problems which we need to solve which was already done in that time.
Side note: All of this was done not in the repository of the main project but of side projects, test projects and libraries.
Now it seems that this idiot complained at another coworker (in our team but another project) that we were sitting there for 2 weeks, just talking and that we made no progress in the project as we did not really commit much to the repository.
Side note: My colleague and me are talking in another language when working together and nobody else joins, as we have the same mother tongue, but we switch to the team language as soon as somebody joins, so that other colleague did not even know what we were talking about the whole day.
So, we are nearly the same level experience wise (the other colleague I work with has just one year more professional experience than me) and his work is confirmed to be a mess, ugly and totally bad structured, also not documented. Whereas our code is, at least most of it, there is always space for improvement, clean, readable and re-useable (confirmed by senior and other team members as well).
And this idiot who could implement his (far smaller part) so fast because he does not care about structure or any style convention, pattern or anything complains about us not doing our work.
I just hope, that after this project, I don't have to work with him again soon.
He is also one of those people who think that they know everything because he studied computer science (as everybody in the team, by the way). So he listens to nothing anybody explains to him, not even the senior. You have to explain everything multiple times (which is fine in general) and at some points he just says that he understood, although you can clearly see that he didn't really understand but just wants to go on coding his stuff.
So you explain him stuff and also explain why something does not work or is not a good thing, he just says "yes, okay", changes something completely different and moves on like he used to.
How do you cope with something like this?6 -
(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 -
tl;dr - install ‘Pop!_os’ and try it out if you haven’t yet, it’s pretty damn good!
Heavy Micro$haft user here, have tried using ubuntu a bunch of times in the past and fucking regretted it every time. Ran into issues with stupid shit like the apt cache growing exponentially until the drive was full, or something like the the system python getting borked.
To be fair, I’m 120% certain my dumb-assery is what caused the problems. I’m definitely not trying to blame the OS. But my experience was shitty, even if it was at my own hands lol.
Started playing around with Pop!_os from the system76 team. And I’m seriously in freakin’ love with this OS. It’s clean, is performant, feels way less buggy or just feels more stable somehow. I know it’s based on ubuntu, but I’ve had a great time thus far using it. I’ve got ansible, docker, aws toolkit, aws cli, sam-cli, vscode, dynamodb-local, serverless, npm, brew, and working on steam now.
Everything has been a breeze and again the system feels really fast and snappy. It feels a lot like mac on the smoothness scale, but snappy like a windows box with beefy hardware specs.
I’m still just in the testing phase on a VM, but I’m seriously thinking about blowing away my windows install for Pop!_os.
(I’ll try arch someday when I’m up for some hardcore masochism)8 -
That new devlead that just joined and is bad mouthing everything we did and introducing his own state management library he hacked together without understanding our architecture (Clean Architecture) nor what layers are supposed to do and what the sense behind layers is. Also we learned from him that apparently Android deprecated ProGuard, LiveData is deprecated and Lifecycles in Android are broken.8
-
Anyone reading these emails we are sending?
I work at a small place. A few users are using an application at our place that I develop and maintain. We all work remotely.
I announce by email to these few users a new version release of said application because of low level changes in the database, send the timeline for the upgrade, I include the new executable, with an easy illustrated 2 minutes *howto* to update painlessly.
Yet, past the date of the upgrade, 100% of the application users emailed me because they were not able to use the software anymore.
----------------
Or I have this issue where we identified a vulnerability in our systems - and I send out an email asking (as soon as possible) for which client version users are using to access the database, so that I patch everything swiftly right. Else everything may crash. Like a clean summary, 2 lines. Easy. A 30 second thing.
A week pass, no answer, I send again.
Then a second week pass, one user answers, saying:
> well I am busy, I will have time to check this out in February.
----------------
Then I am asking myself:
* Why sending email at all in the first place?
* Who wrote these 'best practices textbooks about warning users on schedule/expected downtime?'
*How about I just patch and release first and then expect the emails from the users *after* because 'something is broken', right? Whatever I do, they don't read it.
Oh and before anyone suggest that I should talk to my boss about this behavior from the users, my boss is included in the aforementioned 'users'.
Catch-22 much ? Haha thanks for reading
/rant7 -
Whelp. I started making a very simple website with a single-page design, which I intended to use for managing my own personal knowledge on a particular subject matter, with some basic categorization features and a simple rich text editor for entering data. Partly as an exercise in web development, and partly due to not being happy with existing options out there. All was going well...
...and then feature creep happened. Now I have implemented support for multiple users with different access levels; user profiles; encrypted login system (and encrypted cookies that contain no sensitive data lol) and session handling according to (perceived) best practices; secure password recovery; user-management interface for admins; public, private and group-based sections with multiple categories and posts in each category that can be sorted by sort order value or drag and drop; custom user-created groups where they can give other users access to their sections; notifications; context menus for everything; post & user flagging system, moderation queue and support system; post revisions with comparison between different revisions; support for mobile devices and touch/swipe gestures to open/close menus or navigate between posts; easily extendible css themes with two different dark themes and one ugly as heck light theme; lazy loading of images in posts that won't load until you actually open them; auto-saving of posts in case of browser crash or accidental navigation away from page; plus various other small stuff like syntax highlighting for code, internal post linking, favouriting of posts, free-text filter, no-javascript mode, invitation system, secure (yeah right) image uploading, post-locking...
On my TODO-list: Comment and/or upvote system, spoiler tag, GDPR compliance (if I ever launch it haha), data-limits, a simple user action log for admins/moderators, overall improved security measures, refactor various controllers, clean up the code...
It STILL uses a single-page design, and the amount of feature requests (and bugs) added to my Trello board increases exponentially with every passing week. No other living person has seen the website yet, and at the pace I'm going, humanity will have gone through at least one major extinction event before I consider it "done" enough to show anyone.
help4 -
what kind of dumb fuck you have to be to get the react js dev job in company that has agile processes if you hate the JS all the way along with refusing to invest your time to learn about shit you are supposed to do and let's add total lack of understanding how things work, specifically giving zero fucks about agile and mocking it on every occasion and asking stupid questions that are answered in first 5 minutes of reading any blog post about intro to agile processes? Is it to annoy the shit out of others?
On top of that trying to reinvent the wheels for every friggin task with some totally unrelated tech or stack that is not used in the company you work for?
and solution is always half-assed and I always find flaw in it by just looking at it as there are tons of battle-tested solutions or patterns that are better by 100 miles regarding ease of use, security and optimization.
classic php/mysql backend issues - "ooh, the java has garbage collector" - i don't give a fuck about java at this company, give me friggin php solution - 'ooh, that issue in python/haskel/C#/LUA/basically any other prog language is resolved totally different and it looks better!' - well it seems that he knows everything besides php!
Yeah we will change all the fucking tech we use in this huge ass app because your inability to learn to focus on the friggin problem in the friggin language you got the job for.
Guy works with react, asked about thoughts on react - 'i hope it cease to exists along with whole JS ecosystem as soon as possible, because JS is weird'. Great, why did you fucking applied for the job in the first place if it pushes all of your wrong buttons!
Fucking rockstar/ninja developers! (and I don't mean on actual 'rockstar' language devs).
Also constantly talks about game development and we are developing web-related suite of apps, so why the fuck did you even applied? why?
I just hate that attitude of mocking everything and everyone along with the 'god complex' without really contributing with any constructive feedback combined with half-assed doing something that someone before him already mastered and on top of that pretending that is on the same level, but mainly acting as at least 2 levels above, alas in reality just produces bolognese that everybody has to clean up later.
When someone gives constructive feedback with lenghty argument why and how that solution is wrong on so many levels, pulls the 'well, i'm still learning that' card.
If I as code monkey can learn something in 2 friggin days including good practices and most of crazy intricacies about that new thing, you as a programmer god should be able to learn it in 2 fucking hours!
Fucking arrogant pricks!8 -
Bought a new 1TB ssd from Intel for my laptop. The installation of the drive itself went perfectly, it works like a charm. But then I had to do a clean install of windows and ubuntu, and that's where things went wrong. The drive still works perfectly, but everything else has fallen apart. I've been fighting with them the whole working day and haven't got anything work related done. Well, a few more hours and I can head home and continue the installation with a few cold beers, that should help getting it done ;)1
-
Next week I'm starting a new job and I kinda wanted to give you guys an insight into my dev career over the last four years. Hopefully it can give some people some insight into how a career can grow unexpectedly.
While I was finishing up my studies (AI) I decided to talk to one of these recruiters and see what kind of jobs I could get as soon as I would be done. The recruiter immediately found this job with a Java consultancy company that also had a training aspect on the side (four hours of training a week).
In this job I learned a lot about many things. I learned about Spring framework, clean code, cloud deployment, build pipelines, Microservices, message brokers and lots more.
As this was a consultancy company, I was placed at different companies. During my time here I worked on two different projects.
The first was a Microservices project about road traffic data. The company was a mess, and I learned a lot about company politics. I think I never saw anything I built really released in my 16 months there.
I also had to drive 200km every day for this job, which just killed me. And after far too long I was finally moved to the second company, which was much closer.
The second company was a fintech startup funded by a bank. Everything was so much better than the traffic company. There was a very structured release schedule, with a pretty okay scrum implementation. Every team had their own development environment on aws which worked amazingly. I had a lot of fun at this job, with many cool colleagues. And all the smart people around me taught me even more about everything related to working in software engineering.
I quit my job at the consultancy company, and with that at the fintech place, because I got an opportunity I couldn't refuse. My brother was working for Jordan Belfort, the Wolf of Wallstreet, and he said they needed a developer to build a learning platform. So I packed my bags and flew to LA.
The office was just a villa on the beach, next to Jordan's house. The company was quite small and there were actually no real developers. There was a guy who claimed to be the cto of the company, but he actually only knew how to do WordPress and no one had named him cto, which was very interesting.
So I sat down with Jordan and we talked about the platform he wanted to build. I explained how the things he wanted would eventually not be able with WordPress and we needed to really start building software and become a software development company. He agreed and I was set to designing a first iteration of the platform.
Before I knew it I was building the platform part by part, adding features everywhere, setting up analytics, setting up payment flows, monitoring, connecting to Salesforce, setting up build pipelines and setting up the whole aws environment. I had to do everything from frontend to the backest of backends. Luckily I could grow my team a tiny bit after a while, until we were with four. But the other three were still very junior, so I also got the task of training them next to developing.
Still I learned a lot and there's so much more to tell about my time at this company, but let's move forward a bit.
Eventually I had to go back to the Netherlands because of reasons. I still worked a bit for them from over here, but the fun of it was gone without my colleagues around me, so I quit last September.
I noticed I was all burned out, had worked far too much, so I decided to take a few months off and figure out what I wanted to do with my life. I even wondered whether I wanted to stay in programming.
Fast forward to last few weeks. I figured out I actually did want to work in software still, but now I would focus on getting the right working circumstances. No more driving 3 hours every day, no more working 12 hours every day. Just work close to home and find a company with the right values.
So I started sending out resumes and I gave one recruiter the chance to arrange some interviews too. I spoke to 7 companies in the span of one week. And they were all very interested. Eventually I narrowed it down to 2 companies and asked them for offers. And the company that actually had my preference offered me significantly more than I asked for, which settled the deal.
So tomorrow I'm officially signing with them, and starting next week I'll be developing in Kotlin, diving into functional programming and running our code in serverless environments. I'm very excited! -
Internet access at the new Uni is crap. I'm getting so pissed at this shit...
Packet loss spikes to over 50% every 30s or so. Can't keep a single SSH pipe open for longer than a minute. Firewall is so tight infrared light wouldn't get through that shit (understandable. And I use a VPN anyway).
And every. Single. AP. Uses. The. Same. Channel. All of them on 6. At least it's on a tight band... But 1 and 11 are free. 100% clean. You know, you could spread them a bit. That helps. But naaah let's keep everything bundled up. Co-channel interference is OK, right?2 -
Why is it that you guys are not seeing the big picture and reading between the fucken lines... why is it that people always have to run to legislation to fix their problems .... THIS IS WHY.. the other generation accomplished so much more because when there’s a problem they came up with a solution many times better than the status quo.
Those people are few and far between now.. those folks are the innovators. You know whom I’m referring to... those people didn’t whine to create laws to fix or protect their industry from competitors.
We need to stop looking toward our government to fix our issues... especially regarding this issue.. WHY because the people in government ARE NOT TECH PEOPLE!!! THEY DONT EVEN KNOW HOW COMPUTERS WORK! for Pete’s sake folks we had a lady in there who thought the term whip the server ment to literally clean it with a rag... come-on guys, do what they did years ago you don’t like something FIX IT.. by creating something new!
There’s a reason our grandparents generation made it to the fucken moon with less technology than a calculator, BECAUSE THEY PROBLEM SOLVED!
What have we achieved in the last 5 years that is really “big”... fucken apps
Unite together build the next internet learning from the issues we’ve seen with the internet over the last 30 years.. No it won’t be quick no it won’t be easy but nothing revolutionary is easy.
It took 6 years to land a man on the moon, I think we can rebuild the network infrastructure in that time OR FAR LESS if we unite together! Without the government interference we can eliminate the ISPs from the equation and screw them over for screwing us for so long
My group is has the solution, the vision and need, to get this done be we can’t do it alone I will make the official public statement within 24 hours of the vote results...
explaining everything, the plan, the work, EVERYTHING.
We need more people.
For reference the plan can be summarized like this.. nonprofit CoOp Tier 1 ISP.. members being the end users from both sides of the equation ...
TILL THEN
Contact me here,
Or SnapChat: theqsolution
Until I release all the contact info.4 -
I agree with many people on here that Front-End web development/design isn't what it used to be.
Things used to be simple: a static page. Then we decoupled design from description and we introduced CSS; nice, clean separation, more manageable - everything looks nice up to this point.
Introduce dynamic pages, introduce JavaScript. We can now change the DOM and we can make interactive, neat little webpages; cool, the web is still fun.
Years later, we start throwing backend concepts into the web and bloating it with logic because we want so much for the web to be portable and emulate the backend. This is where it starts to get ugly: come ASP, come single pages, partial pages, templates,.. The front-end now talks to a backend, okay. We start decoupling things and we let the logic be handled by the backend - fair enough.
Even later, we start decoupling the edge processes (website setup, file management, etc.) and then we introduce ugly JavaScript tools to do it. Then we introduce convoluted frameworks (Angular,..). Sometimes we find ourselves debugging the tools themselves (grunt, gulp, mapping tools,..) rather than focusing on the development itself (as per ITIL guidelines; focus on value), no matter how promising today's frameworks claim to be ("You get to focus on your business code"; yeah right, in practice it has turned out differently for me. More like "I get to focus on wasting copious amounts of time trying to figure out your tangled web").
Everything has now turned into an unfriendly, tangled web (no pun intended).
I miss the old days when creating things for the Web used to be fun, exciting and simple and it would invigorate passion, not hate.
<my cents="2"></my>3 -
"Let me just quickly clean up the old stashes since everything is merged and I won't need them... "
Guess what, I needed that stash, and I had it saved 20 minutes ago.10 -
It is easy to believe something is over-engineered as a junior. You open a solution and get slapped in the face with a wet fish of many classes, with strange names, doing very little, with everything coming together in ways you don't understand.
My advice is to learn about design patterns, clean code, clean architecture, and model driven design. Until that point I don't think you can make such a distinction. And indeed once knowledgeable of patterns and techniques as well as the domain, the same solution can look obvious, elegant and readable.
In a field where everyone is saying 'dont over-engineer', one must be able to tell if something is actually bad, or just uses techniques you don't recognise.
Telling your senior you think something is over done just because you don't understand it is not good. First learn techniques, understand the code, then form opinions that are at least relevant then.
From someone who committed that crime.4 -
So I did a clean Windows 10 restore recently on my laptop from Insider program to just Anniversary Update . Went away from my computer for a day or so by the time I got updates completed and Visual Studio up and running. So earlier today I went to start back up development on a project of mine to come across the emulators not working. The thing is that I lost 6 hrs of production to figure this out. I tried everything possible so I gave up and reinstalled VS to just remember I forgot to turn on my Hyper-V in BIOS setting. So I'm half way in VS reinstalling and I can't do anything about it. GOD FUCKEN DAMMIT W10!8
-
Proudest bug squash? Probably the time I fixed a few bugs by accident when I was just trying to clean up an ex-coworker's messy code.
So I used to work with a guy who was not a very good programmer. It's hard to explain exactly why other than to say that he never really grew out of the college mindset. He never really learned the importance of critical thinking and problem-solving. He did everything "by the book" to a point where if he ran into an issue that had no textbook solution, he would spin his wheels for weeks while constantly lying to us about his progress until one of us would finally notice and take the problem off his plate. His code was technically functional, but still very bad.
Quick Background: Our team is responsible for deploying and maintaining cloud resources in AWS and Azure. We do this with Terraform, a domain-specific language that lets us define all our infrastructure as code and automate everything.
After he left, I took on the work to modify some of the Terraform code he'd written. In the process, I discovered what I like to call "The Übervariable", a map of at least 80 items, many of them completely unrelated to each other, which were all referenced exactly once in his code and never modified. Basically it was a dynamic collection variable holding 80+ constants. Some of these constants were only used in mathematical expressions with multiple other constants from the same data structure, resulting in a new value that would also be a constant. Some of the constants were identical values that could never possibly differ, but were still stored as separate values in the map.
After I made the modification I was supposed to make, I decided I was so bothered by his shitty code that I would spend some extra time fixing and optimizing it. The end result: one week of work, 800 lines of code deleted, 30 lines added, and a massive increase in efficiency. I deleted the Übervariable and hardcoded most of the values it contained since there was no possible reason for any of them to change in the future. In the process, I accidentally fixed three bugs that had been printing ominous-sounding warnings to the console whenever the code was run.
I have a lot of stories about this guy. I should post some more of them eventually.2 -
I started my career 7 years back (at the same company I am currently working) as an Asp.net developer. My company used to work in Microsoft domains back then. 5 years back one of our directors decided to dig into the open-source technologies and move away from Microsoft. And I was the first employee who was assigned to learn python. I thought about switching the company so that my 2 years of asp.net experience doesn't go waste. But I didn't as I started liking python. It was easy, powerful, clean, and same code ran on every fucking platform. And I was introduced to open-source.
Don't know best or worst, but this decision definitely changed my view about software development. I understood that money is not everything, passion is also important. The open-source community runs on passion and dedication. And I love the way it works. The bottom line is, I am happy. And python is beautiful. -
If I ever get the chance to start my own company or pick out the dev team I work with... I will never, ever, ever work with anyone who doesn't understand how to abstract out a problem. Our prod DB is a mess and our API is a mess because we left it to some dudes who are dumb as shit and doing everything ad-hoc. Now their ad-hoc shit doesn't work anymore and I get to clean it up. 😫😞FML
-
"It's very unfortunate that someone has to sit 10 hours a day on a computer screen but that's what we are paying for."
Working with an EU client.
Task is in stages beginning from assessment of an 9 year old Salesforce instance, cleanup and then transition to lightning.
The deliverabale in the first stage is excel sheet - objects(2400+), fields, apps, packages, profiles(110k), users, perm sets, apex classes, triggers, pages, s-controls and insert each and everything that a Salesforce instance could have.
Each and every data needs to be, analyzed and documented with our recommendations before being sent over. (Finding duplicates in 110k profiles??)
Oh, did I tell you, this was to be done four weeks? Weekend goes to hell.
That's when this beautiful motivational line comes up from the bridge, "It's very unfortunate that someone has to sit 10 hours a day on a computer screen but that's what we are paying for."
Fortunately(un?), that part of project is done and over with.
Now comes the clean up, identify packages not being used, remove them, qa and then push for deployment.
Mind you, this project is to be 2 weeks long. Its Friday of the first week today. And I am still working weekends.
Can I say, FML?5 -
Once upon a time, there was a young, clean-shaven dev.
Soon in his career the smooth faced dev realized he had a knack for cloud setup. He understood permissions and network configurations, he could tell apart security groups from access groups, he could get all the information needed for an IPSec VPN in a single breath.
But if things got really tough, if the network layout was really messy, if the security settings too arcane, some older, bearded senior dev would come to solve everything.
Time passed, the junior dev got better at stuff, switched companies many times, solved a million problems, delivered countless projects, attended infinite meetings - twice - and, as often is the case, the senior devs, one by one, left the companies and run ever more scarce each day.
One day, a long, loooong time after his first meeting, the once young dev was solving network problems. Weird ones. Tough security requirements. Poorly documented cloud services. For hours, the dev and his colleagues toiled away, chipping at the problem without getting at its core.
The silence fell in the meeting. Everybody looking at each other, waiting for someone to say something.
Then they all looked at the dev, their eyes crying for help.
And the dev realized that he hadn't shaved in weeks.
-------‐‐-------------------------------
I've shaved since then.
And I did solve the problem. Took many more hours, though. -
I made a bash script for my website that anonymises the visitor IPs in the Awstats logs by replacing the last octet with 0. It can either process all logfiles except the one of the current month, or only the one of the previous month. The latter mode is how I put it in a cron job to be called on the first day of each month.
Everything worked flawlessly with test data, but on the server, some visitor IPs were not anonymised. I noticed that all of them were from the last day of the previous month. Looking at the time stamp of the logfile, it was indeed from the first of the current month, but not from 00:21 where my cron job runs - instead, it was modified around 14:30.
Then I realised that the Awstats engine seems to be configured to batch add the log entries once per day at 14:30 so that when my cron job ran, the visitor data from between 14:30 and 00:00 were not yet in the file!
Solution: batch process all previous logfiles once to clean them up, and schedule the cron job on the 2nd of each month at 00:21.2 -
Dont forget to clean everything....
If an issues comes from now where and for no reason... Clean everything.2 -
I know I’ll get mixed views for this one...
So I’ll state my claim. I agree with the philosophy of uncle bob, I also feel like he is the high level language - older version of myself personality wise.. (when I learned about uncle bob I was like this guy is just like me but not low level haha).
Anyway.. I don’t agree with everything because I think he thinks or atleast I get the vibe he thinks everything can be solved by OOP, and high level languages. This is probably where Bob and I disagree. Personally I don’t touch ruby, python and java and “those” with a 10 foot pole.
Does he make valid arguments, yes, is agile the solve all solution no.. but agile ideas do come natural and respond faster the feedback loop of product development is much smaller and the managers and clients and customers can “see things” sooner than purly waterfall.. I mean agile is the natural approach of disciplined engineers....waterfall is and was developed because the market was flooded with undisciplined engineers and continues to flood, agile is great for them but only if they are skilled in what they are doing and see the bigger picture of the forest thru the trees.. which is the entire point of waterfall, to see the forest.. the end goal... now I’m not saying agile you only see a branch of a single tree of the forest.. but too often young engineers, and beginners jump on agile because it’s “trendy” or “everyone’s doing it” or whatever the fuck reason. The point is they do it but only focus on the immediate use case, needs and deliverables due next week.
What’s wrong with that?? Well an undisciplined engineer doing agile (no I’m not talking damn scrum shit and all that marketing bullshit).. pure true agile.
They will write code for the need due next week, but they won’t realize that hmm I will have the need 3 months from now for some feature that needs to connect to this, so I better design this code with that future feature in mind...
The disciplined engineer would do that. That is why waterfall exists so ideally the big picture is painted before hand.
The undisciplined engineer will then be frustrated in the future when he has to act like the cool aid man thru the hard pre mature architectural boundaries he created and now needs links or connections that are now needed.
Does moving to agile fix that hell no.. because the undisciplined engineer is still undisciplined.
One could argue the project manager or scrum secretary... (yes scrum secretary I said that right).. is suppose to organize and create and order the features with the future in mind etc...
Bullshit ..soo basically your saying the scrum kid is suppose to be the disciplined engineer to have foresight into realizing future features and making requirements and task now that cover those things? No!
1 scrum bitch focuses too much on pleasing “stake holders” especially taken literally in start ups where the non technical idiots are too involved with the engineering team and the scrum bastard tries to ass kiss and get everything organized and tasks working so the non technical person can see pretty things work.
Scrum master is a gate keeper and is not needed and actually hinders the whole process of making a undisciplined engineer into a disciplined engineer, makes the undisciplined engineer into a “forever” code grunt... filling weekly orders of story points unable to see the forest until it’s over because the forest isn’t show to the grunt only the scrum keeper knows the big picture..... this is bad this is why waterfall is needed.
Waterfall has its own problems, But that’s another story for another day..
ANYWAY... soooo where were we ....
Ahh yess....
Clean code..
Is it a good book, yes.. does uncle bobs personality show thru the book .. yes lol.
If you know uncle bob you will understand what I just did with this post lol. I had to tangent ( at least mine was related to the topic) ...
I agree with the principles of the book, I don’t agree with the extreme view point. It’s like religion there’s the modest folks and then there are the extremists. Well he’s the preacher of the cult and he’s on the extreme side.. but that doesn’t mean he’s wrong.. many things he nails... he just hits the nail thru the wall just a bit.
OOP languages are not the solution... high level languages do not solve everything.. pininciples and concepts can be used across the board and prove valuable.. just don’t hold everything up like the 10 commandments of which you cannot deviate from.. that’s the difference here I think..
Good book, just don’t take it as the Bible as a beginner, actually infact DONT read this book as a beginner. Wait a bit learn then reflect by reading this.15 -
You know why i hate JavaScript?
Instead of writing
return x.y.z;
I wrote
return
x
.y
.z;
Just for making the code look clean
and everything broke...10 -
Let's face it: I am and will always be a tinkerer. Yes, I know my ways around, I can sneak into legacy code bases easily and throw new stuff in there, I've seen software stacks. But scarcely sound design, really modular. Even from the cleverer, experienced ones. They can master more complexity, so they can handle more spaghetti. Some essay from the 80's had this grand idea to organically 'grow' software. That's how it looks like most of the times: cancerous, parasitic super fungi (armillaria). Yeah, we all know have to fight bit-rot and entropy, but it was all lost before already. We'll never get rid of legacy protocols, legacy code.
And even when we go green field, start a fresh. Yeah, take a great design, make everything new, after some months of throwing features and outer constraints at the thing, it's the same old mud again.
But we can still dream on: some day I will design great APIs, I will have great test coverage, documentation, UML design, autometed tests, fuzzing, memchecking, I'll work professionally, clean coder style.
Pfft forget it. Maybe change for consulting, because we'll continue to dream of the 'clean' code, so you can sell the next 'recipe', development method. It's like diets. As effective. For the one selling.2 -
I made a web app where I can build any kind of form, with sections, validations, multiple type of inputs (even coordinates or polygons, photos, etc.) while allowing to see a preview of how that would look in a mobile app. That preview is because when you're done building the form and saved it to the DB, then in a mobile app (which I made as well) you can choose that form and use it.
Everything is beautiful, but after 3 sections with 25 questions each, everything becomes really slow because of the insane amount of actions that redux-form fires on every character type 😢
Today I made a public demonstration, and despite my code is very clean and well made, I think, that slowness made me look like a shitty developer, even thought I know what I made is like a 1000 times better than what I was asked to develop.8 -
There are a couple of things I like to do before sitting down to code for the first time on a project. Throughout all of this I'm (sometimes unconsciously) planning out the project.
- Clean the house;
- Buy groceries;
- Buy/prepare food & eat;
- Arrange everything on my desk so that everything looks slick as fuck;
- Actually sit down to do something;
- Realize it's past midnight;
- Go to sleep.
Sometimes I wonder if I have OCD...3 -
Client: I need you to clean up the database and remove all rows [with children] with a timestamp older than 5 years
Team: OK
Team [internally]: we definitely need a dba for this
Me: dba? Why? A junior dev can do that
Team: yyeeaahh, but still.. A DBA would do it better. You know, foreign keys and everything
Me: ....8 -
CTO at my previous company think that wordpress based website is took a long time to load.
I suggest to use caching and fix ton of abusive query, He refused. He spun up more VM, upgrade the ec2 instance level to the max. Said that he resolved the problem. But the problem still persist actually.
Blame me for slow response website, blame me for late of deployment because data is not ready ( there's a lot of spam in there, we need to clean it before )
I left the company, Coworker said that he just install a bunch of caching plugin,
He made the website down for entire day and don't understand what is happening. Ask other developer to fix it quickly, to do unpaid overime
The site is back to bussiness, said to all team that he already fixed it.
Everything good happened, he claimed that it was his idea.
And the best part is : he put 'ssh' as skill list in his personal site1 -
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 -
mkdir new-shiny-app
cd new-shiny-app
git init
Decide on the stack, release the package manager on it to scaffold away. Everything still clean and pure.
One of those little joys of our job :) -
The best dev advice a dev has given me is to write clean and structured code from the very start of every project. Changed my life in general.
"How you do one thing is how you do everything." -
Learning to code is like learning to write when you were younger. It can be sloppy or clean but if you keep at it it'll probably become clean. But, with these sites like code academy that accept only one solution to the problems they present it's as though you're being told that everything you're doing is wrong eventhough you get a solution to the problem in the end. It bugs me that these sites want people to code the exact same way.
-
When your mostly done code that you spent time on documenting and keeping clean gets handed over to the sloppiest dev on the team. Because that dev is out of tasks and you got other work that moved up in priority. I really hope he doesn't ruin everything :(3
-
Have been pissed at the guy who wrote the js on the project im working on (its just so messy!). Same project has python scripts I need to look at to squash a bug, and this. code. is. so. clean. They should have let this guy write everything in python. Im ashamed I ever hated on him.4
-
so here’s the tea.
i’m a Chinese dev working in a Japanese company. they’ve got this decently sized project a full web app and backend stack and yeah, I’m handling both ends. full-stack life. not a problem. I’ve seen worse.
but the maturity level in this place? the passive-aggressiveness? is different level. have you ever worked somewhere where your coworkers act all sweet on the surface, but lowkey make it feel like everything is your fault in the most obvious way possible?
so here comes the fun part.
the Stripe exchange rate endpoint we were using? deprecated. not globally — just regionally in Japan.
i did my homework. contacted Stripe support. got the chats, screenshots, docs, confirmations, evidence, not .........vibes.
solution? easy. i integrated a third-party API that returns the same exchange rate data. built a cron job to pull and cache the values daily. stored it locally. frontend grabs the user’s currency via IP, backend returns the rate, no stress, no wasted API calls. boom. problem solved.
my manager? totally got it. said it was efficient.
but the founder? man acted like a toddler.
he flipped. said it was my fault.
told me i just "no communicate well...uh...very confuse..." like bro… what even? do I look like I own stripe or do I look like I secretly working for them? plus, i explain in full, still not understand.
he got heated in meeting, so I clapped back in the meeting: you want to argue all day and get nothing done? or you want to understand what’s going on, and let me go back to building stuff that actually works? pick one.
he didn’t like that.
pretty sure he’s shopping for my replacement now. well, doesn’t take a genius to see it.
but I’m not here to babysit egos. I’ll do my job clean, document everything, and keep it professional. meanwhile yeah, I’ve already started looking for something else.11 -
> 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. -
So, idk if I told you guys yet but I'm a web dev intern.
Recently the company I work at doubled in size and so this was the result...
Here's what my weekend looked like:
Friday:
0830: Math exam at school
1005: Get on the public transportation
1100: Arrived at internship
1130: Get started on setting up 8 new PC's
/*realize I have to do them one by one, clean window installation, office, updates, and some random software. Internet connection sucks, so one PC at a time it is.*/
2130: bus ride home.
Saturday:
0900: Get on public transportation to work
1000: Arrive and start finishing up PC's
1600: Start moving old pc's to new room and install new pc's
2130: Get on bus ride home
Sunday:
0830: Get call from second job asking me to do some stuff.
1100: be done with second job
1400: Get on public transport to work
1500: start cleaning up old pc's for reuse
2130: Go home
And today we finished installing everything.
I've spend 17 hours of my weekend at internship. Guess who's taking Wednesday and Friday off? -
Little bit of background I've been a front end developer for the past eight years not a good one but I get by. Last 4 working with consulting firms for fortune 500 clients. Big projects big plans big structure, following someone else's lead and just knowing the basics of code reviewing, git flow, code deployment and everything else... life happens and i end up as a front end developer for a big company not tech related that wants to depend less from consultants and do more in house dev. Seems a pretty straightforward project front in angular. Back on python doing queries to a database with sql server. I finish the on-boarding and after two weeks finally get access to the repos. Worst spaghetti code I've ever seen. Seems like someone took a vanilla script project from 10 years ago and push it into an angular tutorial project. Commented code, no comments for the code, deprecated functions still there, no use of typescript nested ifs hell. I try to do my job doing new features do comments clean up a bit. Senior developers get annoyed5
-
Flask people
so I was given this old flask project, around 3k lines written in py2, the code is simply old and not refactored. So, it's pile of shit. Migrations completely botched as the original author created reference to live data in models.
Very strict line formatting resulting in backslashed ternary conditions.
Even saw manually formatted json responses... _line by line_.
My job is to clean this mess and eventually do as much as possible to freshen the whole project.
Currently just refucktoring the code as it's the only easy thing to do out of everything that could be done (it's still slow process).
Any tricks and tips? currently considering to try upgrading it to py3 but it feels like throwing gunpowder into already burning house.3 -
A story from the old days
My father had a fame around he's friends that he understood this nasty business that is computers and in the pre-windows time he was reasonably knowledgeable... But as things evolved he didn't evolve with them so when he's friends asked him to help he would take me to solve the problem...
One day he asked me to see what was the problem with a friend's personal computer. This is a 70+ year old man.
When I get to his computer I do a quick check and see it's too infected with so many viruses to the point it is better to just format and clean install, so I ask him to backup he's files and the next day I picked up the PC and clean installed and setup the all thing...
Not more than 3 months pass and the guy says to my dad the problem was back...
I get there and the antivirus was turned off and the PC was infected... Found it weird but okay, enabled the antivirus, cleaned everything... Back to as new.... This time I instructed him to keep the antivirus always updated and running...
One week later to my surprise: he reports it is all back... Now I am getting tired of this and went to he's browsing history to find out how the hell he is achieving this... Too my surprise the amount of early internet shady porn sites was over the top...
I know had to tell a 70+ year old man how to safely watch porn... But that is not my problem, so I ask him what kind of sites he's going to... He blames he's grandson for using the internet in he's computer... Only problem: he's grandson is 2 years old...
I just set up the bookmarks with some children sites and convinced my father to take a look at that and either instruct the man or the kid on how to watch porn without getting a venereal disease... -
So working for a company and the dev team I’m apart of works on a legacy rails app. Technical debt is high, no automated tests, no proper routing and also running unsupported versions of the language.
I joined seven months ago and got the current team doing automated testing so that’s a plus, they bought this app four years ago and there’s been no language updates, testing, cleanup, security updates, nothing, just adding to bad code.
Now we’re looking to actually upgrade language versions, the language and the framework now this will cause a lot of stuff to break naturally due to how outdated it is.
So I started putting proper routes into place how things should of been when things were being built as we have some spare time I decided to go out of my way to clear up some of the technical debt to get ahead of the curb. Re-done an entire section of the app, massive speed improvements, better views, controller, model, comment clean up and everything exactly how it should be.
I push the PR,
*other dev* - “why are we doing all of these other changes”
*me* - “well to implement routes properly, we have to use the new routes I just did some extra cleanup along the way”
*today, me* - “can you lend me a hand with one of the routes the ID isn’t getting passed”
*today, other dev* - “this wouldn’t of happened if you didn’t redo all these files, let’s just scrap the changes”
…
Sooo, I’ve spend three weeks improving one section in the app, because I’m having issues with one route according to this dev I should scrap it? Wait come again, am I the only one in this team who cares about making this app better all round?
Frustrating…4 -
we're doing a massive database migration and trying to fix a lot of shit that was done for years in the db. problem is, i have to cater to a business major asshat that doesn't know the first thing about working with data and he's responsible for 99% of the shit we're trying to clean up.
his response to the problem i brought up in his stuff? "we can deal with it later, right now i need it like this". this is why you guys have a shit database, because we have to spoil this idiot. then they complain everything takes forever to run and the database is bloated and somehow it is our fault.
I'm really holding myself right now, because i already went off on him once and he basically called me hysterical, and our boss likes him too much to antagonize the bastard. but god i wish i could run over him11 -
Nothing fun/artsy.
Everything there is functionally relevant. (sticky notes, one pen, reading lamp)
I abso-fucking-lutely hate clutter, plus, a clean desk inspires me to innovate/create.2 -
Fucking Visual Studio is such a piece of shit. 2 years ago we created a solution for our 7 webclients with 30 projects (clients, common stuff, tests, ...).
Things were ok, we could change something, save the file and everything was built and we just had to reload the client. Only F12 between the projects does not work.
But now the studio doesnt get shit done. Opening the clients solution after a clean checkout takes 5 minutes, saving doesnt build anymore, building breaks the project because it cant find references, rebuilding works but takes 3 minutes. When you have a syntactic error in a file the fucking thing almost crashes and becomes unresponse for a few seconds. It randomly shows errors in some files that disappear once you rebuilt it, sometimes it builds but still shows an error in that file.
But at least we will soon rewrite the clients in angular5 and dont need this piece of crap software anymore for the front end.
If I only could get my team to use another technology for the server so that I dont have to see this big pile of shit anymore. Fuck Visual Studio.2 -
Real story:
Started fixing one file in one repo, build, doesn't build, go into other repo fix just one file there, but first I need to make myself a toolchain, making of toolchain fails because it depends on some dirty fix in the file I was fixing, refactor and clean that to a proper state, fuck yeah toolchain builds, source toolchain run make now, breaks with undefined reference, no time to debug plus fuck this automake, remove it, make a makefile, builds fuck yeah, shit now unittest are failing because why not, refactored that makefile as well, everything compiles, automate the test fully so that they are ran on the target out of make just because I'm a nice guy, fuck yeah everything works, commit this repo, commit other repo, review time, one of the guys gave up, the other one did it properly, found some shit there, fix that, done, merge, triggers CI fucking pass
All of this was done in 3h, Talk about efficiency -
I don't understand the hype with blockchain.... Everything at the end relies on a huge network of miners which uses a whole lot of resources and energy right?
So isn't the cost of running one of these extremely high? And well another source for pollution, climate change? The hardware isn't running on clean energy I think?18 -
To all that read my rants regarding my webshop before! Here's the long awaited update!
So this asshole partner did just not take care of business so I decided to stand down as a director for that company. So we arranged that last monday.
I thought: let's end this properly, clean up my mail, some other stuff... tuesday he revoked me access to everything, so I couldn't access anything anymore. Wow fucker! You never did a thing and now suddenly you take action? Wtf?!
Can you please pay your part of the bill for the accountant? You already promised a couple of times.
Well of course mr retard, you really think I'll follow up on my promises? You never kept 1 of them yet expect me to keep that promise? Fuck you man.
So today he asked again. I told him that I'd like to know what he wants with all the custom made stuff as I developed it and copyright is owned by me. Then mr asshole started insulting again: just because of the fact that you're not a front end dev doesn't mean that makes.up for you taking so much time.to implement all that. I asked an expert.and he could do it in 3 hours! Wow dude! A front end dev optimizing db queries, rewriting parts of the back end in just.3 hours including the front-end?,You're so right.
Of course not cunt face. I'm already full stacking for 20 fucking years and.you tell me that?! Really? Mr insult's back again!
Then he says: I'm so fed up with all this crap that to end this properly I will have my new IT business partner look at your so called 'custom made components'.
For fuck's sake man, can I send you a tree with a rope so that you can hang yourself?
Good luck getting your domain name as it is still registered on my company's name. I might cancel it someday in the future at my convenience.
If anyone here loves fucking up a website, get in touch with me.1 -
I need to vent or I'm going to fucking explode like a car filled with bombs in motherfucking Iraq...
A couple of months ago I inherited a project in development from our team leader who was the sole developer on it and he was the one who designed every single thing in it.
I was told the project is clean, follows design patterns, and over all the code is readable and easy.
Those were all fucking lies.
See throughout the period he was working on it, I saw some of the code as it was going through some pull requests. I remember asking the dev why he doesn't comment his code? His response was the most fucking condescending shit I've ever heard: "My code is self-documenting"...
Now that I have full control over the code base I realize that he over engineered the shit out of it. If you can think of a software design pattern, it is fucking there. I'm basically looking at what amounts to a personal space given to that dev to experiment with all kind of shit.
Shit is way too over engineered that I'm not only struggling to understand what the hell is going on or how the data flows from the database to the UI and in reverse, I'm now asked to finish the remaining part and release it in 8 weeks.
Everything is done in the most complicated way possible and with no benefits added at all.
Never in my career have I ever had to drag my sorry ass out of bed to work because I always woke up excited to go to work... well except for the last 2 weeks. This project is now taking a mental toll and is borderline driving me crazy.
Oh, did i tell you that since he was the only dev with no accountability whatsoever, we DO NOT EVEN KNOW WHAT IS LEFT TO BE IMPLEMENTED?
The Project Manager is clueless.. the tickets board is not a source of truth because tickets set to resolved or complete were actually not even close to complete. FUCK THIS SHIT.
For the last week I've been working on 1 single fucking task. JUST 1. The whole code base is a mine field. Everything is done in the most complicated way and it is impossible for me to do anything without either breaking shit ton of other features (Loosely coupled my ass) or getting into fights with all the fucking libraries he decided to use and abuse.
1 whole week and I can't even get the task done. Everyday I have to tell the project manager, face to face, that I'm still struggling with this or that. It's true, but i think the project manager now thinks i am incompetent or just lazy and making excuses.
Maybe I'm not smart enough to understand the what and why behind every decision he made with this code. But I'm sick to my stomach now thinking that I have to deal with this tomorrow again.
I don't know if I'll make the deadline. But I'm really worried that when this is released, I'll be the one maintaining that nightmare of a code base.
From now on, if i hear a fucking developer say their code is "self-documenting" I will shove my dick + a dragon dildo + an entire razor gaming keyboard up their ass while I shoot their fucking knees off.
oh... and there are just a couple of pages of documentation... AND THEY ARE NOT COMPLETE.2 -
If your project gets fucked up beyond repair, for example by your IDE (I'm looking at you, Android Studio) try this:
0. Backup any ignored but essential files in your project (e.g. secrets) outside of your project directory.
1. Close your IDE.
2. git clean -xdf
3. Restore any backed up local files.
4. Reopen the project as a new one in your IDE.
This is awesome, because it cleans up everything non git and not committed. So any local project files configured by your IDE will be nuked, which allows for a clean start. Also, all your locally committed work is preserved.
BTW, if you really need to start over (even with git), then just remove all the things an clone the remote repo again. -
I've been feeling very bad because I don't think I've been making good use of my free time. So I decided to change.
Looked at my goals, first in line, getting a driver license.
For that, I need to arrange times for practice with my dad.
For that, I need a clean timetable. I had one but teachers are lame and don't respect the times of course.
So, I need to print the new one I already had done.
So I went to the printer.
And it prints awful, everything is pink because it doesn't print yellow.
Fine, let's change the cartridge.
Printer refuses to work, it throws a stuck paper error.
My dad tries to fix it putting fingers inside. Nothing.
We suspect it's the new cartridge, change the new cartridge chip with the one the old one had. Printer fooled.
It still doesn't work. Stuck paper.
My dad admits he felt he broke something when he reached inside the printer..
We had to disassemble it and fix the broken part.
Now it works again.
It still doesn't print yellow.
We'll have get it fixed or get a new one.
I guess I have to draw my timetable by hand...
Sucks, I made it using html and flex. Every 1fr was 5'.
I'll make a gist if anyone is curious about it.1 -
I'll never use code hacked by another dev for work.
I got code that only solves one single fucking use case but there are way more to consider ...
The way the problem is solved ... not dev friendly to use, clean code is non existend and did I mention that it doesn't solve many other important use cases?
All has to be refactored and rethinked and everybody complains about why it takes so much time and the code should not be a technical masterpiece.
I'm sick of these bullshit devs, not taking their role as professionals serious.
Devs should not only learn how to code but also to work as a professional. Soft skills shouldn't be optional and the way how IT is seen has to be reshaped.
There are reasons why in these days the developed software has a lot of bugs and is not flexible. Everything has to be done now, changes come so often that they conflict with previous ideas and nobody knows the complete customer specification so the conflict shows in dev phase up.
Most devs work like they are in a hackerspace. Stop doing this.
You can do this in your freetime but stop doing this when you work in a professional environment.2 -
I managed to clean up the React part of my project, and now everything is smooth AF *.*
But boy oh boy did I fuck up big time, any console.log() written under the render section of anywhere was triggered around 4 times! I still have to rebuild everything (I only finished the dashboard so far) but it will be cleaner that I could ever hope2 -
TLDR; After my dad was lazy, I assembled the parts myself.
As far back as I can remember, if I think of my father he is sitting behind his pc playing games. It was like me, his escape.
When I was between 3-5 years old he upgraded his pc to one that supported windows 95. The most exciting thing I remember about his new pc is that it had a sound card or what passed as one anyway - think polyphonic ring tones in place of onboard beeps. It was fucking awesome.
He gifted his old 386 to my brother and I which we spent a blissful year or so playing DOS games on until it finally died. I wouldn't have access to a home computer again until I was 11 - touching my fathers computer was out of the question, never mind actually using it.
The reason I didn't have access to a pc was simply because he didn't replace his pc - he made minor upgrades to it until he died with a whopping 512mb of RAM. Seriously his pc specs were a bragging factor like geek porn - better than any else's I ever saw including his I.T friends (he was an electrical engineer), everyone knew this apparently aside from his boss...
Auto-cad started becoming a thing and my father for the first time ever had a reason to actually do work on a computer, he immediately used the opportunity to leverage his company into paying for a pc. To get better "value" for the company he ordered the parts in place of a pre-built machine - in reality he blew 90% of the budget on a new motherboard and graphics card to upgrade his own pc and the cheapest entry level components for everything else. The day they arrived he upgraded his own pc, threw the excess parts into a box and told us it was our new computer which he would put together over the weekend. He didn't.
After 3 months of nagging I was fed up and taking liberties with him that landed me more than one hiding, at some point he was over it and told me if I wanted something that badly I should do it myself. He walked into my room after becoming concerned if I had run away/hurt myself since he hadn't heard a whistle from me in 6 hours and I was battling my ass off trying to install windows 98.
He inspected my assembly gave me an approving nod and showed me that the hard drives physical jumper was set to slave and the rest is history. I hadn't used windows before, or built a computer let alone used one in years but somehow I always knew, it just clicked and made sense to me.
I didn't truly recognise just how much I had learn't watching him play DOS games over his shoulder and clean/upgrade his pc. It changed everything and thanks to only being allowed to watch him use a pc, once I finally had access to my own computer again I revered it and all it's possibilities. I knew I should use it to do something special. -
Hot take:
Want to bloat the shit out of your product and want to lose the core USP?
Want to stop solving the problem you set out to address?
HIRE A PRODUCT MANAGER.
PMs are expert at shit show. We fuck up everything.
God I hate my profession.
When I start my company, the mandatory rule for every PM will be that if you want to add or enhance a feature, they will have to remove a feature. Whoever fails to do so will be punished by having to clean up the code base and work in sales for a quarter.7 -
v0.0005a (alpha)
- class support added to lua thanks to yonaba.
- rkUIs class created
- new panel class
- added drawing code for panel
- fixed bug where some sides of the UI's border were failing to drawing (line rendering quark)
v0.0014a (alpha) 11.30.2023 (~2 hours)
- successfully retrieving basic data from save folder, load text into lua from files
- added 'props' property to Entity class
- added a props table to control what gets serialized and what doesn't
- added a save() base method for instances (has to be overridden to be useful beyond the basics)
- moved the lume.serialize() call into the :save() method on the base entity class itself
- serialized and successfully saved an entities property table.
- fixed deserializion bugs involving wrong indexes (savedata[1] not savedata[2])
- moved deserialization from temp code, into line loading loop itself (assuming each item is on one line)
- deser'd test data, and init()'d new player Entity using the freshly-loaded data, and displayed the entity sprite
All in all not a bad session. Understanding filing handling and how to interact with the directory system was the biggest hurdle I was worried about for building my tools.
Next steps will be defining some basic UI elements (with overridable draw code), and then loading and initializing the UI from lua or json.
New projects can be set as subfolders folders in appdata, using 'Setidentity("appname/projectname") to keep things clean.
I'm not even dreading writing basic syntax highlighting!
Idea is to dogfood the whole process. UI is in-engine rendered just like you might see with godot, unity, or gamemaker, that way I have maximum flexibility to style it the way I want. I'm familiar enough with constructing from polygons, on top of stenciling, on top of nine-slicing, on top of existing tweening and special effects, that I can achieve exactly what I want.
Idea is to build a really well managed asset pipeline. Stencyl, as 'crappy' as it appeared, and 'for education' was a master class in how to do things the correct way, it was just horribly bloated while doing it.
Logical tilesets that you import, can rearrange through drag-n-drop, assign custom tile shapes to, physics materials, collisions groups, name, add tag data to, all in one editor? Yes please.
Every other 2D editor is basic-bitch, has you importing images, and at most generates different scales and does the slicing for you.
Code editor? Everything behavior was in a component, with custom fields. All your code goes into a list of events, which you can toggle on and off with a proper toggle button, so you can explicitly experiment, instead of commenting shit out (yes git is better, but we're talking solo amateurs here, they're not gonna be using git out the gate unless they already know what they're doing).
Components all have an image assignable to identify them, along with a description field, and they're arranged in a 2d grid for easy browsing, copying, modifying.
The physics shape editor, the animation editor, the map editor, all of it was so bare bones and yet had things others didn't.
I want that, except without the historic ties to flash, without the overhead of java, and with sexier fucking in-engine rendering of the UI and support for modding and in-engine custom tools.
Not really doing it for anyone except myself, and doubt I'll get very far, but since I dropped looking for easy solutions, I've just been powering through all the areas I don't understand and doing the work.
I rediscovered my love of programming after 3-4 years of learning to hate it, and things are looking up.2 -
Someone should make a movie about three ghosts that haunt a BLOODY CROOK who makes his employees and coworkers burn the midnight oil in the bloody CHISTMAS EVE because the fucker haven't finished something that should have been ready TWO FUCKING WEEKS AGO.
The ghost of Christmas past shows the fucker that he was a bloody LAZY KID who made his elderly relatives cook, host, clean, wash the dishes and everything else all by themselves during family-gathering season.
The ghost of Christmas present shows him his employees' children teary eyed that daddy doesn't get to watch cartoons with them before bedtime (we're not Christians but just because my house is a steak-free zone it doesn't mean my kids don't expect gifts from santa, like most kids in their school!)
The ghost of Christmas future shows a Netflix documentary on how the fucker got arrested for being a BLOODY CROOK that gets played by some actor who is a hollywood-level jerk who beats his wife. And the show gets a 3% on rotten tomatoes, just to salt the wound. Oh, and a voiceover says the real BLOODY CROOK hanged himself in prison or something and his family is happy he did it.
Fuck, I hate, for real hate, people whose tardiness bleeds out on honestly-working people. I had to wake up one of my devs to fix the SHIT that the bloody crook higher-up shat on us.
My guy is getting a raise as soon as I can scream at the bean counters and my boss will be getting some loooooong, data-rich report on how the bloody crook's department is pissing in our soup.
Fuck everything.2 -
My phone got stuck in funky restart boot loop yesterday. The first 2 restarts was odd but after 3 cycles, I started panicking. Went on my PC, googled for all kinds of button combinations of power button, volume button, back button, and home button to get into fastboot, recovery and safe mode to see if I can clear stuff or at least get backup of my stuff. I also tried taking the battery out. Nothing works, except when I factory reset.
Everything was new again and as it booted up, I have to remember to change my authentication keys in LastPass, my private ssh key in Krypt. But fortunately, Google remembered all my apps and suggested if I wanted to install them again since it recognized my phone was an old phone. Thanks for tracking me Google. And now since its a reset, everything is clean, no cache, cookie, and some of my music files are all gone. Well at least its fast like before.1 -
I can now appreciate some design decisions behind react-redux after witnessing some angular OOP clusterfuck.
I am sure there is some clean/correct way to code in angular, but everyone is treating angular as java.
Some angular application (the one I have to work with) is littered with network calls. It's difficult to spot duplicates. People usually resolve promises everywhere. In services, in a top-level component, or in for loops. In react, people use apollo/redux-query or redux-saga to handle network calls. Since these libraries prevent duplicate network calls internally and reassigning apollo network call function or redux action function is always useless, it's easy to spot all network calls in a component tree.
In angular, it's difficult to trace data mutations when data can be updated everywhere. In react, you can easily find UI state updates by tracing state hooks/dispatch/apollo usages.
In angular, it's difficult to trace data pipeline. Since everything is imperative by default, people need to add update functions in data subscriptions. With all the littered mutations. Soon you will lose track of what the fuck is going on.
I hope angular get the agonizing death it deserves and fuck everyone who codes JS OOP clusterfuck UI.8 -
Serverless and death of Programming?!
_TL;DR_
I hate serverless at work, love it at home, what's your advice?
- Is this the way things be from now on, suck it up.
- This will mature soon and Code will be king again.
- Look for legacy code work on big Java monolith or something.
- Do front-end which is not yet ruined.
- Start my own stuff.
_Long Rant_
Once one mechanic told me "I become mechanic to escape electrical engineering, but with modern cars...". I'm having similar feelings about programming now.
_Serverless Won_
All of the sudden everyone is doing Serverless, so I looked into it too, accidentally joined the company that does enterprise scale Serverless mostly.
First of all, I like serverless (AWS Lambda in specific) and what it enables - it makes 100% sense and 100% business sense for 80% of time.
So all is great? Not so much... I love it as independent developer, as it enables me to quickly launch products I would have been hesitant due to effort required before. However I hate it in my work - to be continued bellow...
_I'm fake engineer_
I love programming! I love writing code. I'm not really an engineer in the sense that I don't like hustle with tools and spending days fixing obscure environment issues, I rather strive for clean environment where there's nothing between me and code. Of course world is not perfect and I had to tolerate some amounts of hustle like Java and it's application servers, JVM issues, tools, environments... JS tools (although pain is not even close to Java), then it was Docker-ization abuse everywhere, but along the way it was more or less programming at the center. Code was the king, devOps and business skills become very important to developers but still second to code. Distinction here is not that I can't or don't do engineering, its that it requires effort, while coding is just natural thing that I can do with zero motivation.
_Programming is Dead?!_
Why I hate Serverless at work? Because it's a mess - I had a glimpse of this mess with microservices, but this is way worse...
On business/social level:
- First of all developers will be operations now and it's uphill battle to push for separation on business level and also infrastructure specifics are harder to isolate. I liked previous dev-devops collaboration before - everyone doing the thing that are better at.
- Devs now have to be good at code, devOps and business in many organisations.
- Shift of power balance - Code is no longer the king among developers and I'm seeing it now. Code quality drops, junior devs have too hard of the time to learn proper coding practices while AWS/Terraform/... is the main productivity factors. E.g. same code guru on code reviews in old days - respectable performer and source of Truth, now - rambling looser who couldn't get his lambda configured properly.
On not enjoying work:
- Lets start with fact - Code, Terraform, AWS, Business mess - you have to deal with all of it and with close to equal % amount of time now, I want to code mostly, at least 50% of time.
- Everything is in the air ("cloud computing" after all) - gone are the days of starting application and seeing results. Everything holds on assumptions that will only be tested in actual environment. Zero feedback loop - I assume I get this request/SQS message/..., I assume I have configured all the things correctly in sea of Terraform configs and modules from other repos - SQS queues, environment variables... I assume I taken in consideration tens of different terraform configurations of other lambdas/things that might be affected...
It's a such a pleasure now, after the work to open my code editor and work on my personal React.js app...2 -
This is why I don't use and will probably never use Python.
Back in the uni days, I had a very important assignment. It determined whether I was going to the fourth grade from the third or not. It involved math and charting. It was very complex, and I spent a very long time on research, naturally. I knew Python 3, and I decided to use it. The only lib I needed was matplotlib, which I installed with pip. So I did the whole thing, tested it again at home, closed my laptop and was ready to go. My laptop used Windows 7 and was set up to ignore the lid closing. When I closed it, nothing would happen, even the screen stayed on. When I arrived at the lab, I opened my laptop, hit Ctrl + B as usual… and matplotlib import wasn't working. I obviously panicked, I tried to do something about it, but it just kept throwing an import error. Reinstalling the library didn't help. My friends too weren't able to help me. It just wasn't working, and that was it.
I failed the assignment, automatically. I had nothing to show. This was the first time I failed anything in the uni. Later I rewrote the code in C++ with Qt plotting library, and everything worked fine.
I never used Python since. I did everything uni with C++, and later with JavaScript. I don't care if it was Windows error or Python's. My Windows install was clean, I reinstalled it pretty much every year and kept the default settings. My laptop was for studying purposes only, and all my personal life happened on my desktop.
I didn't use exotic things like PyPy. It was just Python 3, the most basic, official installation. If you promote your fucking language as a cross-platform solution, please be bothered to make its basic behaviour stable on the most popular OS out there.
I will probably never use Python again. Maybe this issue was addressed and fixed. Maybe it wasn't. Maybe it never would've happened on Linux or Mac. I don't care. It's like maintaining friendship with a person that betrayed you. I just can't do it.
JS and NPM never failed me.6 -
Yesterday, I was expecting my merge request to be closed.
I've done all the stuff my tech lead told me to do.
All tests passes, green light boyzzzzz.
Gitlab CI pipeline passes, greeeeeen light I said.
In Jenkins everything f*cked up...
Why ??
Well it was a conflict with 3 other MRs, missing rebase from other dudes.
And because they were remote working, got to clean up all this mess.
That's was a day off.
PS : well that's was not so off, I could fix a UB on a ternary and extend a test which was not covering some cases.
PS2 : learn git damn3 -
I feel like writing or telling people about the time I jumped from Windows 7 Ultimate and jumping to Windows 10. (I'm not against 10, but I'm never updating after what had happened to me)
It all starts when none of my games will play due to a possible issue with my graphics card. I look up "3D source game bug" and not many results pop up. I go on Microsoft's Qna areas and ask this question but to my surprise nothing they say would make sense. "Clean the pins of your graphics card, make sure you verify the games on Steam". I verified the games and they checked out as perfectly fine. I don't have access to my graphics card because this is a laptop, sadly not a tower.
Two months pass and my computer is already showing signs of stress, like it didn't want to live in a sense. It was three times slower than when I was on Windows 7 and it was unallocating areas of my main hard drive where I could make virtual hard drives.
Instantly I start looking up Linux distros and find Linux Mint. 17.3 was the current version at the time. I downloaded it and burned it onto a DVD-rom and rebooted my computer. I loaded into the disc and to my surprise it seemed almost like Windows 7 apart from the Linux part. I grab my external hard drive and partition it to hold the Linux distro and leave it plugged in incase Windows 10 does actually fail.
On December 19, a few months after Windows 10 had released. I start my laptop to try and continue my studies in video game development. But to my surprise, Windows 10 had finally crashed permanently. The screen flickered blue and black, and an error box saying Loginui.exe failed to start. I look at it for a solid minute as my computer had just committed suicide in a sense.
I reboot thinking it would fix the error but it didn't. I couldn't log in anymore.
I force shutdown the laptop and turn it back on putting it into safe mode.
To my surprise loginui.exe works and I sign in. I look at my desktop, the space wallpaper I always admired, the sound files, screen shots I had saved.
I go into file explorer and grab everything out of my default hard drive Windows was installed on. Nothing but 400gb got left behind and that was mainly garbage prototypes I had made and Windows itself. I formatted my external hard drive and placed everything on it. Escaping Windows 10 with around 100GB of useful data I looked at the final shutdown button I would look at.
I click it and try to boot into normal Windows 10. But it doesn't work. It flickers and the error pops up once more.
I force it to shutdown and insert the previous Linux Mint disc I made and format the default hard drive through Linux. I was done. 10 gave me a lot of shit. Java wouldn't work, my games has a functional UI but no screen popped up except a black abyss and it wouldn't even let me try to update my graphics card, apparently my AMD Radeon 5450 was up to date at the AMD Radeon 5000's.
I installed Linux Mint and thinking the games would actually play I open steam and Launch Half-Life 2 to check if Linux would be nicer to me than Windows 10 had been.
To my surprise the game ran. The scene from Highway 17 popped on screen and the UI was fully functional. But it was playing at 10-15fps rather than the usual 60-70fps. Keep look at my drivers and see my graphics card isn't in use. I do some research and it turns out I have a Hybrid Laptop.
Intel HD Graphics and an AMD Radeon 5450 and it was using the Intel and not the AMD. Months of testing and attempts of getting the games to work at high frame rates pass and the Damn thing still functions at a low terrible fps. Finally I give up. I ask my mom for a Windows 7 disc and she says we can't afford it. A few months pass and I finally get a Windows 7 installation disc through money I've saved up. Proudly I put it into my optical disc drive and install it to my main hard drive deleting Linux completely. I announced to all my friends my computer was back in working order and I install everything I needed, Steam, Skype, Blender, and Unity as well as all my games. I test Half-Life 2 and it's running exceptionally smoothly, I test Minecraft at max settings and it's working beautifully. The computer was functioning properly once again and my life as a developer started as I modeled things and blender, learned beginners C# and learned a lot of Batch. Today the computer still runs at a great speed and I warn others of what happened to me after I installed Windows 10 to my machine if they are thinking of switching from 7 or 8 on an older machine.
Truly the damage to my data cannot be undone. But the memory of the maintenance, work, tests, all are a memory of how Windows 10 ruined me and every night before the one year anniversary of Windows 10's release, I took out the battery of my laptop and unplugged it from the a.c. power, just so Windows 10 doesn't show it's DLLs, batch scripts, vbs scripts, anything on my computer. But now, after this has happened and I have recovered, I now only have a story to tell5 -
you know what annoys me about this situation the most ?
noone is living an ideal life
in any sense
except a few
but that being said, living less than ideal life if people had not wasted so much time, would have led to certain things becoming better.
example.
if i was out of development work, and had to take a crap job.
and lets say that ended up putting me in a financially unstable situation.
if i had rotten teeth, i could work part time, go to a sliding scale place and fix them one by one
while either educating myself further or looking for a better job because in truth, if i'm accepting a part time job, i must be fucked.
i don't see any longevity in an intensely physical job, I see an early death.
there are not enough paying people to ensure everyone has a skilled job, and truthfully not everyone can, but we have more people than we need to do the unskilled and skilled jobs both so why are we not running with that ?
the best time to do unskilled labor or just labor jobs period is when a person is young and there body is new.
and then not for long or with accommodation considering throwing your back out or fucking up your knees stays with you for life.
everything is so backwards in this country.
people think in terms so frequently these days in 'how can i make someone else suffer for my amusement and see their potential diminished so i feel better about my fucked up pathetic life ?'
or
'how can i get revenge against a person that doesn't deserve it'
or
'how can i ensure other people are totally boned so my charmed life i don't deserve seems satisfying'
its pretty gross as are these people
well fast forward years later and life appears fairly repetitive for alot of people
took a very large of detours here, had some fun, experienced some fucked up horros, saw a few wonders which were mostly based off my ideas, and some that were not.
still i return to what is to be done about our unfair, wasteful system ?
I've always been a fan of removing people's 'excuses' to neglect their children for example.
and definitely blocking all avenues of abuse.
even unintended, or pretended to be unintended.
i also hate people who smell because they don't clean themselves, and use excuses for that
I also hate people who make other people live in a situation where they can't take care of themselves and then try to dominate places they seek refuge because our fucking system sucks.
I also hate that there is more food than people can eat and restaurants closing when there are hungry people.
i also despise that we have more vacant houses in this country than we have family units.
some are just rotting away from neglect.
and i most especially hate people who get off on watching whole landscapes decay.
there is tons of work for the proper people
some of it is hard
some of it is tedious
its these kind of tasks that are necessary
the right spirit and the RIGHT COMPENSATION and the work gets done.. hopefully.
starting out with placing everyone in means to eat and sleep and clean themselves seems the most important.
everything else is icing on the cake, because by and large many people get sick of doing the same exact things, and people hate staring at the wall.
the problem is, there are alot of people who are, due to extreme damages from our modified culture, extremely abnormal, sadistic and untrustworthy around... anyone.
so with more time on their hands, they get bored and turn destructive and antisocial and breed people to be worse.
years I've been preaching this.
same people fly past in man places.
here and there some new fool marches in, eyes sparkling with malevolence, only to get caught in the same eternal loop and be absorbed into it.
i haven't seen one such as myself that I know of, that showed up with every intention of changing their life, becoming friendly with people, finding the things they enjoyed, and improving themselves intellectually, emotionally and socially; searching for an environment filled with more people who would be helpful to this extent, getting a rude awakening and realizing how horrible their country was becoming.
don't know if I should be happy being alone as the only sane person. heh.
I really don't want to be. I just want us to be happy. this is deserved after so much hardship. after seeing how people in general have become.
oh we all have lusts and vices and shortcomings, but the gulf that had grown between ordinary folk and the general population is astoundingly wide.8 -
I started working for a startup as Server Administrator/ System Integrator beside university to get some dollars with easy work and nice people.
((I Know two of the C*Os so I got a had feeling with this. Besides the upcoming story I'm still really happy with my position and career chances here. God bless my Department which has the most funny/rude guys, love you.))
tl;dr:
Guy fakes his Skillset and fuckup whole department, can´t do most of his basic tasks. I had my first and hopefully last interaction with this bastard.
Heres how everything started:
I was more and more involved in the leading processes and decisions.
Heard about a story where and why the whole dev-department was kicked out of his position because they were crappy developers. And cant just believe the stories they told me about the former Dev-Lead
Now I met the former "Development Lead"
I was brought in because we in the IT wondered why he would like to share his local machine password with colleges. After some questions he came out with the Reason.
He is doing home-office for some days a week now and wants his colleges to be able to start his "software". (already confused by that)
The "better IT-guy" in me offered help for automatic deployment CI/CD stuff so that they can use it as an inhouse service.
BIG OOF incoming:
"The code is not in git because I wanted to clean it up before"
"My IDE is the only place where my PHP crap work is running"
"The 'PHP-software' is to complex for this"
My Lead and I were completely speechless,
I understand the decision to kick this "dev-Lead" from the lead position down to a code monkey/ script kid.
Now I´m thinking about getting my Hands on the Lead position after my exams because if such bastards with no clue about basic stuff, no clue about leading, no clue about ci/cd, no clue about generic software stuff get the job I would easily be the "good IT-guy" with more responsibility/ skill.
Now I sit here, hate people that fake their skills and set back work of colleges for multiple months and never asked for help or advice.
And the little "Bastard Operator from Hell" in my just wants to delete all his files, emails account during a migration to completely demotivate the person who failed to be responsible for a team nor their projects.rant ci/cd php administrator startup script-kid i hate people unskilled skill faker lead developer devops5 -
Can somebody explain to me why developers (especially web) have to micromanage every single thing into it's own f*ing component.
Story time: I have an input form with some tabs. I discovered that the UI Library (Devextreme) has a nice little component that handles forms, (including tabs, groups, etc.). So I make a page, configure tabs, inputs and whatnot.
Now, I already knew that my coworkers can't handle html that is bigger than a page. So instead of putting the configs in the frontend, I made nice files where I store those, to keep them nicely clean and seperated.
Me feeling very good, went off to have a nice lunch break.
I come back read the message from my coworker, asking me to make every tab it's own component and form and load them into a separate Tab-Component, instead of using the built in configuration
......
WHAT?
Like seriously. I have a f*ing library that handles that, why the f*ck do I need to reinvent the wheel here!?
Supposedly it's to make it more maintainable, easier to find bugs, flatten the hierarchy.
Here's a little wake up call you morons: Nesting hundreds of components into each other does *not* help you with that.
It just creates a rabbit-hole of confusing containers that you have to navigate and dissect every time you try to find something.
"Can I fix the bug in the detail Page? Sure I'll tell you tomorrow when I find out which fucking component the bug results from".
Components are there to be *reused*. It's using inheritance for reusing code all over again, but worse.
But maybe I'm just old fashioned, and conservative. Maybe I'm just a really bad software engineer, because nowadays everything seems to result in architectures spreading hundreds of folders, thousands of files with nothing but arbitrary cut-offs with no real benefit, that I don't see the value in.6 -
Our owner's other company sells products online (or has the ability to anyways). Their current site is 7+ years old WordPress/Woocommerce and is seriously outdated because the site breaks if you update anything so we've been told to make a new site (finally). They also said they were going to release a whole new line up of products. So the first thing I tried to do was get them to nail down their product line and how shipping was going to be configured. I was told to just use the shipping from the previous site.
Turns out those shipping rates don't use any sort of math or automation at all, there is literally a manually set shipping value for every single product for every single shipping location (30*60) and even values for different quantities. And there's no way to export these rates into a readable table because the plugins they use shove all the data into the postmeta table, I'm forced to go through and put the data into a spreadsheet so that I can attempt to organize it and hopefully find someone way to automate it. Owner claims at one point that he has a similar spreadsheet that's more up to date but for some reason refuses to send it over or put me in touch with the right people in the shipping department.
I've gone through the shipping rates with the old products and the new products and organized them as best I can and each time I've gotten done and shown them the spreadsheet with their products and shipping, they add or change something which requires me to basically wipe the slate clean and start over eating another 50 or so hours of my time, which with everything else really means another month+ to find time to work on it between other projects.
After about a year they finished their products and I finally finished the planning and got approval to build it out for the site. Small victory!!
After about 60 hours plugging these values into the database (only about 1/3 done) I get an email from their head of shipping who tells me the values in my spreadsheet are "terribly inaccurate, in some areas by $100+" and that the data should not be used anywhere.
So after something like a year and a half and 200+ hours of work, the data I've been using to plan all this isn't even accurate. I'm trying not to go crazy here but this kind of shit is unacceptable. When we're done with this I'm going to send the owner an invoice to show him how much money he wasted on this because nothing was planned and he just wanted it built. There's a fucking process for a reason, when you don't follow the process you fuck everything up. If a client had pulled this shit and turned their simple site into this much work they would have been dropped. I get constant emails asking when the new site will be done and every time my answer is "I'm still waiting for x items that I asked for last time you asked where we were." He gets a couple things on the list and sends them back and then goes unresponsive for weeks at a time.
Management has been telling me that I seem more stressed lately but only one of them understands what's going on here when I explain it. The rest say stupid shit like "why don't you automate it" or "make an intern do it." You won't let me hire an intern and even if I did, I'm not sure I could explain how the shipping works now to even trust someone else to do it. I'm hoping when the shipping guy gives me the new sheet that maybe there's some easier solution here because I'm ready to start shooting people.2 -
gradle is infuriating.
firstly there are so limited resources to understand how it's building a java/android code. everything happens by magic and hit+trial
secondly the plugins and the tasks works in mysterious ways. sometime they work when applied in the project root's gradle file, other times they work when applied in module's gradle file, nd other times they need configuration at both levels.
then there are gradle tasks like build ,test, assemble , clean etc. these are less of an action and more of an alias to run a bundle of actions.
then we have 3rd party plugins which attach themselves to these "fat-actions" and run before/after them
and finally we have the fuckup from the java world where the only available code coverage plugin is jacoco and IT FUCKING SUCKS!!! it is a test environment plugin, it should impact test tasks , but somehow it's fucking with the assemble taskin such a manner, that the jars ans aar files generated via plugin are giving runtime errrors. yes , runtime! as if we are back in the messed up js world of "everything is good unless running live"
even if it was a compile time eeror, i would have considered. but runtime?!! fucking runtime error?! i barely understand this shit, there is absolutely no info available as to which classes are being used to create a build and how, and i am supposed to fix this? wtf?!4 -
I cleaned up my desk and decluttered everything to freshen things up.
It's much nicer to have a clean desk especially when a desk is the only 'office' in your business.
It's not perfect, but it's much better than before :)
PS: I wouldn't dare to share the mess it was and burn it through your eyes... It'd be a sin.6 -
qt compilation 2: electric boogaloo.
$ ./configure [dozens of options]
< building qmake, blah blah, success blah blah, run make && make install, blah blah >
$ make -j 8
< works for 5 minutes, then hits an error without telling me what the error is >
$ make -j 8
< works for 5 minutes until the same error. this time i notice it rm's a directory right before using it >
$ make # multithreaded fuckery, perhaps?
< fails after 5 seconds with different error >
$ make -j 2
< same >
$ make clean # fuck it, clean up and try again
< fails after 2 minutes of cleaning >
The C/C++ infrastructure. just everything about it. and i'm not even using dependencies here.2 -
I am working on an AoK bot. It worked before but now it fails on me. It says: {'success': False, 'error': 'Invalid comment.'}
I don't know why.
This is the comment: "@retoor debugsemiss everything and nave the and resorts they're not paying much to clean a fucking roomic lolg creating of my phoprooting such is the quoting this kidle... Noh ot inuforian times fined the apposivy suistlondlan't by imprymarbygind. Metwary nate ?"
Call method:
```
async def post_comment(self, rant_id, text):
payload = dict(
rant_id=rant_id,
comment=text
)
payload.update(self.auth_params)
async with self.session.post(f'/api/devrant/rants/{rant_id}/comments',data=payload, params=self.auth_params) as resp:
print(await resp.json())
```
Someone has an idea why it's failing? Also tried it with hardcored rant_id and message.22 -
Got mixed feelings about dart/flutter 😕
On one hand, I find it very easy to work with and very fast for prototyping. Everything is smooth once you compile it.
On the other hand, I keep running into weird as shit bugs and missing functionality. The bugs are primarily related to iOS, so that might not entirely be their fault. Last one required me to delete the entire project and rebuild it, the clean command didn't work shit.
It's quite annoying that so many features are missing, but I guess that's life, when you try to work with a multi platform language...1 -
!rant
[Update on previous rant at the bottom]
So I had the technical test last friday. I did not try to implement any automated test as it is not my forte.
I had three hours to showcase my knowledge of data structures and OOP so I did that.
The test was somewhat long actually, so I left out one part that I did not have time to implement: validation of input files.
Today I got feedback, everything went well, they liked my code and I only got two negatives: Error handling and automated tests xD
Now I'm going to the second phase: phone interviews and they are gonna asks the whys of my implementation.
I'll have to explain why I did not implement automated tests and the girl on the phone told me "they didn't like it much that you had no tests because tests are very important for us".
I guess I'll have to come clean and say that I'm not very strong on that but willing to learn, so I didn't want to risk it doing something I'm not really good at.
I hope it ends up well.
prev rant:
https://devrant.com/rants/1607302/...4 -
I guess I am not the only one who do not know why hes/her code runs. Today I was preparing a private API for our project and a part of it was not working for (IMHO) no reason. I was really upset, because I already put more then an hour work in a 10 minute task.
It was 9:30 PM, I came like 12 hours ago, so I knew I can do only one thing to erase my mind for a second: Clean my keyboard. I tried to be really precise and everything, because my finger can be really greasy now or then.
After a good 10 minutes I looked at my screen and I realised, that I managed to forget to remove the keyboard's cable, so my screen looked like someone tried to escape from Vim.
But! During the cleaning I also runned the code again somehow and it fucking worked. I am sitting here, cannot believe what I see. I see no changes whatsoever, so this might be like a friday gift from the universe.
Now, I can finally work on my own project...4 -
Me at the start of the day:
"Hmmm fresh new CSS sheet, this time everything will be properly organized. "
Two hours later:
"Shit, I got this feeling that I have already styled this class... Oh well, I'll organize this later.
At the end of the day:
"same element selected 3 times in same style sheet? My CSS is versatile. Spaces and indents? What the fuck am I selecting here? Everything seems to be working as intended, I should organize this... Nvm, I'll make a clean sheet next time.3 -
rant.type = Rants.PrivacyAdvice;
Just for the ones using chrome and did not inspect their settings for a while: I just discovered, that there is a "Clean computer" point at the end of the settings where an option can be set where to send system settings, processes, malicious software, your life, you, your family, your house, everything to Google. Also why the fuck does Google start developing there own virus scanner now... Just WTF!!!8 -
The washing machine broke 3 days before the wedding :'( it flooded the restaurant below my house and there was a whole fucking mess and I had to clean everything. Meanwhile my boss is still on my ass.
I shouldn't have brought shit from mediamarkt. German quality my balls.10 -
Installed centos 7, docker, standalone kubernetes on dev machine in 20 minutes.
Spend 8 hours starting fucking dashboard service, still no fucking luck, no fucking logs, nothing.
Fucking pending states without fucking explanation.
All the fucking pods are running fine except one fucking dashboard. I want to see the fucking dashboard.
Fucking shit fuck.
Probably as always if I clean the machine and reinstall everything it would start normally, without fucking problem.
Debugging fucking containers is so much pain in the ass, fuck.
I think it’s enough for today.2 -
uPlay is ramming me down the throat harder than what should be legal, I can barely breathe.
I'm trying to install Far Cry 5, I preordered it. But.. download is stuck on fucking 0B. That being 0 bytes.
I tried disabling all firewall/antivirus, clean Windows boot, restart, reinstall launcher, slam the table, like everything.
Why isn't the shit fucking doing its job? Anyone who got ideas for what I could try next?
I'm not gonna send a message to their support, I'd rather have sex with a hedgehog, where I'm the one being penetrated. Fuck me.6 -
Why is it that everything looks so ugly in Ubuntu? By everything, I mean the IDEs (Eclipse/Intellij), editors (sublime/vs code) and even the web pages. They look more clean and pleasing in Windows or Mac.
Is there a extension or plugin that'll make things look "pleasing"?
Sure, I can edit the font to be anything I want in vs code, but it is only for the editor. The sidebar and the menu still is in default system font (I don't like Ubuntu font)4 -
This kid in my class wants to work on a project idea he has with me.
The project sounds useful. A desktop client to find and download our class assignments from the school’s site with a clean GUI and other useful college note taking and organizing features and the potential to be distributed across the school if done well (there’s more too it but typing a lot on phone irks me)
But all the difficult time consuming and not learned in class parts he’s attempting to throw on me cause I’m the TA so in his words ‘I know more and am better suited for the task’.
What he doesn’t fucking realize is I know more because I do my own damn projects outside of class work and my comfort zone so I can get the knowledge to know more I don’t throw 80% of the work on other people so I can stick with the 20% that we’ve basically done in class before
So long story short I’m building my own version (it is an interesting project) with the smaller features (unnecessary for the main purpose) to be added at a later date if I ever feel like it. And he’s trying to get a different TA to do the majority of the work on his own version
If I’m still working on the project wouldn’t it have been better to just work with him even if I’m doing 80% and all the difficult time consuming aspects. Probably. But I just don’t appreciate people throwing everything difficult at me without actual reasons or time restrictions on themselves. I’d prefer just to do it 100% myself since his 20% would’ve been negligible until later anyway1 -
Anytime I operate with hardware RAIDs on prod servers, I still sweat from the nerves of sending a wrong command that would wipe the RAID metadata clean and make all the data disappear.
Doesn't help that the CLI tools (MegaCli / StorCli) are both kinda terrible. The prior has a terrible documentation / switch design and the latter cannot do everything the prior can... -
Hey guys, first time writing here.
Around 8 months ago I joined a local company, developing enterprise web apps. First time for me working in a "real" programming job: I've been making a living from little freelance projects, personal apps and private programming lessons for the past 10 years, while on the side I chased the indie game dev dream, with little success. Then, one day, realized I needed to confront myself with the reality of 'standard' business, where the majority of people work, or risk growing too old to find a stable job.
I was kinda excited at first, looking forward to learning from experienced professionals in a long-standing company that has been around for decades. In the past years I coded almost 100% solo, so I really wanted to learn some solid team practices, refine my automated testing skills, and so on. Also, good pay, flexible hours and team is cool.
Then... I actually went there.
At first, I thought it was me. I thought I couldn't understand the code because I was used reading only mine.
I thought that it was me, not knowing well enough the quirks of web development to understand how things worked.
I though I was too lazy - it was shocking to see how hard those guys worked: I saw one guy once who was basically coding with one hand, answering a mail with another, all while doing some technical assistance on the phone.
Then I started to realize.
All projects are a disorganized mess, not only the legacy ones - actually the "green" products are quite worse.
Dependency injection hell: it seems like half of the code has been written by a DI fanatic and the other half by an assembly nostalgic who doesn't really like this new hippy thing called "functions".
Architecture is so messed up there are methods several THOUSANDS of lines long, and for the love of god most people on the team don't really even know WHAT those methods are for, but they're so intertwined with the rest of the codebase no one ever dares to touch them.
No automated test whatsoever, and because of the aforementioned DI hell, it's freaking hard to configure a testing environment (I've been trying for two days during my days off, with almost no success).
Of course documentation is completely absent, specifications are spread around hundreds of mails and opaquely named files thrown around personal shared folders, remote archives, etc.
So I rolled my sleeves up and started crunching as the rest of the team. I tried to follow the boy-scout rule, when the time and scope allowed. But god, it's hard. I'm tired as fuck, I miss working on my projects, or at least something that's not a complete madness. And it's unbearable to manually validate everything (hundreds of edge cases) by hand.
And the rest of the team acts like it's all normal. They look so at ease in this mess. It's like seeing someone quietly sitting inside a house on fire doing their stuff like nothing special is going on.
Please tell me it's not this way everywhere. I want out of this. I also feel like I'm "spoiled", and I should just do like the others and accept the depressing reality of working with all of this. But inside me I don't want to. I developed a taste for clean, easy maintainable code and I don't want to give it up.3 -
Useless JS library #1 ready:
A paned-tabbed js grid, where cells can be iframes because every grid operation only changes the css and the cell itself is never moved in the DOM. The purpose is to support complete sandboxing of untrusted snippets, so we could even let users pick their own modules if they want extra functionality.
Soon I'll clean up both this and the messaging and put them on github, but to me writing these is a creative process and the working prototype is everything but readable.
In the meantime I put it on
http://test.tardigrade.dynu.com6 -
Today I wrote my first small python application as an exercise:
Scraping all post EuroJackpot draws from a website, save them in a database, sort them, some checks and do some combinations. Everything quite clean in classes and functions.
And the "application" is just 100 lines big. I love it so far how much can be accomplished with just a few lines. -
So best way for me to learn is copy paste from the documentation, then fuck everything up and then clean the mess 😌 Seriously works way better than tutorials 😂3
-
I try to change some code in a VERY obvious way, no code that might be interfering. Compile, open browser, no change. Recompile, check, that the compiled output indeed contains the changed code, refresh, no change ... what??
Delete browser cache, also reopen with new tab, clear IDE cache, restart, rerun with npm i. Still no change... ??? What is this black magic?4 -
The chief came with a new idea.. something that runs ‘a side’ of our main project as some sort of manager. The database wasn’t designed with that in mind..
Now I’m wondering if I’m having issues because I could’ve designed the database better so that this wouldn’t be an issue or if I shouldn’t “blame” myself, because that wasn’t the initial idea. 🤷🏻♂️
We had to do a lot of migrations to keep adding and changing for the “new ideas” and now the database is a mess.. but it’s like.. too “big” to just start a new clean database structure, but it could optimize everything and make the backend easier/cleaner instead of dirty hacks/queries to combine all the different features.
As a ‘bad’ example, but the idea started as a todo list, migrated to a social network and is now migrating to something like smartschool to be able to manage users and groups, but with different features than the ‘social network’ had... I’m wondering what’s next..2 -
Possibily the weirdest coincidence I've experienced... I was just searching for, specifically and explicitly, the ebook version of O'Reilly pocket references for a babydev since physical copies, if/when available, are expensive and slow delivery. While googling the PHP one, somehow, 1984 (orwell) in russian was oddly high in the search results.
1984 is my favourite book and I've been meaning to take time to brush up on my russian. Normally I'd blame the result on things like tracking data, but this was via a clean, isolated, never logged into anything, system. The only factors that couldve been skewing results are my explicit locale settings, primary- german/germany, secondary- english/US, additional languages- dutch, russian, arabic, spanish. No other cookies or previous search history and using a static IPv4 that has been allocated, but until a few hours ago, totally unused for ~6mo (part of my /28 block).
It's so serendipitous that I keep mulling over everything trying to figure out wtf I missed... seriously, how the hell does "O'Reilly pocket reference php ebook" return a russian paperback of 1984???
I'm totally gonna find and buy one now too (the actual result is costly, plus would ship from germany so more costly).5 -
I have a great chemistry with this coworker.
He lacks some depth of android knowledge but is always very interested in adding new google libs to the project, so we often discuss and come up with the safest, scalable solutions.
He is SE2 and I am SE1.
But one thing that is interesting about him is the way he gives estimations for the tasks. He takes usually that much amount of time that i would take, for a task, but he would quote half the time estimates.
the bosses usually come on the last days to check the feature demo, but QAs gets the first build when a task is completed. I have seen his first builds that goes to QA and most of the time, boy it has some amazingly stupid bugs.
dude would just put a util function, then run the build, if everything compiled, he would just give the build to QA directly. he wouldn't even check that the util function gave an expected output or not.
He is simply wasting QA time n efforts, and risking product quality by not testing enough, but he almost always gets a clean chit for this behavior just because he did the work super fast.
Dude is super cool and i don't envy him for his good luck, but rather think of him as an inferior dev. However bosses think of him as a better dev and my TL even once told me to "be like him"
So i guess this is how corporate works. I will try to apply this in my next role in current/next organisation.3 -
How to use git rebase when working with master and staging branch?
It might be a stupid question, but I really like the idea of creating a feature branch, work on it, if there are multiple commits squash them, rebase in top of master and then create a pull request from that branch to master.
It keeps the gut log pretty clean.
However, how would you do this, when not only working with a master branch but a staging/testing too?
Would you just rebase onto staging, merge to staging and when everything is fine, rebase onto master and merge again? Is there a netter way?5 -
That Microshit motherfucker, Windows 10, is constantly messing up AMD drivers by "updating them out".
I did a clean reinstall, moved past the retarded Crimson installer hanging up on branding components, and configured everything. I had to reboot, and that little twat of an OS prompted me with "just a second, Windows is updating" reboot screen, after which the drivers are fucked up again. And that is the second time it has done that.
I just had to move my screen back out of my punching radius, otherwise I would probably had to buy a new one.
Linux with GPU passthrough seems to be the only sane option theesedays.4 -
I have finished my project for a new devrant sdk in swift:
https://github.com/WilhelmOks/...
(Yes, the readme is missing and I will add it later 😅)
And I built it into JoyRant (build 32), which required quite a bit of refactoring.
I think I tested everything but let me know if you find any problems.
You will need to logout and log in again.
The downvote reason feature isn‘t there yet (in JoyRant), but now I have a good basis to add it 😄
Yes, implementing a whole new SDK just for one little feature is overkill, but I had fun doing it and I wanted to have a nice, clean and extensible code base which I can work on in the future. 😌10 -
What's wrong with Eclipse? It give me errors without any actual error. I do restart everything works.
Sometimes I have to clean the project to remove errors.
Or am I doing something wrong?
Previously I have worked only in vim because my projects were small. I am not feeling good with Eclipse.5 -
!dev
It's a public holiday (I follow company's country's public holidays).
Wake up. Feeling good.
See message wishing me that I don't wake up - lol.
Msg peeps hello, and go help mom she's in a rush.
Qt says hello.
Help mom go to work (garage door is manual).
Wish qt good luck with stuff today - no reply, guess I just missed her
Go back to sleep
(buddy using img-gen #awesome)
(client messages for standup)
Wake up again, Life's still good™️
Reply back, it's a public holiday but if they want other/extra days just let me know - all good.
Make brunch - bread has just gone bad, whatever got another. Ends up being heavier than expected.
Watch an episode of a show while eating, bit of a zzzz.
Jam some guitar, do decently but not quite getting it right - but it's fun so it's all right
Qt updates about day - sounds like fun
Check in with friend, seems to be doing ok, he's been dealing with a bunch of things atm.
Create fun project for a sudoku solver, set up the initial part, realise that the parsing is a bunch of boilerplate (decided to map each section to a variable with bit packing), realise it's easier to work with arrays instead.
Decide to nap
It gets too warm to stay in bed, doens't matter, feel physically even better (aka bags under eyes are much less)
Qt back online, shares cool pic of castle
Realise I can get best of both worlds using pointers... This is getting stupid, whatever.
Getting warm, qt sends pic of temp by her.
Oh, right, ice cream. Open it, clearly melted and refrozen slightly - it's ice cream doesn't matter.
Chat a bit with qt
Bot battle spams img-gen
img-gen randomly gets stuck because watching YT vid
Chat a bit with peeps
Order food for mom and I - because why not. Hmmm a bit pricey.
Chat a bit more with peeps till mom is home.
Go chat with mom food should be here soon...
App says food is on it's way, great I'm like 2 minutes away.
20 minutes later, (1 hour after ordering) call up, "um yeah, that will still take a while"
Friends messages, he's been made redundant after CEO explodes and fires managers
Mom getting annoyed, if she had had to work she'd have been in bed already.
Now 2 hours after ordering food, call up again. "Yeah it ready we're sending it over now" - great hang up.
Get food, it's good. They included an extra beer - they offered, and I picked, spring rolls, but whatever.
Finish the first beer, look at the bottle, it's grody - at least the neck is clean, same with the other bottle.
Chat with peeps
Realise that it's not as good as the one I remember. That's export vs local version, I guess.
Chat with qt
Realise it's late and didn't really touch projects I wanted to #ItHappens
Starting to get tired again
Me still happy. Glad I woke up chipper. Let the happy flow
Also, my PC randomly started having lag spikes today - should probably just reboot #WindowsProblems
Not really a rant, since I'm just kinda shrugging it off, but I know if I didn't wake up in such a good mood I would have been pretty annoyed. Perspective is everything or some other philosophical shenanigans, you guys tell me the right term/saying5 -
I'm building a script parser to make mods for a game I like. The first step is to write an importer.
The documentation is nonexistent and I'm delving into byte manipulation, which I'm not familiar with - at all. I'm porting existing code from Java to C#, and everything is similar but different enough that I can't always just to a 1:1 transfer.
I get everything working, cleaned up and split into classes so I can write the exporter.
I do an import and the file won't parse. I try all previously know working files and still no good. I clean, rebuild, clean rebuild, run, debug, restart my computer, clear my cache, clean, rebuild. No good.
IT WAS WORKING 5 MINUTES AGO
Proceed to revert to every version from the last hour. No dice.
I was in the wrong folder the whole time.
Navigate to the proper folder, open the filename I know to be good and bingo, works like a charm.
The same project caused me headaches because I had a "== -1", when it should have been "== 1". Between my inexperience with byte manipulation and my untreated astigmatism, I was nearly sent to the shadow realm fixing that.3 -
// Rant 1
---
Im literally laughing and crying rn
I tried to deploy a backend on aws Fargate for the first time. Never used Fargate until now
After several days of brainwreck of trial and error
After Fucking around to find out
After Multiple failures to deploy the backend app on AWS Fargate
After Multiple times of deleting the whole infrastructure and redoing everything again
After trying to create the infrastructure through terraform, where 60% of it has worked but the remaining parts have failed
After then scraping off terraform and doing everything manually via AWS ui dashboard because im that much desperate now and just want to see my fucking backend work on aws and i dont care how it will be done anymore
I have finally deployed the backend, successfully
I am yet unsure of what the fuck is going on. I followed an article. Basically i deployed the backend using:
- RDS
- ECS
- ECR
- VPC
- ALB
You may wonder am i fucking retarded to fail this hard for just deploying a backend to aws?
No. Its much deeper than you think. I deployed it on a real world production ready app way.
- VPC with 2 public and 2 private subnets. Private subnets used only for RDS. Public for ALB.
- Everything is very well done and secure. 3 security groups: 1 for ALB (port 80), 1 for Fargate (port 8080, the one the backend is running on), 1 for RDS postgres (port 5432). Each one stacked on top and chained
- custom domain name + SSL certificate so i can have a clean version of the fully working backend such as https://api.shitstain.com
- custom ECS cluster
- custom target groups
- task definitions
Etc.
Right now im unsure how all of this is glued together. I have no idea why this works and why my backend is secure and reachable. Well i do know to some extent but not everything.
To know everything, I'll now ask some dumbass questions:
1. What is ECS used for?
2. What is a task definition and why do i need it?
3. What does Fargate do exactly? As far as i understood its a on-demand use of a backend. Almost like serverless backend? Like i get billed only when the backend is used by someone?
4. What is a target group and why do i need it?
5. Ive read somewhere theres a difference between using Fargate and... ECS (or is it something else)? Whats the difference?
Everything else i understand well enough.
In the meantime I'll now start analyzing researching and understanding deeply what happened here and why this works. I'll also turn all of this in terraform. I'll also build a custom gitlab CI/CD to automate all of this shit and deploy to fargate prod app
// Rant 2
---
Im pissing and shitting a lot today. I piss so much and i only drink coffee. But the bigger problem is i can barely manage to hold my piss. It feels like i need to piss asap or im gonna piss myself. I used to be able to easily hold it for hours now i can barely do it for seconds. While i was sleeping with my gf @retoor i woke up by pissing on myself on her bed right next to her! the heavy warmness of my piss woke me up. It was so embarrassing. But she was hardcore sleeping and didnt notice. I immediately got out of bed to take a shower like a walking dead. I thought i was dreaming. I was half conscious and could barely see only to find out it wasnt a dream and i really did piss on myself in her bed! What the fuck! Whats next, to uncontrollably shit on her bed while sleeping?! Hopefully i didnt get some infection. I feel healthy. But maybe all of this is one giant dream im having and all of u are not real9 -
Id say my least favourite part of my workflow right now is the selenium automation I have to run locally for dev testing.
The stuff I have to run for my current story takes about an hour to reach the point I am interested in. Then if it throws an exception or doesnt work properly, I have to make my fix and run it all again.
And theres not much else I can do while its running either, if I make any other code changes Gradle will recompile everything. So I basically have to sit and watch it, or go watch a clean coders video in another window while it runs. -
In a country, a long time ago there was a programmer by the name of Alex. He was a programming genius and apart from a few hours of sleep, he was busy developing unique programs for new generation technology firms. Alex was a bachelor and he happily and proudly lived the way he wanted to. He did not have duties, authority over him, bosses to report to, children to take care of, and distractions. He could sit and code for the entire day without getting any break or feeling a bit tired. However, he had no idea that everything in his life was soon going to turn around. Before Marriage: The Bachelor’s Life Alex was the epitome of a modern ‘Play Boy ‘ or every man’s dream. He was fairly dressed, had a classy house, a snazzy car, and a good-paying job. He was in the habit of spending his mornings drinking coffee while browsing through the different coding topics. He comes in the afternoon and spends the evening part of the day with his friends. Life has never been this good. Alex was able to work hard and the more he was innovative, he enjoyed it. It illustrates how a young person would sit for many hours coding at night and not bother about other people around him. He was alone as a bird and as per him, that’s what he wanted to be. He had no peer to tell the truth to, no wife to prepare meals for, no maids to babysit his mess. A man could chow down a pizza for breakfast, lunch, and supper with not even a raised eyebrow from onlookers. He was profiting from living the best life he possibly could. After Marriage: Married Life: Alex & Sarah The climax for Alex is when he marries Sarah on a sunny morning on a fine day. Young people met, and after becoming enamored, started a family and got married to find a new home. Sarah was friendly with people and it was very easy for her to make friends; however, she had little knowledge of technology. Alex had it in his mind that marriage does not change the life you lead and how wrong he was. It was a fairy-tale to have such a perfect life for several days after the marriage. Their nights would be spent in front of the television set with their arms wrapped around each other, eating takeout. Despite this, when the number of days stretched into weeks, and the weeks into months, Alex felt the beginning of a shift in his behavior. The Coding Cave That Transformed into A Home Office Due to the pandemic the coding cave Alex used to have became a home office. Sarah had made up her mind to open her business from home, therefore, she required a home office. Thus, she moved inside the cubicle that Alex had created as his coding cave and left him with no space to code. He now had to code in the living room, because Sarah would incessantly request him to either lower the auditory input of the keys he was typing or to switch off the LCD screen. The Once-Clean Apartment Turns into a Mess Alex was a neat freak, and he adored tidiness, especially in his apartment. But after marriage, his once clean and neat-looking apartment was changed into a dirty one. Although Sarah was not very neat, she used to litter her things anywhere she felt like without being conscious of it. Alex was a programmer and his coding notes were mixed with Sarah's business papers, it irritated him so much. Alex’s to-do list before marriage The to-do list before marriage only comprised coding-related tasks. At marriage, however, he seemed to have developed a longer list of things to do than ever before. Instead of just going to the grocery store to buy some food, Alex seemed to have endless tasks to do mostly around the house. He had to cook for himself, sweep the house, and wash the dishes among other things. This was a new world as far as he was concerned. The Pizza Days Are Over Gone there is no more time for Alex could eat pizza in the morning, afternoon as well and evening. Sarah was very conscious of what she took as food or what her family took as food and therefore ensured that Alex took healthy home-cooked foods. He could not have the pizza anymore but the meals prepared by Sarah were really tasty. Conclusion Therefore from a life before marriage to the life after marriage, it was evident that Alex led two different lives. He went from a playful man with not much responsibility to a man with more responsibilities as a husband and a father. Still, he wouldn’t have it any other way, despite these changes. Later he cherished Sarah and the life they had, and nothing in this world could make him exchange what he had now. Essentially, it was a tricky business being married, but a blessing, and an addition of love, company, and much hilarity too. Therefore, if you are a bachelor reading this, embrace your coding cave and your pizza days because once you utter the words ‘I do,’ all those will be things of the past.But trust me, it's all worth it.
-
God I need to so something new
Literally everything is a reminder
Was life great ?
Eh
Varied
This didn't last that long
But what I miss is when people made moving experience and art captures with people as their "job"
Not this weird sicky shit everything devolved into
I feel I should leave this state soon once again heh for where
Who knows
Feels like the people creating these scenes of peace beauty and clean lust didn't appreciate or understand them
Instead for them it's Clacking doors and other weird crap they take some strange meaning from
Maybe Colorado is in it's less fucked up stage
I doubt it
There is an escape hatch somewhere5 -
This article about the types of legacy code bases you will have to deal with just made my day!
Not only do I have every one it describes but somehow it even made me laugh at thought of each of the std riddled petri dishes of code that I reluctantly maintain... My "Happy Place" is a folder dedicated to reliquary projects I like to look at when I feel sad to lift my spirits and restore hope that one day things will be better.
Do you have any definitions to add or know where to find more? I'm hooked.
Link: https://medium.com/@dylanbeattie/...
Excerpt:
The Reliquary
The reliquary is that one repository full of really good ideas. Clean code. Brilliant algorithms. The OpenID implementation that you optimised until it shone. Classes so beautifully designed and perfectly documented that they’d make a senior architect weep.
You remember the big rewrite? The project that was going to fix everything, only you never worked out how to actually launch the thing, or get any revenue from it? The reliquary is where you’ve preserved it, pickled in revision control like a fabulous museum specimen. A treasury of good code and good ideas; maybe even an entire codebase that was “a couple of weeks” away from shipping before somebody finally looked at the number of critical features the team had somehow forgotten to include and discovered — to everybody’s surprise — that validated XHTML, normalised data models and 95% test coverage are not actually features any of your end users cared about.
Like Buran or the Spruce Goose, the surviving artefacts stand as a testament to the quality of your engineering… and a poignant reminder of just how much fun engineers can have building high-quality stuff that nobody actually wants to use. -
Shitty goddamn "Agencies" and the piece of shit WordPress install garbage that comes along with them
150+ fucking plugins
Cause this is 2018 and more plugins = better wordpress site right?
CSS is easy enough > just edit the stylesheet right? I mean theres already CSS in there so this should work.
Fucking Noooope because the default custom style sheet doesn't get loaded through the garbage theme anymore.
Sure that makes alot of fucking sense sense, idiots added another fucking plugin for Custom CSS ontop of the "Live CSS Editor" ontop of the "Click and Place Builder"
WHAT IN THE FUCK
Can someone explain to me why these "Agencies" need to add 50 plugins just to edit fucking visuals? And when they decide they don't want to use that plugin anymore > add a new one, but we won't keep everything clean and in one place > lets just fucking leave it installed and fragmented for the next poor fucker that comes alone -
What a day. I was cleaning up some of my styling tweaks for this react app; removing superfluous rules, nailing some hard to pin alignments that have been off up until now, and removing unused files and code in general.
I managed to delete an entire folder. I'm not sure how I did it, but apparently I had highlighted the folder when wanting to just delete one file via vs code. This was hours of uncommitted (yeah, my bad) tweaks and cleanup.
But - I still have the app loaded in my browser. I can't see the prebuilt source code, but I can see the compiled, raw main.chunk.js which gives me the exact code albeit not in the format I need.
So that's my day. Re-tweaking, re-adjusting everything while working my way down a compiled javascript file from top to bottom while explaining to my team why I haven't pushed my changes that I was just going to clean up.
Now I'm having a beer.3 -
DevOps With Ruby and Chef on FreeBSD (and Linux)
I am Ops and Dev by heart. I have always automated *nix systems long before any automation framework was invented because I am pretty lazy. Doing stuff more than once manually is just one time too often for me. Imho Ruby is a really elegant language. The same applies for the tools that are built around it. The Chef ecosystem fits into this with its own elegance and stability perfectly because the server is Erlang driven and the rest is Ruby.
Being a Linux and BSD user since the early 90s I have always loved a *nix system for it's concepts and simplicity. One command for exactly one purpose and everything is combineable like letters are combinable to words in my mother language. I have always loved FreeBSD more though. Imho it is even more focused on simplicity. Because it is a really clean approach of system design that envies a base system and keeps 3rd party separated in a clean way for example. It also values classic UNIX philosophies that most Linux distros these days abandon but which saved my life multiple times through better design and execution that also focuses alot more on stability, fault tolerance and ease of use than any Linux I have come across. The hardcore guys should read "Design and Implementation of the FreeBSD Operating System", compare the readings to the Linux way of things and see for themselves.*
*The author acknowledges that this text is his opinion and just his wet dream alone and may not be of any relevance for the sexual lifes of everybody else -
Middle Eastern Market Near Me
Arabian Delights Market is the top Middle Eastern market near me for Raleigh residents, offering an unmatched selection of authentic ingredients sourced from across the Levant, Gulf, and North Africa. Our spacious aisles feature everything from specialty spices to frozen pastries, making it easy to find all your favorite regional foods in one convenient location.
Arabic Grocery Store in Raleigh
As a leading Arabic grocery store in Raleigh, we pride ourselves on stocking hard-to-find staples such as rose water, pomegranate molasses, and specialty grains. Whether you need bulk olives or premium date varieties, our inventory is carefully curated to serve both home cooks and professional chefs.
Halal Supermarket in Wake County
Arabian Delights Market serves as the premier halal supermarket in Wake County, with a comprehensive meat counter offering Zabihah-certified lamb, chicken, and beef. We partner with trusted halal suppliers to ensure every product meets strict religious and quality standards.
Where to Buy Arabic Food
If you’re wondering where to buy Arabic food, look no further than Arabian Delights Market. From canned fava beans for foul medames to imported laban and authentic baklava, we deliver genuine flavors at competitive prices, backed by expert staff ready to guide your selections.
Best Mediterranean Grocery
Recognized as the best Mediterranean grocery in the region, our store showcases premium olive oils from Lebanon and Palestine, artisanal cheeses, and a vast assortment of mezzes. Customers appreciate our clean, family-friendly atmosphere and regularly return for seasonal specialties and new arrivals.
Yemeni Grocery Near Me
Our dedicated Yemen aisle makes Arabian Delights Market the ultimate Yemeni grocery near me, featuring hawaij spice blends, roasted coffee beans, and pure honeycomb straight from Yemeni apiaries. Experience the rich heritage of Yemen through products you won’t find elsewhere in Raleigh.
Ethnic Market with Halal Products
As an ethnic market with halal products, we go beyond meats to provide halal-certified snacks, beverages, and even sweets like halal gummy candies and energy drinks. Our commitment to halal integrity extends to every shelf, ensuring peace of mind for all customers.
International Food Market in Raleigh
Arabian Delights Market stands out as an international food market in Raleigh, grouping Middle Eastern, North African, and South Asian specialties under one roof. Shoppers can explore global cuisines by selecting exotic sauces, noodles, and packaged mixes that bring world flavors to their kitchens.
Why Choose Arabian Delights Market
Extensive Selection: Over 5,000 SKUs of authentic Middle Eastern and Mediterranean products.
Strict Halal Certification: Every meat and poultry item is Zabihah-certified for quality and compliance.
Competitive Pricing: Wholesale and bulk discounts alongside weekly specials.
Expert Staff: Friendly, multilingual team available to recommend ingredients and share cooking tips.
Community Engagement: Hosting cultural events, cooking demonstrations, and recipe workshops for Raleigh food enthusiasts.
Contact Us
Arabian Delights Market
1504 Garner Station Blvd
Raleigh, NC 27603
Phone: +1 984-800-0003
Visit us today to discover why we’re the preferred Middle Eastern and international food destination in Wake County.4 -
I just love when all my code is perfect and clean... then I compile it to see my changes... and everything is fucking broken.. so I think "okay, let me see if I missed something or forgot a space or something stupid."... nope not that *recompiles* nothing is showing up.
"That's cool too, who needs a working website anyways." -
DIGITAL TECH GUARD RECOVERY, THE SOLUTION FOR LOST OR STOLEN BITCOIN
A Hard Lesson in Trust: My Fight Against a Bitcoin Scam
WhatsApp: +1 (443) 859 - 2886
contact @ digital tech guard . com
Telegram: @ digital tech guard recovery . com
Brazilians are known for their precision and caution, yet even the most meticulous among us can fall victim to sophisticated scams. I had diligently accumulated R$ 240,000 worth of Bitcoin as part of my retirement plan, carefully nurturing my investment for years. However, everything changed when I received a phishing email that looked identical to my wallet provider's legitimate website. Without a moment's hesitation, I entered my login details, trusting that I was interacting with a secure source. Within minutes, I realized my grave mistake. My account was wiped clean, and I was left staring at the screen in disbelief. I felt utterly devastated, as if all my hard work and careful planning had vanished in an instant. The weight of my failure pressed heavily on my shoulders, and I was crushed by the thought of letting down not only myself but also my family, who had supported my investment journey. In my desperation, I reached out to a colleague who worked in the Finance field. She recommended DIGITAL TECH GUARD RECOVERY, sharing glowing reviews she had heard about their expertise in recovering stolen funds. At that moment, I felt like I had no other options left. The prospect of recovery seemed slim, but I decided to take a leap of faith and contacted them. I reached out, the team at DIGITAL TECH GUARD RECOVERY was understanding and professional. They listened to my story, assuring me that I wasn't alone in this unfortunate situation. They explained their process, detailing how they could help trace the stolen funds and potentially recover them. Their knowledge and empathy instilled a glimmer of hope in me. As they worked on my case, I received regular updates. The team was diligent, employing various methods to track the stolen Bitcoin. Days turned into weeks, but I remained in contact with them, feeling supported throughout the entire process. Eventually, their efforts bore fruit. While I didn’t recover the full amount, I managed to regain a substantial portion of my investment. The experience taught me a valuable lesson about vigilance in the digital age and the importance of seeking help when facing daunting challenges. Though my trust was shaken, I found solace in the fact that support exists in the cryptocurrency community. -
Question about cache (Redis or other distribuated cache).
So I would like to find a solution with “Partioning”. But without code it my self (ofc)
Ok, example :
In the application you have clients, each client has users, each user has role.
So right now it’s in the cache with the keu “User:<userId>” = role
Sometimes, when you change client settings, all entries should be removed.
So what I would love to have :
Client_Id/UsersRoles/UserId as a key
And I would love to be able tp delete “all keys after /” :
Basiclly delete client_id/ would delete everything in cache for this client
Delete client_id/UserRoles will clean up all saved roles.
I’m pretty new working with redis, but it doesn’t seem possible out of the box.
Any reading material I could read ?4 -
Just finished updating a Laravel project to use page-specific dynamic JS imports using webpack mixins.
Everything feels so clean and manageable. I am zen...... -
FirstMaid: Your Trusted Myanmar Maid Agency in Singapore
When it comes to hiring a domestic helper, many households in Singapore rely on the expertise and professionalism offered by Myanmar maid agencies. At FirstMaid, we specialize in connecting you with skilled and reliable Myanmar maids who can assist with everything from cleaning and cooking to childcare and elderly care. Whether you need full-time assistance or part-time help, FirstMaid ensures that your home is in capable hands.
Located at 170 Upper Bukit Timah Rd, B1-21 Shopping Centre, Singapore 588179, FirstMaid is a leading Myanmar maid agency in Singapore. We provide a wide range of services to meet your specific domestic needs, making it easy for you to hire the right maid for your family or business.
Why Choose FirstMaid as Your Myanmar Maid Agency?
Choosing the right Myanmar maid agency is an important decision that impacts your daily life. At FirstMaid, we offer a seamless process for hiring a trusted and professional Myanmar maid. Here’s why you should choose us:
Vetted and Trained Myanmar Maids
At FirstMaid, we understand the importance of trust when hiring a maid. That’s why we take the time to thoroughly vet all our Myanmar maids. Each maid undergoes a comprehensive background check, including interviews and reference checks, to ensure they are trustworthy and reliable. Additionally, we provide training to ensure our maids are well-prepared to meet your household needs.
Tailored Maid Services
Whether you need help with house cleaning, childcare, elderly care, or cooking, FirstMaid offers a variety of maid services tailored to your specific needs. Our experienced Myanmar maids are skilled in a wide range of household tasks, allowing you to select the right maid based on your lifestyle and requirements.
Affordable and Transparent Pricing
At FirstMaid, we believe that high-quality maid services should be affordable. We offer competitive and transparent pricing, with no hidden costs, so you know exactly what you’re paying for. Our goal is to provide you with excellent value for money, while ensuring you receive the best domestic help.
Hassle-Free Process
Hiring a maid through a Myanmar maid agency can seem like a complicated process, but at FirstMaid, we make it easy for you. From the initial consultation to the final placement, we manage every step of the process, ensuring that hiring a Myanmar maid is as smooth and efficient as possible.
How to Hire a Myanmar Maid with FirstMaid
Getting started with FirstMaid is easy. Here’s a step-by-step guide on how you can hire a Myanmar maid through our agency:
Contact Us
The first step is to reach out to us. You can visit our office at 170 Upper Bukit Timah Rd, B1-21 Shopping Centre or call us at +65 8488 7603. Our friendly team will discuss your requirements and guide you through the process.
Consultation and Needs Assessment
During your consultation, we will assess your specific needs. Whether you're looking for someone to clean your home, take care of your children, or assist with elderly family members, we will ensure we understand your requirements so that we can match you with the right Myanmar maid.
Maid Selection
Based on your needs, we will present you with a selection of qualified Myanmar maids. You will have the opportunity to review their profiles, which include their experience, skills, and references. In some cases, you may even have the chance to interview the maids to ensure they are a good fit for your home.
Finalizing the Details
Once you’ve selected a maid, we will handle all the necessary paperwork, including contracts and compliance with Singapore's employment regulations. We ensure that the hiring process is legally compliant and transparent, taking care of all the administrative details for you.
Maid Placement and Support
Once the paperwork is complete, your Myanmar maid will begin working with you according to the agreed schedule. FirstMaid provides ongoing support to ensure both you and your maid are happy with the arrangement. If you ever need assistance or have questions, we’re just a phone call away.
Benefits of Hiring a Myanmar Maid through FirstMaid
Thoroughly Vetted Maids: Our Myanmar maids are carefully screened, ensuring they are reliable, trustworthy, and skilled in a variety of domestic tasks.
Affordable Pricing: We offer competitive rates for all our maid services, making it easier for you to hire a Myanmar maid that suits your needs and budget.
Flexible Maid Services: Whether you need a full-time live-in maid or part-time help, we offer flexible maid services that cater to your schedule and requirements.3 -
i am so fucking conflicted right now. seeing my fiture getting ruined in front of my present eyes. Life always gives me a chance to jump out of a ship that's about to fucking blow , i took it the first time, but this time i missed it for bravery ( and stupidity), and now am sinking alongside this fucking ship
my first job was amazing. decent work, sometimes a lot and sometimes too less. i would learn new things ,interact with people, handle a lot of fuckups . at one point i felt like looking for another opportunity , got one giving 50% hike , so i jumped the ship and sent a resignation letter. the noitice peripd was less, so i enjoyed my days applying to other ships. got even a better offer with 100% hike, so from one boat to another to now a literal cruise.
later i got to know that my original company got bankrupt and fired 85% staff. the next month the company that gave me the first offer layed off 30% staff.
now the waters are tough and my cruise is also getting impacted. but instead of firing, they are asking us to come to the office permanently. their office is in a fucked up place: you need 8$ just to breath the fucking air there. its the city of blood and money. and you will be giving away both things there.
my brain got split into 2 parts after this announcement: my stupid self was still considering this while my sensible self started applying for jobs. my stupid self was thinking that this is a great opportunity to leave my fucking nest of a home , where i am liv8ng woth my parents for last 25 years, and learn to live alone. clean utensils, cook food , wash clothes... i wanted to live the life the harsh way.
but life still took a pity on the fool that j am and gave me an opportunity. an opportunity to work with a big brand who hasn't done any layoffs in their 40+ yrs of existence (but also known for giving shit increments)
the offer was just a 40% hike but it was near my home. i could be in office in 1 hr in less than a dollar a day and still earn more than what am earning now.
plus my notice period is now 60 days , so who knows what other offer i could have got in those 60 days ( when i would keep my profile with a big green "immediately available to hire" circle on me.
however this time i didn't jump the boat. i asked them for a bigger raisez they declined and my stupid self was more than happy.
now the company has started to send mails regarding relocation and yepp the cruise is sinking , atleast for me. if i was savingsx in this company, my savings would become x/8 if i go to that city. in the new offer it would have at worst remained x.
and that's not even half of what's bothering me. i had accepted the money loss in exchange of what that city and my company had to offer : a chance to experience WFO, a chance to live life like a mature man and not a kid in his mom's house ,and a life full of hurdles and strangers.
however i always like to keep an emergency fallback mechanism on me , for if things don't work out. I don't wanna go depressed and cut my wrists there, I don't want people to hurt me so much that I can't recover. i want to run away from that wreched city the moment i start to loose the battles there and the city starts taking over me.
but what the holy fuck? my company's notice period is 60 days, and my rented room's security deposit is 6 fucking months? i will be giving 6 months of deposit + 1 month of brokerage + 1month of rent on the first day i put my steps on that wretched land after travelling in a 100 dollar flight! where am i supposed to get this much money?!
and okay, somehow i manage this. say i did an 11 months agreement, paid the fucking 8 months of rent at one go and simply started living a shitty life there. in month 2 i break down and wanted to implement my escape mechanism. it would go like this : i will suck up and try to live for rent free for next 6 months. but wait, THAT'S NOT FUCKING ALLOWED!! iam supposed to get my security AFTER 11+1 MONTHS!! why not freaking adjust it in my rent?
I can't think straight . 6 months of security deposit has blown my brain. i am regretting anything and everything. I can't think of my roommates situation, home safety, room location, whatever the fucks we think while looking for a room . all i can think is ...WHY SO MUCH MONEY NEEDS TO GO AT ONCE!?
FUCK1