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 - "quick-win"
-
!rant
After over 20 years as a Software Engineer, Architect, and Manager, I want to pass along some unsolicited advice to junior developers either because I grew through it, or I've had to deal with developers who behaved poorly:
1) Your ego will hurt you FAR more than your junior coding skills. Nobody expects you to be the best early in your career, so don't act like you are.
2) Working independently is a must. It's okay to ask questions, but ask sparingly. Remember, mid and senior level guys need to focus just as much as you do, so before interrupting them, exhaust your resources (Google, Stack Overflow, books, etc..)
3) Working code != good code. You are an author. Write your code so that it can be read. Accept criticism that may seem trivial such as renaming a variable or method. If someone is suggesting it, it's because they didn't know what it did without further investigation.
4) Ask for peer reviews and LISTEN to the critique. Even after 20+ years, I send my code to more junior developers and often get good corrections sent back. (remember the ego thing from tip #1?) Even if they have no critiques for me, sometimes they will see a technique I used and learn from that. Peer reviews are win-win-win.
5) When in doubt, do NOT BS your way out. Refer to someone who knows, or offer to get back to them. Often times, persons other than engineers will take what you said as gospel. If that later turns out to be wrong, a bunch of people will have to get involved to clean up the expectations.
6) Slow down in order to speed up. Always start a task by thinking about the very high level use cases, then slowly work through your logic to achieve that. Rushing to complete, even for senior engineers, usually means less-than-ideal code that somebody will have to maintain.
7) Write documentation, always! Even if your company doesn't take documentation seriously, other engineers will remember how well documented your code is, and they will appreciate you for it/think of you next time that sweet job opens up.
8) Good code is important, but good impressions are better. I have code that is the most embarrassing crap ever still in production to this day. People don't think of me as "that shitty developer who wrote that ugly ass code that one time a decade ago," They think of me as "that developer who was fun to work with and busted his ass." Because of that, I've never been unemployed for more than a day. It's critical to have a good network and good references.
9) Don't shy away from the unknown. It's easy to hope somebody else picks up that task that you don't understand, but you wont learn it if they do. The daunting, unknown tasks are the most rewarding to complete (and trust me, other devs will notice.)
10) Learning is up to you. I can't tell you the number of engineers I passed on hiring because their answer to what they know about PHP7 was: "Nothing. I haven't learned it yet because my current company is still using PHP5." This is YOUR craft. It's not up to your employer to keep you relevant in the job market, it's up to YOU. You don't always need to be a pro at the latest and greatest, but at least read the changelog. Stay abreast of current technology, security threats, etc...
These are just a few quick tips from my experience. Others may chime in with theirs, and some may dispute mine. I wish you all fruitful careers!221 -
!!rant
!!ANGER
Micromanager: "Hey, Root!
Since you're back, and still not feeling well, we have an easy ticket for you: Rewrite the slack integration gem! Oh, you don't have to re-implement all of it, just make sure it all works the same way it does now. That bitch you worked with once over a year ago who kept throwing you under the bus to management and stealing credit for your work? Yeah, she wrote the original code like four years ago. It's perfect, so don't touch it. but she can fill you in on all the details you need and get you up to speed on how to test it.
But yep! It should be simple. and I just knew you would love this ticket, so I saved it just for you. Nice and quick, too, to get you an easy win.
You know, since you have to repair your reputation with product. and management. and the execs. and the rest of the team. and me. Yeah, product doesn't trust you so they don't want to give you any tickets. They just can't trust you to get them out and have them work. So you have a lot of hard work to do."
Spoiler: The bus-thrower wasn't much help. (Surprise.)
Spoiler: The ticket was already in my backlog -- one of a grand total of two tickets.
Spoiler: I don't find the ticket fun. Maybe if I was to write the entire implementation with a nice DSL? but no, "don't touch the perfect code." Fuck you.
Spoiler: It isn't going to be nice or quick. But, she (micromanager) is looking to lose me, so that really is an easy win. for her.
And. just. argh. fuck you. i've been exhausted and dying for well over a year, but you've kept ignoring that (and still are, despite me providing goddamn legal forms from fucking doctors stating it in plain fucking english, which you also fucking ignore), and you just keep piling on the work and demanding the ridiculous of me despite it. Yeah I can pull it off sometimes. No, I really shouldn't, and I'm surprised I can. (also, "Time off? What, and lower your productivity even more? ____ doesn't even take vacations. And how are you doing on that ticket?") And no, none of my tickets have ever had any fucking problems. Not even when there are upstream service outages. Not. a. single. fucking. one. Ever. And the only things I've ever missed were things that bloody product never put in the fucking ticket, so fuck you with your "repair your reputation" bullshit.
god, i fuckiNG HATE THESESTUPOID ANWETLJAF SAJEWTKW BITCHFACEDUCKFUCKERS
Why the FUCK am I still fucking working here?
Right, because I've been burned out and dying so much I can't pass a fucking interview so I can fucking leave.
jasdkl;fk
ugh. Anyway. If you ever find yourself starting work at a Cali fintech company whose internal mascot is a very fine duck? Just run. I absolutely guarantee you will be miserable.rant root swears oh my micromanager duckfuckers "trivial" ticket root is fucking fed up root swears a lot holy shit rewrite an entire library in 2-3 days14 -
micromanager: "Quick and easy win! Please have this done in 2-3 days to start repairing your reputation"
ticket: "Scrap this gem, and implement your own external service wrapper using the new and vastly different Slack API!"
slack: "New API? Give me bearer tokens! Don't use that legacy url crap, wth"
prev dev: "Yeah idk what a bearer token is. Have the same url instead, and try writing it down so you don't forget it?"
Slack admin: "I can't give you access to the slack integration test app, even though it's for exactly this and three others have access already, including your (micro)manager."
Slack: "You can also <a>create a new slack app</a>!" -- link logs me into slack chat instead. After searching and finding a link elsewhere: doesn't let me.
Slack admin: "You want a new test slack app instead? Sure, build it the same as before so it isn't abuseable. No? Okay, plan a presentation for it and bring security along for a meeting on Friday and I'll think about it. I'm in some planning meetings until then."
asdfjkagel.
This job is endless delays, plus getting yelled at over the endless delays.
At least I can start on the code while I wait. Can't test anything for at least a week, though. =/17 -
Been reading devrant posts for a month or so, this is my first actual post. I'm hoping it will be therapeutic. ☺️ I need something to keep me from killing my boss when I see him again tomorrow..
Some backstory: Currently working in HR for the last 7 or so years with complete shit for brains boss, even worse when it comes to anything related to technology. For almost two years I've been working to get another bachelor's degree. This time in computer sciences, to make a career switch to systems and software engineer. Last week I roughly had the following wonderful conversation:
Boss: we've needed new Recruitment software for a while now. Can't you make us one as a school project?
Me: 'Make us one?' It's not really that simple.. I'm barely halfway through my education, maybe I could do it, but it would take me quite a long time even if I could work on it fulltime.. Combining a halftime job with a fulltime education is taking up enough of my time as it is and I have more than enough school projects btw..
Boss: it would be a win-win. Work a little harder in your spare time and when you graduate you have a real-life project on your resume.
Me: I'm sorry, i'm failing to see the 'win' for me here.. I work 10 hours a day, 7 days a week on average, trying to combine work and studies. I'm pretty much maxed out..
Boss: Your coworker(also extreme dumbass) told me you wrote some quick code the other day that helped him out. Don't underestimate yourself, I'm sure you can do this.
Me(in complete disbelief by now): I wrote him an Excel-macro! They don't even teach me that at school. It's a very very very long way from actual software development! I'm sorry, it just can't be done.
Boss: Thats too bad. I expected you to welcome an opportunity like this and be more motivated towards this company..
Me: ***more disbelief and silence, just staring at him***
I'm sorry you feel that way.
***walked away***
WTF, I work my ass off for 7 years for this fucking shithead.. Even before I started this bachelors degree I had at least some understanding of the work developers put in their software. It blows my mind, no, it fucking angers me how people think making software is so simple.. Why do you think it's a 3-year education you fucking cunt?
Please, someone tell me how I can keep myself from ramming his fucking head through a wall tomorrow...6 -
Keybinds you need (Windows):
Copy: Ctrl + c
Cut: Ctrl + x
Paste: Ctrl + v
Jump from word to word: Strg + Left arrow or right arrow
Mark text: Shift + Right arrow or Left arrow
Mark text (jump from word to word): Ctrl + Shift + Left arrow or right arrow
Quickly open task manager: Ctrl + Shift + Esc
Windows button alternative(e.g. for gaming sessions when you've disabled the windows button): Ctrl + Esc
*legend* Multitasking legend for switching quickly between programs (keep Alt key pressed to select the program you want to open by pressint Tab) Alt + Tab
Multitasking legend with a nice animation (not there for quick workflow but to manage programs, files, multidesktop): Windows + Tab
For people who have multiple desktops - If you don't have, go add two more:
Switch to next desktop: Ctrl + Windows + Right arrow
Switch to previous desktop: Ctrl + Windows + Left arrow
Navigate in taskbar: Windows + t
Quickly look computer: Windows + L
Some boot options (personal tip: navigate with arrow keys for faster workflow): Windows + X
Quickly toggle desktop: Windows + D
Screenshot of current program: Ctrl + Alt + Print
Screenshot of the whole screen and your external ones (will be saved in C:/Users/user/Pictures/Screenshots): Windows + Print
Open run.exe (can be used to open .exe files, e.g. to execute cmd, regedit quickly)
Close browser tab: Ctrl + w
Open browser tab: Ctrl + t
Search: Ctrl + f
// just single keys that are useful
Reload page: f5
Url bar: f6
reopen closed tabs (not sure about compatibility but is definitely working in chrome and firefox): Ctrl + Shift + t
Fullscreen mode (not a keybind too): F11
Alt + F4 to win the game
The boss of all key(bind)s (also not a keybind): Tab
If you got more tho write it down in the comments section. I really tried my best :'D16 -
One of the first attempts to use machine learning in chess computing yielded interesting results. The AI that was fed hundreds of thousands of historic grandmaster matches immediately sacrificed the queen, smashing it over a random pawn. The reason? When a grandmaster sacrifices the queen, it is usually a hard, calculated decision that leads to winning. So, AI assumed that the best way to win is to sacrifice the queen as quick as possible.3
-
So I'm a freelancer celebrating my second year at this one client (yes, times are good). When I first got to my current (not customer-facing) project, lots of "externals" (other freelancers) had come and gone, "internals" had been assigned and reassigned to and from this project and nobody knew exactly what was in the (angularjs) codebase.
One of my first
"quick win" assignments was to see if load times could be reduced. After some looking around it turned out someone had used moment.js (with locales, 67k gzipped) for some feature that had since been abandoned... and then accidentally dropped it into the source folder, checked it into source control (svn!), from whence it was happily packaged by the CI job and released every month.
Removing it reduced the pre-render javascript by about 40%. (also yes, that said "nobody knew exactly what was in the client-side codebase")16 -
I am a mechanical engineer first and my companies go to sysadmin second. So software developing isnt really my main field of expertise buuttt:
WHY IS SLOOPY SOFTWARE WRITING A VIABLE EXCUSE?
Story:
Yesterday i started to migrate some stuff from our old Win 2008 Server to the new 2016. Turns out there are some MS SQL Express Servers running. Quick check for what they are turns out that they are activly used. So far so good. For other reasons we have a new MSSQL 2017 Core Licence. So i thought, hey it would be nice to just move those 2012, 2008 and 2014 Express Servers to a real one that can use the entire machines capabilities.
After some try & error with exporting one of the softwares (where i had to elevate one the user rights to sysadmin for reasons) the entire system stopped working. I didnt deleted anything or changed anything! Well, i elevated user rights. After 2 hours of support call it turns out that the software stopped working cause i gave the database user sysadmin rights. I dont know enough about MSSQL to judge wether that is logical or not, but it sounds super illogical and i suspect sloopy software writing on the manufacturers part. One way or another, the excuse from the telephone support was "yeah, our software is a very fragile child"
Okay.
After i told all that my coworkers two of them were also "yeah, that is just how the [company] software is, you have to be careful with it"
Apparently it broke in the past for other minor stuff.
As an engineer i cannot build bridges that collapse when you use the left and the right lane at the same time. For an architect it isnt okay to build an house where the front door explodes when you open a window. It is not okay for a power tool to go out in a fireball when you accidently drill plastic with it. But for some weird reasons its socially acceptable for programs to be sloopy, buggy and only working under specific conditions. Since when is it okay for a car only to work when you know specific steps to make it run? Like, throwing your spare key in the gas tank, the kick the left wheel exactly three times and finally tapping the steering wheel 5 times left, 4 times right. What? That would be ridiculous? But that is exactly how that software works. You have to follow a specific step guide to make it work, EVERY TIME.
I. JUST. DONT. GET. IT3 -
upgrading to win 10. first 90% was quick. the latest 8 % took 2 hours... only 2% left (and 5 more computers to do this on). this sucks!4
-
For all the hate against windows I built over the now 8 years using linux as my main os. Now I feel windows 10 is quite good.
I got a little beefier desktop lately, been using just laptops from the last 8 years(8D) so I got this urge to get a desktop for gaming, I bought an entry level machine. ryzen 5 2400g, put my lovely linux mint and... the fucking machine was hanging up when the load was too high, and the load was too high too often because react/node etc.
I gave up in less than a day, I just did a quick search and some people said about secure boot or whatnot, some other claimed that ryzen cpus had no problem with mint, I got fed up quickly and did not try any solution with linux. Then I installed windows 10, installed the godamned drivers from the provided dvd ... since then it was a breeze.
The dark mode is gorgeous and no hanging up at all... I'm just sad that mint did not worked soo well. I wanted to have consistency between my laptop/desktop and I loved mint above everything. But well, some things improve while you're not looking at them, win 10 is quite good, I'll keep my desktop as gaming/programming pc with win 10, and well, the laptop will be auxiliar programming machine.
¯\_(ツ)_/¯4 -
So I had this project manager that asked me for a "quick win" on the Tuesday (no release planned) I told him I'm already working on fixing this solution properly and be ready for Friday.
He was determined i wrote code that was going to be useless and never used. As a result I sent him the productivity graph from the clean code book.
After about an hour and a half of silent. I was move project.1 -
I once was working on my family's business during summer and was doing something on the laptop that was there (according to the owner, it was in a "good shape" - oh my god that laptop nearly gave me cancer: an old Toshiba, running W10, with half the F keys not working - specially F5. I CAN'T LIVE WITHOUT F5 OH MY GOD -, and also the ➡ key (arrow keys). It was bought in a flea market and some IT guy, a friend of the owner, repaired it a bit and installed the OS because a laptop that old ran WinXP or Win Vista for sure) when suddenly it died on me.
I rebooted the thing and right before the time it should be showing the windows logo, the screen froze (on a black screen with some text) and it started to beep. Loudly. A loud continuous beep. I turned it off and on some times after that, seeing if turning it off and on did something (as it seems to work LoL) and it continued with the beeping. After a quick search I found out that that was a common problem with Toshibas that old, and that I needed to press F2 (that key worked thank god) when the black screen with the text showed up (I don't remember what was written there, it were some booting instructions, I think).
It worked. Great. Now the N key doesn't work when I press it. Greeeeeeeaaaaaat. Also it seemed that, when I opened the start menu, it would automatically write "nnnnnnnn(...)" without me pressing any key (pressing any key would make it stop though, maybe it was stuck).
Then I told the owner not to turn it off, because the laptop would start beeping and such (and I know he'd panic about it).
From then on I think it went off for good and now he's been using his own Toshiba, that runs Vista and is slow as all hell.
Moral of the story: he should have been used his crappy PC from the beginning, at least all its keys work
(Note: watching him type hurts my soul. When one is used to use both hands to type, and is fast-ish on the keyboard and uses tabs to change fields, watching someone type with only one hand every 2" or so and using the mouse to change fields hurts. So much time wasted 😭) -
How to Improve Aim in FPS Games?
First person shooting games require very sharp aim. If you have perfect aim, you win; you don't have it, you lose!
To improve your aim skills in your favorite FPS games, you need to practice a lot. But, you cannot practice while playing the game itself. Also, you must tune the setup to make sure your gaming mouse favors you.
In this article, I am sharing ways you can use to polish your aim skills and win. Here you go.
Choosing the Right Mouse & Grip
It is important that you get your hardware right. It includes a good gaming mouse and a high quality mousepad.
No, I am not suggesting to buy a $150 gaming mouse. But, make sure the mouse you are using has a precise laser sensor and the correct weight distribution. It matters a lot.
Secondly, make sure the grip suits your style. I personally prefer palm grip as it favors fast movement and more control over the mouse.
So choose your gaming mouse wisely.
Tuning the Right Settings
After you’ve got the right mouse, the next thing you need to consider is the software settings - DPI, sensitivity and acceleration.
DPI is the number of pixels moved on the screen while moving your mouse by 1 inch on the mousepad.
Having high DPI ensure quick movement and lower DPI improves precision. So, you need to find the correct balance between the two!
I discourage using mouse acceleration when you are playing an FPS game. You must turn it off in your mouse settings.
Practice, Practice, Practice
As I mentioned in the beginning itself, practice is the most important part in improving your aim for FPS games.
Fortunately, there are tools that you can use online to practice aim training. I recommend using this aim trainer online here, that's my favorite website to practice aim training https://clickspeedtester.com/aim-tr...
which has all the options and modes you would ever need for aim training.
Aim Booster lets you play in challenge as well as training mode. You can also choose from easy, medium and difficult mode.
There are different aiming methods you can practice - quick shot, double shot, twitching, sniper shot etc. I personally love playing the sniper shot as it drastically improves precision.
Final Words
Well, those were the most easy and totally worth trying ways to become a sharpshooter in FPS games. Although, no one can become pro overnight. It needs time and practice in equal amounts.
I hope these ways would help you in winning your favorite shooting games. Tell me comments how much it helped you.1 -
9 Ways to Improve Your Website in 2020
Online customers are very picky these days. Plenty of quality sites and services tend to spoil them. Without leaving their homes, they can carefully probe your company and only then decide whether to deal with you or not. The first thing customers will look at is your website, so everything should be ideal there.
Not everyone succeeds in doing things perfectly well from the first try. For websites, this fact is particularly true. Besides, it is never too late to improve something and make it even better.
In this article, you will find the best recommendations on how to get a great website and win the hearts of online visitors.
Take care of security
It is unacceptable if customers who are looking for information or a product on your site find themselves infected with malware. Take measures to protect your site and visitors from new viruses, data breaches, and spam.
Take care of the SSL certificate. It should be monitored and updated if necessary.
Be sure to install all security updates for your CMS. A lot of sites get hacked through vulnerable plugins. Try to reduce their number and update regularly too.
Ride it quick
Webpage loading speed is what the visitor will notice right from the start. The war for milliseconds just begins. Speeding up a site is not so difficult. The first thing you can do is apply the old proven image compression. If that is not enough, work on caching or simplify your JavaScript and CSS code. Using CDN is another good advice.
Choose a quality hosting provider
In many respects, both the security and the speed of the website depend on your hosting provider. Do not get lost selecting the hosting provider. Other users share their experience with different providers on numerous discussion boards.
Content is king
Content is everything for the site. Content is blood, heart, brain, and soul of the website and it should be useful, interesting and concise. Selling texts are good, but do not chase only the number of clicks. An interesting article or useful instruction will increase customer loyalty, even if such content does not call to action.
Communication
Broadcasting should not be one-way. Make a convenient feedback form where your visitors do not have to fill out a million fields before sending a message. Do not forget about the phone, and what is even better, add online chat with a chatbot and\or live support reps.
Refrain from unpleasant surprises
Please mind, self-starting videos, especially with sound may irritate a lot of visitors and increase the bounce rate. The same is true about popups and sliders.
Next, do not be afraid of white space. Often site owners are literally obsessed with the desire to fill all the free space on the page with menus, banners and other stuff. Experiments with colors and fonts are rarely justified. Successful designs are usually brilliantly simple: white background + black text.
Mobile first
With such a dynamic pace of life, it is important to always keep up with trends, and the future belongs to mobile devices. We have already passed that line and mobile devices generate more traffic than desktop computers. This tendency will only increase, so adapt the layout and mind the mobile first and progressive advancement concepts.
Site navigation
Your visitors should be your priority. Use human-oriented terms and concepts to build navigation instead of search engine oriented phrases.
Do not let your visitors get stuck on your site. Always provide access to other pages, but be sure to mention which particular page will be opened so that the visitor understands exactly where and why he goes.
Technical audit
The site can be compared to a house - you always need to monitor the performance of all systems, and there is always a need to fix or improve something. Therefore, a technical audit of any project should be carried out regularly. It is always better if you are the first to notice the problem, and not your visitors or search engines.
As part of the audit, an analysis is carried out on such items as:
● Checking robots.txt / sitemap.xml files
● Checking duplicates and technical pages
● Checking the use of canonical URLs
● Monitoring 404 error page and redirects
There are many tools that help you monitor your website performance and run regular audits.
Conclusion
I hope these tips will help your site become even better. If you have questions or want to share useful lifehacks, feel free to comment below.
Resources:
https://networkworld.com/article/...
https://webopedia.com/TERM/C/...
https://searchenginewatch.com/2019/...
https://macsecurity.net/view/...