Joined devRant on 10/4/2017
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
HR: I need a Kotlin guy to fix something quick (in a room with 7 people)
First Koltin guy: I can do it tomorrow, I have a delivery today, maybe he can do it? (me)
HR to me: you a Kotlin guy? Can you do it?
Me: yeah sure, what is "it"?
HR: ffs don't ask too many questions, "it" is Kotlin, can you do it?
Me: ok fine, what team? project? who do I need to speak to so I can get details?
HR: omg you ask so many questions!! Fuck it I'll ask someone else!
Me: How am I supposed to fix "it" if I have no idea what "it" is?
HR: leaves the room
Fucking useless piece of shit!29
The Android app we work on has been ignored in terms of design for 3 years.
Everyone added their own colors, dimensions, strings, etc...
We have grey_1 through grey_9 along with light_grey, lighter_grey, etc...
hardcoded colors everywhere.
All fine until they asked for another flavor a month ago. I didn't panic/meltdown, I cleaned up as much as I could, divided things into templates like header_color, surface_color... It worked fine
Until they fucking asked to "unify" all of our company's apps, which is also fine except a lot of politics came into play. The customer wants one thing, the customer's designer wants another, our designer, our clients designers, my manager... all want different twists in different places. And the code is no way near being able to support all of this.
So I was like ... No I will make one fucking color for all things that serve the same purpose. Turned off the pc, sent an email that I will postpone the release, blocked the ticket, stopped a colleague while they were talking telling them to stfu... and took a 4 days surfing vacation, undeclared.
A dozen of waves later, I came back to work, deleted all references to colors and fixed around 1000 of them
If you know you have tech debt and just live with it... Fuck you!5
How I estimate time needed:
Does it take a week?
Does it take 3 days?
Does it take a day?
Does it take 4 hours?
Take the result, and make it 1.5 times said result3
And the stupidity continues...
So our app needs to "trigger" something on a different app. The backend dev of the second app decided that ours should prepare all the data, do all the logic, and send everything to them so all the other app has to do is to pull that data. All in formats that they designed, and using objects that we have no information about...
I will not implement another app's business into mine just for one fucking feature of theirs to work. I will send the fucking event, with any additional information that I have , and you stupid backend developers can link the shit together because it's YOUR FUCKING JOB.
WTF did these dumb fucks learn in schools? Does separation of concerns not mean anything at all?! ffs
No wonder this whole thing is a fucking mess. Our backend team is mentally disabled3
Fuck this stupid fucking shit!
It takes 10 days of fucking planning and meetings and bullshit just to send data from one app to another using the same backend!!
I warned about this a fucking year ago. They said nooooo, we will never need to use this again. Now I have to write redundant code just because the old services were so hardcoded, as fucking always with these shoes-for-brain retards.
We could've re-used the same module with no changes at all for fucks sake.
I am surrounded by fucking idiots...4
"Bad" is relative. When you're looking for your first internship, especially in a country with rare opportunities, any company might be "good".
As you evolve and become better, any company you work for eventually becomes bad.
It later on comes down to character. There are a lot of "passive" people out there, who just like things to stay the way they are, and would argue with you that the company is "good". Do you have that one guy at your company who's been sitting in the same chair for 11 years? Then there are people who will always be aiming for better, and will nitpick at anything, and anyone, and will never find everything good.
So my answer is you will never be able to avoid a bad company. The rule imho is that when you don't like a place, and if your circumstances allow it... you find yourself a "better" place.3
I really wish someday I could work on a project with a proper design. And no I'm not talking technical design but actual UX/UI
Everywhere I go we either have designers stuck in the 80s, with their gradients and pngs and shit, or even worse (like currently), there's no designers at all, and we just wing it or take a crappy suggestion from the customer.
It sucks to work hard on a product that simply looks like shit :/
My current project:
The database is google sheets maintained by a "data team". Basically data entry people are our DBAs.
There are no services, just a link to download everything in those sheets. The applications (mobile, web and windows) have to download everything anytime any user changes anything.
The front-end does all the db work, since the backend is shit! The front-end has it's own db, which is a well structured local db that we create fr the crappy data inserted in the sheets. The front-end sync up their changes locally, with no help from servers. The servers are just storage.
The only db on the servers is ONE table. That inserts a huge json file, everytime a user uploads their changes, along with a createdAt.
I'm on the Android app development, and the code was copied, litterally, from iOS code, and translated to java... from another similar project, then tweaked to work. No pattern is used what so ever, UI code and Business code are in one file. Like 1000 lines of code UI file.
We all talked about it. We all whined about how shitty it is. And don't get it wrong, the management did approve of refactoring. Which is what we did to the Android project (50% right now cleaned up). But the backend team are fucking pussies!
Company agreed to re-assign me once I'm done with some urgent tasks :)6
Being in charge. I don't care about how it happens, manager, architect, leader, etc...
I just want a peace of software to evolve the way I see it, not the way my manager does after he's spent the night dining with the customer.1
I'll speak for myself, and my own experience.... It's not evolving.
We used to do proper planning, documentation, design, best practices, etc
Now we have FUCKING AGILE :@9
Manager comes to co-worker, looking like he's in a hurry for a feature to be done...
Manager: Did you finish?
Manager: what were you working on?
Co-worker, me, everyone in that room: 🤨
I think he just grew a habit of being a rushing asshole that he doesn't even notice what he's in a rush for anymore
This is a response (kinda rant) to all the posts about Android that are like "App X needs access to my SMS, why would an app that does Y need access to SMS?"
The answer is login verification code, so you don't have to go to sms, and paste the code yourself.
Usually if you deny the access, the feature will not work, and that's it.
It might also be for the share option (though I'm yet to see an app that has share by sms)
To be honest, as an Android dev, what annoys me the most is that you can't ask for permission once, like for one feature, and then be deprived of it. Once you ask the user for permission, it's there, permanently (unless they disable it from app settings). It sucks to build such mistrust with users, when your intentions are good.
I'd say a nice thing to have in Android, is to ask for permission once, for one operation, with a proper explanation. For example, allow access to sms (maybe even more filtered like access to sms by X) just for the next operation which is the phone verification.
But meh... Google only seems to be stuffing Android with useless stuff that no one notices, and that devs aren't even excited about, leaving out very demanded stuff like closeTheFuckingKeyboardWhenTheUserTapsOutsideTheFuckingTextBox()
Oh btw, for all the whiners, it used to be even worse, where you agreed to give permissions right when you install the app. And tbh it was much less pain in the ass.5
2 weekend days, up to 4 am
Reason: Manager said on a Friday night "Release, what can go wrong?"
Everything went wrong!4
In University, first OOP project, we were supposed to pick from a list of projects, where they were very similar:
restaurant booking, airport booking, hotel booking, library management, etc... all of them are basically a software with a DB and some entities you needed to keep track of + a transaction for the user to see
Except this one project that was about plotting graphs. And I picked it because it's not boring.
I put in all effort I could, even learned multi-threading before it was explained to us (was scheduled for a year later) so to render graphs efficiently. It came out perfect. People were blown away by it!
Time for the useless feature:
Prof couldn't digest the fact that there isn't a DB and a stupid login. So I made one. You now need to login to draw a graph
So my car, that I only registered 15 days ago, somehow has a speeding ticket from 3 months ago, in a city I've never been to.
Great country I live in :)10
I just cleaned my emails. Made a rule for everything.
Jira, crashlytics, git, annoying twats, spam...
My main inbox is now only made of emails from actual people. If you want to reference emails from automated sources, you can go fuck yourself
It turned out that I had 4000 emails, only of which 340 are relevant!
Just wanted to share how happy I am now that I cleaned this mess up :)2
I see a lot of hardware people around here so I thought I'd ask..
I have 5 fans in my PC that are all voltage controlled (3 pin connector). I bought by mistake a fan hub that only supports pwm fans (4 pin connector). They are backwards compatible but the fans will run at 100%
I tried to make a circuit I found online to convert from 4 to 3 pin but it didn't work. There's a lot of comments on those forums and I honestly don't understand anything I read there... I don't read schemas well :/
I'd be very grateful if someone here knows what I need to do. I can solder well, but I need details on what parts to get (how many ohms resistors need to be, which wire goes where, etc...)28
Just finished swapping soft tubes for rigid ones.
Bending was a lot of fun :)
It's 4am, but I don't think I'll be able to sleep waiting for the leak test to pass13
The Android framework
The most basic of things are nightmares to implement. There is no functions like:
And yet all of these are asked for everyday.
Ironically, the not so needed things are more than available. For example, you can make an song using the vibration API
Not to mention the hell that's called LifeCycle. I would pay half of my soul to a developer who has mastered the Android LifeCycle... there's always a catch
Oh and... fragments/Activities. Ask 1000 developers about their view on them, and you'll get 1000 different answers. You know why? Because Android's official docs for a fragment is "A fragment is sort of like an activity" SORT OF LIKE...
Yeah fuck you Android!
PS: Im an Android user, anf love the UI and all. Just development on Android is hell!20
A designer made a loader animation for me to use in the app.
When I finished implementing it, he said it was "too fast".
So I asked him for the fps. He said what's an fps?
I asked him what's the duration of the animation then?... Him: Idk
So I raged and showed him that the fucking software he uses has all the info I needed. It was 15fps animation, and he gave all the frames. So simple math, and there it is...
But still, it was "too fast"
So I asked him to play my implementation and his side by side. It was in sync.
So he's like "yeah it's still too fast, I only draw it this fast for better quality"
I told him it's staying the way it is, and he can go learn how to use his tools properly.11
In my first company, they used to call php echo everywhere in the code. No one used ajax or anything async. So it always was
echo "results in some fancy <div> with some css";
First time I wrote an Ajax call, I didn't know how to format the data to read them in JS, since we used to directly echo results from php into divs and whatnot.
So I came out with this:
For every row, split the column using ||
and then delimit the end of each row using //
Then retrieve the result in Ajax, and split using JS on || and //
for example a user table with name and age:
I didn't even create constants to access them from the array later. I did shit like
var name = userRow
var age = userRow
I always pray no one will ever need to maintain this, and find out what I did :]
All I needed was a json_encode() lol
I was cleaning my waterloop, and at some point of it getting diluted, it became pink.
I feel like I should stick with it. It looks good doesn't it? :p11
I have no other place to ask this, since SO doesn't allow "broad questions"
What is a proper way to handle dying contexts?
In Android, everything needs a context to be accessed. And it's especially annoying with things that need a full context (like dialogs) where app context doesn't suffice.
My current problem is that I have an app written very very badly, with a really common problem:
An async task runs, then returns to the foreground to a context that is no longer valid:
- the user left that screen
- Android OS killed the fragment cause it can
- App went to background
- screen slept
So calling context.anything() or view.anything() just crashes the apl
It's so bad we have 50% crash free sessions!
My current solution is to add
if(getActivity() !=null && !isDetached)
But I don't think this is a proper way to fix it, as it's very hard to tell when you need to do this while writing code. And it's ugly af
Please keep in mind that we don't use any pattern : mvc, mvp mvvm etc...
I've seen other teams solve this simply because a view wouldn't render if the controller died in an mvp pattern.
What would you do in my case?
Is adding a pattern the only solution?
In response to the 1000000000000 rants about Android Studio
I think you people are just whiny ass bitches, who think an IDE just employs some sort of black magic that summons a fucking app.
It's not even that glitchy in comparison to actual horse shit like xcode and eclipse.
And even still I still have respect for thr aforementioned IDEs. Because it's not fucking easy to develop one
Stop using toasters to develop on, and maybe tour problems will solve themselves out.12