AboutTo sum it up: Over engineers stuff Has Impostor Syndrome (who doesn't?) Is unsure of what to specialize in Hates Firebase Loves Rust Knows nothing about DevOps Is a bit afraid of SysAdmin/SRE stuff Ubuntu...
SkillsRust ❤️, Svelte, Vue, Typescript, SCSS
Joined devRant on 12/12/2019
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
I have some good, no, great news I forgot to share yesterday:
Drum roll 🥁🥁🥁🥁
I just got my first job as an intern!!!
I'll be developing their product from scratch along with a few other devs, it's gonna be awesome. My primary occupation will be as a backend dev, but I'm also gonna help a bit on the frontend.
They also said they won't micro manage me, they just want me to deliver their tasks, so I can work whenever I want and not necessarily 6 hours a day. I'm a bit skeptical here because that sounds like they're gonna overwork me, but they also said they don't want to get in the way of my studies in college, so idk. It seems like a really nice place.
It's going to be remote work and the pay is also very good for an internship.
All of it seems way too good to be true, there has to be a catch... I'll find out in time, just let me be happy for getting my first actual job ever ok? Just for a few days.
Anyways, I'm just so fucking happy with this and wanted to share it with ya :)7
Fucking useless bots.
I need a bit of help in getting some documents from my University, so I go into their site and they have a WhatsApp support number. Perfect, I think to myself. So I send them a message with my question and a fucking bot answers me with a list of categories for my question, none of them matching my question. So I answer the "Other" option and it just sends me a FAQ link. Like what the actual fuck? I contacted the fucking number because I need help from a damn human, not a fucking FAQ link you useless waste of server resources.3
Fucking hell everything in java is so annoying, confusing and hard to get working. I just want to use JavaFX, why do you require me to sacrifice a lamb in order to do so? It might be my fault though, but c'mon, I don't want to spend 2-3 hours reading through shitty documentation in order to understand how maven works and what the hell Gradle is. Why can't it be as simple as adding a module name to a config file, like in Rust's Cargo? Even using intellij to acquire JavaFX and set it as a dependency doesn't work, it gives me some weird "JavaFX not configured" bullshit error. What the fuck, you're a library, you shouldn't need anything else ffs9
Want to know again how it felt like when programming for the first time? Learn Prolog, it fucking twists your brain inside out. It's pretty cool tho, very very challenging.3
So I'm basically fucked.
There's a major bug on an SPA I developed for a client, but I can't reproduce it because I don't have a recent iPhone or iPad (the only ones I have a way too old and either way I can't debug them without a mac) and I can't reproduce the bug on my android.
To overcome this in the past I installed a hackintosh on my pc and used it's iphone emulator, but I fucked it up and had to reinstall all my OSs but was too lazy to reinstall macos. Now I don't remember how to install it anymore, idk where I downloaded the fucking mojave virtual box image and the macos bootable usb stick I have just doesn't work anymore (probably some missing kext or whatever).
I really do not know what I'm gonna do. There's this ios-webkit-debug-proxy thing that might help me, but it just looks like it's a hassle to install and since I don't know what I'm doing the chances of it working are pretty slim. I might try that but I'm fairly confident it won't work. And even if it does, I still can't install chrome on the iphone I own because it's too old and my dad probably won't let me upgrade it to a new version.13
I bring you all another gem from my computer science course, this time from my OOP class.
The first assignment we made for this class was a simple CLI shop, where you would have basically three main classes:
- A Product class that you extend to create different types of products.
- A Cart class that manages a list of products (basically an ArrayList<Product>) and has some useful methods
- A CLI class to display a simple interface to the user and call methods on a Cart.
Basic OOP stuff, so far so good.
Then for our second assignment the teacher asked us to make Cart a generic class, where you would say Cart<Bagel> and you would only be able to put bagels in it. This makes absolutely no fucking sense, this is not a good use case for generic types since
1) you would never limit your customer's cart to one type of product at compile time.
2) in Cart, you have to cast the generic type to Product to extract any information from the product, like when getting product prices to calculate the total price, so might as well use a fucking ArrayList<Product>
I'm just saying what he's asking us to do has (to our fictional shop's business logic) absolutely no advantage over subtyping.
Also, why the fuck teach generic constraints when you can just tell your students "just cast T to Product", right?
Like fucking hell, couldn't you spend like 10min to come up with a decent assignment that actually teaches generic types the right way? ffs
And just so no one can say "but wut simple assignment would you give to teach students generic types?", here's a simple and much, much better alternative: implementing your own ArrayList. Done. Can't get much better than that, it's a legit use case and teaches you the basics.
Sorry man, you're a great person, you really are, but you suck as a teacher.3
Just lost like half an hour debugging an issue because I was using .pop() to get the last element of an array, but not intending to remove the element from the array. I wish typescript had immutable references... Rust kinda spoiled me there.2
I'm tired but I don't want to go to sleep because I'm working on a pretty complex algorithm and, even though I'm writing the cleanest code I can with lots of comments, I feel it's going to be a pain in the butt to understand what's going on tomorrow
Just had a great interview :)
The guy was really cool, asked actually relevant questions (my learning process, what I specialize in, etc), talked about the tech they'll be using and none of that "wHaT aRe YoUr WeAkNeSsEs?" bullshit.
He seemed to like me, he seemed to like the fact that I've been programming for a long time even though I'm in my second semester in college and he also seemed to like that I'm somewhat of a Swiss army knife, a jack of all trades but master of none.
I just I was a bit too informal in the interview but whatever. I'm not taking this very seriously, if I get the job I get the job, if I don't that's fine too.6
Don't you love when there's a teeny tiny little bug in your code that's not very important but you want to get fixed because you're a perfectionist so you start inserting log statements and it magically fixes itself and stays fixed even after removing the log statements? So now you have to live in constant fear that the bug will appear again and you will never be able to fix it.
Abfjancnancnamxhajd fuck this, fuck js, fuck webpack. It was probably a fucking cache issue but who knows, fuck everything.8
When people (mostly girls) ask me what I study in college and immediately answer themselves with "oh it's IT or something like that, right?" a part of me just dies. They literally think I'm studying how to work at help desk or fix printers. I'm not even exaggerating, a girl once told me she actually thought that. I'm not sure if she's just dumb as fuck or if most people actually think that about computer science, hopefully it's the former...17
Any recommendations for introductory books on electrical engineering? I'm looking for something that goes into detail on the basics: tension, current, resistance, inductance, capacitance, etc. I have very little knowledge on the subject (I know what the basic components do and that's it) and I found myself struggling a bit with the most basic concept: voltage.
I grabbed my multimeter, a few resistors and a battery and played around a bit. For some reason it doesn't really "click" why on a 5v circuit with 3 2.2k ohm resistors (I think) the voltage around each resistor was like ~1.3 volts or something, while on a circuit with 2 resistors the voltage accross each one was ~2.3 something volts (I don't remember exact values). Like, I know that voltage is a difference in potential, but I still don't get it and idk what I'm missing. Why is the difference in potential accross a resistor different if the circuit has 2 resistors in series instead of 3. It kinda makes sense in my head but at the same time it doesn't.
In short, I want to know the "why" stuff works the way it does, not just the "how".
Also, if the book covers common practices, components, and circuits that'd be very helpful. I want to learn how to build well-designed, reliable and safe circuits.12
I thought my project would break on an edge case and I would have to spend 2-3 hours rewriting some code to fix it. Turns out I had already thought about that edge case when implementing that functionality (which was like 6 months ago), so nothing breaks and I don't have to fix anything. What a pleasant surprise!3
I think I like teaching.
Today I was helping out a friend with an algorithm for an assignment because he had no idea how to do it (we're on the second semester). You could see that we was completely lost, without a clue on what to do. So I showed him how to think about programming, how to figure out the problem and the solution before going to the code. I was so goddam happy when I saw he understood it. At the start I was guiding him heavily, but towards the end I'd just loosely describe what he had to do (and, of course, explain why) and he'd know how to do it. It just made me so fucking happy and so fucking proud of him, I was dancing on my chair, you guys have no idea. He went from 0 to 60 in 2 hours, I could teach him what the teacher couldn't.
I college I'm kinda explaining a lot of stuff (mostly programming and calculus) to my friends, even to classmates I don't know (I made a few friends this way) and I fucking love it. Seeing people completely lost, shining a light on them and seeing them fly, it's fucking awesome. Idk it's just very fulfilling.
Not sure I'd like all other responsibilities that come with being a teacher, but teaching in of itself is **g r e a t**, definitely a career path I'm considering.
Today was a good day :)14
I think I need some "programming detox", a couple weeks away from any kind of software development. It's just not fun anymore, I have lost my drive, I'm lazy to learn new stuff, I never finish my projects, I don't even know if I enjoy web development anymore.
Actually, I'm kind of lost on what to do with my life.
I don't want to become a full time web developer because it's boring, it's always the same shit: write frontend with some sort of framework, design database, write backend, rinse and repeat. There's nothing new, all projects seem to have the same requirements.
I don't want to get into machine learning and whatnot because it's a lot of math and theory, I like math but idk if I would like doing that all day. Same goes for basically anything related to research.
Low level stuff: on paper I like it, it's interesting, but I'm too lazy to learn and whenever I come up with a robotics project I end up making a shopping list and forgetting about it because either 1) stuff is too expensive or 2) I can't make the parts I want without spending a lot of money on tools. Also from what I can see in school, VHDL is boring af.
I just don't know what I like anymore, nothing gets me excited, not even video games. I used to like csgo but I just suck at it and I only play it because there's nothing else to play and deep down I still have a little bit of hope of becoming a decent player, even though I know I never will.
I just don't know what I want out of life. Sometimes I just like having tons of school assignments (especially calculus ones) just to keep me busy.8
Rust I think, it introduced me to using iterators and monads. I try to use them wherever I can, they're so cleeaan.
I want to fucking strangle my past self to death. Why the hell didn't you use typescript you dumb fuck? Your life would be way easier now.6
I accidentally deployed a patch to the development server instead of the production server (which is what I wanted) and somehow it was also deployed to production. I have no idea how, but everything's working so idgaf. If it works it's all good.7
So it finally sunk in that now is not the time to develop a commercial app. I never did it because reasons (too lazy to explain it all), but I always wanted to and this time I was determined to do it, but it dawned on me that now is not the time. Right now I have to do well in college and learn as much as I can.
Sadly that sweet sweet passive income will have to wait, but I'm kinda excited. I have basically freed myself from the feeling of guilt of making slow progress on my project. No more of that voice in the back of my head "but I should be developing the project, not this random thing". Now I'll basically just try my hand at a fuck ton of stuff, see what I like, maybe get an internship with a teacher of mine, who knows.2
I AM GONNA KILL SOMEONE
Leave me the fuck alone!
All I want to do is work and study in peace, but no, every 5mins someone comes into my room
Fucking hell I'm turning into one of those pricks that think everyone is less competent than them, how do I go back? I guess I'm not as humble as I thought I was ._.12
Another gem from my Database Fundamentals class, this time it's from the textbook:
So right now we're learning about data modeling with ERDs and the book is explaining a few things about attributes. I got to a part where the book was explaining when you should split an attribute into many (the book mixes up conceptual modelling and logical modelling). The first example the book gave was an address, splitting it up by street name, address number, city, postal code, etc. So far so good. Now we get to the second example: a phone number. The book split the the number 55 11 9784-8900 into four parts:
Country code: 55
Area code: 11
Number prefix: 9784
Number suffix: 8900
At this point I was like "WHAT?". Separating area and country codes from the rest of the number is ok, that's useful, but splitting the number itself in half? Why the fuck would you want to do that? Correct me if I'm wrong but the dash in the middle of the number is just used for "chunking", to make it easier for our brains to read the number. Why would you want to split the number in half? There's literally no reason to do it, at least not in the example the book was showing.
Every time I open this book I keep wondering why the hell my teacher chose it to be our textbook. He's a great teacher, his lectures are awesome, he explains stuff super well, but he chose this book. A book that's filled with shitty literal translations to domain-specific words and acronyms, shitty examples, and convoluted sentences.6
Sorry about another non-dev rant, but I can't help it :p
I have seen a post here on devRant a few minutes ago talking about being a millionaire, so I thought I'd write a lil something for people thinking of chasing that.
As I said in a comment on that rant: as Jordan Peterson (aka Lord of the Lobsters) said, in order to be successful you need to be an industrious person, i.e. you gotta work hard, very hard. Most success stories are from people that worked very very hard (Elon Musk is one I can remember off the top of my head) and had to put their life, friends, family in second place. To this day I remember watching a video on a 30 year old millionaire, he said he didn't have friends for about 6-10 years, he just worked, worked and worked. If that's what you wanna do with your life do your thing, I'm just saying that's not it for me.
A few years back I wanted huge success (being famous, being rich), but I've come to realize that's not what I want. Being famous must suck, people recognizing you everywhere you go and shit, and being rich comes with a price (pun intended?), which is working every minute of your time for 10 years. That's not gonna make me happy, I have realized that I want to get married in my early 30's at max, have kids, buy a comfortable house somewhere in europe, have enough money to be able to give my family a good life and be able to buy and tune a few cars (that's a dream of mine btw), and maybe even try to start a company of my own (I don't like the idea of having a boss). And I think that to achieve these goals, all I need to do is be a bit smart right now: invest in fixed income, don't buy expensive shit, live with my parents at least until I get out of college and get a relatively decent job.
Anyway I might've steered off-course for a bit there, the point is: before you decide you want to be a millionaire, think what you actually want in life. If you want to be rich and are sure you have the willpower to work a 100 hours per week, do your thing, whatever makes you happy. But if you are going to work 60 hours a week and you're looking to be rich you're just going to be disappointed. You'll be chasing money all your life, sacrifice the (IMO) important things in life (friends, family, health, fun) and you won't get anywhere.
It's all or nothing, make up your mind before you waste your time.47
For the love of God, I cannot find the motivation to learn calculus. I'm like 1-2 weeks behind schedule on it and the teacher is probably gonna start giving out assignments soon, but I can't sit down and fucking study. It's not that I don't like math, I just don't like studying. The only way I study is when I'm pressured by an assignment/test deadline, that's how I always did it, but now I'm in college. I'm not studying just to get a passing grade, I need a fucking A and, above all, I need to learn the damn thing. But I can't find the patience to study without the threat of getting a low grade, so I let everything accumulate and then learn everything in a day or two, just enough to get a B+ or something like that. I'm hating myself for that, and I have to fix it asap. I guess I'll try studying again tomorrow...9
WHY THE FUCK DO MY TEACHERS KEEP USING SHITTY TRANSLATIONS FOR PROGRAMMING CONCEPTS?! Like dude, everything related to programming is in english, just use the fucking terms in english for fucks sake. There are some words like "array" that fit into portuguese sentences without needing translation, so why translate it?
Why do you use acronyms in portuguese? People in the Database Systems class will later read a lot the acronym DBMS but won't know what the fuck that is because they teach the acronym SGBD, which is a translation.
It's so cringy and useless, so many terms the students will have to translate back to english when they get out to the real world because everything related to programming is in english.
"oh but what if the person doesn't know english" you don't even have to know english, just associate the concept (which will be explained to you in your language) with an english word. Also if you don't know english you'll have a very hard time, so I'd suggest taking english classes as your electives.
Ok I'm done, I got it out of my system.6
Worst documentation? Unreal Engine 4's documentation on editor customization (custom panels/windows and whatnot). It might have improved in the last two years, but the last time I made a custom editor there was almost zero documentation on the matter and on their Slate UI framework. The little documentation that existed was very vague and had awful examples.
I don't remember very well, but I think it took me close to two weeks to get something very basic working. I had to read a LOT of C++ code filled with generics and macros to figure everything out, but after I did I enjoyed a lot working with that stuff.
I just don't know how I was able to do that, working with UE4 was a pain the butt every. single. day. Runtime error on the gameplay code? Too bad, the whole editor will crash and then take ~40s to reopen. It was crash after crash, ~1min of compilation time for any little change to the code, so so so so much frustration.
I do miss a those times a bit though, because even though it was hard, it felt good to feel competent, to know something complex reasonably well to the point I could help people on forums. Today I always feel I don't know enough about the languages/frameworks I use. It's kinda depressing, it takes a huge toll on my self confidence. But whatever, let's keep going, one day I'll get there :)
(inspired by another rant I read here)
Last semester we were learning Java in the Programming Fundamentals class and a friend of mine asked for help with an assignment.
The objective was to make a virtual store (as a console app) in which the user would be able to select a few products, customize some of them and then the program would print out a receipt, with a list of all products, their prices, and the total cost.
Simple enough I thought, but there was a catch: you were not allowed to use arrays because the teacher hadn't taught that to the class yet. So I was like "how the fuck are you supposed to do this then?". Turns out the way to do it was to just append text to a string in order to generate the receipt. This is stupidly simple, so stupid that it didn't even cross my mind.
It's just that it's an awful way to architecture your code, it's just plain shit. Sure, if you're learning programming that's completely ok, but using that code on production is just completely unfeasible and I think that's why it didn't even cross my mind to do it this way. I'm just constantly worrying about performance and good code architecture and organization that the simplest of all solutions slipped my mind. When I finally discovered the way the teacher wanted us to do it I just wanted to kill myself...3