Joined devRant on 11/25/2017
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Fun fact: if you look at video release dates, Tom Scott learned how to fly a jetpack before learning how to ride a bike.
CTO: We'll use epochs for any time related fields in our services.
After service integration...
Dev from producer team: Hey the time field is showing up as 1970 and not null in your table. That seems to be a bug.
Me: Code looks fine. We are converting epochs to timestamps here. Null is taken care by the library function itself.
The same dev: Actually we are sending zero instead of null values in that time field. But we'd want the end table to treat that as null.
Me: Why can't you send null then?
The dev: Actually avro doesn't support nulls. Hence the zero.
Manager to me: Actually you need to convert them as null. Anyways, this is not a blocker and we can live with it for now.
END OF RANT
Why can't they fucking send it as null? And when I asked about the details, that particular event type doesn't require that field. Still the manager insists on sending that field for it.23
I've never used Windows in my day-to-day life. No kidding.
When I got my father's first computer, I used an old distribution called BBC Linux. I didn't have any computer knowledge, it was my first contact with a computer, so I went to a friend's house and asked for a CD to install on my computer. I don't know if this friend ended up making a "gotcha" and thought I'd give up, but I just read the manuals and fell in love. That was year 2000.
Then I used Conectiva Linux, then I went to Red Hat 9, then Slackware, then in 2007 I started using Solaris. And I stayed on Solaris (Solaris 10, Solaris Nevada and OpenSolaris) until 2011.
In 2011 I bought a Mac. I stayed at Apple until 2020, when I couldn't stand Apple forcing me to buy new computers (I still don't understand how a 2011 iMac, i5 (4 Hyper Thread cores) with 16GB of RAM, 1TB SSD only runs up to High Sierra).
Then I bought a Dell. It came with Windows 10, the first thing I did was install WSL2. I could not stand it, the system is bad, sorry. I installed OpenSuse and have been using it for two years.
It's just that every day someone tells me "how can you use this"? "There is no alternative to Windows, do you want to be different?"
I know that my story was the reverse of the "mainstream", so I'm going to talk about my vision of Windows, that in my brain it is actually the "alternative".
- Having a file explorer without "tabs" in 2022 is unthinkable for me.
- I love terminal. And the Windows terminal is very limited. "ps ... | awk ... | xargs ..." is a must for me. "find ./ -name '...' -exec ..."... these things on Windows are totally "different" and have the "powershell way" while all other operating systems keep the same form. And cygwin is not an option. As Wine for serious work is also not.
- Dragging a file into the terminal, and having it write its path, is so natural, that when Windows didn't do it, I was dismayed.
- I've always used StarOffice, OpenOffice and now LibreOffice. All the people in my story received my documents and reports as a PDF and no one complained. Until a coworker saw me editing in LibreOffice and said "oh I want it in word format". As long as he didn't know, everything was fine, right?
- Windows is paid. And is there advertising? I don't understand. And I refuse. If you want to display advertising, then excuse me. I have no problem paying, I'm not an opensource shiite. It's just that paying and not working bothers me much more than an opensource that I can fix or expect a fix knowing the good will of the people involved.
- Hyper-V is a joke. QEMU/KVM is better, and Bhyve on FreeBSD which is a very young project, is already a million times better than Hyper-V.
- Developing in C/C++ for Windows is only possible in two ways: Either you've always lived in Windows and your brain is conditioned, or you compile with MSYS2 (CLang or GCC).
- There is no significant evolution of the windows desktop since 95.
- Multiple workspace support with multiple monitors, not ready. It's another joke.
- REGEDIT does not need any comment.
- The system loses performance over time. I still don't know how Windows achieves this.
- I've seen people complain about desktop fragmentation on Unix and Linux. Many DEs end up leaving applications with different themes (like running a Qt application in Gnome and GTK in KDE), but to be quite honest, the lack of Windows standard bothered me much more. Even Microsoft's own software is completely different: Control Panel, Calculator, Paint and Office, To-Do, and Settings, have horrible style differences and look-and-feel fragmentation.
- Dark mode has not been implemented. It's another joke. Many applications are white while everything else is dark. Sorry, even on Linux which is a mess, this has been resolved. And well resolved.
- NTFS? Serious?
- C:, D:.. It doesn't convince me since DOS.
- News "biased" in the search bar is a lack of respect for those who use the computer to work.
And that. For me, Windows is the alternative operating system. I can't take Windows seriously, for me it's an experimental one like Haiku or ReactOS. It's good to play.
About market share, it doesn't convince me to use it. But convinces me to sell. I've always developed applications to run on Windows. And when I need it, I turn on a VM to compile the project. But in everyday life? Impractical.15
This rant is your playground for devrant-related chatgpt bot queries. You will still be judged for posting your queries here, but slightly less than in other rants.250
The saying "Perfect is the enemy of done" is so much BS.
The war on perfection is the enemy of artistic expression.
Look at old world architecture vs modern crap. Crafts are no longer a thing but stuff is only made as effeciently as it can be for the greedy and impatient.
The artists and craftsmen of old knew well that perfect was achievable and constantly strove to be more and more perfect in their arts and by side effect on themselves. In this mad world we've lost that to the pragmatists who see no value in the art of perfection or in those who do not value those who do.
The "doneists" can go fuck themselves. Perfectionism is where true artistic expression is at.15
🪙 The golden age of tech is coming to an end. We currently live in a world of tech built by engineers and great minds; both Windows and Linux are great in their own ways. PCs are the peak of engineering, both desktops and laptops because of how versatile, powerful and universal they are. They serve engineers, designers and end users. You can do anything you can imagine; because the great people who built it, did it in such way that they themselves could use and enjoy it.
📱 The tech of the future will become ever more limited. The next generation of humans will use Chrome OS gladly and not even feel limited because they never experienced the freedom provided by a true personal computer device. Android OS is already getting ever closer to restricting 3rd party APK installers. Big tech will do everything they can to limit freedoms and make everyone use cloud, where they can charge $ for every damn click.
☎️The consumer-facing tech will become increasingly dumbed-down over time. The programmers and engineers will be still able to use "true" tech, but only for work. In everyday life, they will have to be content with the dumb limited tech.
And there is nothing we can do to stop it.9
With Atom being discontinued I guess I have to start looking for a new IDE.
Visual Studio Code seems to be #1 choice.
I don't get why.
It pops up in the small side bar. Can't see which of the findings I am actually interested in.
2. Open file in Solution Explorer
Found the shortcut to open SE after my failed search. Trying to navigate files with keyboard. Enter does not open the file. Neither does CMD+Enter, Option+Enter or Shift+Enter, but CTRL+Enter does! In a new tab which only covers *half* of the window! Wtf.11
I applied to Amazon recently not really thinking about it I was just bored. Dropped my CV and I was asked to fill in why would I want to work in that position. I un-ironically put “It sounds like a lot of fun”, got rejected instantly then got an unrelated message from an Amazon recruiter from another division inviting me to apply, rejected it because it didn’t sound as fun.
I’m an honest bloke I just want to have fun.12
I fucking hate Electron, what ever happened to developing software natively? It's not like you have to stick to dot Net and C# or whatever, there's literally Lazarus or Delphi, which, at least Lazarus, not only is open source but also supports all major platforms.
Even Python has GTK, Qt and Pywin32 or whatever its called. While not exactly cross platform, it's still not eating up 1GB of RAM when you launch it.
I don't care if Bob from across the street uses it because he's too lazy to learn anything new, but when huge companies like fucking Discord (valued at 10B dollars) use it, it's insane.
More than once has Discord had a memory leak and was reaching upwards of 6.5GB of RAM usage.
Whats the most popular code editor? VSCode, Electron.
Chat client? Discord, Electron.
Wanna use something other than Discord? Maybe Matrix? Well guess what, while they do have multiple clients, the most developed and usable one is Element, yeah, Electron.
My crypto wallet? Exodus, Electron.
I genuinely don't think 16GB of RAM is enough nowadays. Thankfully I'm running a very minimal install of Arch Linux and do most of my work in a KVM, but it still hurts my brain.
Thanks for coming to my Ted Talk.
Also apparently the filter on this site sees ". net" as an url.11
oh, it got better!
One year ago I got fed up with my daily chores at work and decided to build a robot that does them, and does them better and with higher accuracy than I could ever do (or either of my teammates). So I did it. And since it was my personal initiative, I wasn't given any spare time to work on it. So that leaves gaps between my BAU tasks and personal time after working hours.
Regardless, I spent countless hours building the thing. It's not very large, ~50k LoC, but for a single person with very little time, it's quite a project to make.
The result is a pure-Java slack-bot and a REST API that's utilized by the bot. The bot knows how to parse natural language, how to reply responses in human-friendly format and how to shout out errors in human-friendly manner. Also supports conversation contexts (e.g. asks for additional details if needed before starting some task), and some other bells and whistles. It's a pretty cool automaton with a human-friendly human-like UI.
A year goes by. Management decides that another team should take this project over. Well okay, they are the client, the code is technically theirs.
The team asks me to do the knowledge transfer. Sounds reasonable. Okay.. I'll do it. It's my baby, you are taking it over - sure, I'll teach you how to have fun with it.
Then they announce they will want to port this codebase to use an excessive, completely rudimentary framework (in this project) and hog of resources - Spring. I was startled... They have a perfectly running lightweight pure-java solution, suitable for lambdas (starts up in 0.3sec), having complete control over all the parts of the machinery. And they want to turn it into a clunky, slow monster, riddled with Reflection, limited by the framework, allowing (and often encouraging) bad coding practices.
When I asked "what problem does this codebase have that Spring is going to solve" they replied me with "none, it's just that we're more used to maintaining Spring projects"
sure... why not... My baby is too pretty and too powerful for you - make it disgusting first thing in the morning! You own it anyway..
Then I am asked to consult them on how is it best to make the port. How to destroy my perfectly isolated handlers and merge them into monstrous @Controller classes with shared contexts and stuff. So you not only want to kill my baby - you want me to advise you on how to do it best.
sure... why not...
I did what I was asked until they ran into classloader conflicts (Spring context has its own classloaders). A few months later the port is not yet complete - the Spring version does not boot up. And they accidentally mention that a demo is coming. They'll be demoing that degenerate abomination to the VP.
The port was far from ready, so they were going to use my original version. And once again they asked me "what do you think we should show in the demo?"
You took my baby. You want to mutilate it. You want me to advise on how to do that best. And now you want me to advise on "which angle would it be best to look at it".
I wasn't invited to the demo, but my colleagues were. After the demo they told me mgmt asked those devs "why are you porting it to Spring?" and they answered with "because Spring will open us lots of possibilities for maintenance and extension of this project"
I can take a lot. But man, that hurts.
I wonder what else have they planned for me...11
I honestly don't think that Windows Vista was bad on its own.
My belief is that these things are what hurt people's perception of Vista:
1. The "Vista Ready" sales stickers on computers that weren't loaded with either updated drivers or were straight up below minimum specs.
2. Hardware drivers. Vista came with an entirely new way of writing drivers, while an improvement over XP, didn't get manufacturer support for a long time. Remember a long time in the world of software is very short time when your shit doesn't work.
3. Windows 7. When it came out it was seen as the savior because stuff just worked. But in reality what probably happened was driver support had improved since Vista's introduction of the new way to write them.
Those are my thoughts. I should add I didn't have any issues with Vista and upgraded in-place to 7 when it came around. The same machine was then upgraded in-place to Windows 10.
Do you agree, disagree?2
A little over a year into my job at my current company back in January, I have a yearly meeting with my manager to discuss the progress I’ve made and to talk about what’s next. This is the meeting where we are supposed to discuss a potential pay raise but it’s the last topic of a predefined agenda.
So we spend a couple hours talking about how work has been for me. I started there as a junior developer with very little experience in the field but was quickly able to jump into a project with a fairly large codebase to help out the only other developer working on the project. Before long they’re so happy with me that they actually put me in charge of the application, which means my responsibilities evolve toward a whole lot more communication with the client and everything else that comes along with being in charge, including a lot of stress. I also salvaged another application initially developed by another company but that was so bugged it should’ve just been sent to the pits and rewritten from scratch. I was also asked to develop a couple POCs that were satisfactorily delivered.
Anyway, after almost two hours of going over my accomplishments and getting praises from my manager, we finally get to the part where we’re supposed to discuss a pay raise. He immediately cuts me off by saying the subject is not on the table due to the current crisis and our company struggling to make ends meet. I tell him I understand how hard it must be for them but also explain that I know for a fact other companies in the field are still making financial efforts to reward employees they’re happy with. He responds by saying that he’s aware of that, but he also “knows” that those same companies are laying off people that don’t deserve to be laid off despite the fact that they’re receiving government aid to stay afloat.
In the weeks following that meeting, I find out our company is doing the exact same thing my manager was condemning (laying off good people, taking massive advantage of government aid) and all the while not giving anybody a raise.
In any case, I really felt like that meeting was huge waste of time. What’s the point of going over everything I’ve done, congratulating me for my great work and even promising to give me even more responsibility if you don’t want to reward me for any of it? Do you honestly think I’m working hard so I can get a pat on the back or brownie points from you? I’ve got a family to take care of and I am trying to make their lives a little better each day by putting in hard work. But if hard work and climbing the latter of responsibility does not help me achieve that, what’s the point??1
I hate my current work with this piece of bad written legacy $hit. As 2 year old 'junior' without any code review and mentor I feel depressed. I should improve my skills at home and run away from it.
F#$ck you, corpo.3
During the 3 years I've been in this job I have had one pay increase.
My manager has gotten 2 raises and 2 promotions (which each come with a pay raise) during that same time.
My company really knows how to make you feel unappreciated.7
Software Devs are less supportive than the community tries to convey. They're also part of the most self-deluded and obnoxious crowd that exists on earth.
Someone saying they don't enjoy coding 24/7 outside of work? You actually enjoy totally different hobbies that have next to nothing to do with coding?
- Shitty developer, you should probably work elsewhere. Maybe flipping burgers.
"Coding in <Framework X> is SO friggin' easy. You're basically subhuman garbage if you can't learn it within a month!"
Watch some YouTube Videos with the "Freelancer Success Stories" of dudes that haven't - apparently coded, ever - and started to code late in life and tell you how perseverance and learning brings the success and yet you never see any repos of those guys. You see those guys mostly go on for up to half an hour to regurgitate some hot garbage you can read up within two minutes yourself from ANY coding blog.
You're not using a macbook to develop?
- "Oooof, man! How can you?"
You don't really like "Popular Framework X"?
- Especially when it comes to Frontend Frameworks prepare to either die on the hill of your beliefs or die a futile and slow death when people - more or less - snarkily try to dissect your opinion in order to try - again, more or less - to hide their own bias. Because don't forget, your opinion is OBJECTIVELY wrong and you simply happen to a garbage developer for (dis-)liking something.
You DO like "Popular Framework X"?
- Well, rinse and repeat basically.
You struggle to get a new job?
- All your fault. You clearly didn't spend enough time coding; you should have at least 12 Open-Source Projects with at least 100k downloads the week.
There is actually a whole lot more, but I feel I'm basically done with software dev. Software development is neither creative nor terribly fun. I'm just angry at myself that I switched careers for the money.20
The senior (literally, he's like 100, chill dude otherwise, super smart) wrote on an issue that we "could not ~massage~ the data on the backend, have to be done on the front".
I don't know what massaging the data means but now it's in the codebase. I have a locationMassager, getMassagedData, massaging: boolean
Seriously though when did that become a thing? I did not sign for body work2
Has anyone ever worked on a project with no architect or team lead? And where no team member has knowledge of OOP or functional, or restful design, or deep framework knowledge or deep language knowledge? And where the accepted best practice for all devs is to copy paste everything so that there is no area you can change and cause breakage elsewhere? And people regularly commit 1000s of lines methods and have never unit tested before?
Because I do right now. Feel free to ask questions of you want.12
I’m pissed because there’s so much I want to do and explore in the programming world but I feel like I’m never going to get around to it.12
I have a junior who really drives me up a wall. He's been a junior for a couple of years now (since he started as an intern here).
He always looks for the quickest, cheapest, easiest solution he can possibly think of to all his tickets. Most of it pretty much just involves copy/pasting code that has similar functionality from elsewhere in the application, tweaking some variable names and calling it a day. And I mean, I'm not knocking copy/paste solutions at all, because that's a perfectly valid way of learning certain things, provided that one actually analyzes the code they are cloning, and actually modifies it in a way that solves the problem, and can potentially extend the ability to reuse the original code. This is rarely the case with this guy.
I've tried to gently encourage this person to take their time with things, and really put some thought into design with his solutions instead of rushing to finish; because ultimately all the time he spends on reworks could have been spent on doing it right the first time. Problem is, this guy is very stubborn, and gets very defensive when any sort of insinuation is made that he needs to improve on something. My advice to actually spend time analyzing how an interface was used, or how an extension method can be further extended before trying to brute-force your way through the problem seems to fall on deaf ears.
I always like to include my juniors on my pull requests; even though I pretty much have all final say in what gets merged, I like to encourage not only all devs be given thoughtful, constructive criticism, regardless of "rank" but also give them the opportunity to see how others write code and learn by asking questions, and analyzing why I approached the problem the way I did. It seems like this dev consistently uses this opportunity to get in as many public digs as he can on my work by going for the low-hanging fruit: "whitespace", "add comments, this code isn't self-documenting", and "an if/else here is more readable and consistent with this file than a ternary statement". Like dude, c'mon. Can you at least analyze the logic and see if it's sound? or perhaps offer a better way of doing something, or ask if the way I did something really makes sense?
Mid-Year reviews are due this week; I'm really struggling to find any way to document any sort of progress he's made. Once in a great while, he does surprise me and prove that he's capable of figuring out how something works and manage to use the mechanisms properly to solve a problem. At the very least he's productive (in terms of always working on assigned work). And because of this, he's likely safe from losing his job because the company considers him cheap labor. He is very underpaid, but also very under-qualified.
He's my most problematic junior; worst part is, he only has a job because of me: I wanted to give the benefit of the doubt when my boss asked me if we should extend an offer, as I thought it was only fair to give the opportunity to grow and prove himself like I was given. But I'm also starting to toe the line of being a good mentor by giving opportunities to learn, and falling behind on work because I could have just done it myself in a fraction of the time.
I hate managing people. I miss the days of code + spotify for 10 hours a day then going home.12
Im one of the people who got laid off due to covid19. I was hoping to find work at the same salary my previous job paid me at the very least. A friend of mine pointed out the fact that since i've been in the industry a while that I could ask for a lot more than what I made. I didn't believe him, but since my wife agreed, I've been asking for double my previous salary. I actually got a job that met my ask. I'm glad to say that after being afraid I was getting in over my head, I can actually do this. Glad my friend told me my worth and I hope others have friends that can do the same for them.14