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 - "new update available"
-
Latest update for the devRant app has some new twists: 1) collabs are now free for all 2) black theme is available for devRant++ members 3) when posting a rant we now ask for you to classify the rant as a specific type of post. RIP !rant :/ To be clear, this isn't meant to say that any posted content needs to be different than what everyone is doing already, just that the extra categorization helps all parties who like or dislike different types of content. This categorization will help better inform the algo and allow for advanced filtering which is coming soon.
If you have any questions, comments or concerns please ask me or @dfox in this thread.65 -
A devRant Update!
Hey everyone,
We thought now would be a great time for a devRant summer update on what we've added recently and what we've been working on.
Highlights since our last update:
- We launched devRant++, a supporter program for people who want to help us cover our costs while getting some cool extra features (a supporter badge on rants/comments/profile, reserved spot on our in-app supporter list, ability to edit rants/comments for up to 30 minutes instead of 5, and thanks to immediate user feedback, we also added the ability to post a rant every 1 hour instead of 2, and post comments that are up to 2,000 characters instead of 1,000!) We are extremely happy and thankful for the great response the program has gotten and we plan to continue to improve it using your feedback.
- We added the ability to subscribe to a user's rants. This makes it so you get a notification whenever that user posts a new rant!
- We added an "active discussions" feature (available in the "more" tab on the right). If you're looking to join a conversation happening in the moment, then this feature will help you discover those rants. It shows rants that have recently been commented on so if it's a topic that interests you, you can easily get in on the discussion!
Some stuff we have in the pipeline:
- More fun avatar stuff, including fun new OS/language-themed pets
- More perks for the devRant++ subscriber program - if you have anything you'd like to see, please let us know and we will try to make it happen!
- We will be testing some stuff to help classify rant types (rants, jokes, questions, etc.) in order to create a more personalized experience
- On that note, we're also going to take some more time to do some work on the algo as we haven't done much in terms of improvement since the initial smart algo launched
- Community projects page update - we've been slacking on updating the page and apologize for that. If you have created a devRant-related project and it's not on the community page, please resend it to david@hexicallabs.com (even if you sent it already) so we can make sure it gets added. Sorry about that!
A note on community etiquite regarding voting on content:
We've always believed that one of the most important and awesome experiences on devRant is getting your content noticed and appreciated by others. If you enjoy a piece of content, you should upvote it. If you enjoy 500 pieces of content, you should upvote them all. People really appreciate others enjoying their rants and comments so let them know if you do! If you don't like content, you can downvote it with the relevant reason. What we don't encourage is voting on content that you haven't actually looked at or spamming upvotes in mass for content you're not even actually reading/viewing. While we don't encourage that, it's not explicitly disallowed so we won't impose any penalty for it.
What is strictly prohibited and enforced is using scripts or automated procedures for voting on content. Anyone who is caught doing that will have their account deleted without warning. While very rare, we caught a couple of people doing that this week and both accounts in question were immediately deleted once discovered. To be clear, this is the practice of explicitly using a script or automation to mass vote on content. You will NEVER be banned/deleted for voting on a lot of content manually, even if you vote quickly and on lots of stuff. We just want to make that clear becuase this is not meant to discourage people from voting, it is only regarding votes not placed by humans. So if you're a human voting on content, you have nothing to worry about, we promise!
Please feel free to let us know if you have any questions or feedback on any of this. We love constructive feedback and in the past it has gone a very long way to improving and advancing the devRant community. And as always, thank you to everyone who contributed to the community in any way, we really appreciate it and want to keep making your experienfce better.
Happy ranting,
~David and Tim (Team devRant)
@dfox @trogus38 -
WHY THE FUCKIDY FUCK DO PEOPLE THINK THAT JUST BECAUSE YOU ARE A DEVELOPER THEN YOU CAN DO EVERY FUCKING THING IN A SNAP?!
THIS ENTIRE SUMMER I WORKED FOR THIS MIDGET OF A FUCK AND THE IDEA WAS TO MAINLY DEVELOP AN IOS APP FOR THEIR PRODUCT. THAT ONE APP TRANSLATED TO THREE SEPARATE APPS AND KEEP IN MIND THAT I AM THE ONLY DEVELOPER THEY HAVE SO I HAVE TO DEVELOP IT, TEST IT AND DOCUMENT IT!! AND WHAT'S EVEN WORSE IS HE KEEPS GIVING ME DESIGNS AT THE LAST MINUTE SO I ALWAYS END UP HAVING TO CREATE NEW PROJECTS ALL THE TIME. WHEN A WEEK PASSES BY WITHOUT ANY UPDATE HE AND HIS FUCKED UP BRAIN CELLS GATHER A MEETING WITH HIS 'DONALD TRUMP HANDS-SIZED' BALLS TO ASK ME, 'WHY ARE YOU TAKING SO LONG? THESE ARE JUST THREE BUTTONS ON THIS VIEW?' MOTHERFUCKING COCKSUCKER!! GO GET YOUR MOM TO DO THIS WORK THEN IF IT'S JUST THREE BUTTONS. TO HIM EVERYTHING IN IOS WHICH INCORPORATES A TAP IS A FUCKING BUTTON! BUTTON THIS! BUTTON THAT! AND IT'S NOT LIKE HE HAS SIMPLE DESIGNS..NO.NO.NO.NO. THIS ASSHOLE-SHAPED-HEAD MUGGET DESIGNS SHIT WHICH REQUIRES ME TO HAVE TO DRAW A UIVIEW AS THE SHAPE OF A HUMAN BODY AND HEART. THEN ASIDE FROM THAT, JUST BECAUSE MY RESUME SAYS I MINORED IN MATH AND APPLIED MATH, HE SENDS ME A PAPER THAT EXPLAINS MATHEMATICAL CONCEPTS OF DATA ANALYSIS THEN WANTS TO MEET WITH ME TO DISCUSS THE SUGGESTED METHODS THEN IMPLEMENT THEM. AT THIS POINT I HAD ALREADY IMPLEMENTED AN ALGO FOR COUNTING THE NUMBER OF STEPS THAT WAS WAY WAY WAY MORE ACCURATE THAN THE SHIT THEY HAD IN THEIR CONTROLLER..
SO AS I AM ABOUT TO FINISH IMPLEMENTING JUST THE INITIAL 5 VIEWS OF THIS 'FINAL' APP, HE SERIOUSLY WALKS IN AND TELLS ME, SO I'M STARTING TO WORRY THAT WE'LL NOT MEET THE AUGUST DEADLINE SO I'M THINKING MAYBE YOU SHOULD START SWITCHING BETWEEN DEVELOPMENT. WORK ON IOS FOR 4 HOURS THEN SWITCH TO ANDROID FOR THE REMAINDER OF THE TIME. OH AND UHH IF YOU FEEL LIKE TAKING THE IMAC WITH YOU TO WORK FROM HOME, THAT'S FINE AS WELL AND I'LL BE AVAILABLE IN THE WEEKENDS AS WELL. IT WAS AT THIS MOMENT THAT I REALLY REALLY HOPED I WERE GAY! LIKE 'NO LUBE' STYLE KINDA GAY!! OH BTW AT SOME POINT HE HAD ME PROGRAM ONE OF THEIR CONTROLLERS, AND WAS ASKING IF I COULD START RESEARCHING MEANS OF WRITING AN SDK FOR THEM.
KEEP IN MIND THAT I'M AN INTERN WITH ONE YEAR IOS DEV EXPERIENCE.. THEN HE WANTS ME TO ENTIRELY START LEARNING ANDROID AND GIVE HIM TWO VERSIONS OF THIS THIRD APP IN TWO WEEKS.
HE CAN GO SUCK HIS OWN DICK WHILE GETTING FINGER FUCKED BY A FORK WITH A BLUE WHALE'S 6FT LONG DICK UP HIS MOUTH.
*** that felt good ****36 -
//
// devRant unofficial UWP update (v2.0.0-beta)
//
After several concepts, about 11 months of development (keep in mind that I released 20 updates for v1 in the meantime, so it wasn't a continous 11 months long development process) and a short closed beta phase, v2 is now available for everyone (as public beta)! :)
I tried to improve the app in every aspect, from finally responsive and good looking UI on Desktop version to backend performance improvements, which means that I almost coded it from scratch.
There are also of course a few new features (like "go to bottom" in rants), and more to come.
It's a very huge update, and unfortunately to move forward, improve the UI (add Fluent Design) and make it at the same level of new UWP apps, I was forced to drop the supported for these old Windows 10 builds:
- Threshold 1 (10240)
- Threshold 2 (10586)
Too many incompatiblity issues with the new UI, and for 1 person with a lot of other commitments outside this project (made for free, just for passion), it's impossible to work at 3 parallel versions of the same app.
I already done something like that during these 11 months (every single of the 20 updates for v1 needed to be implemented a second time for v2).
During the closed beta tests, thanks to the awesome testers who helped me way too much than I ever wished, I found out that there are already incompatiblity issues with Anniversary Update, which means that I will support two versions:
1) One for Creators Update and newer builds.
2) One for Anniversary Update (same features, but missing Fluent Design since it doesn't work on that OS version, and almost completly rewritten XAML styles).
For this reason v2 public beta is out now for Creators Update (and newer) as regular update, and will be out in a near future (can't say when) also for the Anniversary Update.
The users with older OS versions (problem which on PC could be solved in 1-2 days, just download updates) can download only the v1.5.9 (which probably won't be supported with new updates anymore, except for particular critcal bug fixes).
So if you have Windows 10 on PC and want to use v2 today, just be sure you have Creators Update or Fall Creators Update.
If you have Windows 10 PC with Anniversary Update, update it, or if you don't want to do that, wait a few weeks/months for the update with support for your build.
If you have an older version on PC, update it, or enjoy v1.5.9.
If you have Windows 10 Mobile Anniversary Update, update it (if it's possible for your device), or just wait a few weeks/months for the update with support for your build.
If you have Windows 10 Mobile, and because of Microsoft stupid policy, you can't update to Anniversary Update, enjoy v1.5.9, or try the "unofficial" method (registry hack) to update to a newer build.
I hope it's enough clear why not everyone can receive the update today, or at all. :P
Now I would like to thank a few people who made this possible.
As always, @dfox who is always available for help me with API implementations.
@thmnmlist, who helped me a lot during this period with really great UI suggestions (just check out his twitter, it's a really good person, friend, designer and artist: https://twitter.com/thmnmlist).
And of course everyone of the closed beta testers, that reported bugs and precious suggestions (some of them already implemented, others will arrive soon).
The order is random:
@Raamakrishnan
@Telescuffle
@Qaldim
@thmnmlist
@nikola1402
@aayusharyan
@cozyplanes
@Vivaed
@Byte
@RTRMS
@tylerleonhardt
@Seshpengiun
@MEGADROID
@nottoobright
Changelog of v2.0.0-beta:
- New UI with Fluent Design and huge improvements for Desktop;
- Added native support for Fall Creators Update (Build 16299);
- Changed minimum supported version to Creators Update (Build 15063), support for Anniversary Update (Build 14393) will arrive soon;
- Added mouse support for Pull-To-Refresh;
- Added ability to change your username and email;
- Added ability to filter (by 'Day', 'Week', 'Month' and 'All') the top Rants;
- Added ability to open rant links in-app;
- Added ability to zoom GIFs (just tap on them in the Rant View);
- Added 'go to bottom' button in the Rant View (if more than 3 comments);
- Added new theme ('Total Black');
- ...complete changelog in-app and on my website (can't post it here because of the 5000 characters limit)...
What will arrive in future updates:
- 'Active Discussions' screen so you can easily find rants that have recent comments/discussions;
- Support for 'Collabs';
- Push Notifications (it was postponed and announced too many times...);
- More themes and themes options;
- and more...
If you still didn't download devRant unofficial UWP, do it now: https://microsoft.com/store/apps/...
If you find some bugs or you have feature suggestion, post it on the Issue Tracker on GitHub (thanks in advance for your help!): https://github.com/JakubSteplowski/...
I hope you will enjoy it! ;)52 -
--- New API allows developers to update Android Apps while using them ---
Today, at the Android Dev Summit, Google announced a new API which allows developers to update an app while using it.
Until now, you were forced to close the app and were locked out of it until the update has finished.
This new API adds two different options:
1.) A Full-Screen experience which locks the user out of the app which should be used for critical updates when you expect the user to wait for the update to be applied immediately. This option is very similar to how the update flow worked until now.
2.) A flexible update so users can keep using the app while it's updating. Google also said that you can completely customize the update flow so it feels like part of your app!
For now, the API is only available for early-access partners, but it will be released for everyone soon!
Source:
https://android-developers.googleblog.com/...19 -
//
// devRant unofficial UWP update (v1.5.6)
//
Hi!
A new update for Windows 10 users is in certification right now (will be available in a few hours/days), with the new feature you could see a few days ago on the official client.
But the main reason of this post is that I've seen the success of the official Issue Tracker created in August by @dfox and @trogus on GitHub.
For this reason I decided to do the same for the unofficial client.
Feel free to post bugs reports (I prefer this method instead of emails) and requests of features (even if not available in the official client) you would like to see.
https://github.com/JakubSteplowski/...
Complete changelog of v1.5.6:
- Added new 'post type' selector for easier classification of rant types in the future;
- Added Official devRant unofficial Issue Tracker on GitHub;
- Added Feedback page with link to GitHub Issue Tracker repo;
- Added black theme... no, wait... already there.
- Minor UI improvements;
- Minor back-end improvements;
I hope to see a lot of interesting feature requests I will enjoy to implement to make the UWP client always the best for you, Windows community. 😁18 -
There was a time I made an update on one of our client's e-commerce website sign-up page. The update caused a bug that allowed new users to create an account without actually creating an account.
The code block meant to save user credentials (i.e email address and password) to the database was commented out for some reasons I still can't remember to this day. After registration new users had their session created just as normal but in reality they have no recorded account on the platform. This shit went on like this for a whole week affecting over 350 new customers before the devil sent me a DM.
I got a call from my boss on that weekend that some users who had made purchases recently can't access their account from a different device and cannot also update their password. Nobody likes duty calls on a weekend, I grudgingly and sluggishly opened up my PC to create a quick fix but when I saw what the problem was I shut down my PC immediately, I ran into the shower like I was being chased by a ghost, I kept screaming "what tha fuck! what tha fuck!!" cus I knew hell was about to break loose.
At that moment everything seemed off as if I could feel everything, I felt the water dripping down my spine, I could hear the tiniest of sound. I thought about the 350 new customers the client just lost, I imagined the raving anger on the face of my boss, I thought about how dumb my colleagues would think I was for such a stupid long running bug.
I wondered through all possible solutions that could save me from this embarrassment.
-- "If this shitty client would have just allowed us verify users email before usage things wouldn't have gotten to this extent"
-- "Should I call the customers to get their email address using their provided telephone?... No they'd think I'm a scammer"
-- "Should I tell my boss the database was hacked? Pffft hack my a**",
-- "Should I create a page for the affected users to re-verify their email address and password? No, some sessions may have expired"
-- "Or maybe this the best time to quit this f*ckn job!"
... Different thoughts from all four corners of the bathroom made it a really long bath. Finally, I decided it was best I told my boss what had happened. So I fixed the code, called my boss the next day and explained the situation on ground to him and yes he was furious. "What a silly mistake..!" he raged and raged. See me in my office by Monday.
That night felt longer than usual, I couldn't sleep properly. I felt pity for the client and I blamed it all on myself... yeah the "silly mistake", I could have been more careful.
Monday came boss wasn't at the office, Tuesday, Wednesday, Thursday, Friday not available. Next week he was around and when we both met the discussion was about a different project. I tried briefing him about last week incident, he seems not to recall and demands we focus on the current project.
However, over three hundred and fifty customers swept under the carpet courtesy of me. I still felt the guilt of that f*ck up till this day.1 -
//
// devRant unofficial UWP update (v2.0.0-beta7)
//
After "Active Discussions" (implemented in v2.0.0-beta5), it was time to implement the last missing app section, "Collabs".
This is the biggest update since the start of the public beta, over 100 changes (new features, improvements, fixes).
Changelog (v2.0.0-beta7):
- Support for Collabs
- Notifs Tabs
- & more... read the entire changelog here: https://jakubsteplowski.com/en/...
Microsoft Store: https://microsoft.com/store/apps/...
I'm really happy to announce that the unofficial UWP client has now 100% of the features available on the official Android and iOS apps (if we don't count Push Notifs 😝 but they will arrive soon too).
It took several months of hard work, but I made it... it's here, it reached the level I wanted to reach since the beginning of this project (May 2016) (if we don't count Push Notifs).
I did it a lot of times, but I think they deserve it everytime, I would like to thank all the people who made this possible, all the active users, who opened issues, suggested features, or just used my app and had fun, posted positives (and negatives, motherfuckers, just kidding, maybe) reviews on Microsoft Store etc.
The entire community who made me want to do this project.
You're amazing guys!
Of course this is not the end of this project, I want to bring the app out of the beta and support it until I will be able to do it, releasing updates almost simultaneously with @dfox and @trogus.
Planned to be done:
- Support for Anniversary Update
- Push Notifs
- Custom Themes
- Close the 15+ issues (features requests, fixes) on the issue tracker on GitHub
- Ranti by @Alice: Your devRant Assistant <- I really hope it will become a thing :)
- Your future suggestions -> post them here: https://github.com/JakubSteplowski/...
Thanks for the attention,
Good ranting!10 -
So… I released v2.0.0 of devRant UWP a few weeks ago.
Then I got a lot of reports of problems on Windows 10 Mobile and older (than 1809) versions of Windows 10 on Desktop.
I decided to resubmit v2.0.0-beta16 to the store, and try to find the issue in the update… I didn't find it.
The code seems the same as the working version (at least the part I try to test is 100% equal).
So it seems I fucked up the vs project.
This means that to find the issue I can spend weeks to search it over and over inside the latest project (using shitty emulators of older Windows 10 builds to debug it), or I could just restore it to the old v2.0.0-beta16 (released in august) and implement again every single new feature and fix (something like 5 new features, dozens of improvements, changes and bug fixes).
In any case, this will require a lot of time (which I don't have at this moment).
I'm really sorry for this inconvenience, I know some of you use my client daily (~3.000 users I guess), I'm really glad someone likes it, and thanks a lot for the awesome reviews and feedback, but stable v2 (v2.1.0 at this point) will be available not earlier than in February.
Probably some of you have already download v2.0.0 while it was available in the store, and maybe it works on your device (please let me know in the comments below if you did, how is it going, and also if you like the new features and improvements).
After this epic fail, and more than 1 year (way too much) of v2 public beta, I want to throw the current project in the trash, and start it from scratch.
Which means I will start to work on v3 as soon as you will see v2.1.0 in the store, making it faster, lighter and with better support for the latest Windows 10 (Fluent Design and not) features, dropping the support for the very old UWP API.
Thanks for your attention.
Have a good day (or night)!5 -
Warning: Long rant ahead!
So we built an amazing system for managing swarms of drones, and we have flown hundreds of hours, testing, etc.
Comes a client and says, that he wants to buy our system, but he wants to integrate it in a bigger system that is supposed to orchestrate many small systems.
Sounds like a deal.
So they send me on a week course (see previous rant: https://devrant.com/rants/2049071/...) to learn how to integrate our system in theirs.
I was sure that they have some API or something and it should be a breeze. but apparently they give us an SDK that includes all their files, and we have to build and run their entire system, and then build our own API inside of it!
And the reason we needed a week-long course, was to know all the paths where the XML configuration files exist!
So for the last month, I am hacking away inside this huge program, navigating thousands of files in a language I don't know, in order to build an API for their system, so that I can use it on our side.
Yesterday they informed us that a new version is available.
And sure enough, waiting in my inbox this morning was a link to download a new SDK.
No Changelog, No Instructions, Just a zip file with over 25,000 files.
So I phone my contact in their company to ask how exactly I am supposed to update their files, and his answer was: diff them!
WHAT! 25,000 files, half of them built by the c++ compiler, tens of configuration files scattered in different places, linking all the new libraries from scratch, are they crazy or what?
And then he tells me that they are working for 15 years this way. That's why everyone hates them I guess.
going to have a long day...
P.S. many more rants to come from this integration.4 -
// devRant unofficial UWP update (v1.5.0.0)
I decided to release another "big" update before v2, with some interesting and useful features already present in the official clients and a completly new feature suggested by users present ONLY here ("hide notifs already seen").
I hope you enjoy it! 😉
v1.5.0.0:
- Added weekly rant banner to rants with 'wk' in tags;
- Added avatars in notif list;
- Added ability to hide notifs already seen;
- Added 'draft Rant', you can now write a Rant without posting it, it will be automatically saved and available to be posted later;
- Updated Swag Store, now always up to date;
- Updated 'Mute notifs from this rant', now except @mentions;
- Improved date format of rants;
- UI improvements;
- Minor internal changes;
https://microsoft.com/store/apps/...2 -
I hate when a software update changelog looks like this:
The latest update is now available, update your software to get the most out of it.
I want a fucking changelog before updating my things. Like: fixed a bug, new button with cool new feature. Just something. I have to know. Can't just install something blindly that could ruin my software, especially when it's not reversible..1 -
Our team really needs some workflow arrangement, and this time it was me who screwed up.
So we have to push an update to the Play Store and the App Store the Friday, the app is well tested on test environment then production environment, we got the ok so I uploaded a build, the app management team then continued the process of publishing..
During the weekend the app was approved and live to almost 500k user that can receive the update.
I got a phone call from the Project Manager at almost midnight, the time was really suspicious so I answered.
- Me: Hello.
- PM: Hi, sorry to call you now but the app is live and we have a problem.
- Me: what kind of problem? Let me check.
So I updated the app on my phone and opened it while I am on call.. I almost had heart attack!! WE PUBLISHED A VERSION POINTING TO THE TEST ENVIRONMENT. Holly shit
- Me: shit call the app management team NOW.
Eventually we removed the app from sale (unpublished it) and we submitted a new version immediately, once it was approved the next day we made the app available again (so for those who didn’t update yet, there will be no update to a faulted version, and no new users landing to a version with test data), I received one or two calls from friends telling me why the app is not on the store (our app is used nationally, so it’s really important).
Thank God there was no big show on twitter or other social media.. but it’s really a good lesson to learn.
I understand this is totally my fault, thankfully I didn’t get fired 😅4 -
If you can be locked out of it remotely, you don't own it.
On May 3rd, 2019, the Microsoft-resembling extension signature system of Mozilla malfunctioned, which locked out all Firefox users out of their browsing extensions for that day, without an override option. Obviously, it is claimed to be "for our own protection". Pretext-o-meter over 9000!
BMW has locked heated seats, a physical interior feature of their vehicles, behind a subscription wall. This both means one has to routinely spend time and effort renewing it, and it can be terminated remotely. Even if BMW promises never to do it, it is a technical possibility. You are in effect a tenant in a car you paid for. Now imagine your BMW refused to drive unless you install a software update. You are one rage-quitting employee at BMW headquarters away from getting stuck on a side of a road. Then you're stuck in an expensive BMW while watching others in their decade-old VW Golf's driving past you. Or perhaps not, since other stuck BMWs would cause traffic jams.
Perhaps this horror scenario needs to happen once so people finally realize what it means if they can be locked out of their product whenever the vendor feels like it.
Some software becomes inaccessible and forces the user to update, even though they could work perfectly well. An example is the pre-installed Samsung QuickConnect app. It's a system app like the Wi-Fi (WLAN) and Bluetooth settings. There is a pop-up that reads "Update Quick connect", "A new version is available. Update now?"; when declining, the app closes. Updating requires having a Samsung account to access the Galaxy app store, and creating such requires providing personally identifiable details.
Imagine the Bluetooth and WiFi configuration locking out the user because an update is available, then ask for personal details. Ugh.
The WhatsApp messenger also routinely locks out users until they update. Perhaps messaging would cease to work due to API changes made by the service provider (Meta, inc.), however, that still does not excuse locking users out of their existing offline messages. Telegram does it the right way: it still lets the user access the messages.
"A retailer cannot decide that you were licensing your clothes and come knocking at your door to collect them. So, why is it that when a product is digital there is such a double standard? The money you spend on these products is no less real than the money you spend on clothes." – Android Authority ( https://androidauthority.com/digita... ).
A really bad scenario would be if your "smart" home refused to heat up in winter due to "a firmware update is available!" or "unable to verify your subscription". Then all you can do is hope that any "dumb" device like an oven heats up without asking itself whether it should or not. And if that is not available, one might have to fall back on a portable space heater, a hair dryer or a toaster. Sounds fun, huh? Not.
Cloud services (Google, Adobe Creative Cloud, etc.) can, by design, lock out the user, since they run on the computers of the service provider. However, remotely taking away things one paid for or has installed on ones own computer/smartphone violates a sacred consumer right.
This is yet another benefit of open-source software: someone with programming and compiling experience can free the code from locks.
I don't care for which "good purpose" these kill switches exist. The fact that something you paid for or installed locally on your device can be remotely disabled is dystopian and inexcuseable.16 -
So my car has a problem with a steering column lock. Sometimes the actuator pops an error and it does not unlock until I clear that buggar. Carrying a lappy with vag-com seems somewhat annoying so I got a obdeleven bluetooth dongle with am app.
Once you get it to work it works perfectly. Have been using it for a few years now. It's like a half a year or so since it got a last update and it's been stable as a rock since.
Today me and my fam took a night out with a car. Drove here, drove there, had fun. Time to go home, as the little one is getting sleepy. Got in a car, insert a key, turn it -- no ignition. Damn that steering lock!
So I pop in a dongle, open the app, hit connect,... Wait, what is that? A toast with "a new update is available. [[update now]] [[cancel]]".
Cancel ofc, I need to go home asap! Will gladly get the update when the kiddo is in his bed!
[[cancel]]. The toast disappears. Okay, now [[connect]]
"a new update is available. [[update now]] [[cancel]]"
mother f#$@%!!! Allright already, [[update]] it ffs.
Updated the app. Now [[connect]].
Loading.. Loading... "could not connect to device"
tfq?!?
Reinsert the dongle, connect
restart the app, connect
restart the phone, connect
clear all bt devices, connect
do the rain dance, connect.
Permission to panic: GRANTED.
Dear devs. If you are rolling out an update -- never ever EVER make it non-postponable, non-cancelable. No matter how critical, your updates must NEVER be mandatory.6 -
Lots of questions going on about devRant. Just want to make devRant better.
1. Please tell the update intervals of upvotes and downvotes. Is there a delay? Doesnt really matter but i see many times i got a upvote notif but my score didnt increased...
2. Duplicate image algo is so poor. I know it is only in beta, but i see so many reposts which has the same pic but only with the resolution different or the image with the devrant watermark.
3. Minor, tags should be also saved when exitting the post rant activity.
4. Feature request : go to top, bottom in rant
5. Please make web app accessible in mobile. I think you check the user agent for the web app, but can you make it available to mobile users who cant download the app?
6. When accessing the web app in mobile, i type devrant.io/feed
Then, by the wonderful intent you made, it opens the app automatically. I was writing a rant, but it was all deleted.
7. Any new podcasts and cartoons planned?
8. Still bug not fixed.
Write a comment in a long rant.
Delete the comment you just wrote.
You cant reply to the last person comment.
Thanks.6 -
ideal sprint fallacy.
total days 10 , total hours(excluding breaks ) 8 hrs per day= 80 hrs per dev
code freeze day = day 8, testing+ fixing days : 8,9,10. release day : day 10
so ideal dev time = 7days/56 hr
meetings= - 1hr per day => 49 hrs per dev
- 1 day for planning i.e d1 . so dev time left . 6 days 42 hrs.
-----------
all good planning. now here comes the messups
1. last release took some time. so planning could not happen on d1. all devs are waiting. . devtime = 5 days 35 hrs.
2. during planning:
mgr: hey devx what's the status on task 1?
d: i integrated mock apis. if server has made the apis, i will test them .
mgr : server says the apis are done. whats your guestimate for the task completion?
d : max 1-2 hrs?
m : cool. i assign you 4 hrs for this. now what about task 2?
d : task told to me is done and working . however sub mgr mentioned that a new screen will be added. so that will take time
m : no we probably won't be taking the screen. what's your giestimate?
d : a few more testing on existing features. maybe 1-2 hrs ?
m: cool
another 4 hrs for u. what about task 3?
d : <same story>
m : cool. another 4 hrs for u. so a total of 12 hrs out of 35 hrs? you must be relaxed this sprint.
d : yeah i guess.
m cool.
-------
timelines.
d1: wasted i previous sprint
d2 : sprint planning
d3 : 3+ hrs of meetings, apis for task 1 weren't available sub manager randomly decided that yes we can add another screen but didn't discussed. updates on all 3 tasks : no change in status
d4 : same story. dev apis starts failing so testing comes to halt.
d5 : apis for task1 available . task 3 got additional improvement points from mgr out of random. some prod issue happens which takes 4+ hrs. update on tasks : some more work done on task 3, task 1 and 2 remains same.
d6 : task1 apis are different from mocks. additionally 2 apis start breaking and its come to know thatgrs did not explain the task properly. finally after another 3+ hrs of discussion , we come to some conclusions and resolutions
d7 : prod issue again comes. 4+ hrs goes into it . task 2 and 3 are discussed for new screen additiona that can easily take 2+ days to be created . we agree tot ake 1 and drop 2nd task's changes i finish task 2 new screens in 6 hrs , hoping that finally everything will be fine.
d8 : prod issue again comes, and changes are requested in task 2 and 3
day 9 build finally goes to tester
day 10 first few bugs come with approval for some tasks
day 11(day 1 of new sprint) final build with fixes is shared. new bugs (unrelated to tasks. basically new features disguised as bugs) are raised . we reject and release the build.
day 2 sprint planning
mgr : hey dev x, u had only 12 hrs of work in your plate. why did the build got delayed?
🥲🫡5 -
Lessions I learned so far from my first big node/npm project with tons of users:
1) If you didn't build something for a while, expect 3 hours of resolving version conflicts for every two weeks since the last build.
2) Even if the tests pass, run the containers on your own machine and make sure that the app doesn't randomly crash before deploying
3) Even if the app seemed to work on your own machine, run the tests again in an environment mimicking prod at most 15 minutes before replacing the running containers.
4) Even if all else indicates that the app will work, only ever deploy if you expect to be available within the 4 hours following a deployment.
5) Don't use shrinkwrap for anything other than locking every version down completely. A partial shrinkwrap will produce bugs that are dependent on the exact hour you built the app _and_ the shrinkwrap file, and therefore no one will ever have seen them other than you.
6) Avoid gyp, and generally try not to interface too much with anything that doesn't run on node. If parts of your solution use very different toolchains, your problems will be approximately proportional to the amount of code. And you'd be surprised just how much code you're running. (otherwise it's more logarithmic because the more code the less likely a new assumption is unique)
7) Do not update webpack or its plugins or anything they might call unless you absolutely need to
8) Containers are cool but the alpine ones are pretty much useless if you have even just one gyp module.
9) There's always another cache. To save yourself a lot of pain, include the build time in every file or its name that the browser can download, and compare these to a fresh build while debugging to assert that the bug is still present in the code you're reading
+1) Although it may look like it, SQLite is far from a simple solution because the code and the bindings aren't maintained. In fact, it'll probably be more time consuming than using a proper database.3 -
So I created a little script for my mother because otherwise she had to combine 70 spreadsheets manually, I just couldnt sit there and do nothing. So I wrote a simple Python script in like 30 mins, decided that it needed a GUI because in the end it is for my mother. So wrote a GUI and partly learnt PyQt during that in an hour, which was all working fine.
Then I got to the point where I actually had to hand it over to my mother, preferably as an executable so that there is no hassle at all. So found this tool, Pyinstaller which seems to work great. Created an executable with all the dependencies and stuff in a single file, it worked on my win10 machine (because I developed on Linux of course). So I distributed it to her and she immediately gets an error. Of course there is no description and stuff because I made it a simple program, no log files and such. But fortunately she told me that it errorred when she wanted to run it, so I knew it had to be due to the executable.
Turns out she is still using windows 7 at work, which of course is different that windows 10 and here I am at 11pm, installing updates on a fresh windows 7 machine just to create a new build in that environment and make it work on her machine.
Fuck you, windows update. I swore to never see that ugly ass progress bar again, but yet here I am. Send halp.
I am almost just at the point where Im going to teach my mother how to run a python application from the command line because wheels are actually available for all python dependencies (instead of compiling them)!
Are there better python executable creators out there for wincrap?3 -
Okay i am torn here.
Specifically for Indian devs(better if you into android)
Would you be willing to work for Rs 10k per month for 6 months at a startup as your first job?
Perks:
- nearby job. Its like 20 minutes metro ride
- known people and code base. I had worked with them last summer and know all their codebase. Its very large and will make me learn lots of new stuff.
Cons:
- nothing formal: its a startup, they don't have any bonds, they don't give any equity, any bonus, any compensation stuff etc.
- Too less salary: lesser than that of a delivery guy or auto driver
- Too much work load: they are going to fuck me up straight in terms of work. They got only 1 super man sikh who made the whole stuff and who wouldn't be there most of the time. I have to read his code, understand it , learn all the libraries and then make new features all by myself
- Too much pressure : they are going to take away my 6/7 days and then may call for update on sunday. Plus they will be expecting me to complete a task(which includes all the stuff i added in the workload point) in like 1-2 days
- better options available (i guess?) : If i don't go there, i would either continue to apply for more Android related jobs, or would start learning more on competitive i.e changing the whole path stuff,etc.24 -
🚨 EMERGENCY ALTRANT UPDATE 🚨
Release Notes:
- Fixed critical UI hangs when scrolling up a rant's comments on slow networks
- Fixed critical UI hangs when loading the profile screen on slow networks
Today, I discovered that there is a huge issue with UI responsiveness when the device is connected to a slow (or subpar) network connection. I deemed this absolutely unacceptable and not in the standard I strive to achieve and scrambled to make a fix. The fix is now *live* and available.
In a week from now, I will expire the update I released yesterday (build 2070) in favor of this new one (build 2084). The schedule for expiring the build before yesterday's update (build 1607) is still scheduled to be expired on Wednesday, 11/23/2022, 6 days from the upload of this post.8 -
Note to self:
Close off ALL ways things could go wrong..
Long story short; I released a new feature, to be able to better follow up on any stock moves, their amounts, locations and even expiry dates. An older tool just bypassed that very verification and nothing was logged or taken out of stock.
~
Taking out an amount for a certain orderline has a shortcut in place to mitigate some of the mandatory steps that pickers need to take in order to verify what's being taken. This little tool only available, visible and possible for a very few select users.
I assigned some orders to one of these people, which made him think it was an urgent batch. It's only one product, for multiple orders, so he went to the location, took out the amount needed and then used the tool to quickly be able to prepare them for shipping.
This bypassed the new methods to check if the location actually had stock to take, which I had just enabled for 1 account.
Luckily I caught the miss-hap as I was monitoring that product first-hand and noticed the batch of orders was collected but the stock amount didn't update.
It was 5min before I was leaving work, so I investigated and then ran to the person in question to ask what he did; which was "I used that tool"
I facepalmed myself internally while blaming myself, as he couldn't know that it wasn't ready to use for that purpose.
The tools to fix this up are there already.. so I used that to fix some missing stock-takes manually.. Though I'll need to close that little tool for these kind of orders for sure, asap, probably when I get home, at least until I bring over its new logic to it.
Happy Tuesday? (: -
New update available on your phone...
Wait people to teste it before installing. It look stable, ok i will install it
After the update
Fucking shit the clock is on the left side 🤮 what the fuck is this shit android... The settings menu is now a ducking mess. The finger print scan is so slow i can cooke an egg before he unlock the phone. The multi tasking screen is like iphone and look like a garbedge. Some applications rushing running.3 -
I've always been a strong critic of the mac operating system and apple in general for they're overpriced products. few months back my old laptop kicked the bucket and repairing it was not an option as i was sick of charging the laptop after every 3-4 hours and had to purchase a new laptop immediately. loooking at my options around 50k rs or 700$ all windows laptops available in indian markets sucked (except for lenovo 320s) so i made the shift to macbook air 2017.my daily work involves photoshop illustrator and a dash of premiere pro. I also work on nodeJS and python using the pycharm and atom IDEs. After using it for a month i feel in love with mac platform and macos. Its a wonderful experience. gone are the days of crashes and the windows updates (ugh). the boot of the laptop is like magic and softwares like wmware imovie and notes keynote are f**king awesome. Long hours of work have become fun rather than hell dealing with constant windows gimmicks and bad battery optimisation on linux.
An explanation why all developers (except for the ones who require high powered gpus) graphic designers should shift to macos rn.
Advantages of using mac
No forced updates update whenever now or a f'ing month later no probs.
better battery optimisation than linux
no more installing os again and again (ubuntu)
better vm than virtualbox (vmware)
terminal for running bash commands
no crahes
Xcode platform
trackpad is worlds better than the best windows trackpad
Disadvantages
some softwares not available for macos
storage is generally less on macbooks
UI is simple (less elaborated than windows)
Workarounds
get a vm and install linux(vmware fusion 8)
ps. u may not need it though
wine and wine bottler for using windows apps
get a microsd to sd adapter for macbook and expand storage5 -
Update about my boss:
I was early too judge. Maybe still early to form an opinion.
But dude seems pretty level headed. Yes, he is agressive. Yes, he has weird way of complicating things.
But I got to learn things from him. I earned his trust, just like I did in the past with other managers. He is confident about my performance now. He gave me space to ramp up and pushed me to limits.
But now, Floyd is settled. Maybe with time, I might get occasional unpleasant interactions, but those are part of every job.
However, we as a society decided to be in agile mode. Fix a problem and the solution gives rise to another one.
The business head of my pod is going crazy over the deliverables.
They were surviving for years with a product manager. Everything was driven by tech without any research.
And now when I am in, they want everything to be done yesterday.
We spent some decent amount of time on strategy and it turned out to be good. Now they are questioning that why ain't I delivering?!
It's been a week we finalised the strategy, let me get some space and time to structure and plan the execution.
Business heads are pretty nice and level headed people. Just that I don't understand the sense of urgency. I get it that my pod often has to deal with fire fighting given the nature of the business, but holy fuck! Stop pressurising to deliver everything together on a war foot.
They are like, we'll ask for more resources. But whose gonna tell them that 9 women cannot deliver a baby in 1 month.
I need time for discovery and research. Without that, don't expect impact.
As the only PM space, leading the entire vertical, how can I even focus on multiple initiatives?
I really miss my previous life of my first company. It's exactly an year when I left them and I changed two companies since then.
My learning and earnings sky rocketed, but WLB took a toll.
I miss the time when I could finish my work in an hour and did whatever the fuck I want while at work like browsing new topics to learn, exploring places, attending events, connecting with people, making social posts to learn, finance as a hobby, yada yada..
These days, I feel too burned out. Not that I am worried about job stability, because I trust my skills.
But more due to the fact that I have to constantly focus on work for the time I am in office. No free space or time to collect myself together, process things, and focus.
This leads me to thinking about work (read processing office discussions), at home too.
I cannot enjoy music. Feels like a load.
I no longer attend events or meet people after work. No more wasting time on the internet.
And most importantly, I am not bored anymore. I miss being bored. I miss living a boring, mediocre lifestyle.
I miss doing my side projects and polishing my portfolio site ten times a day, because I got nothing better to do.
I used to spend time learning right grammar and why American and English words are different and which to use where.
I miss spending time of Google Maps exploring borders and remote regions.
Weekends fly by. No hobby to pursue. No free time.
I miss the days when I had nothing to do and I was bored and I could do anything.
I used to be always happy. Because no responsibilities. I used to be always up for a meetup. I used to be available for a phone call.
Now it's nothing but work which is surely exciting and some foundational learning with good enough money, but I miss my time when I used to get bored because I had nothing to do.4 -
I hate Intellij Idea but it's best option available to develop in Scala. Improvements in VSCode/Metals is my last hope.
The (few) things I NEED from Intellij:
* Very good autocompletion
* Refactoring tools (renaming, auto imports)
* Search tools (find usages, sub/super-types)
The (many) things I hate of Intellij:
* Layout with panel sizes doesn't behave properly and it scales instead of remaining fixed.
* Tedious 2-hands shortcuts makes the right hand to move a lot from the mouse
* Delays and lag in the UI, freezes on garbage collection
* High memory consumption, high CPU usage and generally slow and cumbersome
* The delay in the UI between commands is so that it's accidentally possible to introduce typos
* Can't move tabs around and organize them as I like
* Ugly font rendering and missing typography settings
* Multi-caret implementation as a different editing mode is annoying because requires frequent switching
* Unnatural code folding regions, why method arguments are not folded with the method?
* Unhelpful support forum, sometimes dismissive answers
* Highlighting of current word under the caret doesn't work
* Very slow editor, can't keep spacebar pressed to move text or it hangs!
* Several settings reset at every update. Like the auto fetch of git
* New features are added and enabled by default which is very invasive
* Some of the features mentioned above are really annoying and it's not possible/not trivial to disable them
* It uses its own compile and several times it highlights false positives7 -
Fuck MS, why couldn't you update the NuGet API URL when NuGet updated? The warning on nuget.org states,
"This package will only be available to download with SemVer 2.0.0 compatible NuGet clients, such as Visual Studio 2017 (version 15.3) and above or NuGet client 4.3.0 and above"
It says nothing about using the V3 endpoint, so if you''re like me and updated NuGet to 4.5 and still got nothing but
"NU1101: Unable to find package Foo.Bar. No packages exist with this id in source(s): https://www.nuget.org/api/v2/"
...then you'll be very confused until it strikes you that there might be a new API version. Even if MS doesn't want to deprecate the V2 API just yet, it would be awfully nice to just state on the frickin' site that not only do you need NuGet >= 4.3.x, but also the correct feed URL.
$_DEITY knows how many dev-hours have been lost to this shit. -
Every fucking time I execute a program I’m popped up with yet another motherfucking update available, then after I wait for the fucking download to finish and the install to proceed I have to ‘voluntarily’ restart the system… and guess what? Windows needs to update now!!! AH! Fucking cocksuckers… If that can compare to harassment was Firefox does its plain old gang bang rape as it now forces the fucking updates.
I remember a time not long ago (I’m not that old motherfuckers) when the only update was a fucking major update namely one that allow software to either run on a new OS or work at all. Not a goddamned typo fix on the about page… FUCK OFFFFFFFFFFFFFF!!!!!2 -
Aka... How NOT to design a build system.
I must say that the winning award in that category goes without any question to SBT.
SBT is like trying to use a claymore mine to put some nails in a wall. It most likely will work somehow, but the collateral damage is extensive.
If you ask what build tool would possibly do this... It was probably SBT. Rant applies in general, but my arch nemesis is definitely SBT.
Let's start with the simplest thing: The data format you use to store.
Well. Data format. So use sth that can represent data or settings. Do *not* use a programming language, as this can neither be parsed / modified without an foreign interface or using the programming language itself...
Which is painful as fuck for automatisation, scripting and thus CI/CD.
Most important regarding the data format - keep it simple and stupid, yet precise and clean. Do not try to e.g. implement complex types - pain without gain. Plain old objects / structs, arrays, primitive types, simple as that.
No (severely) nested types, no lazy evaluation, just keep it as simple as possible. Build tools are complex enough, no need to feed the nightmare.
Data formats *must* have btw a proper encoding, looking at you Mr. XML. It should be standardized, so no crazy mfucking shit eating dev gets the idea to use whatever encoding they like.
Workflows. You know, things like
- update dependency
- compile stuff
- test run
- ...
Keep. Them. Simple.
Especially regarding settings and multiprojects.
http://lihaoyi.com/post/...
If you want to know how to absolutely never ever do it.
Again - keep. it. simple.
Make stuff configurable, allow the CLI tool used for building to pass this configuration in / allow setting of env variables. As simple as that.
Allow project settings - e.g. like repositories - to be set globally vs project wide.
Not simple are those tools who have...
- more knobs than documentation
- more layers than a wedding cake
- inheritance / merging of settings :(
- CLI and ENV have different names.
- CLI and ENV use different quoting
...
Which brings me to the CLI.
If your build tool has no CLI, it sucks. It just sucks. No discussion. It sucks, hmkay?
If your build tool has a CLI, but...
- it uses undocumented exit codes
- requires absurd or non-quoting (e.g. cannot parse quoted string)
- has unconfigurable logging
- output doesn't allow parsing
- CLI cannot be used for automatisation
It sucks, too... Again, no discussion.
Last point: Plugins and versioning.
I love plugins. And versioning.
Plugins can be a good choice to extend stuff, to scratch some specific itches.
Plugins are NOT an excuse to say: hey, we don't integrate any features or offer plugins by ourselves, go implement your own plugins for that.
That's just absurd.
(precondition: feature makes sense, like e.g. listing dependencies, checking for updates, etc - stuff that most likely anyone wants)
Versioning. Well. Here goes number one award to Node with it's broken concept of just installing multiple versions for the fuck of it.
Another award goes to tools without a locking file.
Another award goes to tools who do not support version ranges.
Yet another award goes to tools who do not support private repositories / mirrors via global configuration - makes fun bombing public mirrors to check for new versions available and getting rate limited to death.
In case someone has read so far and wonders why this rant came to be...
I've implemented a sort of on premise bot for updating dependencies for multiple build tools.
Won't be open sourced, as it is company property - but let me tell ya... Pain and pain are two different things. That was beyond pain.
That was getting your skin peeled off while being set on fire pain.
-.-5 -
FFS people. If you're going to ditch the Mac App Store (because Apple sucks, I'm such programmer I need to hate it) when releasing your software, get your installers right. ESPECIALLY if it's paid software.
Some people choose not to work on their systems with an admin user all the time. So don't assume your shitty installers will have sudo privileges.
I'm looking at you Atom and Paw. -
Got the new Android 10 update last night. cool dark theme for OS now and changes apps to dark theme if available. :)1
-
Finally got some time on my holiday to do some side project work! Turns out it was a looong time since I started this computer.
So what I believed to be one lovely night of coding turned out to be one looong night of software updating...
I'm soon off to bed. Fingers crossed that I'll get some more time to do actual coding soon. -
Need to work on GitHub CI action that wraps a terraform deploy (previous teams deploy setup that they would run from inside a docker compose setup locally). Working directly on main and get moaned at (definitely consider the moan reasonable) when it was originally being duct taped together. It's scrappy and doesn't have all the repo rules that other repos have set up, but it's stable, and I need to move onto “actual” requirements.
Several months later, I'm still the only “active” maintainer (it's been stable since then and hasn't needed any changes).
Have to do a hotfix experiment after adding support for a new bucket, put the changes in a PR and merge (since it has to be on main, and I'm the only one who maintains it, and if it's truly deploy change related that is the only thing that changed)
Come back to the PRs at the end of the day after discovering it's just a change to django storage, and it turns out a colleague who is tangentially related to the project dropped a comment. He's complaining about the lack of a description, the lack of a ticket and “skipping” the review process.
I, too, would have liked all that, but the damn code needs to be merged so I can check that it was that MFer. Sorry, I expected you to be able to deal with a “vague” 10 contiguous lines of iam config values, ignore the immediately following PR that reverts this revert and the preceding one adds a bucket. Sorry, that the title saying that this is a revert isn't enough of a description for you. Sorry that the other dev that told me about it didn't create a ticket. Sorry that I didn't immediately do overtime to update all the PRs and magically conjure up someone who is available to review them. But hey now that's evening and I have time to get back to going through the PRs again I can see your indignant comment which I wasn't notified about since the PR is fucking closed.
Now that I have had time to go through and see your comment, message you to let you know that commenting on a closed PR is screaming into the void and updated the PRs I can get back to what I was supposed to do today. Which is dealing with streaming data into S3. Hope you had a good day in your Clojure tower with your hired PR person (yes a person to review his PRs).
Not having to deal with your comment would have saved me an hour+.
Getting real tired of the “act like product” when it comes to fixing bugs/any polishing that isn't exploding in prod and even then. Sometimes I really wish I could refuse people from messaging me to fix an issue and can only communicate by tickets 🙄 to avoid these problems. They've been told to create a ticket and assign it to me when there is an issue, and even then, I tend to fix the issue before they get to it. I can't wait until next friday…
Anyway /rant keep up the good work in keeping quality up :D3 -
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 -
Please support old web browser versions for all eternity.
I hate it when I open a site like SoundCloud one day and am greeted with a "we no longer support your browser" notice. Now I am forced to update my browser to a new version with removed features. On Android, Chrome sometimes crashes due to an apparent memory leak, so I have to go back to Samsung Internet, which does not work with some sites. Also, the Samsung clipboard manager (which can hold up to 20 items) is only available on Samsung Internet, not Chrome or Firefox.
I also have to update the browser on my live USB bootable stick because sites stop supporting it. Any browser starting in 2015 (ECMA script 6) should be supported until at least 2050 so that I never have to fear that a site one day spontaneously stops working on my browser.
I would like to browse the Internet forever without having to ever worry about pages to stop working one day. Browser vendors might also deprecate support for devices and operating systems. Old devices also have replaceable batteries and are easier to repair. I don't want be forced to buy new devices that are difficult and expensive to repair.20 -
Dear Thieves.
So I was looking at some guy who's job I designed today.
He was sitting there with the new laptop I bought during one visit here.
It was an hp with a silver keyboard and handrest because supposedly normal people stopped owning laptops when you all decided to embrace schizophrenia and create inane rather stupid meanings that are associated with literally everything but sense or sophistication.
comparing oneself to an animal for example doesn't focus on positive or spiritual values, its something perverse.
ordering food is not about enjoying new things or savoring flavors, its about something perverse.
going to school is not to learn things, its to crash and burn later because the powers that be refuse to update the system from the 1970s.
living, is not living at all, but working to pay bills and get old bitter and fat.
well.
shit.
retards.
anyway. doesn't explain people like myself who made things when we could and were enthusiastic about our jobs at points.
oh. and supposedly the guy who stole the job was 'I".... and it was a job that would become 'outmoded'......
i believe that was the word often used. let;s check. yup, close enough.
then all these people talking about 'new' jobs because noone could trust the group of monsters they made with too much spare time. since you know. they thought it was funny to steal human beings lives since they were not human. subhuman.
anyway.
where suddenly everything meant something else and a whole new world of retarded people emerged from the shadows because the trash children of a former generation got sick of being lectured about morality when they were in fact just bad people who should have been shot.
i don't care how else the whiney bastards explain themselves. i really don't.
you can say that in desperate fucked situations involving psychological torture, rape, etc that a decent person *raises their hand* might do TERRIBLE things to their captors in order to escape, but THEY caused that while whining that someone from the 1940s or earlier made them evil and they had no choice but to steal jobs, money, retirement funds, public institutions, the morals of a generation, i'll bite: toddlers, spread their legs like psycho whores to get pregnant, so steal people's unborn children, turn every fund available that could have gone towards people that needed things to money laundering and in general gleefully fucked our whole country up with the lack of foresight that psychopaths commonly display.
great job.
was it worth dying ?
how about going crazy and letting another group of evil people make an excuse to drive everyone into an endless idiotic loop ?
but hey no, keep lying. works so well.
well at least fedora 37 is released again.
give the stolen photos back.
just want to know what i looked like, and don't want to talk like a retard to get people who understand english to pretend they finally comprehend.
fucking bastards.5