Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "linter"
-
I recently joined the dark side - an agile consulting company (why and how is a long story). The first client I was assigned to was an international bank. The client wanted a web portal, that was at its core, just a massive web form for their users to perform data entry.
My company pitched and won the project even though they didn't have a single developer on their bench. The entire project team (including myself) was fast tracked through interviews and hired very rapidly so that they could staff the project (a fact I found out months later).
Although I had ~8 years of systems programming experience, my entire web development experience amounted to 12 weeks (a part time web dev course) just before I got hired.
I introduce to you, my team ...
Scrum Master. 12 years experience on paper.
Rote memorised the agile manifesto and scrum textbooks. He constantly went “We should do X instead of (practical thing) Y, because X is the agile way.” Easily pressured by the client to include ridiculous (real time chat in a form filling webpage), and sometimes near impossible features (undo at the keystroke level). He would just nag at the devs until someone mumbled ‘yes' just so that he would stfu and go away.
UX Designer. 3 years experience on paper ... as business analyst.
Zero professional experience in UX. Can’t use design tools like AI / photoshop. All he has is 10 weeks of UX bootcamp and a massive chip on his shoulder. The client wanted a web form, he designed a monstrosity that included several custom components that just HAD to be put in, because UX. When we asked for clarification the reply was a usually condescending “you guys don’t understand UX, just do <insert unhandled edge case>, this is intended."
Developer - PHD in his first job.
Invents programming puzzles to solve where there are none. The user story asked for a upload file button. He implemented a queue system that made use of custom metadata to detect file extensions, file size, and other attributes, so that he could determine which file to synchronously upload first.
Developer - Bootlicker. 5 years experience on paper.
He tried to ingratiate himself with the management from day 1. He also writes code I would fire interns and fail students for. His very first PR corrupted the database. The most recent one didn’t even compile.
Developer - Millennial fratboy with a business degree. 8 years experience on paper.
His entire knowledge of programming amounted to a single data structures class he took on Coursera. Claims that’s all he needs. His PRs was a single 4000+ line files, of which 3500+ failed the linter, had numerous bugs / console warnings / compile warnings, and implemented 60% of functionality requested in the user story. Also forget about getting his attention whenever one of the pretty secretaries walked by. He would leap out of his seat and waltz off to flirt.
Developer - Brooding loner. 6 years experience on paper.
His code works. It runs, in exponential time. Simply ignores you when you attempt to ask.
Developer - Agile fullstack developer extraordinaire. 8 years experience on paper.
Insists on doing the absolute minimum required in the user story, because more would be a waste. Does not believe in thinking ahead for edge conditions because it isn’t in the story. Every single PR is a hack around existing code. Sometimes he hacks a hack that was initially hacked by him. No one understands the components he maintains.
Developer - Team lead. 10 years of programming experience on paper.
Writes spaghetti code with if/else blocks nested 6 levels deep. When asked "how does this work ?”, the answer “I don’t know the details, but hey it works!”. Assigned as the team lead as he had the most experience on paper. Tries organise technical discussions during which he speaks absolute gibberish that either make no sense, or are complete misunderstandings of how our system actually works.
The last 2 guys are actually highly regarded by my company and are several pay grades above me. The rest were hired because my company was desperate to staff the project.
There are a 3 more guys I didn’t mention. The 4 of us literally carried the project. The codebase is ugly as hell because the others merge in each others crap. We have no unit tests, and It’s near impossible to start because of the quality of the code. But this junk works, and was deployed to production. Today is it actually hailed as a success story.
All these 3 guys have quit. 2 of them quit without a job. 1 found a new and better gig.
I’m still here because I need the money. There’s a tsunami of trash code waiting to fail in production, and I’m the only one left holding the fort.
Why am I surrounded by morons?
Why are these retards paid more than me?
Why are they so proud when all they produce is trash?
How on earth are they still hired?
And yeah, FML.8 -
There is this guy at work we call 'the human linter'
Despite his mad clean codes skills: light theme
Dafuq dude :(13 -
The moment your code is so good that there is no lint error,
intentionally modify the code to have some warning to check if linter is working.
lol3 -
The overhead on my JS projects is killing me. Today, I went to implement a simple feature on a project I haven't touched in a few weeks. I wasted 80% of my time on mindless setup crap.
- "Ooh, a simple new feature to implement. Let's get crackin'!"
- update 1st party lib
- ....hmm, better update node modules
- and Typescript typings while I'm at it
- "ugh yeah," revert one node module to outdated version because of that one weird proxy bug
- remove dead tsd references
- fix TS "errors" generated by new typings
- fix bug in 1st party lib
- clean up some files because the linter is nagging me
- pee
- change 6 lines of code <-- the work
- commit!3 -
Github Inc. (Feel good inc. parody)
=========================
Ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha.
Github.
Fetch it, fetch it, fetch it, Github.
Fetch it, fetch it, fetch it, Github.
Fetch it, fetch it, fetch it, Github.
Fetch it, fetch it, fetch it, Github.
Fetch it, fetch it, fetch it, Github.
Fetch it, fetch it, fetch it, Github.
(change) Fetch it (change), Fetch it (change), Fetch it (change), Github
(change) fetch it (change), fetch it (change), fetch it (change), Github
Repos breaking down on pull request
Juniors have to go cause they don't know wack
So while you filling the commits and showing branch trees
You won't get paid cause it's all damn free
You set a new linter and a new phenomenal style
Hoping the new code will make you smile
But all you wanna have is a nice long sleep.
But your screams they'll keep you awake cause you don't get no sleep no.
git-blame, git-blame on this line
What the f*ck is wrong with that
Take it all and recompile
It is taking too lonnng
This code is better. This code is free
Let's clone this repo you and me.
git-blame, git-blame on this line
Is everybody in?
Laughing at the class past, fast CRUD
Testing them up for test cracks.
Star the repos at the start
It's my portfolio falling apart.
Shit, I'm forking in the code of this here.
Compile, breaking up this shit this y*er.
Watch me as I navigate.
Ha-ha-ha-ha-ha-ha.
Yo, this repo is Ghost Town
It's pulled down
With no clowns
You're in the sh*t
Gon' bite the dust
Can't nag with us
With no push
You kill the git
So don't stop, git it, git it, git it
Until you're the maintainers
And watch me criticize you now
Ha-ha-ha-ha-ha.
Break it, break it, break it, Github.
Break it, break it, break it, Github.
Break it, break it, break it, Github.
Break it, break it, break it, Github.
git-blame, git-blame on this line
What the f*ck is wrong with that
Take it all and recompile
It is taking too lonnng
This code is better. This code is free
Let's clone this repo you and me.
git-blame, git-blame on this line
Is everybody in?
Don't stop, shit it, git it.
See how your team updates it
Steady, watch me navigate
Aha-ha-ha-ha-ha.
Don't stop, shit it, git it.
Peep at updates and reconvert it
Steady, watch me git reset now
Aha-ha-ha-ha-ha.
Github.
Push it, push it, push it, Github.
Push it, push it, push it, Github.
Push it, push it, push it, Github.
Push it, push it, push it, Github.2 -
How can you defend your ugly unstructured mess of a PR, when every spit-droplet infused spray of words from your mouth is full of syntax errors?
How can you call yourself a developer without being aware of basic logic? I ain't got no tolerance for double negations, not not true is just true, you doltish twat.
WHEN YOU TALK THERE IS A CLOUD OF RED SQUIGGLY LINES IN THE AIR FLOATING AROUND YOUR HEAD.
I mean what the fuck is up with eggcetera? Why are you just swapping out letters? What has the little ligature t in & ever done to you? Do I have to fucking replace & with 🥚 so your word diarrhea makes sense again?
NO. JUST PLEASE... STOP TALKING. YOU'RE RAPING LANGUAGE, AND IT WAS ALREADY BEATEN DEAD.
Unlike me, you have a degree in computer science... but how, how the fuck did you pass? How did neither your tongue nor code get stuck in a linter?
AND YOUR RESPONSE IS STILL: "YOU DON'T NEED TO LEARN WHEN YOU'RE FINISHED WITH SCHOOL" ... "WHAT DOES IT MATTER, IT WORKS, RIGHT?"
NO, IT'S NOT RIGHT.
You're lucky I love refactoring.
I'll start with a medical grade steel scalpel and a long sharp hook. Maybe I can clean up this brain a little. See if the tests turn green if I cut some of this gray matter away... plenty of unreachable statements, so many unnecessary loops...
Might have to start from scratch.8 -
Completed Angular 2 course on codeschool, really liked improvements and simplicity of Angular over Angularjs. Decided to do quick start guide in official website. Oh my f**king god... I need to setup webpack, typescript linter, typings, polyfills etc angular2-cli is no better, crawling with errors... why... why can't one just start a project and work instead spending loads of timing configuring all of that... AND WHY WE CANT HAVE PROPER SUPPORT FOR LATEST FEATURES...
I don't even know what I am ranting about... I just wish to spend more time creating things than configuring for ages development environment.7 -
So after a llllllloooooonnnnnnngggggg struggle with the team i've been working with, today is the day that my group move to a different org and start working with a different team.
This is a huge step in the right direction for us and we are so happy. This new team is much bigger, but has been around for a lot longer and has proper processes in place and works a lot smoother. Never going to be perfect, but still going to be much more workable and we are so ...... thats an interesting linter file, hhhmmm they have disabled all the checks for the stuff that will cause crashes, like force unwrapping ... but they've enabled the rule to make sure our imports are sorted alphabetically
... nope, cant do it, no sign of intelligent life in this company at all. linkedin here I come.7 -
Java script is like an angry girlfriend who won't tell you what is wrong.
This shit happened today.
Me: somearray.includes[stuff];
JS: I'm alright everything is fine.
Me: no it's not, Clearly the feature is not working.
JS:* silence*
Me: Fine be that way.. * spends lot of time debugging finally finds the issue*...oh shit.
Me: somearray.includes(stuff);
JS: I SAID NO TRAILING SPACE IN END OF THE LINE YOU STUPID PIECE OF SHIT NO TRAILING FUCKING SPACES AAAAHHHH!!!7 -
Until today, I haven’t worked on a react app or front end project in about 5 months.
Hoooo boy. What a fucking rollercoaster ride. One minute you’re doing some slick shit you learned how to do from working on backend projects, the next you’re screaming at your linter and pissing on your keyboard.
2/5 stars do not recommend.
I’m out.
*ascends into the cloud*8 -
So I need to "fix" a false-positive security warning (mass-assignment of a foreign key). Do I "fix" it by...
A) Setting it manually and double-saving the object?
B) Rewriting the mass-assignment so the linter doesn't realize what I'm doing?
Both options suck.
But security is going to complain if I don't do it.
Guess what?
I'm not doing it.
SMD you ducks.10 -
Fuck uninspired jr devs that are simply collecting a pay check.
I have been handed a project that a jr dev was allowed to wallow on for over two fucking years. This lazy mother fucker managed to create 5 functions, a whole fucking mess of bullshit that I now have to straighten out on top of the 8 other things that I have to deliver on in the next month.
They never followed requirements. Not-a-one. The API is fully broken. The DB schema is BEYOND fucked. There's ZERO validation/sanitation on I/O. The deployments only work half the fucking time. Their code is so spaghetti I'm getting triggered from when I worked at Olive Garden with Eminem. But hey, at least they were able to demo it to the client to say "it works".
I don't condone violence, but every time I find malformed if statements, linter exceptions, broken deploy configurations in this project -- I just want to kick them in their stupid fucking face.
Wherever you ended up you piece of shit, I hope your dreams of becoming a rich asshole only bring you unending despair. I believe you can make it though, because you're already halfway there.5 -
-GDPR
-News letter
-Ads blocker blocker
-Ads popup insite
-Ads popin in video
-Ads popin podcast
-Ads in mail
-Ads in software
-Ads in any android application
-Ads in windows
-Ads in ads
-Auto scrolling
-Slideshow
-Scroll position reset on back button
-Aria-label aria-labelledby aria-role aria-aria of game of thrones
-Order in dom for a11y different of the display order -Button :hover, :focus-visible, :focus-within :fuck-this
- SVG abandoned ware
- I make you a illustrators X version that not work with yours, i use figma. I use affinity, i use akira. I use photoshop, i use word. I use powerpoint, i use publisher, i use paint, i use all Asss (application as a service) on the web and to see what i make you need to pay you an account
-We all make frontend backend... No linter or something... Why we have always 848274 change in git ....
We not host anymore we use 62616 different cloud services to try all the fucking company everywhere
-Make a Drupal CMS to a client that's are to idiots to use it and call you each time they have something to modify
And goes on
Web tooday is fucking crap shit
People realize that you cannot make money anymore with informative website. Then everybody try to squish people at the last drop... Because of selfishness.3 -
take adderall and stay up coding all night extremely effectively, but then u keep going and by the end of it you're just optimizing your vim plugins and installing a new linter
-
I've started programming when I was 12. Right now I'm 25. I can clearly say that I'm passionate, I've touched I think almost every "type" of programming ever. From game development, through IoT and finished at eCommerce. I never stop learning.
My workmates are pissing me off. For code review sometimes I'm waiting even 3 days when I've changed like 5-6 files. They don't want to introduce "new" technologies (by new I mean who are existing at least 2-3 years, got stable community). They don't want to refactor some core of the application because it's working - they don't care about it as they can later say "legacy system so this basic feature took me a week".
Code quality means for them "use shorthand syntax, this code is ugly" - the basic shit which can do any linter
When I'm doing code review, I'm checking out to this branch, test it, check if the solution is scalable. Then I make my comments. I just hear "stop bitching about it just approve".
Thank God I've made through interview and I'm going to switch job in next week.7 -
Installed SonarQube and Snyk on the CI/CD of a 2.5 year old project that only had a linter enabled previously.
Practically zero problems found. One minor problem (same code in different branches), a few false positives, and a few possible problems in dependencies that I have no control over.
Now wondering:
Am I really that good or are those tools just shit?10 -
me: import express from 'express';
my IDE: quick fix: remove import express from 'express'; ('express' is declared but its value is never read.)
me: // you don't say, as I only just started typing!7 -
Started a new job and our tech lead doesn't know how to use GIT in a team environment, has only ever used it while working by himself on one person projects. Kinda worried...2
-
You have a JavaScript application. You have to keep up with stupid devs that don't know TypeScript because you don't have the time to let them study it and they get demotivated when they can't do stuff so fine, you keep it JS. You use JSDoc to write the documentation. You miss using TypeScript so you start doing some @typedef's. Oh your linter gets it and starts behaving as a substitute of TypeScript. You get excited and write more and more @typedef's! ... until they get so complicated that you start documenting *that*...3
-
A (work-)project i spent a year on will finally be released soon. That's the perfect opportunity to vent out all the rage i built up during dealing with what is the javascript version of a zodiac letter.
Everything went wrong with the beginning. 3 people were assigned to rewrite an old flash-application. Me, A and B. B suggested a javascript framework, even though me and A never worked with more than jquery. In the end we chose react/redux with rest on the server, a classic.
After some time i got the hang of time, around that time B left and a new guy, C, was hired soon after that. He didn't know about react/redux either. The perfect start off to a burning pile of smelly code.
Today this burning pile turned into a wasteland of code quality, a house of cards with a storm approaching, a rocket with leaks ready to launch, you get the idea.
We got 2 dozen files with 200-500 loc, each in the same directory and each with the same 2 word prefix which makes finding the right one a nightmare on its on. We have an i18n-library used only for ~10 textfields, copy-pasted code you never know if it's used or not, fetch-calls with no error-handling, and many other code smells that turn this fire into a garbage fire. An eternal fire. 3 months ago i reduced the linter-warnings on this project to 1, now i can't keep count anymore.
We use the reactabular-module which gives us headaches because IT DOESN'T DO WHAT IT'S SUPPOSED TO DO AND WE CANT USE IT WELL EITHER. All because the client cant be bothered to have the table header scroll along with the body. We have methods which do two things because passing another callback somehow crashed in the browser. And the only thing about indentation is that it exists. Copy pasting from websites, other files and indentation wars give the files the unique look that make you wonder if some of the devs hides his whitespace code in the files.
All of this is the result of missing time, results over quality and the worst approach of all, used by A: if A wants an ui-component similar to an existing one, he copies the original and edits he copy until it does what he wants. A knows about classes, modules, components, etc. Still, he can't bring himself to spend his time on creating superclasses... his approach gives results much faster
Things got worse when A tried redux, luckily A prefers the components local state. WHICH IS ANOTHER PROBLEM. He doesn't understand redux and loads all of the data directly from the server and puts it into the local state. The point of redux is that you don't have to do this. But there are only 1 or 2 examples of how this practice hurt us yet, so i'm gonna have to let this slide. IF HE AT LEAST WOULD UPDATE THE DATA PROPERLY. Changes are just sent to the server and then all of the data is re-fetched. I programmed the rest-endpoints to return the updated objects for a very reason. But no, fuck me.
I've heard A decided (A is the teamleader) to use less redux on the next project and use a dedicated rest-endpoints for every little comoutation you COULD DO WITH REDUX INSTEAD. My will is broken and just don't want to work with this anymore.
There are still various subpages that cant f5 because the components cant handle an empty redux state in the beginning, but to be honest i don't care anymore. Lets hope the client will never find out, along with the "on error nothing happens"-bugs. The product should've been shipped last week, but thanks to mandatory bugfixes the release was postponed to next week. Then the next project starts...
Please give me some tips to keep up code quality over time, i cant take this once more.
I'm also aware that i could've done more, talking A and C about code style, prettifying the code, etc. Etc. But i was busy putting out my out fires, i couldn't kill much of the other fires which in the end became a burning building (a perfect metaphor for this software)4 -
I love linters and all. They’re great for maintaining good practice. But sometimes they’re a little too aggressive, and when the rules are being imported from elsewhere, I am not sure how to temporarily disable them.
This is especially frustrating when the linter decides it will break your shit instantly, so I found it easier to just call a method and remove it when the functionality is built.
Right now there’s at least 4 “this.stopBitchingAbout([all, the, things])” in my code.11 -
Code monkey see bad code.
Code monkey don’t say anything.
Nobody ask code monkey.
Linter see bad code too.
Nobody pay attention to linter.
Code monkey get more bananas on Thursday.
Code monkey grateful for bananas.
Maybe one day, code monkey make banana tree.1 -
const abc: string = 'Hi';
Can we take a moment to appreciate how retarded it is that TSlint throws a warning here that the string type is inferred and unnecessary.
I want to put the type there because it looks more readable. Code looks better if every variable has a type, irrespective of whether it's a constant. I know the fucking type is inferred you braggart linter bitch. What the fuck does it expect? A fucking award because it inferred that a string constant is of the fucking type string? How the ever loving fuck does that warrant a squiggly ass yellow warning line, reminiscent of that smartass 10 year old in class who has to yell out every answer when the teacher never asked a question.5 -
"Hey guys, we should start using ESLint. It's a popular linter. There's 13,000+ styling inconsistencies it could streamline using `--fix`"
"Yeah... But these errors, they're not really errors, right? So, we don't need to fix them."
...
1. I never said they were errors. Do you know how a linter works?
2. Sure, I guess being consistent and familiar are overrated qualities of a codebase. Carry on!4 -
Why the heck would you allow (or need) nested block comments? Imo this is a major design flaw in the kotlin linter.
I always use /*... //*/ so I can remove the comment starter w/o having to remove the comment end, but kotlin just starts a second, nested comment there.
Java, C, Cpp, C#, JS,... Not one of these uses nested block comments. I think jetbrains was just lazy?
I mean, I know why such stuff happens. I also developed DSLs in MPS, but there sure are ways to go around such things..7 -
Around 6 years ago I started at this company. I was really excited, I read all their docs then I started coding. At every code review, I noticed something was a little off. I seemed to get lots of weird nitpicking about code styling. It was strange, I was using a linter, I read their rules but basically every review was filled with random comments. About 3 months in I noticed, "oh! there aren't actually any rules, people are debating them in my code reviews!" A few more reviews went by and then I commented, "ya I'm not doing any of this, code review isn't a place to have philosophical debates." All hell broke loose! I got a few pissed off developers, and I said, listen I don't care what the rules are, you just need to clearly fucking articulate them and if you want to introduce one, I don't care about that either just don't do it in the middle of my review. I pissed off 1 dev real bad. Me and this dev were working together, the QA person on the team stood up and said "hey! you know what I love about your code reviews?!" The other dev and myself looked at each other kind of nervously, "I love that you're both right, these are all problems!"... 1 year later (and until now) me and the other dev are still friends. Leave it to QA to properly identify the bug.
-
Here: this is BDD, a Linter, and Git. CI your shit to staging before you CI to production. Never deploy on a Friday.
-
>makes a bug report about the JS linter in Eclipse Che not working
> makes it a P2 bug (moderate severity)
> confirms in their current implementation it doesnt work
> escalates to P1 (high severity)
wow for once Eclipse is actually making their shit better -
CAN NODEJS KINDLY GO FUCK ITSELF?
well maybe not node itself, but those node js so-called "professional node developers"
WHO THE FUCK thought it was a good idea to pass about EVERY SINGLE ARGUMENT as a global variable so absolutely no code insights are available, eslint with THEIR eslintrc shows ABOUT ONE MILLION DIFFERENT LINTER WARNING and on top they commited the node_modules folder
-_-
I'm out.4 -
I recently have been delegated the responsibility of managing a 4 people team by planning the sprints, scheduling tasks, and in general "take charge" (as said by the boss).
What bothers me is there is this "developer" with a heavily toxic attitude, who feels he is above all laws and knows everything just because he joined some months ago all of us.
He is basically a human linter. When he code reviews, you can get away with any major mistake if your linting and indentation (and all that shit) is according to "his standards".
A new guy recently joined the team and was given an overwhelming task by the boss just to test whether he belongs here. (Again, wrong, in my opinion). He didn't know any of the technologies he needs to work on to complete that task but he still learnt them and got a working product. Albeit not according to our God's "standards".
Cut to the chase, the asshole dev is now mocking him in PR comments and demeaning him in every discussion. As a "team lead", what should I do? If I let it go, it'll make the environment toxic and I don't want him to get away with it. If I do take any action, I don't want to be seen as as pussy who can't take such minor insults. Please advise.
PS. The asshole developer once wrote a "friend request accept" API endpoint in such a way that when any single person accepts a request, that'll cause all pending requests (from any person to any person) get accepted. Fucked up the DB queries basically. This is just to give a perspective on what I'm dealing with here.4 -
Here are some facts I found out recently when my linter threw some errors. Just wanted to share with the community. Add anything in the commnets that you wanna share that others don't know.10
-
So a junior at Twitter created a linter that detects harmful language, then twitter decides to migrate all of their code and documentation to avoid “dangerous language”. The twitter handle of said junior - “negroprogrammer”. The only words twitter should start including in their business is cognitive dissonance.
Ok this should be interesting but this is devRant after all and I couldn’t just not mention this. Cancel me.6 -
Dear X. There's an obvious error with the way you're merging arrays; instead of conditionally adding items to the existing array, each condition overrides any items added by the previous conditions, which is clearly not the desired behaviour. I'd love to add a test to illustrate this behaviour, but you're not using them. I'd also love to create a simple pull request, but for some fucking reason you're using the worst possible version control system so I can't do that. I've submitted a support ticket along with all the code needed to fix this silly mistake, but apparently you either don't understand 2 lines of your own fucking code, or you didn't even bother looking at it before posting a shitty generic reply about "needing more information". There is no such thing as more information. There are two IFs, and they are supposed to add items to the array, not override any previous items. It's written in your own comments, and it's pretty obvious from the way the rest of the function merges those items.
Also, use a fucking linter, your code is a mess.7 -
Fuck it, fucking fuck it.
Consulting company, been here for 2 years, had some decent projects (surprise, only those that me and my coworker started from scratch), but OMG the fuck ton amount of bizarre code I've seen is just mindblowing.
Everytime I start on a project, spend days improductive because the stack won't fucking work.
We use some frameworks, but the creators of the projects said fuck it, why would we follow the framework guidelines if I can create a supersmart way that nobody fucking understands way of doing things. I mean, It will look smarter and so nobody else can touch this shitty code.
I hate that the most praised developer is the guy that created most of this shit, and his nº 1 skill is moving Jira tickets to the correct state, tracking time (PM's love this, I hate it) and blocking my fucking merge requests because I left an extra blank line, dangling comma or whatever the fuck else, he's like a human linter.
Dude, the code is a piece of shit, my dangling comma is not going to be the problem! And if you really care that much, setup a linter or something.
Fuck this, I'm quitting this week.3 -
I started applying for jobs. As I have over 150 repos on GitHub and 10 years of relevant work experience, the company obviously had trouble validating if I had some basic coding skills. That's why they decided to send me a coding "homework" task to build an app in React Native.
Basically, the task was building an app with 2 screens and one bonus where they indicated "doesn't need a UI". I spent half a day spinning up their project, installing XCode, their specific versions of Ruby, and around half a day building the thing.
Obviously, I wanted to demonstrate my technical skills, so I added a few tests, proper typing, comments, and so on. The project was in a good state, and on the "bonus" screen I quickly added a few components. Since I have a lot of things going on, I capped the amount of time to one day of work. I felt it was good enough to demonstrate I can build something like this.
A few days later, I received a response from the recruiter telling me they wouldn't move forward. She in depth explained that this was because of a missing key property. I did indeed miss one key property on the "bonus" screen, in the part that was not even part of the core task. This was a list of very few static elements, and the entire list only got rerendered when changing routes. Basically in this case, there would not be any visible performance impact.
The recruiter explained in the email that I was missing the eye for detail they need, and that I should "educate" myself more about lists in React. I made one tiny silly mistake in a one-day project, that a linter would've taken out (if this project had one). I've contributed to React Native myself and worked with React for almost 7 years now? Yeah, it's a stupid thing, but what is the point of these types of tasks? I thought this was to demonstrate my skillset, not to be called out on.
Either way, my question here is this: at which point does it become appropriate to send an invoice for the time I wasted on this?6 -
Installing pluggings for my sublime text has made my editor more wonderful(linter, codeigniter snippets, color pickers, git integration ), if we have editors like that who need ide.
<3 -
wow now I have native linter tools telling me tabs are illegal when they're not
can these political people vamonos18 -
From long Using Visual Studio Code for Programming.
Why i love
supports Typescript
supports java
Lighter
plugins available like linter, git lense
Best for small web app projects.
And Favourite IDE, intellij Idea
Why ?
For writing java i use as
it can easily generate getter setters
constructor
importing
and build process.
best for java.
last but not the least
Nano
why ?
because most of the devops configuration, requires to be done via terminal only and i often use nano.
it is good for shell scripting,
editing configurations
that is all....2 -
I never liked YAML. But lately, I'm starting to dislike it more and more.
I mean, wtf is that?
- digest YAML input -- a valid YAML
- digest JSON input -- a valid YAML
A language that embeds another language.
Can it be any more confusing..?
Sure it can. the
```
script:
- echo "John said: hello there"
```
will fail YAML linter, because, even though I used quotes, yaml sees `echo "John said` as an object key
I think I'm yet to find more nonsense with YAML. And eventually, I'll grow to hate it.8 -
Dev: linters can help us by keeping us focused on important problems.
Linter:
124:5 ✖ Expected indentation of 2 spaces indentation
[...]
150:5 ✖ Expected indentation of 2 spaces indentation
151:5 ✖ Expected indentation of 2 spaces indentation
152:5 ✖ Expected indentation of 2 spaces indentation
153:5 ✖ Expected indentation of 2 spaces indentation
154:5 ✖ Expected indentation of 2 spaces indentation
155:5 ✖ Expected indentation of 2 spaces indentation
156:5 ✖ Expected indentation of 2 spaces indentation
157:5 ✖ Expected indentation of 2 spaces indentation
158:5 ✖ Expected indentation of 2 spaces indentation
159:5 ✖ Expected indentation of 2 spaces indentation
160:5 ✖ Expected indentation of 2 spaces indentation
161:5 ✖ Expected indentation of 2 spaces indentation
162:5 ✖ Expected indentation of 2 spaces indentation
163:5 ✖ Expected indentation of 2 spaces indentation
164:5 ✖ Expected indentation of 2 spaces indentation
165:5 ✖ Expected indentation of 2 spaces indentation
166:5 ✖ Expected indentation of 2 spaces indentation
167:5 ✖ Expected indentation of 2 spaces indentation
168:5 ✖ Expected indentation of 2 spaces indentation
169:5 ✖ Expected indentation of 2 spaces indentation
170:5 ✖ Expected indentation of 2 spaces indentation
171:5 ✖ Expected indentation of 2 spaces indentation
172:5 ✖ Expected indentation of 2 spaces indentation
174:5 ✖ Expected indentation of 2 spaces indentation
175:3 ✖ Expected indentation of 0 spaces indentation
50 problems (50 errors, 0 warnings)11 -
Sometimes I feel like I'm a dumb worthless retard, a pathetic excuse of an ape with no reason left to live this pathetic farce of a life.
But then I remember there are people who enforce "prefer-const" in their codebase, and there I realize that if those people are alive and well I must deserve something too, and thus I hold on.
I will outlive you. I will remove that dumb directive from your linter config and I will commit that to master. I care not what happens next.6 -
Devs who use the array map method for purposes other than generating a new array, and who use an empty return statement to satisfy the linter, should receive a slap in the face. A gentle one, but a slap nonetheless3
-
One trick on of the idiot seniors use to show that they have worked hard. Uglifying the formatting using the default editor lint in first commit.In the second commit they run the linter which changes most of the lines.This is while raising review for only a range of commits.
They should be removed from senior positions and thrown out of the company.1 -
Prettier formatter, AirBnB linter.
Prettier defaults to double quotes for strings. AirBnB loves it some single quotes. Would probably be able to change the configuration in order to maintain sanity *now*, but when I was a newbie dev, I was given a repo with AirBnB linting built in after being recommended Prettier.
It was not fun times.4 -
Runs linter
168 files changed
"Yeh not gonna commit that because other will think I worked on it and send questions my way, I rather live in peace"2 -
Love it when the maintainer of an open source project you contribute to runs a linter over the whole codebase and force pushes the changes to origin master so now all the Pull Requests in the queue have to be rewritten and have tons of merge conflicts to resolve. Awesome! 😠2
-
Ever come back from a small vacation and arrived to see that the rest of the team had butchered your baby and were trying to stitch it back together, but only succeeded in making it worse?
Feels just like that right now. Fucking hell. I gave them a linter, a prettier config file and pre-made shortcuts to run. Still looks like Dr. Frankenstein was drunk while stitching and overvolted the machine, so now the bloody monster is also on fire. This will be a fun week 🙃1 -
That moment after you have modified a lot of files so that the linter doesn't throw any errors... Only to realize you were missing the FUCKING BABEL CONFIGURATION FILE AND AFTER YOU ADD IT EVERYTHING WORKS JUST FUCKING FINE WITHOUT MODIFYING ALL THOSE EXTRA FILES!
FUUUUCK -
Microsoft has released Visual Studio 2019 version 16.6 with a new IntelliSense Linter to help C++ developers efficiently clean up code.
The tool IntelliSense checks code on the go, using squiggly lines to highlight problems and Lightbulb actions for suggested fixes.
The feature can be enabled in Visual Studio 2019 version 16.6 from the Preview Features within the Tools > Options menu.
Source : https://devblogs.microsoft.com/cppb...1 -
Dear Python linters, why can't any of you implement some actual linting features? Like, say, consistent use of single or double quotes? Or dict() vs {}? How about indenting nested function calls? Forcing list / set / dict literals as multiline? Trailing commas?
And while I'm at it, why can't you handle dependencies properly? Say, separating linter & linter plugins from the remaining dependencies in a way where I don't have to manually remove them from the requirements lockfile every time?3 -
Typescript is a PIECE OF SHIT that adds 3 problems for every 1 it solves! Messing with so much shit from its linter and builder just so some OOP fools can code JS like *TAB* *TAB* *TAB* again!12
-
Setting up ts linting is a pain in the ass..
Until you realize you could try to reload the window. So your settings actually pick up you know.. -
Not loving the implicit return statement within Scala. I like to avoid else statements to keep the level of nesting low and do early return yet Scala doesn't allow that.
(I am aware that I should flatMap that shit though in some cases I just want a simple if not foo then throw exception line. And continue with the next block until I return something.)
So you either have to create if-else-nesting beats or use pattern matching. The latter seems overly complicated for this use case (though it has its moments).
I know that I can make the return explicit yet the linter warns against that. It feels so verbose and I currently do not see any benefits and would argue that the code becomes both harder to read and maintain.3 -
> be me, working on small addition to enormous feature branch
> build system in flux due to reorganization started a month ago, not quite solid yet, but mostly works
> f_branch gets master merged into it sometime last week
> bossman makes "minor" change to build system and edits master to match
> doesn't merge changes into f_branch
> bossman goes on holiday for a week
> no permission to merge master changes into f_branch
> linter barfs
> npm barfs
> build server barfs
> mfw I can't even deploy to our testing environment4 -
Once upon a time I spent a week writing down a "Coding Conventions" document, setting up linters for JavaScript & CSS based on those rules and put the call to the linter in our gulp build task, only to figure out the next day it was commented out by some guy because "the build task was throwing errors" due to his shitty coding style...3
-
So typescript 4.5 beta is out .... holy moly what did those guys smoke? 🧐🤨🤪
They keep adding stuff on top, that nobody needs. But they don't fix the stuff that is broken (like emitting broken prefix-paths ...🤦)
Imho, they should focus on the overall development experience, make it easy an consistent to setup a proper multi-module project with linter, auto-formatter, folder structure, file naming.
And please fix this ugly #private fields - just ignore this mess of a spec and emit TS private fields as #private fields. That's the only logical way. Everything else is BS.8 -
I've been using go for two days and I'm already pissed at it. Don't get me wrong, I like the language itself, I love the simplicity, the tooling and frameworks are the problem. Like, why does everything have to be so hard?
Why do I have to spend around 4 hours in total just to configure a fucking linter?
Why does everything have to live inside the fucking GOPATH?
Why the fuck can't I put a src/ folder in my project so I don't mix code with config files, docker files, etc?
Why the hell does documentation for frameworks/libraries/tools suck so much? Looking at you Gin and Gorm.
Why can't gin-swagger just find out what routes I have?
I must be either dumb or chosen the wrong frameworks and libraries, but the "development experience" I'm having sucks. Nothing works first try and documentation is shit and vague.
I want to like the language, but I can't, at least not if it's always going to be shit like this. Does it get better? Am I just a noob? Or should I just jump ship and look for something else?4 -
Should linting and syntax highlighting be separate options in editors? It seems to me that anytime i just want a nice syntax highlighting extension in vscode i end up with a shitton of linter errors that i didn't ask for... I just wanted to see my keywords, dammit!7
-
When you have a linter that runs as a pre-commit task.
The number of times I've fixed errors thrown by linters during a commit and then run `git commit` straight after only to realize I'd forgotten to add the files I modified for the linter fix.2 -
I've not used linters on sublime text so far. And now struggling to find a good linter for sublime for writing React JS.
And I am not comfortable to move to atom or VSCode.
Can anyone suggest me some good linters?1 -
It's really painful to go through a codebase when the other guy doesn't comment anything. It's a new project, you have the opportunity to make it not a nightmare to work with, and yet you choose to not document shit. I've been documenting stuff as I go along at least. Feels like I should have some linter forcing comments on methods at least.
-
Does anyone know of a tool that will statically analize a C program and check if it's behaviour would be the same as a C++ program? Flagging things like implicit void* coercions, for example.
The use case would be if you find a C library and want to use it with C++, for example. Or are writing a library and want it to be usable in both C and C++.
If this doesn't exist,
does anyone want to help me make it? I was thinking we could modify an existing C linter to do this.26 -
So it's been a long semester and I was writing my final project earlier today. I wrote a for loop which removed objects from the list it was iterating through. And my linter let me. Why do I even use you, pylint? I could have saved hours of debugging if you gave me a message that I was doing a stupid thing5
-
Why include a linter if you're just going to ignore it!
I just "inherited" an angular app from a year ago for a project that was put on hold, and after opening it in VS Code practically every TS file went red. Almost every rule in the config was not followed. Might as well have just disabled the darn thing?
The original developer is MIA so I can't contact him and ask him why either.1 -
When someone sends me a poorly formatted and grammatically incorrect email, it triggers my internal linter so bad.
-
JavaScript still doesn't have proper types, but eslint insists that I should use let and const instead of var. Thanks for the hint, but when I care to code properly, I will use TypeScript, otherwise I don't care.
Wish the warnings in my editor would be more helpful with less noise by default, without taking time and effort to tune their settings.8 -
Python rant. Why does my 500 line Flask file look like one long oblong, & why am I adding comments that say “end of function” in *any* programming language when surely clear visual marking of this should be built in? Why did I spent 2 hours debugging SQLite3 dict factory function only to find the issue was a misaligned indented function block that my linter hadn’t picked up on because it appeared to be a logic error. Why do you make my missing tab spaces into logic errors Python? And why does everyone insist that curly braces are just as bad? Not in my world Python. Also, stop returning obscure objects unannounced like I’m supposed to know about it in advance, and stop making me run an entire file only to find I have another mystery type error because I expected x and got y. I hate you Python!!4
-
is it really too much to ask coworkers to use a mf code linter? how many times do i have to fix their awfully written code before they acknowledge how bad they are at their job and start using one?2
-
Python:
TypeError: unsupported operand type(s) for %: 'tuple' and 'dict'
Ugh there's a comma somewhere. I kinda appreciate how easy it is to make a tuple, but at the same time I don't. If there's no value after a comma with only one value behind it, could the linter at least mark it as a warning?2 -
When using python, almost every other linter/formatter shoves down pep8 down my throat.
I used autopep8, which has NO CONFIG FOR USING TABS. FFS. The only solution I could find is disabling indent reformatting. How is this a solution at all?
Then I found black. Black is a piece of shit. Let's move on.
Now, I use yapf+pylint. This is basically clang-fomat for python. I love it, it does exactly what I expect it to do.2 -
I'm working in a project that seems to be like a Multiplayer Tetris of Little Poo:
- figure out what the heck you have to code, because there is no debugging, the deploy to your devenv takes ages, the documentation does not exist or is unreadable, plus you are new and you are in a different timezone
- once you have your code, slowly pass the reviews of your remote team that will complain for every little extra line you've added for readability, slowly converting your code into a poo-like form, until it is completely shaped as shit
- repeat steps 1-2 until you pass the linter
- the carefully place your shit-shaped-code in the right place of the pile of shit
- wait for someone else to complain (like 'please rebase' 'new lint rule please fix' - oh, did I mention that? lint rules do not match between local, review and deploy?
- repeat from step 1 until you quit your job (which will happen in a few weeks) -
When I get one with constructive feedback. It's rated since I'm usually the one that tells people their code sucks.... After it causes a production issue.
Yes no one does a proper code review on my direct team.... Just the stuff a linter would tell you to fix.... -
I just commented a test so the PR passes and the feature reaches next release; I can't fix it (Damn react testing library tests)
but after that, the linter failed for the same PR, so I just fixed it and did a git push -f
I guess once you cross the line you cannot come back
feel my pain1