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 - "gtm"
-
Long rant, sorry.
I’m pretty upset, or let’s say: I want to kick asses and chew gum but I’m all out of gum(The duke TM).
Yesterday we had a discussion in the office about salary basically.
Context: The company has about 150 employees and earns a lot of money. I’m the lead dev for about 1.5 years since I joined.
So I talked to our CEO/HR about a raise since I was hired as a normal fullstack dev(title is lead dev now) but have to:
train my junior(PHP), frontend guy(react), our QA(Automation with cypress atm), our junior devop(gitlab, jenkins, docker) and even assist marketing with GTM and adword campaigns.
I’m a jack of all trades basically since I was a freelancer for big brands for a long time.
I’m fine with helping/training, I like it a lot but I still have to watch everything and be fast with my own stuff. If anything goes wrong, people call me.
That will change since I train them all(They will all be independent soon) but still, doing everything for the same pay feels wrong.
Bottom line: CEO told me it’s cool that they can use all my skills but I won’t get a raise.
The worst/strangest was: My coworkers heard about that(as always in an office) and were like: Everybody should get paid equally because we’re all a team. Uhm, ok?
I just contacted the head hunter which got me that job. I guess I’ll just see what the market has to offer.
It should never be about money but this was confusing. People telling me we should all be equal who are on their mobiles 3h a day and feel underpaid. Check yourself, really.
People who think their pure presence is enough.. Germany -.-25 -
When developing arm boards doing USB/HID stuff..
MAKE SURE YOUR USB CABLE IS NOT JUST FOR CHARGING
40+ hours of searching, debugging... and .. it was just.. cable.1 -
~ Stop procrastinating; the linux guide ~
# /etc/hosts
127.0.0.1 facebook.com
127.0.0.1 youtube.com
127.0.0.1 netflix.com
# 127.0.0.1 devrant.com7 -
Ffs people get the fuck out off that Gitlab. I've been there sooner than you, now can't event load login form.2
-
Fuck this I need to ventilate.
Thinking about job change because maintaining and extending 3 years old codebase (flask project) is FUCKIN exhausting. It was badly written since start by someone who obviously didn't know much about python. (Going by commit history.)
Examples:
- if var != None / if var == None
- if var is not None / if var is None (well..)
- Returning self-parsed obscure JSONs from dict variable
- Serializing dictionaries into database by str() (both sqlalchemy and mysql support JSON format) - THEY ARE ALMOST UNUSABLE OTHER WAY AROUND (luckily, python can deal even with that)
- celery tasks, the way they are called they BLOCK the whole flask (not bad in itself, but if connection breaks there are no errors, nothing it just hangs)
- obscure generator/yielding that contains return of flask's response in itself
- creating fifteen thousands of variables one by one where they would look so nicely as dict keys, and hey they are then both MANUALLY SERIALIZED into returning dict by "%s" (string formatting) [okey, some of them are objecst like datetime but MATE WTF]
- many, many more, PEP lint shall not pass
I would rather deal with fresh startup owners wanting me to program unicorns in one week then trying to extend and manage zombie-like projects.
Nothing personal against the firm I actually like the place.3 -
I'm in the middle of migrating data of an OB-Gyne EMR to our system. Doctor is male (whoa? how? awkward?) aaaand the language is spanish T_T
medico, codigo, cefaleas, dolor,
embarazo, and etc... ?2 -
There is a big chance some of you are gamers and so on.. but this, this sh!t should be shared.
Blizzard pulls Blitzchung from Hearthstone tournament over support for Hong Kong protests
https://reddit.com/r/news/...
Edit: words6 -
I made this bad decision to buy pretty pricey laptop with nVidia card. Lenovo Legion Y520.
So yeah, have you heard about optimus technology and how much one can hate nvidia?
> Debian is working, nice.
> Let's try nvidia-driver.
> 48hours later: WOoooooah glxgears at 120 fps!
> Installed some fonts. "Could not load gpu driver". HDMI port stops working. Unable to repair. Entering despair.
> Surviving on dual-booted windows.
halp3 -
Everytime I am developing an API (from scratch, not when extending an old one) I try to return 418 HTTP error code in places that aren't yet developed or mainly when something that shouldn't have happened did actually happened. (example: failed non-essential assert, yes python)
So it's always lighter on lungs seeing people running around with wtf.png faces when their browser says "I AM A TEAPOT".2 -
Flask people
so I was given this old flask project, around 3k lines written in py2, the code is simply old and not refactored. So, it's pile of shit. Migrations completely botched as the original author created reference to live data in models.
Very strict line formatting resulting in backslashed ternary conditions.
Even saw manually formatted json responses... _line by line_.
My job is to clean this mess and eventually do as much as possible to freshen the whole project.
Currently just refucktoring the code as it's the only easy thing to do out of everything that could be done (it's still slow process).
Any tricks and tips? currently considering to try upgrading it to py3 but it feels like throwing gunpowder into already burning house.3 -
So there is this project of my firm that is comepletly dependant on Facebook api, I've actually told it many times to managers at first but they've just waved their hands over it.
Now what didn't happen. Facebook data leak and the api being taking down ..juust a week before the project going public.
Our app is still not reviewed and not able to access the so vital api and there are actually many similar projects getting published (even Facebook Local greatly rivals to our app, actually killing it because they have native data... And we don't have any. )
I told them again. "Nah we will have this and this feature that makes it soo exceptionall."
And you are sitting here thinking if the salary you have asked for is still good enough to stay or to run away.
(Well, I am still getting some coding experience from this so that's why I stay, and oh yeah I have the backend repo only for myslef because except the frontend dev no managers knows what git is. This is how freedom feels. )2 -
> Client: Could you check for me where did they[code authors] put logic for this and that
> Sure!
> okey, api endpoint here, hmm
> oh sure here is the database access
> where tf is some logic....
> fml, am I blind, lets check frontend
> FUCK
> it's there
> it's on frontend
> and backend just puts it into database, no checks
> FU0!@#% )(#*%)H )F+#+!!@!
> *to client* We need to talk about future of this project. -
How do you approach generating "random" unique numbers/strings ? Exactly, when you have to be sure the generated stuff is unique overtime? Eg. as few collisions in future as possible.
Now I don't mean UUIDs but when there is a functionality that needs some length defined, symbol specific and definitely unique data, every time it does it's stuff.
TLDR STORY: Generating 8 digits long numbers so they are (deterministically - wink wink) unique is hard but Format Preserving Encryption saves the day. (for me)
FULL STORY:
I had to deal with both strings and codes today.
One was to generate shortlink word for url, luckily found a library that does exactly this. (Hashids)
BUT generating 8 digits long, somewhat random number was harder then I thought, found out on SO something like "sha256(seed) => bytes => ascii/numbers mangling" but that had a lot of collisions because of how the hash got mangled to actually output numbers and also to fit the length.
After some hours I stumbled upon Format Preserving encryption (pyffx) and man it did what I wanted and it had max 2 collisions in 100k values. Still the solution with this feels hacky af. (encrypting straddled unix timestamp with lots of decimals)6 -
idk why, but why focus so much on internal stuff that never will be public...this is also my favorite quote1
-
Friend asked me this:
"So if PHP is that bad, why there are still so many job offers for PHP devs?"10 -
Hey, javascript people, got a question.
Is there any way to disable sites binding the mousewheel (scrolling) event ? Like for example rebinding it to scroll down at the end of window load ? (tamper/greasemonkey)
I am getting furious with all these sites where they will block the whole site to make you agree cookies & gdpr shit.
Removing the foreground/blocking element is sometimes enough but often the remaining site can't be scrolled.
EDIT: Found out you can add links of script that does this to AdBlock:) For example movieinsider has it's "gdpr, cookies & shit" script at the top of head element. Add it and voilá.6 -
Just dropping some current experience here.
Content security policies are big mess in both chrome and firefox.
Chrome has some 4 years old "bug" where you can't add hash of JS file to 'style-src' policy to permit inline-styles THAT would be set by this script (jQuery actually).
Firefox is beautifully unhelpful, it just pops of error "blocked ..something..", not even saying what it was.
EDIT:
And I am missing a pair of some steel balls to ask about this on SO because there is this much of very similar questions, nonetheless -if I did read them right- every one of them is talking about enabling style attribute, and that's something different.
EDIT2: Chrome currently generates 138 errors "jquery-3.4.0.min.js:2 Refused to apply inline style..." , this ain't hitting production.10 -
Oxygen Not Included
Another game worth mentioning.
Already spent half the week on it, the learning curve is interesting, you will eventually fail many times but with every fail the next colony is going to achieve more and more.
It's kind of missing some nuclear reactor. (Hello Factorio :)3 -
GDPR:
My Pokemon Go account, wired to my gmail got banned. (My fault, I am programmer and lazy person, my inner nature is to automate things. )
So if I go by GDPR I can tell them to delete my account and register with same mail again?
In this example I'll obviously lose the progress but the account can be reused and with some services this could lead to more interesting outcomes.2 -
So I've been a developer at my current job for about 12 years. I am the most senior level developer at my job. Let me state that I am a backend developer although I did frontend development off and on as well for the first 5 years of my career. However I have done no major frontend development for around 7 years now.
Effectively our frontend developer of 6/7 years just left.
We had an existing project in the queue and my boss expected me to do frontend development for this project which I did just to help out, but I am not getting any extra pay for this and I absolutely hate doing it. The only thing I was paid for was I overtime for completing the project quicker. With that being said I feel like I should be paid substantially more since I am doing double work and since they are not paying for a frontend developer. I'm literally doing her job and doing a better job than she did mistake wise doing her job.
Additionally many things have changed over the past 6/7 years and they have it in their minds since I did it in the past it should be the same now which isn't the case. So there are things in my project queue right now for future projects that they think I know how to do and I don't. It isn't that I couldn't eventually figure it out. It is just that I have zero desire to learn it .I just absolutely hate styling websites.
I'm ok with doing minor frontend things for projects but not entire websites
I literally develop the backend off all the sites we build setup Google tag manger tags/triggers, Google analytics, search console, Google looker studio, dns, site updates, manage all out Linux servers, do seo for content and sites. I can't handle something else on my plate. I'm currently having to rewrite a ton of code as well due to upgrades for our sites.
How do I respectfully tell my boss I refuse to do frontend work going forward or pay me substantially more on another project and that he needs to hire someone else without damaging our relationship?
I like my boss and my coworkers as people a lot outside of work, but I feel like I'm being taken advantage of financially and I'm honestly tired of it. As a developer for 12 years I'm honestly ready to just go elsewhere. -
TIL meth is abbreviation for method and not anything else.
Thought it's very fancy name of some python built-in. Meh.1 -
Google Analytics has such shit documentations. They switched from some analytics.js to gtag.js, but didn't update everything in the docs, so I have to guess and find how to do things the new way. Also all the issues on StackOverflow are by marketing "specialists" who don't even understand JavaScript. And debugging any of this is near useless. You just send data into a magical data layer and hope Google does what you want. It's a fucking black-box and I've no idea why nothing works. FUCKING GOD DAMN PIECE OF SHIT, WOOOORK!
-
Looks like I am beginning my freelance journey.
Usefull Issue Tracker / Project Management tool?
If it's foss and written in python that would be great, I would probably try to extend it with extensions later on.3 -
!python/ORM
Someone got quality tutorial/blog about Sqlalchemy ?
Even tho I am dealing with py+flask+sqlalchemy last 3 years I am still able to get super confused about contexts/syntaxes.
(Model.query vs session.query(Model), etc.)
😪3 -
Nix vs. Win
Dual boot vs. virtualization (VirtBox vs Xen)
(TLDR at the end)
- gaming laptop ("when you student but gamer")
- "Nix nono like gaming laptops"
- currently dual boot Win10/Debian
- Debian almost breaking apart
- only xfce because nVidia
- intel-virtual-output^2
- Atheros drivers sometimes freeze whole sys
- MiXeD SoUrCeS
- **Stretch Buster Kali enters the chat**
As you can see after 2 years I have come to the point of redoing everything, wanted to ask any tips on how to setup win and any nix enviroment, win just to play some games and sometimes to reverse win specific CTFs.
Main plan was to have my lovely debian as the only system and run win10 in virtualbox - problem: windows don't like virtuals(?) and it's probably going to be unusable for games.
Also running Kali as separate virtual (why the hell I didn't do that in first place ?)
Xen is the other interesting way but I am not experienced with hypervisors.
TLDR: Would running Win10 as virtual in or alongside(hypervisor) Debian be better/same as having them separated - dual booting?12 -
So one of my first rants was about me unable to setup Debian with (lightdm) Cinnamon to be working with optimus laptop and to make the damn hdmi port work, where the port is attached to the nvidia gpu (vga passthrough?)
I have to try it with another distro because the dual-booted Windows greatly feeds my procrastination. (Like ... Factorio, Stellaris, Rimworld and etc. type of procrastination, it's getting somewhat severe. )
So what would you people of devrant recommend me to try? I am thinking a lot about Arch but I am afraid there will be a lot more problems with the lenovo drivers for various things.
The next one is classical Ubuntu, at the end this distro looks like it's at least trying to work amongst other distro's.
Also thought about Fedora because yum and RedHat. ( ..lol )
Thx ppl.2 -
If someone tries using "multipart/form-data" as only content type for their PUBLIC API ENDPOINTS again I am going to find them and choke them to death.
And if your documentation says you are using something else (application/x-www-form-urlencoded) I am doing it twice.
JSON apis should be standard.
EDIT: I had to fire up BurpSuite proxy, after almost an hour I accidentally switched the body type - voilà1