Details
-
Skillsphp, sql, js, css, html
-
Website
-
Github
Joined devRant on 3/14/2017
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
-
Me: p
Windows Search: Paint
Me: pow
WS: PowerPoint
Me: powers
WS: Powershell
Me (typing too quickly to notice Powershell is already there): powershell
WS: ummm idk11 -
When the new guy on the team uses click bait titles on his PRs... that’s when you realise this guys going to go far.12
-
We often give access to a product owner from the customer on our Jira to keep up a good communication and everyone stays up to date as everything is on the board and not hidden in emails or paper notes on the desk of the guy that is on vacation.
So far, so good
Our customers really like this as they can comment on tickets and they are integrated in the workflow because they can push into the backlog and can review finished tasks.
It is just getting better for everyone so where is the rant?
One project is just a dump of shitty mixed content tickets. But how? They look really neat. There are tickets like "fixes from meeting 20th of may" which are initially well structured with approximately 4 subtle changes to the UI and some explanation and screenshots.
PM says: Good ticket. There you go ticket, into the customer review loop of doom.
20 comments and 13 status changes later. Point 43 from comment 17 is referenced in comment 20 to keep on hold as a third party needs to give feedback, point 7 is still not solved correctly as dev 2 was not aware that it was already discussed and changed in the ticket "Call from 25th of may" where in addition the resolution of points 5-12 were requested with an additional excel file to import.
By now we have the 8th of august and literally 17 of these kind of tickets.
I guess we need to improve the workflow and request a new product owner. But this far I just table flip everytime I get one of these tickets assigned.2 -
!rant
This was over a year ago now, but my first PR at my current job was +6,249/-1,545,334 loc. Here is how that happened... When I joined the company and saw the code I was supposed to work on I kind of freaked out. The project was set up in the most ass-backward way with some sort of bootstrap boilerplate sample app thing with its own build process inside a subfolder of the main angular project. The angular app used all the CSS, fonts, icons, etc. from the boilerplate app and referenced the assets directly. If you needed to make changes to the CSS, fonts, icons, etc you would need to cd into the boilerplate app directory, make the changes, run a Gulp build that compiled things there, then cd back to the main directory and run Grunt build (thats right, both grunt and gulp) that then built the angular app and referenced the compiled assets inside the boilerplate directory. One simple CSS change would take 2 minutes to test at minimum.
I told them I needed at least a week to overhaul the app before I felt like I could do any real work. Here were the horrors I found along the way.
- All compiled (unminified) assets (both CSS and JS) were committed to git, including vendor code such as jQuery and Bootstrap.
- All bower components were committed to git (ALL their source code, documentation, etc, not just the one dist/minified JS file we referenced).
- The Grunt build was set up by someone who had no idea what they were doing. Every SINGLE file or dependency that needed to be copied to the build folder was listed one by one in a HUGE config.json file instead of using pattern matching like `assets/images/*`.
- All the example code from the boilerplate and multiple jQuery spaghetti sample apps from the boilerplate were committed to git, as well as ALL the documentation too. There was literally a `git clone` of the boilerplate repo inside a folder in the app.
- There were two separate copies of Bootstrap 3 being compiled from source. One inside the boilerplate folder and one at the angular app level. They were both included on the page, so literally every single CSS rule was overridden by the second copy of bootstrap. Oh, and because bootstrap source was included and commited and built from source, the actual bootstrap source files had been edited by developers to change styles (instead of overriding them) so there was no replacing it with an OOTB minified version.
- It is an angular app but there were multiple jQuery libraries included and relied upon and used for actual in-app functionality behavior. And, beyond that, even though angular includes many native ways to do XHR requests (using $resource or $http), there were numerous places in the app where there were `XMLHttpRequest`s intermixed with angular code.
- There was no live reloading for local development, meaning if I wanted to make one CSS change I had to stop my server, run a build, start again (about 2 minutes total). They seemed to think this was fine.
- All this monstrosity was handled by a single massive Gruntfile that was over 2000loc. When all my hacking and slashing was done, I reduced this to ~140loc.
- There were developer's (I use that term loosely) *PERSONAL AWS ACCESS KEYS* hardcoded into the source code (remember, this is a web end app, so this was in every user's browser) in order to do file uploads. Of course when I checked in AWS, those keys had full admin access to absolutely everything in AWS.
- The entire unminified AWS Javascript SDK was included on the page and not used or referenced (~1.5mb)
- There was no error handling or reporting. An API error would just result in nothing happening on the front end, so the user would usually just click and click again, re-triggering the same error. There was also no error reporting software installed (NewRelic, Rollbar, etc) so we had no idea when our users encountered errors on the front end. The previous developers would literally guide users who were experiencing issues through opening their console in dev tools and have them screenshot the error and send it to them.
- I could go on and on...
This is why you hire a real front-end engineer to build your web app instead of the cheapest contractors you can find from Ukraine.19 -
Girl: "hey"
My Brain:
java.lang.NullPointerException:
at net.brain.functions.Talk.retrieveSpeech(Talk.java:2978)
at net.brain.functions.Talk.createFlirtyResponse(Talk.java:3132)
Me: null
*Girl walks away*20 -
"Right click has been disabled on this page"
Well, guess I'm out of options, if only I could just hit f12 and take the source image anyway, or wget the entire page :( guess I'm sol7 -
When people talk about traveling to the past, they worry about changing the present by doing small things, but pretty much no one in the present thinks that they can change the future by doing something small.11
-
So, someone submitted a 'bug' to Mozilla.
As some of you may know, in the next year, the new mass surveillance law in the Netherlands is going into effect.
Another fun fact is that the dutch security agencies/government have their own CA (Certificate Authority) for SSL/TLS certificates.
The new law says that the AIVD (dutch NSA/GCHQ equivilant) is allowed to hack into systems through obtained certificates and also that they're allowed to INTERCEPT TRAFFIC THROUGH OBTAINED PRIVATE SSL/TLS KEYS.
So someone actually had the fucking balls to submit a fucking issue to Mozilla saying that the Dutch State certs shouldn't be accepted anymore when the new mass surveillance law gets into place.
This person deservers a fucking medal if you ask me.68 -
Just called Asus for a problem with my router, went to send them my systemlog.txt for analysis
"Oh we don't have an email you can send that to"
Me: "(me calling bullshit) let me talk to the tech team.."
*Get transferred*
"Hello this is the supervisor"
Me: "fml"
"Ya we don't have an email you can send that to, but we can use a different departments verification services to get a file from you, has to be a picture though"
Me: "What? I got a .txt file here, I just want to get it to you, does it really have to be a picture?"
"Has to be a picture or a PDF, we can't take txt files"
Me: "fkin.. srsly? Fine"
I can't believe Asus's system srsly. I think it's for virus protection, but viruses can be embedded in both picture formats and PDF, but not in txt. So wtf is going on lol15 -
Boss: “Our YouTube channel doesn’t look at all like our website.”
Me: “I’ve made it look as close to our branding as YouTube allows for with its limited editing controls.”
Boss: “This is unacceptable. I expected more from you.”
Me: “I cannot accept the blame for this. YouTube is setting the design parameters for all channels and I can only do so much.”
Boss: “You can call the YouTube, can’t you? Why didn’t you call them?”
Me: “.......and ask them....what?”
Boss: “You don’t ask! You tell! Our company has been around for 140 years. Our brand name carries that weight. They’ll change their design to what we need if you’re assertive enough.”
Me: “Ma’am, that’s just not how this works. That’s not how any of this works.”50 -
You think developing websites cross browsers is hard
Try developing emails.
tables, inline css, Outlook developers on drugs, Gmail developers trying to get high, and abandon most of the things you know about modern web standards24 -
Windows is now being developed with git. I cant believe that.
This is the BIGGEST IRONY EVER!
Please tell me its a joke!
https://techcrunch.com/2017/05/...10 -
Everytime I see a wix ad before a YouTube video I get slightly more aggressive than I already am.20
-
An SEO expert walks into a bar, bars, pub, tavern, public house, Irish pub, drinks, beer, alcohol.1