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
Search - "protip"
0. Plan before you code. Document everything. You won't remember either your idea or those clever implementations next week (or next month, or next year...).
1. Don't hack your way through, unless that's what you intend to do. Name your variables, functions etc. neatly: autocomplete exists!
Protip: Sometimes you want to check a quick language feature or a piece of code from one of your modules. Resist the urge to quickly hack in the test into your actual project. Maintain a separate file where you can quickly type in and check what you're looking for without hacking on your project (For example, in Python, you can open a new terminal or IDLE window for those quick tests).
2. Keep a quiet environment where you can focus. Recommend listening to something while coding (my latest fad is on asoftmurmur.com). Don't let anything distract you and throw your contextual awareness out of whack.
3. Rubber ducks work. Really. Talking out a complex piece of logic, or that regex or SQL query aids your mind greatly in grasping the concept and clearing the idea. Bounce off code and ideas with a friend or colleague to catch errors and oversights faster. Read more here: https://en.wikipedia.org/wiki/...
4. Since everyone else is saying this (and because it merits saying), USE VERSION CONTROL. Singular most important thing to software development aside from planning and documenting.
5. Remember to flout all of the above once in a while and just make a mess of a project where you have fun throwing everything around all over the place. You'll make mistakes that you never thought were possible by someone of your caliber :) That's how you learn.
Have fun, keep learning!3
It seems like every other day I run into some post/tweet/article about people whining about having the imposter syndrome. It seems like no other profession (except maybe acting) is filled with people like this.
Well lemme answer that question for you lot.
YES YOU ARE A BLOODY IMPOSTER.
There. I said it. BUT.
Know that you're already a step up from those clowns that talk a lot but say nothing of substance.
You're better than the rockstar dev that "understands" the entire codebase because s/he is the freaking moron that created that convoluted nonsensical pile of shit in the first place.
You're better than that person who thinks knowing nothing is fine. It's just a job and a pay cheque.
The main question is, what the flying fuck are you going to do about being an imposter? Whine about it on twtr/fb/medium? HOW ABOUT YOU GO LEARN SOMETHING BEYOND FRAMEWORKS OR MAKING DUMB CRUD WEBSITES WITH COLOR CHANGING BUTTONS.
Computers are hard. Did you expect to spend 1 year studying random things and waltz into the field as a fucking expert? FUCK YOU. How about you let a "doctor" who taught himself medicine for 1 year do your open heart surgery?
Learn how a godamn computer actually works. Do you expect your doctors and surgeons to be ignorant of how the body works? If you aspire to be a professional WHY THE FUCK DO YOU STAY AT THE SURFACE.
Go learn about Compilers, complete projects with low level languages like C / Rust (protip: stay away from C++, Java doesn't count), read up on CPU architecture, to name a few topics.
Then, after learning how your computers work, you can start learning functional programming and appreciate the tradeoffs it makes. Or go learn AI/ML/DS. But preferably not before.
Basically, it's fine if you were never formally taught. Get yourself schooled, quit bitching, and be patient. It's ok to be stupid, but it's not ok to stay stupid forever.
Protip: appending ", dammit" to your Google searches tells their NLP algorithms that you need more relevant results6
Protip: use "color f0" whenever you use cmd in public, so you can disguise it like a notepad to avoid being branded as a hacker7
Did you know?
Critical error notifications in production are not a problem if you don't give a fuck.4
Was explaining a technical concept at a "family" dinner. Suddenly stepmother wanted my help for something technical.
Stepmother: Say Awlex, could you help me install some software I recently bought?
Me: (Not this shit again) I even don't know what software you're talking about. How is the software called, what does it do?
Sm: it's calles digital... *long pause*
Me: (I don't like where this is going)
Sm: software... *another long pause*
Me: (fuck me harder than that lightly clothed woman outside)
Sm: something... *long pause*
Me: (alright brain, which way out of here doesn't involves me creating a bullet hole in either one of us?)
Sm: And you can use it to sell something...
Me: (tf do you event sell?!)
Sm: but not like ebay
Me: (what is it then? A platform for selling services? I don't even know what kind of software you'd have to install, given that most of these platforms are be web applications, whcih makes sense for selling stuff on the internet)
Sm: Anyway, could you help me install it? It would take me hours to get into it.
Me: (You think just installing would solve it? As soon as I install it, you probably expect me to be your walking manual as well, don't you?) Look, I'm gonna be honest with you, since I started working I don't have nearly as much free time as I used to have (Not everybody works when they feel like it, you know that?) I get home at around almost 7pm (most of the time) and don't really wanna work afterwards. Most of the time there's a support service from the people who made this software and they would be glad to help you. (Sorry support team, for pushing this bundle of incompetence onto you, but I guess she didn't even listen to my advice).
After that she didn't back down and still wanted my help. Then my grandmother derailed the conversation and got me out of this. When I thanked her later she yold me that she saw I saw uncomfortable and wanted to help. I love my grandmother.
So I am not going to be your "family" tech support. You b(r)ought this onto yourself. Are more than twice my age and still can't use your brain to solve problems like these on your own and you can even less reason abiut your motives and desires when asking for help. I am sick of you and shutty opinions about people, just because I work as a software engineer doesn't mean I'm exist solely for satisfying your unreasonable desires.
Stop offending me and my profession and get yourself some common sense.
Protip #0: Give me one fucking reason to help you, because you're not family enough and your personality really doesn't bring forth any emotion but annoyance5
Protip : When you see someone in the middle of a Skype meeting, when it's written that they are in a videoconference with the red button to indicate that they aren't available
don't message them to ask them if they want to go on break.
When I don't know what a technology is about, I type it's name into Google search followed by 'vs'.
Google then suggest similar stuff, which helps me understand what I'm looking at.
This works: firstname.lastname@example.org
Spam filtering protip:
Did you know that the email spec allows you to use email@example.com and the emails still come to you. This is especially useful when registering to a lot of places where you are not sure whether they will spam you or not. Filtering will be easy because you have a unique email address for each service. Also you can find out which service leaked your email address to spammers.
Additionally if you want to register to a service with two accounts but still want to use the same email, you can do this easily by adding +whatever in your email address.6
Wrote myself a flight stability controller for a drone I built - used an ultrasonic sensor for altitude so it should've maintained a constant altitude, but I had the throttle increments too high...
Hooked up the battery - off it fucked, hit the ceiling, bounced off a wall, and broke 2 props before I could grab it and yank the battery off.
Protip - if you're building a drone, tie it to a heavy fucking rock for your first flight test!8
1) buy devrant stickers.
3) put stickers on checked bags. One on every side would be preferable.
4) easily find bags when arriving to destination as devrant stickers will make them stand out.
1. Dump Android Studio and use Sublime for a week
2. Realize you don't actually know how to write java anymore
Protip: don't drink gin and try to install stuff on a client's NAS while logged in as root.
Thank god I changed my mind and decided to do this another time...3
Protip: always account for endianness when using a library that does hardware access, like SDL or OpenGL :/
I spent an hour trying to figure out why the fucking renderer was rendering everything in shades of pink instead of white -_-
(It actually looked kinda pretty, though...)
I'd used the pixel format corresponding to the wrong endianness, so the GPU was getting data in the wrong order.
(For those interested: use SDL_PIXELFORMAT_RGBA32 as the pixel type, not the more "obvious" SDL_PIXELFORMAT_RGBA8888 when making a custom streaming SDL_Texture)5
(tl;dr) Protip: never take internship/training/job offers from startups.
Fucking piece of shit startups hiring innocent interns from University, hoping that they are full stack developers to build their shit website.
"I will throw challenges at you".
You fucking scum, I need a proper mentor to teach me something which is not my fucking domain. You expect me to know nodejs and reactjs, and if I don't know that means there's something wrong with my learning process?!!
I'm looking for an internship which basically means that I get company exposure to proper training unlike being your fucking slave, you uncultured swine.
Seriously, recruiters, these days jack off to google buzzwords.5
If I send you an email and it isn't urgent ... you don't have to reply and tell me:
"I'm on my way into the office, I'll respond when I get into the office."
All you did was waste time for both of us and your archive on send feature probably means you're going to forget that you got that email.
It's not helpful.... stop that...6
Pro tip: Don't cheap out on dongles for newer macbook models.. Bought a (somewhat) working Chinese dongle with 4 ports. Fire hazard and I think my 13" mbp just farted a fireball4
Protip to get free upvotes on Stackoverflow:
Ask something about Behat and make sure your questions looks smart. No one will ever answer but you'll get lots upvotes. FML.4
Going on a school camp where all the students in the school go.
2 nights and 3 days, planning to bring my laptop and my phone to make games there. (poor 15yo)
Any ideas not to be seen to the teachers? My loyal friends wont tell it because i promised to bring some old android devices for them to play games.10
Oh god... technical decisions should be taken by people who actually know what they are doing and even so still counter-checked and not followed blindly.
I am currently working in a company that wasted millions by trying to implement micro-services where they don't belong and didn't step back when they realize it was a mistake
(protip: micro-services usually don't belong in most places).
Now we're dealing with the sunken costs fallacy and I am seriously believing that the company is going bust in a few months. Let's wait and see.
protip for my colleague: putting everything in the users controller and views isn't the proper way to use an mvc framework....
...and duplicating - no, triplicating everything for different types of users doesn't make it any better
Protip: proposing a "simple yet beautiful" login form on Bootsnip with absolutely no knowledge of Bootstrap whatsoever, making it not responsive and centering it with hardwritten margins (such as: 'margin-left: 170px'), AND THEN proudly display "theme developed by WhoGives AShit" at the bottom won't make you any publicity at best. At worst, I'm gonna travel to India and won't leave before I erased the code you wrote by smashing your face on the "erase" key.1
protip == true
TL_DR = "exec mail ceo firstname.lastname@example.org"
The laziness of devs, including myself, goes hand-in with the crazy deliveries (groceries, etc) that Amazon delivers without having to leave home.
But...Amazon isn't prefect, occasionally I have issues and usually support is great. But when support isn't what you expect and you're more frustrated than before, send an email response and include email@example.com
And no, I don't work there... I'm just happy my issue was resolved and I got a nice credit added to my account. (Mileage may vary)
If you are going to tell me you develop using TDD, it's a good idea to actually have tests in your test project.
Want to weed out bad Devop potential hires? Ask them how their ideal branching strategy is designed. Such a simple question will tell you a lot!4
Name a shittier API to hook into than Magento's REST API.
Protip: You can't.
[bit of context]
Building 3rd party integrations via their REST API and keep unearthing "WTF?!" architectural design moments. For example: Pulling down products tells you if it has a configurable parent (product to store all master options, etc)... but fuck me if I want to know what the sku of that parent is, or any other means of accessing it!
How the fuck M2 is such a major eCommerce platform is beyond me. WooCommerce in comparison however: Beautiful API, Beautiful documentation, a couple of limitations, no big deal. I love WooCommerce.
M2 makes me question why the hell I became a dev sometimes.2
ProTip :: Avoid code conflicts by commenting out Git header references. Never worry about "resolutions" again
When looking for an exhaustive answer to a problem you’re facing regarding a specific technology, instead of asking the community for help, post a rant/false assumption connected to said technology and your specific problem.
Et voilà, never before have answers been provided with such swiftness and clarity.
co-worker : "hey, have you listened to this cool rocking song"
*Absolutely no idea about what he's talking about*
Me : *internally screaming* no I haven't
CW : well you should check it out, it really blah blah blah
I lost interest mid-way.
Protip : never intimate your colleagues out of their interest
PROTIP: If you go outdoors for recreation and you happen to be hiking in dry country where there is obviously a lot of potential tinder around you, don't be a dumbass and light off fireworks.
The lingering smell of burning is not conducive to creating software.
With the AQI north of 170, the building's HVAC can't keep up.1
Protip: If you're using a tiling window manager, you can detach the file browser on the left of any Jetbrians IDE.
This way you can switch to it using the shortcuts you're used to from the WM, as well as resize it very easily.
Also this way if you are not using the integrated terminal of the IDE, you can have the file browser span the full height of your screen, while the terminal and the IDE share the hight on the right.
Disclaimer: I don't know if this is common knowledge, I'm sorry if it is, but I was completely shocked that I missed this feature for years.6
Protip: Bugs exist everywhere, also in real life (no pun intended). Trying to think of possible real-life-bugfixes while commuting (train legroom too small, traffic jam on the same spot every day) makes makes the entry to your work projects easier. You simply haven't stopped thinking about bugfixes, only the project changed to "commuting".
PROTIP: Using ed(1) can be a fun experience. Just remember to RTFM and be patient.
Using a cheesy amber CRT helps, as well.
Protip: Got the latest npm? Next time you run a process that takes a while prefix it with 'npx benny-hill....'. Will make everything run much better!
E.g., npx run npm install
Protip by Brian Bi: Close terminal windows often, instead of reusing them. This ensures that the bash instance flushes its command history to ~/.bash_history, and new bash instances will be able to recall previous commands in their reverse-i-search.1