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 - "viewholder"
-
I do not understand the people that say that they hate C-like languages, because of the ; and {} they have, that are "confusing".
Like almost every modern IDE/editor pinpoints EXACTLY where you forgot something...7 -
What if some day devrant starts getting bigger and has a lot of employees? What happens if they start ranting too?8
-
All is well until one of the interviewers starts dropping questions like:
- Where do you see yourself in x years
- What gets you out of bed every day
etc.
that give you some nice mid interview existential dread.4 -
!rant
Today I think I experienced my biggest burnout ever, combined with a huge headache. That is what you get for working at a fast growing startup.
Stay healthy and remember to take it easy guys and girls1 -
I think the worst thing about android programming and deploying directly to a device, is that you can procrastinate in both the pc and the mobile...
-
Question for devs who use Intellij IDEA.
How often do you use livetemplates?
I am a new android dev with ADHD and just discovered live templates. They make my life much easier, for example I have shortcuts for generating recyclerview adapter/viewholder/implementation boilerplate code.
In that way I am able to focus on implementation, and do my coding like building blocks, rather than memorizing every detail of implementation. Also I don't need to go to stackoverflow and copypaste basic things multiple times. Even for example during live coding interview having livetemplates seems awesome, copypasting from stackoverflow would be shameful (I think). Using my own custom shortcuts for livetemplates seems the best way for how my brain functions (I suck at memorizing tiny details, but I remember general idea/flow of a pattern and I would prefer memorizing what to use and when to use, instead of all small details of implementation).
Is getting to dependent on livetemplates a good practice to get used to? Do other developers frown upon a dev who has dozens of livetemplates and relies on them instead of writing all code from memory by hand?8 -
That feeling when you compiled a large piece of code and it works, but then you make a tiny tiny change in the execution progress and you uncover that it is broken in a dark and twisted way.... Uhh its perfect..
Its so good... IT MAKES ME WANNA *#%#@£... -
Is there an acceptable way to deal with API secrets in an Android app that can cure the anxiety that is slowly taking over me during the past few hours that I am researching about it? Thnx.
p.s. I am not sure how people that work in security can go on with their lives and not have suicidal tendencies10 -
!rant
Honestly thinking really seriously about deleting facebook, as it occupies a good portion of my day with its scrolling up and down.. However I am bit scared that I am going to miss out on like friend's stuff (or people that I know a bit closer), news and all that.. Has anyone done it and can provide with his/her experience on how to tackle this?8 -
The moment when you scratch your mousepad or take off your keyboard keys, and you find out how horrible your living conditions are...
-
I've just joined a new company out of despair after several month out of jobs without being able to even get interviews.
I've been warned about the code being a bit behind with modern Android stack, they needed to migrate from rx to coroutine and compose is not a priority at the moment.
Fine with it, I like handling and planning migration, that's a nice challenge.
But if only that were the only problems !! Far from it, the code is a formidable mess, I've never seen so much amateurism... Most of it was written from the previous Lead Dev who stayed there for years and touched everything with their very bad practices.
I don't even know where to start honestly...
While the code is in Kotlin, it stink Java. Nothing wrong about Java, but if you code in kotlin, you need to understand what kotlin try to achieve. And that's not the case here. There is freaking nullable everywhere, for no reason at all, the data classes contains lot of var in their constructors, equals are override to compare only one or 2 params and no hashcode override with it.
Sealed class, what for ?! Let me just write a List<Pair<Enum, Any>> and cast your any depending on the enum !
Oh and you know what, let's cast everywhere, no check, and for once no null safe, there is enough nullable in the code !
What about the reactive part ? well let's recreate a kind of broken eventbus with rx ! Cause why not ?!
The viewmodel observable don't contain data, they just contain enum for the progress of the states we're checking.
In the viewmodel function we update that enum states and emit it to be observed and make the data available as a var for the view to pick it up when needed.
But why put the business logic in the viewmodel, let's put in the views, and grab and check the variable contain in the viewmodel whenever it fits.
Testing the business logic ? uh let me just test my variable initialisation in the viewmodel instead.
The vm, the views, make about 2000 lines, the test over 3000, and not a single test really test the business logic in it ! I've made big refactoring we're all the tests stayed green, while the function are full of side effects ! WTF ?!
Oh and what about that migration from rx to coroutine ? well better not break the existing code and continue writting like rx, everything is cold flow ! We just need to store a boolean saying if we already did our call to the data layer then we decide to start our flow or not.
As for the RecyclerView, having too many viewHolder is just so annoying, let's put all our different views in one, and hide what we don't need.
Keystore has been push on the repo, but it's private no ? So who cares ?!
And wait i'm not done ! Some of the main brick of the apps depends on library that hasn't been updated for years, and you know what... yes they were hosted on Jcenter and it's only now that they decide to do something about it, we we're warned about the sunset of jcenter 2 years ago !!!!
So what about compose ? What do you want with compose ?! there is no design system in that app obviously, so don't even think about it !
And there... among all of that mess, I'm supposed to do code review... how the fuck do you do a code review when all the code that is around stink ?!
And there is so much more but by now I'm afraid you're thinking i'm just pissing on the old code like everyone... but damn I guarantee, that's the worst code I've ever seen, and i've work on more than 15 app from small to big on different contract with a lot of legacy code, but nothing that bad !1 -
Non-rant rant here..
Anyone living in Europe that got his/her devrant stickers? If so can you tell me about how much time approximately it took to ship, so I can calculate, as i need to be at another place at about a month..
Keep ranting!1 -
I have recently learned to use data binding with recyclerView in android. I need to make some network calls on the click of a button at the recyclerView, and based on response I need to update my UI. All my code for the view is in my ViewHolder. Bt all the code for my network calls are in repository which is accessed by my viewModel. how can I make the network calls from the viewHolder?question repository viewmodel best practice mvvm kotlin app recyclerview android sdk android development viewholder android2