Details
-
Skills.NET software developer
-
LocationThessaloniki, Greece
Joined devRant on 10/22/2017
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
![](/static/devrant/img/pipeless-devrant-banner-white.png)
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
Microsoft support: "Your antivirus software is causing problems with the memory management."
Me: "I use Windows defender"
Microsoft support: "Oh..."
Me: 🙃13 -
!rant
First day on the job. Get Windows 10 laptop. Ask if I can use Ubuntu.
"Well everyone else is using it so I don't see why not"
So. Much. Win!!!11 -
“Why don’t you have a girlfriend? You have such a great personality”
“I’m a programmer.”
“Oh. I see.”17 -
I really, really hate it when someone has a problem/question, and I really dedicate my heart and soul to write a really good answer that even a stupid person would understand - with drawing, explanations and shit. And they answer is just:
"Thanks"
"Ok"
"I dont get it"
"Can you please do it"
"you spelled that wrong"9 -
**First Day of Internship**
PM: Our only supported browser at this company is Internet Explorer.
Me:22 -
Me:
* Builds Project and Hosts it *
* thinking * : * ' I don't really need to push to Master, I'll just push it to the deployed branch *
Me: * tests project from host *
Me: * sees a bug, fixes it and rebuilds the project, hosts it and pushes code to deployed branch *
4Hrs Later:
Colleague: Dude did you see the Typos you made? Fix them!
Me: In my defence, I wrote this at 4am in the morning, did not sleep for 2 days.
Colleague: Don't Care, fix it.
Me: *Creates Hotfix Branch from Master*
* INSTALLS DEPENDANCIES AND FINDS OUT A NEW VERSION IS OUT AND UPDATES THAT AS WELL *
* Runs Project and finds out it's not the hosted version. *
* Merges Deployed Brunch to Hotfix Brunch and this happens *
Error Message: Unexpected token
620 Merge Conflicts
🤦🏽♂️🤦🏽♂️🤦🏽♂️2 -
!dev
did my taxes months ago with the official software. because i was honest enough to mention a 250€ (annually) income for a freelance job i was later forced to submit a form for entrepeneurs. well, ok. let's use the official software for that. "yes we have the form, but no, you are not allowed to use it from this year on, please use our online service"
two weeks later (!) i receive the token to complete registration. while trying to fill the form i recognize german tax system is exactly the recursive piece of incomprehensible shit like the attached help text.4 -
*Mom shows me laptop ad of 3000 bucks with the most overkill specs ever*
Mom: "Son, will this laptop run Google?"
Me: "Do you want to surf Google or actually run Google's server?"
Mom: *looks confused*
"I also want to use Fesabook on it"
Me: *brings her a 5 year old laptop with a new ssd in it*
*has an old i3, 8gb ram and no gpu*
Mom: "This laptop is super fast! Thanks son!"
*One hour later*
*Mom calls*
"Son, I think the laptop broke"
Me: "What? What happened?"
Mom: "I pressed a button and now all the keys are lighting red" (backlit keyboard)
Me: "You can choose the color of your keyboard mom"
Mom: "Ooh! How do I make it pink?"
Me: "You can only choose between red and blue..."
Mom: "What a ripoff"
*Hangs up the phone*34 -
*client calls in*
Me: good morning, how can I help you?
Client: my ip is blocked, could you unblock it for me?
Me: certainly! What's your ip address? Then I'll have a look.
Client: I'm not giving you my ip?! That's too privacy sensitive.
Me: 😶
Me: 😶
Me: 😶
Me: sir, I'm very keen on my privacy myself but without that information I can't do much for you 😬
Client: ah so you're refusing to help me?
Me: not like that, it's just very hard to lift an ip block for me when I don't know the ip address.
Client: you just don't want to help, fine.
*click*
😶32 -
!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 -
An entirely sentient AI. Saved on a floppy disk.
People in the late 90s had quite the colourful imagination about the future...2 -
Hi, I am a Javascript apprentice. Can you help me with my project?
- Sure! What do you need?
Oh, it’s very simple, I just want to make a static webpage that shows a clock with the real time.
- Wait, why static? Why not dynamic?
I don’t know, I guess it’ll be easier.
- Well, maybe, but that’s boring, and if that’s boring you are not going to put in time, and if you’re not going to put in time, it’s going to be harder; so it’s better to start with something harder in order to make it easier.
You know that doesn’t make sense right?
- When you learn Javascript you’ll get it.
Okay, so I want to parse this date first to make the clock be universal for all the regions.
- You’re not going to do that by yourself right? You know what they say, don’t repeat yourself!
But it’s just two lines.
- Don’t reinvent the wheel!
Literally, Javascript has a built in library for t...
- One component per file!
I’m lost.
- It happens, and you’ll get lost managing your files as well. You should use Webpack or Browserify for managing your modules.
Doesn’t Javascript include that already?
- Yes, but some people still have previous versions of ECMAScript, so it wouldn’t be compatible.
What’s ECMAScript?
- Javascript
Why is it called ECMAScript then?
- It’s called both ways. Anyways, after you install Webpack to manage your modules, you still need a module and dependency manager, such as bower, or node package manager or yarn.
What does that have to do with my page?
- So you can install AngularJS.
What’s AngularJS?
- A Javascript framework that allows you to do complex stuff easily, such as two way data binding!
Oh, that’s great, so if I modify one sentence on a part of the page, it will automatically refresh the other part of the page which is related to the first one and viceversa?
- Exactly! Except two way data binding is not recommended, since you don’t want child components to edit the parent components of your app.
Then why make two way data binding in the first place?
- It’s backed up by Google. You just don’t get it do you?
I have installed AngularJS now, but it seems I have to redefine something called a... directive?
- AngularJS is old now, you should start using Angular, aka Angular 2.
But it’s the same name... wtf! Only 3 minutes have passed since we started talking, how are they in Angular 2 already?
- You mean 3.
2.
- 3.
4?
- 5.
6?
- Exactly.
Okay, I now know Angular 6.0, and use a component based architecture using only a one way data binding, I have read and started using the Design Patterns already described to solve my problem without reinventing the wheel using libraries such as lodash and D3 for a world map visualization of my clock as well as moment to parse the dates correctly. I also used ECMAScript 6 with Babel to secure backwards compatibility.
- That’s good.
Really?
- Yes, except you didn’t concatenate your html into templates that can be under a super Javascript file which can, then, be concatenated along all your Javascript files and finally be minimized in order to reduce latency. And automate all that process using Gulp while testing every single unit of your code using Jasmine or protractor or just the Angular built in unit tester.
I did.
- But did you use TypeScript?37 -
Worst: Writing a quick thing in Python, debugging endlessly because some class I created wasn't being instantiated properly and then realising that I haven't added the holy "()" while creating the object and before using methods in my unit tests.
Best: Creating some pretty sweet algorithms because I was thinking more out of the box and trying things out just for the lulz. -
Word of day:
Hellogrammer
Slang for person who can print "hello world", "hello", or some random string of character in multiple programming languages and whose knowledge is limited to printing string.
Synonyms: hypocrite, stupid, script Kidde....17 -
So...
It seems that I am building a toolbar for IE11.
Send me your wishes and love.
P.S. Not a joke30 -
Wanna hear THE Worst Thing ever seen:
NOT EVEN A SINGLE SEMICOLON( ; ) IN
>200 lines of JAVA CODE.
*Blind Eyes*9