Details
-
AboutWriting good code at Codeable. Working remotely since 2012. Always willing to learn. Loving life!
-
SkillsWordPress, PHP, JS, HTML, CSS, Python, Bash
-
Website
Joined devRant on 5/4/2019
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
-
29-year veteran here. Began programming professionally in 1990, writing BASIC applications for an 8-bit Apple II+ computer. Learned Pascal, C, Clipper, COBOL. Ironic side-story: back then, my university colleagues and I used to make fun of old COBOL programmers. Fortunately, I never had to actually work with the language, but the knowledge allowed me to qualify for a decent job position, back in '92.
For a while, I worked with an IBM mainframe, using REXX and EXEC2 scripting languages for the VM/SP operating system. Then I began programming for the web, wrote my first dynamic web applications with cgi-bin shell and Perl scripts. Used the little-known IBM Net.Data scripting language. I finally learned PHP and settled with it for many, many years.
I always wanted to be a programmer. As a kid I dreamed of being like Kevin Flynn, of TRON - create world famous videogames and live upstairs my own arcade place! Later on, at some point, I was disappointed, I questioned my skills, I thought I should do more, I let other people's expectations make feel bad. Then I finally realized I actually enjoy a quieter, simpler life. And I made peace with it.
I'm now like the old programmers I used to mock 30 years ago. There's so much shit inside my brain. And everything seems so damn complex these days. Frameworks, package managers, transpilers, layers and more layers of code. I try to keep up. And the more I learn, the more it seems I don't know.
Sometimes I feel tired. Yet, I still enjoy creating things and solving problems with programming. I still have fun learning. And after all these years, I learned to be proud of my work, even if it didn't turn out to be as glamorous as in the movies.30 -
I put an Easter egg into a product, that if you enter the string "final countdown" into the stock code search field, it plays a YouTube vid of Europe's "The Final Countdown", in a hidden div. It's an in-joke for a few people in the company.
A well meaning maintainer with no sense of humour or judgement takes over and goes on the warpath against any hardcoded strings. The secret code gets moved into a config file.
A third developer changes the deployment script so that it clears any configs that aren't explicitly set in the deployment settings.
So the secret code is now "".
Literally every PC in the stock buying department is now blaring out "The Final Countdown" at top volume.
...Except none of them have speakers, so it remains this way for over a year and two more changes of maintainer.
I just noticed this afternoon and quietly re-hardcoded the string. The buying dept.'s PCs will silently sing no more.31 -
TLDR : I left a company which doesn't understand the concept of email id and passwords.
Me (trying to login to the alumni website) *no register user option*
Customer support - you've to click on forgot password to create an account.
Me - Wonderful
*clicks on reset password*
*enters employee id, name, email, father's name, DOB, date of joining , date of leaving, current city because apparently if I just enter my employee id it is as if they never knew me. Sigh*
*your password will be sent to your email id*
Me - okay. *waits for two weeks because I assumed someone will manually go and create my account and email me, considering the state of system. *
After two weeks,
Me - I still haven't received my password on email after I created my account. Can you please check?
After one week,
Customer support - you need to click on forget password if you forgot your password.
Me - *inventing new curse words* I have not forgot my password, I never received it in the first place!
After one week,
Customer support - yes you'll receive your password on your email id.
Me - *runs out of curse words* seriously dude?
* proceeds to reset password*
System - your password has been reset. Your new password will be sent to your email id. *apparently anyone can reset passwords if you have the employee id, which is an integer*
After a week
Me - Am I going to ever receive the password? I've tried generating passwords, resetting my password. I never get my passwords. What should I do!!
Customer support - yes you need to click on Forgot password.
Me - are you fucking kidding me!!!
You fuckers need to be fired and replaced by a FAQ page which has no question and just a single answer, because a peanut has higher IQ than you. For any questions you may have, just reset password. Goddammit idiots!
Also, which email id are you sending my passwords to?
Customer support - myname@oldcompany.com
Me - you do realize that this is the alumni website for the company. Alumni means ex members.
Being ex members, you can assume we don't have access to our company email ids obviously?
Customer support - yes.
Me - how am I supposed to get the password using my old email id then?
Customer support - you need to click on forgot password option.
I think I should probably move to the Himalayas for my anger management issues. Plus it'll be probably easier to throw idiots off a mountain.31 -
So... Just overheard a conversation at an Apple store...
tl;dr;
The customer gets furious for not getting to buy a mac pro for the price he wants and it doesn't even include the monitor there.....
C - customer, S - Sales person.
C: Hey, I've heard that apple released new home computers. May I get one?
S: Hello, they are not out yet.
C: WHAT?! How can they not be out yet? They released it like a week ago.
S: Well, they announced it, not officially released it for sale.
C: Ah, whatever. Can I pre-order it now?
S: Sure, we'll need your details and a deposit.
C: What? A deposit for what? That $1000 machine?
S: Sir, do you know the prices?
C: Of course. They have released a new machine and it will cost like previous ones - from $1000.
S: Then you might be talking about Macbook Air...
C: *Interrupts* No, I'm talking about the desktop computer, the whole box.
S: Ok... It starts at ~$6000.
C: WHAT?! It can't be... Oh well, I'll buy it. I hope it's the fully-specked one. Oh and does it come with a monitor?
S: No sir. It's the base model and it has no monitors.
C: WHAT?! How can this be?
S: You see, these are devices created for professionals. They are not for home users since our iMac line is....
C: *Interrupts again* Are you saying I'm not a professional?
S: I'm sorry but by the questions and lack of information - it seems to be true - you are not a professional.
C: FUCK YOU, I'm going to another store and they will sell it for me for $1000. What a piece of crap is this.
*Customer leaves furiously*
S: *to another S* - What is wrong with that dude? Is he high or what?
S2: *shrugs* and tells that it's the 5th time someone came to order that pc and was scared by the price.
---
So yeah... It's fun to see how idiots think that anything apple releases is for them... Once again I was made sure that apple fans are brainless fucks that will buy anything it produces and if that is not in the right price - they'll get furious.
ps. I own apple product, mac pro 2015. Would never buy a newer one NOR an iphone. I don't think that anyone is dumb just for buying it - people buy whatever fits their needs and that's ok but... More than we would like to admit - people buy it because it's an apple product....23 -
I found a healthCheck function while troubleshooting an old application for a large auto manufacturer today. The healthCheck function was running several times a day on a timer. The function tries to insert a record into the database and returns whether or not it was successful. It was written in 1999 and has to date inserted over 2.5 million records into the database! 1/3rd of the data for this application was the same record.
How the hell did nobody notice this for 20 years!!!3 -
Today my current company fuck itself.
We were in negotiations about the end of my contract/mission, I want to quit to create a company around AI.
And the actual chairman said to me "You think too highly of yourself. I could find a tenth of people to replace you so shut up and take what we offer".
30 minutes later they received my resignation. 1h after that, the 15 dev under me resigned (after two year working with us they are clearly under paid). At the end of the day, the Head of product and the two good PO resigned.
This morning I get an email, talking about suing me as I made everyone resigned and asking for a meeting.
So I went to the meeting with a lawyer, they weren't expecting it. Boring legal stuff came after that.
And the funny fact: at the end of the meeting the CIO, chief ops and the SRE resigned as well.... As they didn't want to have the run it without all the team...
Funny day :)
Last month the main product, 90% of the company use it, was launched. And in three months 80% if the IT profiles will be out...36 -
The 3 greatest things in life:
1 A great orgasm
2. A great shit
3. Fixing a major bug before anyone notices.
Work directly on a production system and get all 3 experiences simultaneously.8 -
!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 -
That's it, I'm done. My sincere condolences go to the poor soul that will have to maintain this complete and utter crap of code, as I have been doing the past 2 weeks.
3-4 big 4K+ lines files of completely unindented, practically undocumented, interspersed HTML, PHP, JavaScript and CSS! All in the same file.
All the function and variable names are complete nonsense. You might as well have smashed your head against the keyboard and let whatever came out be the names.
You took all the naming conventions that you could find and unleashed your seriously damaged imagination. lowerCamelCase, UpperCamelCase, snakecase, everything in the same fucking function name.
I really needed the money from this project. But I'm done. My mental sanity is more important that try to figure out how to make a decent and usable webpage of THIS COMPLETE DISASTER.
You, the one before me. If you wanted to make sure that no one else besides you could work with this crap, then congrats, YOU FUCKING DID IT WITH HONORS. FUCKING SUMMA CUM LAUDE. PhD and all.4 -
I'm creating the idea explained on http://helstra.net
Anyone interested in joining me? [more details]28