Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "documentation"
I'm drunk and I'll probably regret this, but here's a drunken rank of things I've learned as an engineer for the past 10 years.
The best way I've advanced my career is by changing companies.
Technology stacks don't really matter because there are like 15 basic patterns of software engineering in my field that apply. I work in data so it's not going to be the same as webdev or embedded. But all fields have about 10-20 core principles and the tech stack is just trying to make those things easier, so don't fret overit.
There's a reason why people recommend job hunting. If I'm unsatisfied at a job, it's probably time to move on.
I've made some good, lifelong friends at companies I've worked with. I don't need to make that a requirement of every place I work. I've been perfectly happy working at places where I didn't form friendships with my coworkers and I've been unhappy at places where I made some great friends.
I've learned to be honest with my manager. Not too honest, but honest enough where I can be authentic at work. What's the worse that can happen? He fire me? I'll just pick up a new job in 2 weeks.
If I'm awaken at 2am from being on-call for more than once per quarter, then something is seriously wrong and I will either fix it or quit.
pour another glass
Qualities of a good manager share a lot of qualities of a good engineer.
When I first started, I was enamored with technology and programming and computer science. I'm over it.
Good code is code that can be understood by a junior engineer. Great code can be understood by a first year CS freshman. The best code is no code at all.
The most underrated skill to learn as an engineer is how to document. Fuck, someone please teach me how to write good documentation. Seriously, if there's any recommendations, I'd seriously pay for a course (like probably a lot of money, maybe 1k for a course if it guaranteed that I could write good docs.)
Related to above, writing good proposals for changes is a great skill.
Almost every holy war out there (vim vs emacs, mac vs linux, whatever) doesn't matter... except one. See below.
The older I get, the more I appreciate dynamic languages. Fuck, I said it. Fight me.
If I ever find myself thinking I'm the smartest person in the room, it's time to leave.
I don't know why full stack webdevs are paid so poorly. No really, they should be paid like half a mil a year just base salary. Fuck they have to understand both front end AND back end AND how different browsers work AND networking AND databases AND caching AND differences between web and mobile AND omg what the fuck there's another framework out there that companies want to use? Seriously, why are webdevs paid so little.
We should hire more interns, they're awesome. Those energetic little fucks with their ideas. Even better when they can question or criticize something. I love interns.
Don't meet your heroes. I paid 5k to take a course by one of my heroes. He's a brilliant man, but at the end of it I realized that he's making it up as he goes along like the rest of us.
Tech stack matters. OK I just said tech stack doesn't matter, but hear me out. If you hear Python dev vs C++ dev, you think very different things, right? That's because certain tools are really good at certain jobs. If you're not sure what you want to do, just do Java. It's a shitty programming language that's good at almost everything.
The greatest programming language ever is lisp. I should learn lisp.
For beginners, the most lucrative programming language to learn is SQL. Fuck all other languages. If you know SQL and nothing else, you can make bank. Payroll specialtist? Maybe 50k. Payroll specialist who knows SQL? 90k. Average joe with organizational skills at big corp? $40k. Average joe with organization skills AND sql? Call yourself a PM and earn $150k.
Tests are important but TDD is a damn cult.
Cushy government jobs are not what they are cracked up to be, at least for early to mid-career engineers. Sure, $120k + bennies + pension sound great, but you'll be selling your soul to work on esoteric proprietary technology. Much respect to government workers but seriously there's a reason why the median age for engineers at those places is 50+. Advice does not apply to government contractors.
Third party recruiters are leeches. However, if you find a good one, seriously develop a good relationship with them. They can help bootstrap your career. How do you know if you have a good one? If they've been a third party recruiter for more than 3 years, they're probably bad. The good ones typically become recruiters are large companies.
Options are worthless or can make you a millionaire. They're probably worthless unless the headcount of engineering is more than 100. Then maybe they are worth something within this decade.
Work from home is the tits. But lack of whiteboarding sucks.40
Fuck the memes.
Fuck the framework battles.
Fuck the language battles.
Fuck the titles.
Anybody who has been in this field long enough knows that it doesn't matter if your linus fucking torvalds, there is no human who has lived or ever will live that simultaneously understands, knows, and remembers how to implement, in multiple languages, the following:
- jest mocks for complex React components (partial mocks, full mocks, no mocks at all!)
- token cancellation for asynchronous Tasks in C#
- fullstack CRUD, REST, and websocket communication (throw in gRPC for bonus points)
- database query optimization, seeding, and design
- nginx routing, https redirection
- build automation with full test coverage and environment consideration
- docker container versioning, restoration, and cleanup
- internationalization on both the front AND backends
- secret storage, security audits
- package management, maintenence, and deprecation reviews
- integrating with dozens of APIs
- fucking how to center a div
and that's a _comically_ incomplete list; barely scratches the surface of the full range of what a dev can encounter in a given day of writing software
have many of us probably done one or even all of these at different times? surely.
but does that mean we are supposed to draw that up at a moment's notice some cookie-cutter solution like a fucking robot and spit out an answer on a fax sheet?
recruiters, if you read this site (perhaps only the good ones do anyway so its wasted oxygen), just know that whoever you hire its literally the luck of the draw of how well they perform during the interview. sure, perhaps some perform better, but you can never know how good someone is until they literally start working at your org, so... have fun with that.
Oh and I almost forgot, again for you recruiters, on top of that list which you probably won't ever understand for the entirety of your lives, you can also add writing documentation, backup scripts, and orchestrating / administrating fucking JIRA or actually any somewhat technical dashboard like a CMS or website, because once again, the devs are the only truly competent ones - and i don't even mean in a technical sense, i mean in a HUMAN sense of GETTING SHIT DONE IN GENERAL.
There's literally 2 types of people in the world: those who sit around drawing flow charts and talking on the phone all day, and those WHO LITERALLY FUCKING BUILD THE WORLD
why don't i just run the whole fucking company at this point? you guys are "celebrating" that you made literally $5 dollars from a single customer and i'm just sitting here coding 12 hours a day like all is fine and well
i'm so ANGRY its always the same no matter where i go, non-technical people have just no clue, even when you implore them how long things take, they just nod and smile and say "we'll do it the MVP way". sure, fine, you can do that like 2 or 3 times, but not for 6 fucking months until you have a stack of "MVPs" that come toppling down like the garbage they are.
How do expect to keep the "momentum" of your customers and sales (I hope you can hear the hatred of each of these market words as I type them) if the entire system is glued together with ducktape because YOU wanted to expedite the feature by doing it the EASY way instead of the RIGHT way. god, just forget it, nobody is going to listen anyway, its like the 5th time a row in my life
we NEED tests!
we NEED to know our code coverage!
we NEED to design our system to handle large amounts of traffic!
we NEED detailed logging!
we NEED to start building an exception database!
BILBO BAGGINS! I'm not trying to hurt you! I'm trying to help you!
Don't really know what this rant was, I'm just raging and all over the place at the universe. I'm going to bed.20
Ok you fucks that don't believe in documentation - me included.
Document your shit, because one day, one day some dumb fuck is going to have to recreate your over engineered bullshit of a system and scale it up.
What would fucking be useful right now is ANY god forsaken insight into what in the flying fuck your code is doing, or not doing, or why it makes queries to a database with no fucking records in it 🤦♂️ and then attempts to use that data... in case it did exist.
There's nothing like unpicking a mess of bullshit, and documenting it, and then have to remake it on a new platform.
Documention saves lives kids, maybe your own life one day😬16
My output of 5 hours of work: changing a 'b' to a 'B'.
5 hours working out what the stupid cryptic error message means and reading documentation, 5 minutes to change and test the difference.3
In the darkest of days, I discovered how to remote login to my computer at work through the company vpn. I then proceeded to work overtime at night in secret for a week or so, writing documentation and refactoring code.
I finally woke the fuck up and realized that I shouldn't be obsessing over proprietary codebases that do not belong to me, and I should put this misguided energy into my own projects.
So yeah, as a bad dev habit I'm working on fixing, this fits the bill.3
When you ask for documentation and they hand you a Word document with screenshots of the changed code4
Udemy courses are targeted at ABSOLUTE beginners. It's excruciating to pull through and finish the course "just because". And some of these courses are jam-packed with 30-60 hours just for them to appear legit, but the reality is the value you get could be packed to 3-5 hours.
You're better off just searching for or watching for the things that you need on Google or YouTube.
You'll learn more when building the actual stuff. Yes, it's good to go for the documentation. Just scratch the "Getting Started" section and then start building what you want to build already. Don't read the entire documentation from cover to cover for the sake of reading it. You won't retain everything anyway. Use it as a reference. You'll gain wisdom through tons of real-world experience. You will pick things up along the way.
Don't watch those tutorials with non-native English speakers or those with a bad accent as well. Native speakers explain things really well and deliver the message with clarity because they do what they do best: It's their language.
Trust me, I got caught up in this inefficient style a handful of times. Don't waste your time.9
What an absolute fucking disaster of a day. Strap in, folks; it's time for a bumpy ride!
I got a whole hour of work done today. The first hour of my morning because I went to work a bit early. Then people started complaining about Jenkins jobs failing on that one Jenkins server our team has been wanting to decom for two years but management won't let us force people to move to new servers. It's a single server with over four thousand projects, some of which run massive data processing jobs that last DAYS. The server was originally set up by people who have since quit, of course, and left it behind for my team to adopt with zero documentation.
Anyway, the 500GB disk is 100% full. The memory (all 64GB of it) is fully consumed by stuck jobs. We can't track down large old files to delete because du chokes on the workspace folder with thousands of subfolders with no Ram to spare. We decide to basically take a hacksaw to it, deleting the workspace for every job not currently in progress. This of course fucked up some really poorly-designed pipelines that relied on workspaces persisting between jobs, so we had to deal with complaints about that as well.
So we get the Jenkins server up and running again just in time for AWS to have a major incident affecting EC2 instance provisioning in our primary region. People keep bugging me to fix it, I keep telling them that it's Amazon's problem to solve, they wait a few minutes and ask me to fix it again. Emails flying back and forth until that was done.
Lunch time already. But the fun isn't over yet!
I get back to my desk to find out that new hires or people who got new Mac laptops recently can't even install our toolchain, because management has started handing out M1 Macs without telling us and all our tools are compiled solely for x86_64. That took some troubleshooting to even figure out what the problem was because the only error people got from homebrew was that the formula was empty when it clearly wasn't.
After figuring out that problem (but not fully solving it yet), one team starts complaining to us about a Github problem because we manage the github org. Except it's not a github problem and I already knew this because they are a Problem Team that uses some technical authoring software with Git integration but they only have even the barest understanding of what Git actually does. Turns out it's a Git problem. An update for Git was pushed out recently that patches a big bad vulnerability and the way it was patched causes problems because they're using Git wrong (multiple users accessing the same local repo on a samba share). It's a huge vulnerability so my entire conversation with them went sort of like:
"We have to."
"Fine, here's a workaround, this will allow arbitrary code execution by anyone with physical or virtual access to this computer that you have sitting in an unlocked office somewhere."
"How do I run a Git command I don't use Git."
So that dealt with, I start taking a look at our toolchain, trying to figure out if I can easily just cross-compile it to arm64 for the M1 macbooks or if it will be a more involved fix. And I find all kinds of horrendous shit left behind by the people who wrote the tools that, naturally, they left for us to adopt when they quit over a year ago. I'm talking entire functions in a tool used by hundreds of people that were put in as a joke, poorly documented functions I am still trying to puzzle out, and exactly zero comments in the code and abbreviated function names like "gars", "snh", and "jgajawwawstai".
While I'm looking into that, the person from our team who is responsible for incident communication finally gets the AWS EC2 provisioning issue reported to IT Operations, who sent out an alert to affected users that should have gone out hours earlier.
Meanwhile, according to the health dashboard in AWS, the issue had already been resolved three hours before the communication went out and the ticket remains open at this moment, as far as I know.5
Story of onboarding in the age of Corona!
Office is big but almost empty, people are working from home. Guy welcoming me says he is not the one supposed to help me(he is sick I'm told) and the rest of the team is not there. The man I'm talking to is this other guys boss. It's OK I think it will work out.
Turns out this guy helping me is actually the CTO so he does not have that much time on his hands. He shows me were to get my computer and desk and hands me documentation to setup some software.
I spend the time before lunch installing linux, setting up git and some other software. CTO checks up on me once.
Then after lunch nothing...I look for him but he is in some meeting. I find some videos by myself labled "onboarding" on the company website. They are OK. I ask my deskmate if he heard what team I will be in. He doesn't know. I sneak out a little early since I have nothing left to do.
The CTO is now also sick I see in an email when I arrive at the office. Still don't know what team I am in.
I spend the morning reading coding blogs and websites. After lunch I have a meeting. The only one in my calendar. It's about the product software architecture for all new employees. It's good but still no news about what team. I aimlessly read up on some software architecture untill I go home.
I arrive at the office first, only the receptionist is there. I listen to podcasts until a few more people show up. I ask another guy if he knows what team I'm supposed to be in. He doesn't but laughs and says it was the same when he started last year.
I send out messages on slack looking for anyone that knows...still no one knows. I guess Im in limbo now. Perhaps i should just start making coffee for people or something...14
This happened today...
Manager: how long this is going to take?
Dev: 3 months
M: cool! 3 weeks then
D: no.. This is quite complicated and most of us are unfamiliar with the topics. It'll take us 2 weeks just to get started
M: drop the unit tests then. Just get the features done in 3 weeks. We have customers waiting
D: that's a bad idea. We'll end up with unstable co..
M: oh we also need to complete documentation, release guide, and this [shitty feature no one care about]
D: but that is even more complex. We don't have enough ti..
M: just copy it from stackoverflow. It'll only take 5 minutes guys
Worst part? This guy is technically sound and understands our pain really well. He is just acting dumb and trying to put the blame on us when the higher management asks
Second worst part? The whole team keeps silent when I try to convince him somehow and starts ranting after he leaves the call2
The code is a freaking mess. Shared behavior, terrible variable/method naming, misleading module naming, dynamic polymorphic spaghetti, whitespace errors, no consistency, confusing even if you understand what the code is doing, ... . It should never have passed code review. It probably wasn't code reviewed.
The comments are sparse and useless. Quality level: // This is bridge.
The documentation does not exist.
Testing steps for QA are missing several steps, including setup, so actually using the feature is bloody challenging. If one thing is wrong, the feature just doesn't show up (and ofc won't tell you why).
The specs for the feature are outdated and cover only 4 of 19+ cases. And are neigh useless for those 4.
The specs for the report I'm fixing don't even check the data on the report; it just checks for one bit of data on each row it creates -- a name -- which is also the same on each row. gg.
The object factories (for specs) are a mess, and often create objects indirectly, or in backwards order with odd post-create overwriting to make things work. Following the factories is a major chore, let alone fixing or extending them.
The new type has practically zero test coverage.
The factory for the new type also only creates one variant -- and does so incorrectly.
And to top it all off: the guy who wrote the feature barely ever responds. If he does, he uses fewer words than my bird knows, then stops responding. I've yet to get a useful answer out of him. (and he apparently communicates just fine, according to my micromanager.)
But "it's just fixing a report; it'll be easy!"
Oh, fuck off.8
Biggest challenge I overcame as dev? One of many.
Avoiding a life sentence when the 'powers that be' targeted one of my libraries for the root cause of system performance issues and I didn't correct that accusation with a flame thrower.
What the accusation? What I named the library. Yep. The *name* was causing every single problem in the system.
Panorama (very, very expensive APM system at the time) identified my library in it's analysis, the calls to/from SQLServer was the bottleneck
We had one of Panorama's engineers on-site and he asked what (not the actual name) MyLibrary was and (I'll preface I did not know or involved in any of the so-called 'research') a crack team of developers+managers researched the system thoroughly and found MyLibrary was used in just about every project. I wrote the .Net 1.1 MyLibrary as a mini-ORM to simplify the execution of database code (stored procs, etc) and gracefully handle+log database exceptions (auto-logged details such as the target db, stored procedure name, parameter values, etc, everything you'd need to troubleshoot database errors). This was before Dapper and the other fancy tools used by kids these days.
By the time the news got to me, there was a team cobbled together who's only focus was to remove any/every trace of MyLibrary from the code base. Using Waterfall, they calculated it would take at least a year to remove+replace MyLibrary with the equivalent ADO.Net plumbing.
In a department wide meeting:
DeptMgr: "This day forward, no one is to use MyLibrary to access the database! It's slow, unprofessionally named, and the root cause of all the database issues."
Me: "What about MyLibrary is slow? It's excecuting standard the ADO.Net code. Only extra bit of code is the exception handling to capture the details when the exception is logged."
DeptMgr: "We've spent the last 6 weeks with the Panorama engineer and he's identified MyLibrary as the cause. Company has spent over $100,000 on this software and we have to make fact based decisions. Look at this slide ... "
<DeptMgr shows a histogram of the stacktrace, showing MyLibrary as the slowest>
Me: "You do realize that the execution time is the database call itself, not the code. In that example, the invoice call, it's the stored procedure that taking 5 seconds, not MyLibrary."
<at this point, DeptMgr is getting red-face mad>
AreaMgr: "Yes...yes...but if we stopped using MyLibrary, removing the unnecessary layers, will make the code run faster."
<typical headknodd-ers knod their heads in agreement>
Dev01: "The loading of MyLibrary takes CPU cycles away from code that supports our customers. Every CPU cycle counts."
Me: "I'm really confused. Maybe I'm looking at the data wrong. On the slide where you highlighted all the bottlenecks, the histogram shows the latency is the database, I mean...it's right there, in red. Am I looking at it wrong?"
<this was meeting with 20+ other devs, mgrs, a VP, the Panorama engineer>
DeptMgr: "Yes you are! I know MyLibrary is your baby. You need to check your ego at the door and face the facts. Your MyLibrary is a failed experiment and needs to be exterminated from this system!"
Fast forward 9 months, maybe 50% of the projects updated, come across the documentation left from the Panorama. Even after the removal of MyLibrary, there was zero increases in performance. The engineer recommended DBAs start optimizing their indexes and other N+1 problems discovered. I decide to ask the developer who lead the re-write.
Me: "I see that removing MyLibrary did nothing to improve performance."
Dev: "Yes, DeptMgr was pissed. He was ready to throw the Panorama engineer out a window when he said the problems were in the database all along. Didn't you say that?"
Me: "Um, so is this re-write project dead?"
Dev: "No. Removing MyLibrary introduced all kinds of bugs. All the boilerplate ADO.Net code caused a lot of unhandled exceptions, then we had to go back and write exception handling code."
Me: "What a failure. What dipshit would think writing more code leads to less bugs?"
Dev: "I know, I know. We're so far behind schedule. We had to come up with something. I ended up writing a library to make replacing MyLibrary easier. I called it KnightRider. Like the TV show. Everyone is excited to speed up their code with KnightRider. Same method names, same exception handling. All we have to do is replace MyLibrary with KnightRider and we're done."
Me: "Won't the bottlenecks then point to KnightRider?"
Dev: "Meh, not my problem. Panorama meets primarily with the DBAs and the networking team now. I doubt we ever use Panorama to look at our C# code."
Needless to say, I was (still) pissed that they had used MyLibrary as dirty word and a scapegoat for months when they *knew* where the problems were. Pissed enough for a flamethrower? Maybe.9
Dear Atlassian Support,
In my life I had a lot of experiences...
But your software manages to replace all these experiences with a unique feeling of depression, hatred, anger... Only negative emotions.
Not once have I said anything good about your software - not once in > 5 years.
Whenever your chum bucket of mismanagement and misanthropy stops working, it's never the fault of the end user, the administrator or someone else.
It's entirely your fault.
Fucked up upgrades, lack of documentation, catastrophic handling of logging, lack of support of current database systems, lack of proper migration and clean up of plugins, ....
I could go on. But it's really just and endless tirade.
I wish I could stop management for even giving you money for the pile of poo you call software, but sadly they don't listen.
But there's hope on the horizon.
Thanks for making people go cloud only.
No one wants that.
It would mean entrusting that pile of poo to the craptastic hands of your irresponsible people.
No one really wants that.
Not even management who blindly paid the license fees all the times.
Thank you for your cloud only movement.
Maybe we can finally find an alternative and I can finally start a therapy for the PTSD I have thx to your software.3
Devs: Hey, what should we do?
provide our SDKs for download as easily as possible so that any potential customer can try it out and see how much better we are compared to our competitors?
Should we lock our SDKs behind a login where the customer needs to create an account and enter the most amount of private information possible, just in case, then also require to create some security access tokens that he needs to configure in his app to have access to our service via the sdk and also hide all of the documentation behind a login which requires some permission based roles to access and also make the sdks closed source so that it’s a pain in the ass to debug and understand?
B! Definitely B! Make sure to piss off and annoy our customers as much as humanly possible!
I am mentally burned out from web development.
Physically I'm fine, but it's getting more difficult each day to open my laptop and write code, documentation or do code reviews.
Web development just seems so meaningless, where my day to day job has me trudging through one web form after another. I'm sick of implementing business logic on the backend and tired of listening to the product owner bitch about users who are demanding.
My productivity has fallen to the level where I'm feeling guilty for spending my time on nothing!
Don't give me advice, I know I need a change of scenery.
I just need to find the motivation to work on another hiring test which has nothing to do with the actual job.8
When I saw the U-Boot prompt on the console of a system that we'd developed from scratch all from openly available documentation. When the board was fabricated and brought in for software bring up, it was basically less useful than a brick. It felt awesome giving life to it. We had to configure it and calibrate it. It's extra challenging when you have a lot of analog circuits. Yeah so we didn't win 'against' anyone but that victory stands for itself.4
Story of WTF happened to my job
During my employment in (name censored) was stressful, They claimed I didn't complete my task on time which they constantly remove me from git and documentation(which have to follow their style of returning data), I kept emailing, slack, WhatsApp calls them, mostly and predictably got ghosted and blocked.
So How the fuck am I supposed to push my code or code without the documentation (I can actually, prevent refactoring every time, following the documentation is the good way to go.)
On the sprint review, they will complain about me not committing and pushing the code. (I did commit locally, but can't push, they removed me from the fucking repo) and not done.
Tried reasoning, telling the obvious reasons with them, doesn't work. They come out the second reason of me "NOT COMMUNICATING". Sometimes I can get to git merge from dev to my branch and get tonnes of fucked up code. I reviewed the code, and I can't tolerate it.
Lately, I overheard them mocking and cheering me about to get fired over a zoom meeting (I was in there, they forgot to remove me). Their conversation is about me being a coloniser, a jerk, betraying Chinese ancestors for being not Chinese enough.
I was like: "Why the fuck does their conversation sound like they are tucked in the Qin dynasty?"
Frequently I got labelled as unprofessional.
How is cussing about my ancestors, personal and life a professional behaviour?16
For God fucking sake! The absolute worst platforms are TV's.. LG - WebOS has barely any documentation and a framework that runs very poorly. Not to talk about the 200 bulletpoint self checklist you have to go through before you can submit a new release!
Samsung - Tiden TV... Told me to contact a content manager, and I've almost been waiting 3 months now for any answer, haven't heard a word. My boss thinks I should write another email and cc him so Samsung will get scared... Jesus fucking Christ this sector is a bunch of arrogant lazy fucks1
The company I am currently working for is partnering with another startup. Nothing special about that. We should integrate their API into our system. I wasn't involved in the process when it came to checking there API and if it would work with our Systems. The Person who did that already left the company so I was left behind with some internal documentation. In that Documentation is already written that API is basically trash....
After I started integrating the API I found more and more flaws in the design. They are not sending any responses that would help, when a param is missing or the authentication isn't correct, only 500's . I got some documentation from the partner company so i thought it will be fine as long as the Documentation would be accurate. Turns out the documentation isn't even close to be up to date. Wrong content types wrong endpoints, wrong naming. Basically we could not work with that. We shortly contacted the partner Company. After a few WEEKS we got a response that they updated the Documentation what was right but still not everything was correct. At this point I lost my mind. I researched a little bit about them, the company is founded from 2 young people who basically came strait out of the University and doest have any experience or idea how to build an API. I investigated a little bit there websites.
They have an Admin panel on the base domain from their API but it is only accessible via HTTP. Like WTF , They use HTTP for an Admin Panel this must be a joke right?
They use Cloudflare without a HTTP to HTTPS redirection ???
I really had not that much time to research in there website but if I find these things in 5 minutes I don't want to know what I can find in like an hour.
At the end we will still use them as partners because surprise surprise our company already sold the product that uses their API.
I know that I will be the person who has to help fixing this shit when it breaks and it will break 1000% JUST FUCK THIS SHIT. FUCK THE PARTNER COMPANY. FUCK THERE API.2
This rings true even if the customer is internal. Built a feature and provided documentation on how to use it and one of the end users still used it wrong.
It was a simple validation process too. Input the member ID then click validate, the app then checks if the person is in the system and fills in some other fields and does some other backend stuff. How could you get that wrong?! 🤔8
WTF is the point a
of auto-generated documentation. Some dude litterally thought it was a good idea to read the code and write the exact same shit differently. WTF IS THE POINT!?
Documentation takes work, sorry, stop being lazy.12
Learn to read documentation and don't rely on 5 minute Youtube tutorials, stackoverflow or dev blogs for every little thing.6
So we started using React with Polaris and Supabase and Vite and guess which one doesnt have very good documentation, all of then. Kill me like a command window task5
My boss has zero emotions and empathy. How ironic for someone into product management!
He is 100% logical, maybe more. He is smart that way and yes, that is a skill to learn from him. He has good product management hard skills.
But, he is an emotional void. Zero humane feelings. He treats everyone like a machine. He is overly obsessed with documentation and wants every single word to be his way.
My writing and communication skills are his pet peeve.
Last Monday, our CTO was in office and he wanted to meet me. I was working remotely, so leads notified me. Even though our CTO runs a monkey business, I was eager and excited to meet him.
This week, my boss will be in office. He texted me to catch-up on coming Monday. I am anxious and worried even though my boss has great skills in our work function.
Furthermore, I find my boss overly critical about everything I do. Maybe it's not me and he does it with everyone, because I haven't been part of a group connect, so no idea. But dude.. give me a break.. give me some room to breathe..
What I heard from another junior, who joined us last month, is that one of the folks who resigned in past was because of my boss.
Feel like that I will move on from my dream organisation as soon as I complete little more than one year.
And apart from that, I scratched my eye glasses, Reddit permanently banned my account for no fault of mine, wanted to catch-up with a cousin, who is going through a rough phase, to cheer up the lad, but he won't answer our calls.
What a shitty weekend.
And yes, my boss is a hipster in the way he dresses and thinks.
He literally keeps saying that we need to use dark patterns like click baits, incite FoMo in our app users, add feedback loops, etc.3
Sweet lord jesus I fucking hate React! I hate whatever those idiots at facebook or whoever decided to change how everything works 15 fucking times in the span of 4 versions. For fuck sakes, the errors are shit. The documentation is shit, the answers to questions are useless!
I hate this fucking framework with a burning passion, I want nothing more than to shove the entirety of the populous that developed this garbage up zuckerburgs ass and then drown him in a vat of boiling piss and motor oil.
I've been working as a programmer for 16 years now, and would say I'm not inexperienced, so it's frustrating to feel like a noob after months at a new company when they have poor internal documentation, hundreds of repos with default readme, pretty much no use of docker, sub standard equipment and use their own weird software for deployment. It's hard to meet expectations under these conditions.4
I miss when my job was just about coding, I could spend entire workdays writing C# or TypeScript while listening rock or metal with few meetings in between, being very passionate in programming and computers sometimes I found was I doing so engaging which I spent more than my 8 hours workday on company's code base trying to improve it and my older coworkers were very happy with my code.
Then a "promotion" happened, I went to work directly with a client, a huge enterprise which is working on renovating his internal software and here the fun stopped. Long useless meetings are a regular occurrence, there are absurdly long procedures to do everything (for example since CI/CD is leaky we have to do dozens of workaround to get a microservice deployed) and having very little written documentation this gives an huge advantage to people which actually enjoy to spend their entire workdays on a MS Teams call over "lone programmers" like me which actually feel significant fatigue in doing that (alone sometimes I was able to log 12+ hours of programming daily between work and personal projects while after 3 hours of PP I feel drained) since the information passes in meetings/pair programming and I dread both.
I feel which my passion is still there, I still enjoy coding, tinkering with Linux and BSD, broadening my knowledge with technical books and having passionate conversation about tech but I dread my job, sometimes I try to look at it under a more optimistic eyes but most of the times I just end disappointed.3
No, a 33 Page README is not the better choice.
Not for reading.
Not for writing.
Compared to a /Documentation/ folder
+ good overviews / links5
The people who are developing the Hostbill billing platform: please stop. Quit your jobs, and go do something else because you fucking SUCK at your JOBS!
I've had it with your shitty API! You ever heard of scalar types beyond string? "1", "0", "false".. Learn to use TYPES even though it's PHP! THERE'S TYPE SUPPORT THERE NOW YOU FUCKING IMBECILES! Some are typed, some or not, you never know! Guess and win!
And don't get me started on the documentation, OR THE LACK OF! Having to contact customer support to figure out HOW IM SUPPOSED TO DISPATCH DATA TO THE API BECAUSE YOU CAN'T BE BOTHERED TO WRITE THE INTERFACES OR EXAMPLES! FUCK YOU!3
For people that do minimal documentation on a package and just say “refer to source code”…fuck you8
It's rant time again. I was working on a project which exports data to a zipped csv and uploads it to s3. I asked colleagues to review it, I guess that was a mistake.
Well, two of my lesser known colleague reviewed it and one of the complaints they had is that it wasn't typescript. Well yes good thing you have EYES, i'm not comfortable with typescript yet so I made it in nodejs (which is absolutely fine)
The other guy said that I could stream to the zip file and which I didn't know was possible so I said that's impossible right? (I didn't know some zip algorithms work on streams). And he kept brushing over it and taking about why I should use streams and why. I obviously have used streams before and if had read my code he could see that my code streamed everything to the filesystem and afterwards to s3. He continued to behave like I was a literall child who just used nodejs for 2 seconds. (I'm probably half his age so fair enough). He also assumed that my code would store everything in memory which also isn't true if he had read my code...
Never got an answer out of him and had to google myself and research how zlib works while he was sending me obvious examples how streams work. Which annoyed me because I asked him a very simple question.
Now the worst part, we had a dev meeting and both colleagues started talking about how they want that solutions are checked and talked about beforehand while talking about my project as if it was a failure. But it literally wasn't lol, i use streams for everything except the zipping part myself because I didn't know that was possible.
I was super motivated for this project but fuck this shit, I'm not sure why it annoys me so much. I wanted good feedback not people assuming because I'm young I can't fucking read documentation and also hate that they brought it up specifically pointing to my project, could be a general thing. Fuck me.3
This would be my first official post.
Been a IT Technician for a managed service provider for the past 9 years up until last year August. Managing director pulls me in with a movement to App Development after coming across some personal hobby projects I have done in the past.
Started in the new position in November as Junior Developer and workloads get dumped on me and left to figure it out. 4 weeks of running through code without documentation and the solutions started to make sense.
Started a new solution for a Large remote customer with documentation and timelines in December and I get pulled in again for a second time in front of the MD.
Good News:With effect in January I have been promoted to Head of Application development.
Bad News: The existing department head is leaving end of the month and I am to go 900km from home to hand over all responsibilities for the next 3 weeks.
Better News: Department has started shifting to DevOps and it is up to me to set the policies and work flows to how I see fit.
Worse news: it starts by expanding the team asap as 10 projects accounting to 4000 man hours with deadlines in Q3.
Wish me luck. It's going to be twisted Rollercoaster ride...5
So to followup with the enterprise grade goodness, I made a little prototype~
Not very enterprise like yet, but a fun first 'extension' to writing a proper hello world program.
*Things that might make it more business like*
- Lots and lots of abstraction
- Tests ( not very business like but more stuff = better )
- FFI | Shared library, because why not
- Threading / workers
Design a dedicated language for writing hello world programs that is compiled / interpreted on a simulated custom hello-world-cpu and displays it's content on a simulated screen.
I want to keep the documentation & code normal / actually helpful as a contrast to the concept itself and of course to keep my sanity.23
I can’t remember shit
My code editor helps me a ton!!
I have most documentation offline.
Ask me to do shit in a job interview without Google or any reference material then the joke is on 🤡2
30hr non stop programming during university. Self proclaimed "best programmer" did not have shit the day before the deadline while he said he was done 2 weeks before that.
He also proclaimed being the "best leader" and kept trying to take that role from the one we decided on before he joined the group.
He also proclaimed amd lied about making all the documentation to save his own ass and trowing us under the bus while we did not even mention saving his ass.
And much more.
My blood still starts to boil when i see the guy.
I don't fucking see how others get their stuff through code review, if when I make an enhancement it gets stopped for stuff other people did before me. Like, at this point it seems like I'm spending more and more time refactoring than simply doing the requested enhancements.
I don't blame the team, they're going off of the documentation. But this is getting ridiculous.2
Scrum master asks how I'm doing and how I'm finding the project I'm working with.
I complain about the lack of documentation and that it kills me (well, kills my brain with increased migraines) due to my Asperger's as I need CLEAR instructions and not ~something~ I need to piece together from asking from 5-10 different people who all know some minor part of the final answer.
"*You* could do the documentation, lankku, while you're figuring it out!"
And the reason I was trying to find out this one thing related to a completely different repo I have never worked on was because I was trying to write documentation for something totally different that just needs a login redirect from this different repo. <.<6
The worst part of being a senior software engineer for a team is that the legacy code of the company is not clear, and there's no documentation.9
I’m doing an internship, this is worst experience. No structure whatsoever,I don’t think they care about our interests. They’re just giving us coding stuff without even knowing if we’re interested or not in that particular field or technology. They made me code in c#. I’ve never used that a day in my life. The backend is big and complex with no comments or proper documentation(no documentation at all), only thing they gave us are some flow charts. I’m stressed out tbh.12
Any tips on how to properly document my code? I'm going to start my first internship soon so I need to learn it.12
I FUCKING HATE IT WHEN I HAVE TO BUILD SOMETHING FROM SOURCE!!!!
So I wanted to install a package with pip. Shouldn't be that difficult, right? RIGHT? Lmao
Things I encountered on this adventure in no particular order:
- multiple undocumented dependencies, only explained on stackoverflow or some github issues
- inconsistent and outdated documentation spread over multiple pages on multiple websites
- Python version can't be too old or too new
- other external software version incompatibilities
- Build process that takes several minutes just to fail, then try again and fail with exactly the same outcome after a few minutes
- fucking SVN is needed?!?!?!
- VS Code is needed for completely manual build ????
- cmd/powershell incompatibilites
- required reboots
At some point I just gave up... Now I don't even remember what I crap I installed that I don't need anymore.
Please for the love of god provide prebuild packages or at least a very SIMPLE build process -_-9
I really hate sales people. My stakeholder wants to buy an address verification service but is hesitant to purchase now because the dev time needed would be substantial. Now the sales rep has planted seeds of doubt in my SH and SH thinks I grossly overestimated the labor I quoted.
Sales rep is all “major corporations have installed this in a weekend.” 🤬🤬🤬 Major corporations also have more than one developer and probably aren’t dealing with a website that has a dozen address forms that all work differently. Oh, and I DON’T WORK WEEKENDS MOFO.
My SH originally requested a labor estimate for installing the AVS on all address forms and that’s what I delivered. My audit revealed a dozen different forms. I’m working with a legacy code base that’s been bandaged together and maintained by an outside dev agency. The only thing the forms have in common is reusable address fields. They all work differently when it comes to validating and submitting data to the server and they all submit to different api endpoints. At least a quarter of those forms are broken and would need to be fixed (these are mostly admin-facing). I also had to provide an estimate on frontend implementation when I have no idea what they want the FE to look like.
My estimate was 5-8 weeks for implementation AND testing. I wrote up my findings and clearly explained the labor required, why it was needed, and the time needed. All was fine until the sales rep tried to get into SH’s head.
My SH is now asking for a new estimate and hoping for 1-2 weeks of labor, which is what will SH to buy the AVS. Then go to the outside dev agency you used to work with and ask for a second opinion. I’m sure they’d also tell you at least month if not more for testing, implementation, and deployment because you have a DOZEN FORMS you want to add this to. 1-2 weeks is only possible for a single form.
My manager doesn’t work in the same coding language I do, but he read my documentation and supports my original estimate.
I honestly want to ask my SH if this sales rep is giving a very good price for the AVS. If not, are there other companies in the mix? Because right now you have a sales rep that’s taking you for a ride and trying to pressure you all so he can get another notch in his belt for getting another “major corporation” as his account. I don’t think it’s a good idea to be locked in with a grimy sales rep.3
I've ditched Python for Julia for scientific computing. Documentation is definitely not as great but I find it so much more convenient.4
Making calls, meetings, and "brainstorming" half-baked features or designs or any other slop bullshit for 12 hours a day?
Wow, you are an impressive "startup bro"!!!
Coding, testing, running emulators, tests, reading technical documentation, ensuring product success in the real world, and implementing efficient full stack software for 12 hours a day?
These are the expectations of management. Just remember, what they do is "extremely difficult", but you are simply just a resource queue that takes input and converts it to real-world implementation.
Give me a fucking break
Back from the dead with more vaguely-obscure technical bullshit
Working on a chatbot for my BS-CS. Almost done with college, so the assignment is to make a bot that recommends you a CS career. Cool.
I get through making a joint personality and skill-interest quiz that gives you number grades on different spectra. So far, so good. But this project has to be done entirely in pandorabots' online editor. So no scripting. Zero scripting. 100% markup language. That means to even do math, you need to copy a standard library off GitHub.
I mean, that's fine and all, but the syntax is just atrocious, because everything in AIML is input->response. If you ask the bot "what is 5+5?" you must have it go:
- recognize pattern WHAT IS * + *
-> redirect -> XADD * XS *
-> do math -> recurse result
uncomfy. Plus, variables can only be accessed through <get> and <set> tags. But mangeable.
So here's where the story becomes a rant.
In the standard docs, there's all these math functions, and they work. There's also logic.
And then there's this fucker
XIF [ * ] XS [ * ]
Which has no documentation and just doesn't work. No idea what the brackets mean. Tried putting in TRUE, tried putting in true math statements (5 XEQ 5), tried putting in recursion tags to trick it, tried everything. It just ignores it.
There is not a single comment, stackOverflow post, or youtube video that even acknowledges the existence of this thing.
So unless I want to convert the entire logic of my program into nested SWITCH statements with the <condition> tag, I'm just fucked.
The icing on the cake is, I go to tech support on Pandorabots to ask for help with this. What do they have except a chatbot to cheerfully tell me that no humans are around to help me right now?
gonna have to build an entire fuckin turing machine in markup tags to calculate whether x = 3
Read documentation for 30 minutes to write one line of code. It wasnt worth it. Next time I’m gonna just do couple hours of trial and error.1
Do you agree?
Junior: What are comments
Mid-level: Hah! My code is so clean, I don't NEED comments!
Senior: comments comments comments comments comments comments comments comments comments comments comments comments comme-...30
Do you ever feel like some days are so damn monotonous? I’m nearing 10 years in the industry and lately my world consists solely of Plug-in development, templated or basic sites, PRs, and documentation galore. How do y’all keep your brain from turning to pure mush? Learning anything cool/new? The Burn out is real. 😖3
Project: Angular 11
Package doc 2.1: For Angular 13+
Package release 2.1: For Angular 12+
Me: Well, this package solve our problem but it need Angular 12 or 13 to run, so do we go for 13 ?
Team: yep,the update is on schedule so take it and update it later.
Me: We can also go to 14 directly.
Team: No, we prefer LTS version
...some weeks later...
Team: Update to 13 complete !
Me: Yes ! Let's go !
...Install package 2.1...
🚫 Angular 14 is required for version 2.1
Me: are you fu***** kidding?
Final word: please, keep a good documentation on version requirements 😁
(The package has currently a 3.x in beta to solve the 2.1 angular 14 problem because why not 🤷)
our government's work documentation is digital now. 2 hours to convince a facial recognition app that i have a face just so i can start my job. fucking hell7
Serious question for anybody who has dared to understand manager-speak: Do you know what a 'Task Rewind' is? We have it in our documentation, but google gives me no help as to what the hell it could mean.
...Or should I just take my original gut feeling and classify this as yet another word for the clown dictionaries?6
Boss needs certain stats pulled from database once a year for board meeting. This time I delegate it to a junior dba/sysadmin. He looks at my 3-year-old docs that I hastily jotted down and pasted and included my rambling notes with results from way back then. Mostly they were just to jog my own memory, not to be a really neat, clean instruction guide. He does the queries correctly, but in ticket for boss he pastes also all my notes from the docs. boss gets confused, "what is this other number, I don't get it?!" We have to have a meeting of the 3 of us and waste an hour or so just to figure out what went wrong, finally I realize what junior guy accidentally did. Moral of story: to avoid baffling the nontechs, always simplify, simplify, simplify. Alternate moral of story: before delegating a task that seems old hat to you, always review your notes/docs and make sure they're ready for someone else to use them.2
There is a commercially sold ERP solution that has it's DB schema in excel and Other documentations in MS Word. And its not even properly structured, no schema diagrams, last updated for a 4 year old major release 😒😫.
I have to develop a custom module for it and that requires building an ActivexDLL Project in VB fucking 6 😭😭 .
Tell me if you want ss in comments.5
Documentation is like sex:
When it's good, it's very good.
When it's bad, it's better than nothing...4
saw this girl's post LinkedIn. a typical influencer like format post which had nothing of value and instead was a post asking for help with a question (basically it consisted of a android doc link for an android component followed by some hashtags like #6969daysofcode #day69 #xyz and "has anyone used it before?share resources")
then i noticed 2 things:
1. she works in my previous company in the same position that i did , and started a month after i left. so basically she is my replacement.
2. i and my senior (who also has left that org) had created the exact same component that she mentioned in the post, and we had created that component as an awesome plug and play component that would handle multiple usecases with decent documentation
now am having this urge to dm her the exact classname in the code to see and learn 😂😂
or i can play this uno reverse card and write a blog on that component writing another influencer like post: "in my previous company, we created this awesome component and here is how it works..." her boss (our TL) also follows me and what i know of him, he will be tagging her, pinging on slack, and discussing it in the DSA the next morning 😂4
Holy shiiittttt I finally got 64bit NASM working on windows with cmake. Cmake documentation is fkn bad man.
I’ve got a c++ file that calls a procedure in an assembly file that calls win32 APIs to show dialogs and other cool shit. Compiling was working fine, linking turned out to be a bit of a pain in the ass, but figuring out how to enable NASM in cmake was a nightmare. Why is the cmake docs so horrific 🥺1
I've been reading the "Fundamentals of Software Architecture - An Engineering Approach" by Richards & Ford, and come to the conclusion that I've basically done everything as expected in that role, but this leaves me to wonder how can one work as an architect in an enterprise where the standard of development is so low that even senior developers have a hard time understanding some decisions.
Why we should build an actual RESTful API, with customer facing documentation, instead of hacking away with random script files that accept stuff.
Why we should modularize our code and maybe layer it so that one class doesn't contain 10k lines of code with SQL clauses here and there.
Why we should focus on decoupling some parts of the application instead of hard-wiring everything together requiring a massive test environment to be built every time we want to run tests for the system that take hours to run.
Even a concept as simple as dependency injection escapes these people. How can you make a decision in an environment like that? You simply get push back, because senior developers fear that they will look bad in front of other developers, and are no longer on top of the food chain if these changes are made. I don't know if it's hopeless or simply requires a lot of persistence and actual authority to make those decisions. Or does it require that you teach these people the standards in what it means to build a system that has good architectural qualities, and what basic SOLID principles mean.
When you identify this problem, you need to have the leadership sponsor your efforts. Too bad I sucked in office politics back in the day and considered my efforts a failure. Live and learn,4
Egad! An actual rant is revealed!
Lamers who insist that informal or oversimplified stuff be written are damn annoying.
God forbid the appropriate use of a four-syllable word.
In what world is "uncanny" a strange word?
Is "blessed are the authors of good documentation" such a difficult sentence? Call the linguist; this shit can only be interpreted by an expert!
"U WRITE LIEK A ROBOT!!!!!!!!!"
Piss off, trog. Some men like succinctness and just wish to communicate without a great deal of ambiguity. A bit of clunkiness is preferable to a bit of ambiguity.
Pants are apparently shat when proper sentences are encountered.
If writing coherently and correctly implies being pretentious, then the world is beyond repair.
Also annoying are lamers who insist on wasting other men's time by asking questions which are perfectly suited for search engines.
Reaching through the monitor and beating the crap out of people sometimes seems a bit tempting. But doing such a thing is infeasible... and would probably result in felony charges if such a thing were feasible.13
no one taught me how to host anything web, i had to figure out how to get things live by myself. it was awful, documentation on that stuff sucks, but i got through it knowing far more than when i started.5
Remember, the more "cutting edge" and "thousands of clients" a company has is inversely related to the quality of documentation they have on their APIs and software solutions.
I don't give a fuck about your pretty examples, show me which FIELDS can take which VALUES. It's that simple. Instead, I'm wasting your company's and my own time by spamming support for what should be basic questions clearly outlined in the documentation.2
Internal users are the worst. They act like you owe them the world. STFU and read the goddamn documentation.4
Confluence WYSIWYG editor for tables on wiki pages. Forget about git and GitHub idiosyncrasies, "at the end of the day" project documentation in Confluence and Jira is the real challenge.1
There are a couple:
A system that updates user accounts to connect them into our wifi system by parsing thousands of processing files written in Clojure. The project was short lived and mainly experimental, It has complete test cases and the jar generated from it is still purring silently on the main application. It was used to replace an $85k vendor application that made no fucking sense. The code has not been touched in 2 years and the jar is still there. The dba mentioned the solution to the vendor, the vendor tried buying it from me, but being that it belongs to the institution nothing was touched, still, it got the VP's attention that I can make programs that would be bought for that level, it caught his attention even more when I showed him the codebase and he recognized a Lisp variant (he is old, and was back in the day a Fortran and Cobol developer)
A small Python categorical ML program that determines certain attributes of user generated data and effectively places them on the proper categories on the main DB. The program generates estimates of the users and the predictions have a 95% correctness rate. The DBA still needs to double check the generated results before doing the db updates. I don't remember how I coded it because I was mostly drunk when I experiment on the scenario. It also got the attention of the VP and director since the web tech manager was apparently doing crazy ML shit that they were not expecting me to do, it made them paranoid that I would eventually leave for a ML role somewhere, still here, but I want more moneys!!
A program that generates PDF documentation from user data, written in Go, Python and Perl (yes Perl) I even got shit from the lead developer since I used languages outside of their current scope of work. Dude had no option but to follow along with it :P since I am his boss
Many more. I am normally proud of my work code. But my biggest moment is my current ntural language processing unit that I am trying to code for my home, but I don't have enough power to build it with my computers, currently, my AI is too stupid, but sometimes it does reply back to my commands and does the things I ask it to do (simple things, opening a browser, search for a song etc) but 7 times out of ten it wont work :P
story of a release
v2.1.0 major changes went live : new features, bug fixes, optimisations. also included releases for 2 associated libraries
release process tasks:
- do code
- update test cases
- test sample app
- test on another sample app
- get code reviewed and approved by senior ( who takes his own sweet time to review and never approves on first try)
- get code reviewed again
- merge to develop after 20 mins( coz CICD pipeline won't finish and allow merging before that)
- merge to master after 20 mins( coz CICD again)
- realise that you forgot to update dates in markdown files as you thought the release will be on 10th sept and release is happennig on 12th sept coz of sweet senior's code fucking/reviewing time
- again raise a branch to develop
- again get it a review approval by sr (who hopefully gives a merge approval in less time now)
- again get it merged to develop after waiting for 20 mins
- again get it merged to master after waiting for 20 mins
- create a clean build aar file
- publish to sonatype staging
- publish to sonatype release
- wait for 30 mins to show while having your brain fucked with tension
- create a release doc with all the changes
- update the documentation on a wyswig based crappy docs website
- send a message to slack channels
why am i telling you this? coz i just found a bug in a code that i shipped in that release which still got in after all the above shitty processes. its a change of a 3 lines of code, but i will need to do all the steps again. even though i am going through the same shitty steps for another library version upgrade that depends on this library 😭😭
AND I AM THE ONE WHO CAUGHT IT. it went unnoticed because both of those shitty samples did not tested this case. now i can keep mum about it and release another buggy build that depends on it and let the chaos do its work, or i can get the blame and ship a rectification asap. i won't get any reward or good impression for the 2nd, and a time bomb like situation will get created if i go with 1st :/
if the documentation of a class just has a table of function params and return types without any example snippets of how to use them, fuck you and your entire stack and your entire docs.8
I dont understand the Log4j vulnerability.
Isnt the ability to execute code a feature they added so that you can add dynamic data to the logs?
If it is a feature then isnt it written in the documentation?
Is the problem that a lot of companies forgot to sanitize the input before logging it?23
Learning Java Spring, their official documentation is a fucking mess. Can't get any useful information other than got dumped with loads of confusing terms/packages references/libraries.
baeldung blog site is better than the docs to some extend, but still, very fragmented information.
Ok enough ranting.. Any good learning resource recommendation? Forum?5
Not going insane due to lack of documentation.
In retrospect it may have been that I was still learning to properly apply and read docs so eh.3
I got randomly PIP’ed by this small company I was working at. They claimed performance issues without referring to specifics so I’m sure it was a financial issue (I’m paid more than other devs). So I took the laptop home and claimed I broke my back and started working from home (they don’t appreciate WFH). I did this so that I can freely give interviews. And now after 2 weeks I got 4 offers (with more than 50% hike). I’ve started the necessary documentation work and communicated my last working day with my current company.
So what is the moral of this story? Creative comments only.3
Just tried out Jupyter Notebook for the first time. I can see why software engineers wouldn't like notebooks, especially if you intend to actually publish the notebook as code for other people to use (please publish a module that can be imported, not a notebook that has to be hacked to pieces to make it reusable), but it's pretty handy for early prototyping or documentation.
I'm playing around with save-editing for a few GBA games as a personal project, and I used a Notebook to document the save file format with examples.3
There has to be a software project bingo somewhere where I could just mark one item at a time of what's wrong and should be fixed, eventually leading to the same loop all over again. Items include, but are not limited to:
- The application is too tightly coupled
- There are too many repos and people can't keep track
- Someone forgot to create a naming convention for everything
- Nobody is reviewing pull requests
- Someone opened a PR for their 1 month of work
- Some team created a service for themselves, that doesn't cover use cases for every other team (who didn't tell anyone they needed it), thus it was a bad thing
- Business owners telling something needs to get done now and go talk directly to a developer
- Nobody thought about network latency in microservice architecture
- There's an invalid translation in this string, let's push the MVP another two months to make sure everything is perfect before launch
- The API gateway has business logic in it
- Business wants to focus on output, development teams in outcome
- "You need to request a virtual machines from the IT department so we know you won't mine bitcoin there!" Takes two months to fulfill that request.
- <add documentation here>
- 675 vulnerabilities in packages
- People complain about not knowing what others are doing, but nobody wants to speak up1
At my new internship I am have to work in Magento. I come to FUCKING hate it.
From the phtml files, the choice between caching or having to wait 20 fucking seconds for a page reload to the huge file structure and the "documentation".
The whole fucking thing is a mess with a shit load of bugs and confusing git tickets that never seem to be added as updates!!!
Fucking hate this shit
As a tech lead i sometimes find it very hard to defend developers for no fault of theirs.
Management is completely incapable of noticing hard data like git logs or action items updated on an excel and seems to have an idea that the devs are incompetent , but the ba that sets impossible goals and crap business documentation is competent.
Should i just let the project and juniors burn.3
Here's a fucking challenge:
Generate an MD5 hash in React Native!
crypto - NOPE deprecated, react native throws when you try to import it anyway
react-native-crypto - NOPE, needs to make use of a shim that recursively edits node_modules... hmmmm yeah you think thats a good thing to have?
react-native-fast-crypto - NOPE, no TypeScript types, no documentation in general, only supports sha512?! WTF
garbage fucking idiot tooling stupid dumbass stupid splat splat barf splat22
When a senior asks me, the guy who started 4 months ago about documentation on something that they’ve been using for several years. Haha, yeah bro, wouldn’t all of our job be a lot easier? I’ve been going down entire rabbit hole networks trying to find credentials and API tokens for the last month because there was no documentation 🤷🏻♂️6
Let me tell you a story about an independent contractor who was just told the reason I don’t have enough information to build, deploy, access, or test the software I was brought on to maintain…
is that the previous developer is holding all documentation essentially “hostage” in an attempt to squeeze more payment out of the client. What the tap-dancing shit have I gotten myself in to.3
Trying to actually use tailwindcss makes me start hating it already. Instead of just adding a CSS style that I know without looking up, I have to look up the documentation to find a tailwind class name that contains the styles that I want to use. I still think it is great for beginners, but otherwise we have to learn two languages (CSS and TailwindCSS) instead of one now?2
If not understanding code, read the documentation or debug the code. When trying to modify...
1. Follow proper indentation.
2. Don't make spelling mistakes and follow naming convention.
3. Don't try to write all the code in one line (based on line length set)
4. Simplify if else statements if possible.
5. If value of method call need to be used once, don't store it in a variable. Directly use where ever it is needed.
6. If there is duplicated code, put it in separate method and re-use it if possible.1
Imagine you're in a company, one year in now. You've tried your best to amass as much knowledge of legacy services as you can (specially given no documentation) and you think you've done the best you can.
Now imagine your manager is upset that you haven't gotten as much domain knowledge as an engineer who's been in the team for five years now. Then also imagine that your manager whenever asked about specific product or tech or any knowledge on a service just keep tagging the 5 year engineer. If he ever gives an update in slack on any incident, he doesn't read what everyone has written in the channel so far, but invites the team on a call, and asks them to verbally tell him what to write as an update so as to show he actually understands it all and is showing leadership. What do you do?
Also I've read a good manager let's his team self function without any micromanaging but I feel this is literally hypocritical (lack of knowledge comparison) and useless of him to essentially making no decisions or understanding anything without pointing fingers. What would you all do about this kind of manager, or am I just inexperienced and maybe not seeing what he's actually doing and contributing.
I look in the docs at the function send(..., copy=True, ...).
I want to understand what copy is for and I read the description of the parameter: "copy (bool) – Should the message be sent in a copying or non-copying manner."
BuT whAt DoES thAt MEAn ?!5
My best and worst dev experience this year was getting a new job.
The bad parts: I’m inheriting a code base that was maintained by an outside agency, so there’s very little documentation. There’s a lot of systems maintenance and upgrades that have to be done because it was never done. I’m working at a larger organization, so tracking down who I need for info can be tricky. I’m the only person maintaining my code base.
Now the good parts: Better pay and benefits. My co workers, dev and non-dev, are always helpful. Since the dev team is small, we are very discerning when we pick up work for the websites. I have more independence to self-learn. I’m not at a blame culture. My role is permanently remote.
So far I think the good outweighs the bad.2
I've read the docs but my tired brain overrided an important detail.
"By default, HAProxy Enterprise will serve these pages only if it initiated the error itself. For example, it will return the page for a 503 Service Unavailable error if it can't reach any backend servers."
I had _the_ return part for interception of the error page from the backend added, not the default override for the error page of HAPRoxy itself.
Took me 4 hours, crying, madness and screaming to realize it.
This week is really wringing the last bits of the gooey slime what should be my brain out...
Another fun part is that I mistakenly thought the delimiter for multiple strings to an ACL comparison is a comma... It's a whitespace.
acl is_evil hdr(host) -i one,two is wrong.
acl is_evil hdr(host) -i one two is right.
I used to write HAPRoxy configurations blindly, today it was more like writing two lines of codes 100000000 times and still doing it wrong TM.
I need new brain.
Anyone got an offer?3
Any of us had annoyances with people with “a million dollar app idea” but what about these which gives unsolicited career advice?
I’m dealing with a boomer which keeps trying me to change my career and work into cyber security (because TV told him it’s a well paid field) despite me kindly telling him for multiple times which it’s not going to happen because I won’t throw away a career I love to work in a field which seems deadly boring to me (I love anything about coding from design to typing for hours on Vim meanwhile the only thought of reading for hours obscure documentation to find potential vulnerabilities on a system kills my spirit).9
Around 1milion lines. Every class is a rabithole with endless depth of implements. Confusingly named classes without comments. 0 documentation. I do not see the chance of ever understanding what is actually going on. Have fun :D1
I feel super discouraged. I just got a new job from being let go from my previous one, and I’m already thinking about quitting.
They really threw me into the weeds with a couple of complex tasks that require a lot of BE work and all I really do is FE. I’m still just trying to learn how the framework actually works. I think they expect me to become full stack. Now I find myself just starting at the computer screen most of the day because I have no fucking idea how to start working. The codebase and local environment is also fucked up super bad and barely runs on my machine.
Also, whenever I reach out these people they give the most minimal answers and have swollen egos. The frameworks they use have a really shitty community and bad documentation, so googling anything is really pointless. Working on this project, it has made me consider giving up development.
I am wondering if this is just a me thing though. Should I quit or stick with it for a bit?13
Finally, I finally got my dream job, but three weeks after starting, I will say I am going into depression.
First, I have to learn a new language (the lang is less than 7 years old) on the job. The language is so different from the paradigm I am used to-from OOP to functional programming, it has very little confusing documentation and a small but growing community.
Though I have been able to show some work, goddamit, it's taking me blood and sand to adjust and be productive.
My onboarding tasks are fixing bugs and implementing a feature, and it has been like walking in a dark tunnel.
I have to face my problem alone as all the devs in the team have swapped.
I rarely sleep, and I recently started to have an existential crisis!
Also, I work part-time on another project, and my output is so poor due to the fact that I am trying to adjust to the new job. Just this evening, I got a call from the manager who was passively aggressive, complaining and asking me to rethink (a passive way of saying "you are fired, if you do not...").
I am feeling anxious. It is taking so much time daily to adjust to the new job.
Will the depression pass?10
Hello world, im new here, so one question, who likes the apple developer documentation and do you have an alternative?7
More ranting about my boss and his orgasmic love for documentation.
He overcomplicates everything.
Let's say if we have to go from A to C.
A normal human will go from A to B and B to C.
My boss would go from A to K, K to P, P to E, E to Z, and finally Z to C.
Over complication is his first love. Every stakeholder hates him for that. He is known, org wide, to introduce complex frameworks in processes.
I have no idea what pleasure does he gets by doing this.
All I know by now is that it is rightly said, 'to make things simple, requires a touch of a genius.'5
I got a long weekend. I decided to see what React has been up to these days.
I happen to learn more about Suspense that now it allows f**king data fetching with relay.
I decided to give it a try . First time I am actually inclined towards trying out relay just so I can see what the f**king fuss about `Suspense` is all about.
Honestly the API is much better than what it looks like .
However what the fuck is this fucking relay. They have a page in their doc called glossary and most of the sections says TODO .
I wanted to see how the fuck data driven code splitting works . Due to the lack of proper documentation about it I could not get it right for two days . I stumbled upon couple of docs / blogs / github issues about it and then finally managed to get it working .
Well the end result wasn't as cool as I thought it would. The fucking API's to achieve this needless method of code splitting is insane
There are lot of better ways to achieve this with Suspense and the API relay offers is so shitty and not fucking type safe.
Now today I wanna learn more about the directives relay offers and there is no fucking documentation about them except for a fucking bold `TODO` explanation under the sections.
If relay developers thinks that they are fucking wizards and talk all about improving fucking performance . Please don't fucking over engineer API's and make it un un maintainable for the consumers of the library
Wow this feels good . first Day in rant and I m feeling great4
Q: What do you get when you create a homebrew query language that uses both the stream oriented principles of Unix data pipes and the relational ideas underlying an RDBMS and use incomplete documentation to support it?
A: A frustrated borderline homicidal engineer.3
How to handle a company in which I work as a junior android dev for the past 7 weeks where there is zero mentoring?
I have 2.5 year experience in android dev and then I had a 1.5 year gap. I was looking for a company where I can get back on track, fill my knowledge gaps and get back in shape. So I accepted lower starting salary because of this gap that I had. Me and manager agreed that I will get a 'buddy' assigned and will get some mentoring but nope..
70% of my scrum team with teamlead are overseas in USA and I have just 2 senior colleagues from my scrumteam that visit office only once a week. Ofcourse there are other scrum teams visiting office daily but I personally dread even going to office.
Nobody is waiting for me in there. What's the point if when I need to ask something I have to always call someone? I can do it from home, no need to go to the office.
My manager dropped the ball and basically disappeared after first 2 days of helping me setting up, we had just two biweekly half-assed 1on1’s where he basically rants about some stuff but doesn’t track my progress at all. I bet he doesn’t even know what I’m working on. Everything he seems to be concerned about is that I come to work into office atleast 3 days a week and then I can work remaining 2 days from home.
I feel like they are treating me as a mid level dev where I have to figure out everything by myself and actual feedback is given only in code reviews. I have no idea what is the expectation of me and wether Im doing good or well. Only my team business analyst praised me once saying that I had a strong onboarding start and I am moving baldly forward… What onboarding? It was just me and documentation and calling everybody asking questions…
My teammates didn't even bother accepting me into a team or giving me a basic code overview, we interact mainly in fucking code review comments or when I awkwardly call them when I already wasted days on something and feel like I'm missing some knowledge and I am to the point where I don't cere if they are awkward, I just ask what I need to know.
Seriously when my probation is done (after 6 weeks) I'm thinking of asking for a 43% raise because I am even sacrificing weekends to catch up with this fucked up broken phone communication style where I have to figure out everything by myself. I will have MR's to prove that I was able to contribute from week 1 so my ass is covered.
I even heard that a fresh uni graduate with 0 android experience was hired just for 15% les salary then me. I compared our output, I am doing much better so I definetly feel that Im worthy of a raise. Also I am getting a hang of codebase and expected codestyle, so either these fuckers will pay for it or I will go somewhere else to work for even less salary as long as I get some decent mentoring and have a decent team with decent culture. A place where I could close my laptop and go home instead of wasting time catching up and always feel behind. I want to see people around me who have some emotional intelligene, not some robots who care only about their own work and never interact.6
Documentation is like drugs.
When it's good you'll keep going back for it. When it's not, you'd rather get it at the source. 🧟
Spin-off of another rant.3
Once again I'm stuck in a M$ work with an shit OS that offset my time every now and then, MS Teams that doesn't pick up my headset half of the time and their stupid fucking documentation that doesn't say anything more than the code (actually less since half of it is already redundant).2
So much promise let down by poor documentation. Adding custom commands is not in the docs but is supported in the code.
Spent 2 weeks through trial and error trying to get custom commands written to import content and its been a pain in the ass.
When your documentation is written, give it out to novice or intermediate programmers with minimal exposure to your system. Note down their issues and improve the documentation.
Hell, why not add a form to submit feedback on the docs to a dedicated team of writers.
Anyone here good with Strapi who could assist?1
Someone had been too lazy to read the documentation and now we have to come up with a solid and correct implementation, which should have been done months ago
RTFM, people..!!! 😏🤦🏻♂️2
Working on an Angular project for the change of things. God, please kill me already.
Its fucking slow - hot reload? I am gonna make myself a coffee in the meanwhile
Its fucking stupid - Why make it easy when you can make black boxed. Make the magic happen!
And please dont get me started on Ressources, documentation, error messages and all the other stuff thats annoying here. Never going back to Angular, if it wasnt paid that well…3
I had a pretty good year! I've gone from being a totally unknown passionate web dev to a respected full stack dev. This will be a bit lengthy rant...
- Got my first full time employment dev role at a company after being self-taught for 8+ years at the start of the year. Finally got someone to take the risk of hiring someone who's "untested" and only done small and odd jobs professionally. This kickstarted my career, super grateful for that!
- Started my own programming consulting company.
- Gained enough confidence to apply to other jobs, snatched a few consulting jobs, nailed the interviews even though I never practiced any leet code.
- Currently work as a 99% remote dev (only meet up in person during the initialization of some projects.) I never thought working remotely could actually work this well. I am able to stay productive and actually focus on the work instead of living up to the 9-5 standard. If I want to go for a walk to think I can do that, I can be as social and asocial as I want. I like to sleep in and work during the night with a cup of tea in the dark and it's not an issue! I really like the freedom and I feel like I've never been more productive.
- Ended up with very happy customers and now got a steady amount of jobs rolling in and contracts are being extended.
- I learned a lot, specialized in graph databases, no more db modelling hell. Loving it!
- Got a job where I can use my favorite tools and actually create something from scratch which includes a lot of different fields. I am really happy I can use all my skills and learn new things along the way, like data analysis, databricks, hadoop, data ingesting, centralised auth like promerium and centralised logging.
- I also learned how important softskills are, I've learned to understand my clients needs and how to both communicate both as a developer and an entrepeneur.
- First job had a manager which just gave me the specifications solo project and didn't check in or meet me for 8 weeks with vague specifications. Turns out the manager was super biased on how to write code and wanted to micromanage every aspect while still being totally absent. They got mad that I had used AJAX for requests as that was a "waste of time".
- I learned the harsh reality of working as a contractor in the US from a foreign country. Worked on an "indefinite" contract, suddenly got a 2 day notification to sum up my work (not related to my performance) after being there for 7+ months.
- I really don't like the current industry standard when it comes to developing websites (I mostly work in node.js), I like working with static websites (with static website generators like what the Svelte.js driver) and use a REST API for dynamic content. When working on the backend there's a library for everything and I've wasted so many hours this year to fix bugs and create workarounds related to dependencies. You need to dive into a rabbit hole for every tool and do something which may work or break something later. I've had so many issues with CICD and deployment to the cloud. There's a library for everything but there's so many that it's impossible to learn about the edge cases of everything. Doesn't help that everything is abstracted away, which works 90% of the time but I use 15 times the time to debug things when a bug appears. I work against a black box which may or may not have an up to date documentation and it's so complex that it will require you to yell incantations from the F#$K
era and sacrifice a goat for it to work properly.
- Learned that a lot of companies call their complex services "microservices". Ah yes, the microservice with 20 endpoints which all do completely unrelated tasks?
I find it insightful when people actually convert their rant into a knowledge bomb 💣💥😅 https://hackersandslackers.com/flas...
Finally getting to know clear advantages of "application factory" over how Flask apps are usually sugar-coated in scarce tutorials.
This article also points out one of the core problems with Flask documentation and, consequently, a public view on Flask's feature parity with Django.
Ever wondered why it's looked upon as not very strong rival to Django? That's documentation... again, we come to that 😔⌨️🗑 It stretches a lot of commentary and side notes, but forgets to mention best practices from community.
I need to help out my manager to interview angular developer candidate which I don't have any experience on Angular development. I was darn nervous interviewing those people, relying on some reading on angular documentation, articles and tutorials but after few interviews. I manage to get into the momentum to conduct interview smoothly.
After two weeks of doing it, now I'm kinda understand Angular thanks to some great candidate explaining those concept clearly ( hope you get hired on the next round of interview).2
So, just to recap if you missed the last few episodes. I've been a web developer for years. But I decided to get a degree and go to uni.
Also I am firmly on the fewer comments side of the debate about self-documenting code. Even though I usually rephrase it and say method and variable names are comments. Basic idea: something is unclear, you should leave a comment. But, before you leave a comment, take a good look at your method. Can you rename a variable? Maybe the method name? Maybe extract a method into smaller methods so it doesn't need a comment? And only if you fail to do so, leave a comment.
Alright, now that we rehashed that, uni coding makes no bloody sense.
There is code that is abbreviated to the max (or min).
And then, they need everything commented. I mean, why do that? Why call the parameters a and b instead of base and exponent. And then say:
"But write a whole article about it above the method". Like:
a is the base for a power operation.
b is the exponent for a power operation.
return int representing a to the power of b
How about just do this:
public static int power(int base, int exponent).
How is this not the same documentation?
Is it because we're at a uni, a place for smart people and smart people shouldn't have an issue keeping a mental map between the variables and their meaning?
Or is it because they are all mathematicians. All respect to applied mathematics. I mean, the function about exponent calculation, I was not aware that it could be that effective. But on the other hand, keep mathematicians away from programming. I get it, writing maths per hand doesn't have intellisense and therefore you don't want to write long variable names. It's and old tradition. Yada yada, yah.
But programming is not maths. And maths shouldn't be maths like that. Right naming makes it simpler. It might still be a while until we all LaTeX rather than handwrite and be able to give maths right naming schemes, but programming is beyond the point. Calling the array you handing in a function A and the one that you're returning D makes no fucking sense.4
Rarely do I find well-organized code written by researchers. Well, it runs, so reproduction is possible, but when it comes to actually change something in the code, it's as messy as it can get.
And THEN, I look into the paper so that, hopefully, I can make sense of what is going on. Turns out, the documentation on the paper is also poor.
F*<k. My. Life.
This got me wondering...
Was shown a product today, doesn't matter what it was, because that part is irrelevant for question. Just out of unsubstantiated curiosity, I'm curious to hear other opinions .
How do you judge a product during first impressions period? Doesn't matter if it's a piece of software, gadget, food product, or all of the aforementioned at the same time.
As I just said - I was shown a product today, well, okay ... not in-person, and not actually shown, rather, made aware of a product. And after looking at it, I realized, that I can no longer look at a product and not focus on "red flags" or look for "where's the catch?". This product, that I'll just keep referring to as "the product" for the sake of keeping it neutral, was unfamiliar to me - I know nothing of it's manufacturer, so any trust to the brand is non-existant, the product brief on the website only made me question every marketing bulletpoint claim they had listed, aņd it didn't make me interested enough to go look up feedback from other users. This drew my attention to the realization that I do this with everything - I only look for whatever i'm looking for... I no longer pay any attention to discovery or suggestions. If I'm looking for HW, I'll focus on what it can and cannot do for the price and the actual first impression will form from using it, if it's SW - same deal, but actual first impression will form based on cross-platform compatibility, state/quality of documentation. Oppose to me, back in the day, where I'd just pick it up irregardless and "flubbed it" along somehow until it worked out.4
when the internal documentation examples are a connection to an unmaintained cluster
not a single person along the way could've made the default example to the cluster most people will want? its the only other cluster out of the 2
Apologies if this has been asked here before, but I wanted an open feedback on a query: Is there such a thing as overdocumenting?
I take pride in being a very articulate developer, being as descriptive as possible in my emails, internal communications, PR review comments, JIRA etc.
A product guy from the company today mentioned: "Though I understand your good intent behind being as descriptive as possible, it is possible that some of the junior engineers might get overwhelmed/ intimidated looking at those comments/ emails and it might stop them reaching out to you with your doubts."
I was not able to wrap my head around this, because I don't understand how a descriptive explanation might overwhelm anyone. It's a skill I picked up going through my career and I personally have always respected peers who documented things properly.
Open to feedback. Thank you in advance.6
Started freelancing via agency as android dev for this client. The product is a kyc mobile sdk with a flow of around 20 steps for identification. My job is to maintain the sdk/fix bugs/add features and so on.
Communication seems to be so fucking terrible.
For example the product owner is not technical and sucks at defining issues.
QA sucks at testing and providing feedback. Backend sucks at documentation and seems to live in a parallel universe, swagger docs are outdated. Previous android dev whom I replaced gave me 2 hours of his time during his last month in the company, answered some questions and then left today (which was release day) with around 6 bugs hanging. Now because we are behind schedule the PO is grilling my ass so I would provide hourly estimates, while I dont even know the codebase yet since I spent maybe 30 hours on it in the last month.
What a clusterfuck. I feel like Im in a kindergaden where people are either lazy or incompetent. It seems that sweet gig of 40 hours a month will become much more hours or my output will be low :)1
I spent the whole damn day trying to setup grpc-web, but this protocol is documented so damn poorly!
You manage to set grpc up for one language and it’s all cool, then you stupidly think that you are free to reuse the compiler you used for the nodejs version for your frontend part but nope! Our web module is now deprecated, please use this module instead!
“Ah yes just clone the repo and check out (…) and you can also check this link whic is in no way highlighted in the middle of a wall of text (…)”
*checking the other page*
Ah yes you need to install a package available only on your unix machine (great! Screw the devs in my team who use windows I guess, they’ll be happy to hear this!) and don’t forget to clone this repo to build your own plugin! And by that I ofc mean to compile it on your own!
- compiler error
After digging for an hour you find a requirement in an obscure issue opened and closed cause “ah yes we have a dependency not stated anywhere” *close issue and never add it to the project*
Fine, fine I can survive this bs
- another compiler error, no solution found after 2 hours
Honestly? Why the fuck do I need to compile this stuff? Just give me a damn npm package I can use? Goddamn it’s just transpiling, you don’t need access to my OS! (Aside for fs to save the files, and which btw is accessible via nodejs)
Now, I COULD download the latest realease as a precompiled, but… honestly?
I give up, I’ll do some shitty rest apis cause the customer’s not paying me enough for even THINKING to go trough this shit again when they’ll ask an iOS app. Or having colleagues asking me to help them understand how to do it.
Side note: also add typescript support to the web-code-generation ffs! Why does node have it and web don’t?5
The documentation says -> Install expressjs. Its a "framework".
But then u need to setup EVERYTHING yourself. Install cookie-parser, body-parser, io, routing FUCKING everything !!!
Why can someone not make it a standard installation covering the basic necessities ??8
when creating subtasks for my jira tasks, so PM can micromanage me better, i never know if he will criticize it for being "too fine granular, just write it in the comments" or for being "not detailed enough". also, on the one hand he criticizes team members for not having meaningful comments (e.g. "writing documentation"), on the other hand, he criticizes people that he doesn't know what they are doing. also, not to forget that i shouldn't have more than one task in progress ("it should be transparent what you're currently working on"), but then he randomly decides to set one of my tasks in progress even if this breaks his "one task at a time" rule. but i guess it's okay if he does it, because he's boss.
i honestly have no fucking clue how to please this guy lol4
Experimented with embedded Rust. Fuck that. C is a brilliant small language. Trustworthy. Rust is just C++ killer, it doesn’t belong in embedded domain. Bloated syntax, verbose error handling, crap quality crates with little to no documentation.18
i have no idea what im doing
what are people's favorite reference material for them
do people recommend the official documentation, was surprised react looked better than expected for its docs6
Does wanting to leave a company simply because of legacy code with no documentation and too much work a bit reason? I guess it probably is as anywhere could have the same thing :) Maybe management would be better suited for me, time to take courses8
You deliver a new feature. After the functionality, how do you prioritize?
- having clear variable- and function names
- having meaningful and orthographically and grammatically spelled commit messages
- having a clean commit history
- having perfect linted syntax
- having it covered with unit-tests
- having a wonderful documentation6
Today, I started a new project with Rails. I used always an own auth implementation, now I thought I'll give devise a try. Hell... the documentation is bad, really really bad. I really don't know why people are using this and don't write this by themselves. Anyway, I kicked devise and write it again by myself.8
When looking for technological answers or missing documentation, I often find my own questions and work-in-progress repositories on top of the search results. Either my problems are so unique (quite unlikely when following an official tutorial) or it's my way to describe the issues? Or maybe nobody else bothers to share their problems and knowledge publicly anymore?
There's nothing worst than legacy code without documentation. That means I have to spend more time understanding the legacy code than actually coding.4
Worst documentation I've ran into so far are the ones that end up providing me with more questions than answers.
It’s a huge nightmare to develop a React front-end when:
- you have to adapt Bootstrap 3/jQuery based components to React
- the “back-end” is a sparse collection of micro services with cryptic URLs and finding the correct name means searching on a laggy WSO2 API manager
- the documentation of said micro services can be outdated and that means wasting a lot of time trying requests on cURL rather than in doing actual development and continuously breaking your concentration
- sometimes the micro services just become unavailable altogether
- the back-end shuts down at
6PM everyday, usually when after I finally achieved a flow and I’m doing meaningful progress2
I just found out i've wasted month of my life by troubleshooting wrong component.
I was unable to access my application in cluster and suspected networking and port configuration. (custom corporate setup with chaotic documentation did not help to situation)
In the end, it was caused by Jenkins, which failed on building a new container but still showed "build: success" while it deployed May version of container without any changes applied.
Terraform + helm-chart ... I really ned a break. Who the fuck invented this shit.
The HCL format sucks
The documentation sucks
The dev tools suck
The debug output sucks
But I'm ok with that, I can manage.
But today really it shot the bird ... I can't have a fucking comma in a string? Because idk why the fuck helm-release tries to parse that fucking string and wants to make an array or whatever out of it? Why, you fucking abomination?
Something in the docs? Nah, who reads them anyway.
Because you know it's totally not strange that a string is analyse and oh wait there's a comma in it, the dev surely wants me to make an array out of it, because you know ...
So now I have to escape my fucking comma to prevent it to parse my fucking string. I just want to have a fucking string you hideous monstrosity ....1
i am feeling angry and frustrated. not sure if it's a person ,or codebase or this bloody job. i have been into the company for 8 months and i feel like someone taking a lot of load while not getting enough team support to do it or any appreciation if i do it right.
i am not a senior by designation, but i do think my manager and my seniors have got their work easy when they see my work . like for eg, if on first release, they told me that i have to update unit tests and documentation, then on every subsequent release i did them by default and mentioning that with a small tick .
but they sure as hell don't make my work easy for me. their codebase is shitty and they don't give me KT, rather expect me to read everything on my own, understand on my own and then do everything on my own, then raise a pr , then merge that pr (once reviewed) , then create a release, then update the docs and finally publish the release and send the notification to the team
well fine, as a beginner dev, i think that's a good exercise, but if not in the coding step, their intervention would be needed in other steps like reviewing merging and releasing. but for those steps they again cause unnecessary delay. my senior is so shitty guy, he will just reply to any of my message after 2-3 hours
and his pr review process is also frustrating. he will keep me on call while reviewing each and every file of my pr and then suggest changes. that's good i guess, but why tf do you need to suggest something every fucking time? if i am doing such a shitty coding that you want me to redo some approach that i thought was correct , why don't you intervene beforehand? when i was messaging you for advice and when you ignored me for 3 hours? another eg : check my comment on root's rant https://devrant.com/rants/5845126/ (am talking about my tl there but he's also similar)
the tasks they give are also very frustrating. i am an android dev by profession, my previous company was a b2c edtech app that used kotlin, java11, a proper hierarchy and other latest Android advancements.
this company's main Android product is a java sdk that other android apps uses. the java code is verbose , repetitive and with a messed up architecture. for one api, the client is able to attach a listener to some service that is 4 layers down the hierarchy , while got other api, the client provides a listener which is kept as a weak reference while internal listeners come back with the values and update this weak reference . neither my team lead nor my seniors have been able to answer about logic for seperation among various files/classes/internal classes and unnecessary division of code makes me puke.
so by now you might have an idea of my situation: ugly codebase, unavailable/ignorant codeowners (my sr and TL) and tight deadlines.
but i haven't told you about the tasks, coz they get even more shittier
- in addition to adding features/ maintaining this horrible codebase , i would sometimes get task to fix queries by client . note that we have tons of customer representatives that would easily get those stupid queries resolced if they did their job correctly
- we also have hybrid and 3rd party sdks like react, flutter etc in total 7 hybrid sdks which uses this Android library as a dependency and have a wrapper written on its public facing apis in an equally horrible code style. that i have to maintain. i did not got much time/kt to learn these techs, but once my sr. half heartedly explained the code and now every thing about those awful sdls is my responsibility. thank god they don't give me the ios and web SDK too
- the worst is the shitty user side docs. I don't know what shit is going there, but we got like 4 people in the docs team and they are supposed to maintain the documentation of sdk, client side. however they have rasied 20 tickets about 20 pages for me to add more stuff there. like what are you guys supposed to do? we create the changelog, release notes , comments in pr , comments in codebase , test cases, test scenarios, fucking working sample apps and their code bases... then why tf are we supposed to do the documentation on an html based website too?? can't you just have a basic knowledge of running the sample, reading the docs and understand what is going around? do i need to be a master of english too in addition to being a frustrated coder?
Behold! This is the first time in my career when Jest and unit testing in general actually helped me 😂
Spent two days moving from a fucking slow piece of crap called Gatsby to Vite, trying to comprehend the difference between TS aliases, Babel aliases and Linaria aliases. Found an answer inside a totally unrelated issue explaining Jest stuff, good job on documentation, Linaria!
Vite is fast. Crazy fast. Forget about Webpack, Parcel and things alike — Vite doesn't even need to bundle JS.
Gatsby was slow to the point of my computer's audio glitching, I'm not even talking about the OS interface lags.
Vite is fast to the point that I don't actually need a new MacBook.1
is laravel app really enjoyable to write ?
i started as a laravel dev. the known story , all code in controllers etc. As i started to improve, fortunately i changed company, and worked with a symfony project. A symfony that looked like java. hundreds of classes, tests, yaml injections , objects for requests, for everything.
I thought that i missed the old laravel days, and i took an extra job on laravel again. I was soooo wrong.
It was not only that the code of the previous dev was inferior to what i am now used, it is that i have to be with an open documentation all the time. Even if the project is in the same version that i have used to earlier (an old one).
You have to check all the time the model settings, the migration, the magic tricks of model mass insert, the castings, the validation rules, why the tests are not finding some routes, why this, why that, how it is written this.
Excuse me, but i think the fun and easiness is far from what they say and what i thought it was. I start to change my mind and believe that inserting the request to a simple php object is more controllable than the gandalf tricks that laravel is doing, and you cannot know if it is worth your time to test it . And more importantly, you do not have to look at the cookbook, all the time@@@5
6 hours of manually testing a new library will save you 5 min of reading the documentation for sure!1
when you get a random DM from somebody on their first day on another team and they ask you about onboarding stuff
i'm not sure why me as i'm on another team and not even 2 months here
i guess i updated some documentation but there was no explanation for why me and at the end of a hard day of work im too done to bother asking why me1
Why is laravel so poorly documented? Take \Illuminate\Mail\Mailer::send() as example. The third parameter is a callback. Nothing more. No info in the docblock what that callback does, when it is called or what the signature looks like. You have to go into the code and hope to find it out without climbing through a dozen classes.
If they are so sparse with the information in the docblock, they can leave it away completely.
Optimizely/Episerver is such a fucking piece of shit I want to fucking kill everyone who made this god forsaken mound of rotting garbage. I don’t even know what the history of it is because the documentation is convoluted as shit and poorly written. Whenever I Google something about it, the top answers are fucking 10+ years old and have not a god damn thing to do with the original problem. But guess what, they still use the same fucking useless error messages as they did 10+ years ago. Fucking idiots. The community for it doesn’t help at all. It’s fucking impossible to learn anything about it. Even the experts in this don’t have any idea what they are doing. Fuck this shit. ANYTHING that’s related in any way to Microsoft, or even mentions Microsoft, can suck my cock. FUCKKKKKKKKK.1
Duck whoever thought using jruby was a good idea! fuck this codebase, outdated dependencies hell and fuck most of the ruby gems documentation
Sorry but this has to be one the dumbest decisions in software history
Guys, i am having a tough time in work. So, i am sharing the story and questions here-
Initially, i was doing well with new projects and other existing projects where implemented new features.
But recently, i am assigned to a old project created by clients and some senior developer worked on it .
Ps: I was also assigned to this project 8 months earlier but was reassigned to other projects.
Now, Our senior developer who worked on it resigned because of the messy project and a lot of pressure from boss.
my colleague also resigned because of this.
Due to this, all this pressure thrown upon me. I am working on it relentlessly but i am soo burned out that i am actually feeling sick and constantly having headache.
And main thing is that the project has so many errors which iam getting during testing and i have to fix all of the error.
And yes they have documentation but shitty unreadable documentation . My manager also rebuking me why i dont remember things said to me 8 months earlier. (That time i just joined the company)
I don't know what will happen to me if i cant tackle this project.
And what should i do in such cases as my mental health is deteriorating day by day.3
which is the best cloud provider for a complete beginner (user/dev) in terms of community support, employer preference and user-friendliness?
i know that understanding the tech and concepts behind it matters more than getting familiarized with a specific platform, but i'm looking to build a more diverse profile and have noticed many positions asking for AWS/Azure experience.
since i'll be starting from scratch, any provider with easy-to-follow documentation, online help and certifications that don't leave you broke (would have to pay myself, earn very less as a student from a third-world country, parents/current employer can't support) would work.9
Moengage is one of the worst analytics software I have ever worked with...
Integrating it into a react website is a pain in the ass, they don't have a npm package, you need to add a script tag to html file.
It also has a wierd bug that the service worker they mentioned in the documentation doesn't work when the debug logs are off.
Aaaargh. Now I have to make a service worker handler to import this service worker and see if it works...
There's a special place hell for people who put their entire documentation on using an NPM package in the fucking READ.ME file.
I shouldn't have to play whack a mole through one giant ass file to figure out how a specific function works. Or figure out how specific optional parameters need to be defined.3
At work I have to multitask on way too many projects and to make it worse there is a lot of red tape and I have to waste a lot of time surfing buggy documentation websites, switching VPNs and praying for CI/CD to work rather than writing code in the fucking editor and for me repetitive tasks and context switching are productivity killers since they prevent me to enter in a state of flow and I keep daydreaming or distracting myself.
Quick(qwik) question. Is Qwik any good? Am I right in thinking it's basically a framework with stateful and stateless components which are only updated as and when required? This is what I took from the documentation anyway. It has a flutter mentality which I think I dig.3
Is there up-to-date API documentation for devrant? I am stuck on the posting API calls, especially on what data is required.8
You know what sucks? Android having only 2 languages for their android app documentation why can't it at least support rust or typescript or other languages, im sick of all of this "fun" stuff
if you would choose the android documentation language what would you pick? ;o
my jetbrains ide is currently crying in a corner...13