Details
-
AboutEducated programmer with student salary
-
Skillsnode, react
-
LocationBerlin
Joined devRant on 6/28/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
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
Client: Where are we with the project, it's been a week and I see nothing.
Me: You asked me to do something that was not in the agreed scope of work, which has kept me from starting on the project.
Client: Do I need to plan out everything in advance on paper for you to get it done in a timely manner?
Me: Is that a serious question? Yes, you should. That's the whole point of creating a scope of work. It's to allow me to schedule out the time necessary to build out a product in a "timely manner".
Client: I don't appreciate your attitude. This is not how you should be doing business if you like making money.
Me: I don't appreciate your condescending, unreasonable, dickhead mentality that makes you think it's remotely okay to act like you're better than me. Money doesn't grant you the right to be a dickwad, and just because I'm being paid doesn't mean I have to put up with any level of arrogance or disrespect.
I am in this business to make money, but not at the cost of my dignity and self-respect. You will be receiving a full refund later today, not because I have to provide a refund, but because I never want to communicate with you ever again moving forward. Take your unacceptable bullshit somewhere else.14 -
I absolutely HATE "web developers" who call you in to fix their FooBar'd mess, yet can't stop themselves from dictating what you should and shouldn't do, especially when they have no idea what they're doing.
So I get called in to a job improving the performance of a Magento site (and let's just say I have no love for Magento for a number of reasons) because this "developer" enabled Redis and expected everything to be lightning fast. Maybe he thought "Redis" was the name of a magical sorcerer living in the server. A master conjurer capable of weaving mystical time-altering spells to inexplicably improve the performance. Who knows?
This guy claims he spent "months" trying to figure out why the website couldn't load faster than 7 seconds at best, and his employer is demanding a resolution so he stops losing conversions. I usually try to avoid Magento because of all the headaches that come with it, but I figured "sure, why not?" I mean, he built the website less than a year ago, so how bad can it really be? Well...let's see how fast you all can facepalm:
1.) The website was built brand new on Magento 1.9.2.4...what? I mean, if this were built a few years back, that would be a different story, but building a fresh Magento website in 2017 in 1.x? I asked him why he did that...his answer absolutely floored me: "because PHP 5.5 was the best choice at the time for speed and performance..." What?!
2.) The ONLY optimization done on the website was Redis cache being enabled. No merged CSS/JS, no use of a CDN, no image optimization, no gzip, no expires rules. Just Redis...
3.) Now to say the website was poorly coded was an understatement. This wasn't the worst coding I've seen, but it was far from acceptable. There was no organization whatsoever. Templates and skin assets are being called from across 12 different locations on the server, making tracking down and finding a snippet to fix downright annoying.
But not only that, the home page itself had 83 custom database queries to load the products on the page. He said this was so he could load products from several different categories and custom tables to show on the page. I asked him why he didn't just call a few join queries, and he had no idea what I was talking about.
4.) Almost every image on the website was a .PNG file, 2000x2000 px and lossless. The home page alone was 22MB just from images.
There were several other issues, but those 4 should be enough to paint a good picture. The client wanted this all done in a week for less than $500. We laughed. But we agreed on the price only because of a long relationship and because they have some referrals they got us in the door with. But we told them it would get done on our time, not theirs. So I copied the website to our server as a test bed and got to work.
After numerous hours of bug fixes, recoding queries, disabling Redis and opting for higher innodb cache (more on that later), image optimization, js/css/html combining, render-unblocking and minification, lazyloading images tweaking Magento to work with PHP7, installing OpCache and setting up basic htaccess optimizations, we smash the loading time down to 1.2 seconds total, and most of that time was for external JavaScript plugins deemed "necessary". Time to First Byte went from a staggering 2.2 seconds to about 45ms. Needless to say, we kicked its ass.
So I show their developer the changes and he's stunned. He says he'll tell the hosting provider create a new server set up to migrate the optimized site over and cut over to, because taking the live website down for maintenance for even an hour or two in the middle of the night is "unacceptable".
So trying to be cool about it, I tell him I'd be happy to configure the server to the exact specifications needed. He says "we can't do that". I look at him confused. "What do you mean we 'can't'?" He tells me that even though this is a dedicated server, the provider doesn't allow any access other than a jailed shell account and cPanel access. What?! This is a company averaging 3 million+ per year in revenue. Why don't they have an IT manager overseeing everything? Apparently for them, they're too cheap for that, so they went with a "managed dedicated server", "managed" apparently meaning "you only get to use it like a shared host".
So after countless phone calls arguing with the hosting provider, they agree to make our changes. Then the client's developer starts getting nasty out of nowhere. He says my optimizations are not acceptable because I'm not using Redis cache, and now the client is threatening to walk away without paying us.
So I guess the overall message from this rant is not so much about the situation, but the developer and countless others like him that are clueless, but try to speak from a position of authority.
If we as developers don't stop challenging each other in a measuring contest and learn to let go when we need help, we can get a lot more done and prevent losing clients. </rant>14 -
Linux sucks.
Now now, chill. I'm using it as my main OS for a few years now. I know what I'm talking and this title is a bit click-baity, but this just has to go out there:
1. It's usable as a Windows replacement just fine - FALSE. XFCE4 is years old and buggy as hell especially on multi-monitor set-up, Gnome3 gets stuck more often than my Windows 98 machine used to, KDE is like a rich kid on meth. Plug in Bluetooth headphones? Well no, sorry, you have to research that online, since you'll probably need to install some packages for it to work. Did I say "work"? Well no, because after more research you realize that Debian on Gnome3 on gdm3 launches pulseaudio on its own, so you have 2 instances of pulseaudio, and one of them is stealing your headphones sometimes and you either have no sound or shitty sound. How do I know that you ask? The same way I know everything else - every time you try to do something new on any Linux, it involves a ton of research. Exciting research, don't get me wrong, but at this point it looks more like a toy than a reliable desktop computer operating system.
2. And why am I using pulseaudio? Why not alsa? years ago people were discussing on forums that pulseaudio is old and dead, yet here we are with new LTS release of Ubuntu still shining with Pulseaudio. How about several different service management systems being deprecated by new ones, each having different configurations and calling methods? Apparently systemd is old and lame now. It's a mix of 10 year old software that works badly, with a 5 year old replacement that works worse, somehow trying to live under the same roof. Does it work? Ask my headphones who sound like a fucking dial-up modem.
3. Let's talk about displays, shall we? xorg is old and deprecated, right? We got Wayland that's mostly stable. Don't know what that is? That's just basic knowledge for Linux. And when you try to install network-manager, it also tries to install Mir toolkits. Because why the fuck not install 3 display managers when you want a network manager, of which one is old and dying, one is young and stupid, and another is an infant that died of cancer?
4. Want to integrate with Google Drive? Yeah, there's a tool that mounts the drive as a local directory. Yeah only for Ubuntu. Want it on Debian? You need to compile it. Oh wait, it's on Ocaml, because fuck mainstream languages, we're hipsters. How do you compile Ocaml? Well you need to have Ocaml on your system, dummy. How do you do that? Well you need to compile Ocaml. Ok, how do I do that? Well, git clone, download and install some dependencies, configure, make... oh sorry, you're using libssl1.0.2g when you need libssl1.0.1f, nope, sorry, won't work. Want to install libssl1.0.1f? Why? You already have the "g", stupid! Want to remove libssl1.0.2g? Bye-bye literally everything that you have on your PC. But at least you got the "f". Does it work now? Well no, because you need libssl1.0.2g for another dependency to work.
And all I ever wanted was to get a fucking document from google drive (not nudes, I promise).
5. Want to watch a movie? Let me tear that screen in half and make the bottom half late by a couple of frames, because who needs vertical sync, right? Oh you do? Well install the native drivers maybe. Oh you have? Welcome to eternal Boot to Recovery mode, motherfucka!
---------------------------------
Yeah, most of the times things work just fine. But the reason I know what those things are and how they work is not curiosity. The reason that I know the inner workings of Linux much better than the inner workings of Windows, is because in those few years that I've been using it full time, it has caused me 10 times more headache than I have ever experienced with other systems. And it's not the usual annoyances like "OMG it rebooted when I didn't ask it to", but more like "Oh, it won't work and I need 2 days to find out why" kind of stuff, because even if you experience the same thing again, it's always caused by some new shit and the old solution won't work any more.
I still love it, and will continue to use it. I don't know why really. Maybe because I'm not afraid of fucking it up any more? Maybe because I can do what I want in it and recovering will be easier than on Windows?
It's a toy for me, after all these years. And I also use it for professional reasons.
But whenever someone presents it as a better alternative to Windows, I just want to puke.51 -
The beginning of my freelancing time. I was so naive. Didn't even used contracts...
This one client wanted a website with 2 specific features until a certain time. It should look nice, but only the features functionality was defined. All seemed reasonable at first.
I delivered 2 weeks before the deadline. The client was furious, as it didn't look like they imagined. They wrote me 8 lengthy emails with very fractioned feedback. It was becoming unreasonable.
But hey, I'm a newbie in this business. I have to make myself a name, I thought.
Oh was I naive....
This whole project went on for 2 more months. The client was unhappy with every change and 2-5 emails a day with new demands were coming in. I was changing things they wanted done 2 days ago, because they changed their mind.
Then they started to get personal. They were insulting me and even my family. My self-confidence dropped to an all-time low.
In the end I just sent them all the code for free and went to therapy.
BTW: this was also my most important experience, as things went up hill from then on. As Yoda once said: The greatest teacher, failure is.8 -
Dear fellow devs, I would like to remind you to get up and drink a glass of water once in a while.
At least drink enough so that your pee is clear. Just trying to look out for you guys.13 -
I made a web app and a mobile app for a client two months ago. Yesterday I shut down the server because I wasn't paid yet despite my multiple warnings and reminders.
Under thirty minutes the money was in my bank account.
Sad thing is they weren't responding to me, ignoring or lullabying me with good cop bad cop acts, acting like friends etc...
Lowering my bar to people / agencies like this depresses me.
Btw they are my former agency, they have all the money in the world but turns out they are all jackasses after all...15 -
You know what I hate? When people don't listen to me.
You know what I love? When shit blows up in their faces because they didn't listen to me8 -
My dumb CEO just hired an even dumber CTO. The new CTO asked me the following questions...
1. What is GitHub?
2. What is JSON?
3. What’s an array?
4. What is Get and what is Post?
5. When an iPhone is offline, can it call an API on our server to tell us it’s offline?
6. I know you’ve spent 11 month the writing this backend in PHP but can you change it to Java now?
Me: Why?
Dumb CTO: Because it’s better.
Me: How?
Dumb CTO: because it is.
7. I know you’ve started to rewrite this codebase I Java but can you convert it to Node.JS now?
Me: Why?
Dumb CTO: Because Facebook uses it.
8. What is MySQL? Why aren’t you using a database instead?
9. What does NULL mean?
Somehow, I doubt that asshole is remotely qualified for the job.
Fakin shyt for brains.180 -
"We need you to build a feature on our website to stop people taking screenshots. I can use the print screen key and then easily print out our website design. You need to make the site design harder to copy".
This is an extract from a recent client email I received. To say I'm in shock is an understatement.26 -
You know what really grinds my gears? As a junior webdeveloper (mostly backend) I try my hardest to deliver quality content and other people's ignorance is killing me in my current job.
Let's rant about a recent project I had under my hood, for this project (a webshop) I had to restructure the database and had to include validation on basicly every field (what the heck, no validation I hear you say??), apperently they let an incompetent INTERN make this f***king webshop. The list of mistakes in this project can bring you close to the moon I'd say, seriously.
Database design 101 is basicly auto incremented ID's, and using IDs in general instead of using name (among a list of other stuff obv.). Well, this intern decided it was a good idea to filter a custom address-book module based on a NAME, so it wasn't setup as: /addressbook/{id} (unique ID, never a problem) but as /addressbook/{name}, which results in only showing one address if the first names on the addresses are the same. Lots of bugs that go by this type of incompetence and ignorance. Want to hear another joke? Look no further, this guy also decided it was a great idea to generate the next ID of an order. So the ordernumber wasn't made up by the auto incremented id on the order model, but by a count of all the orders and that was the next order number. This broke so many times, unbelievable.
To close the list of mistakes off, the intern decided it was a great idea to couple the address of a user directly to an order. Because the user is able to ship stuff to addresses within his addressbook, this bug could delete whole orders out of the system by simply deleting the address in your addressbook.
Enough about my intern rant, after working my ass of and going above and beyond the expectations of the customer, the guy from sales who was responsible for it showed what an a**hole he was. Lets call this guy Tom.
Little backstory: our department is a very small part of the company but we are responsible for so much if you think about it. The company thinks we've transitioned to company wide SCRUM, but in reality we are so far from it. I think the story below is a great example of what causes this.
Anyway, we as the web department work within Gitlab. All of our issues and sprints are organized and updated within this place. The rest of the company works with FileMaker, such a pile of shit software but I've managed to work around its buggyness. Anyway, When I was done with the project described above I notified all the stakeholders, this includes Tom. I made a write-up of all the changes I had made to the project, including screenshots and examples, within Gitlab. I asked for feedback and made sure to tag Tom so he was notified of my changes to the project.
After hearing nothing for 2 weeks, guess who came to my desk yesterday? F**king tom asking what had changed during my time on the project. I told him politely to check Gitlab and said on a friendly tone that I had notified him over 2 weeks ago. He, I shit you not, blantly told me that he never looks on there "because of all the notifications" and that I should 'tell him what to do' within FileMaker (which I already had updated referencing Gitlab with the write-up of my changes). That dick move of him made me lose all respect for this guy, what an ignorant piece of shit he is afterall.
The thing that triggers me the most in the last story is that I spent so much free time to perfect the project I was working on (the webshop). I even completed some features which weren't scheduled during the sprint I was working on, and all I was asking for was a little appreciation and feedback. Instead, he showed me how ignorant and what a dick he was.
I absolutely have no reason to keep on working for this company if co-workers keep treating me like this. The code base of the webshop is now in a way better condition, but there are a dozen other projects like this one. And guess what? All writen by the same intern.
/rant :P10 -
Someone awesome was in charge of correcting the official CS exams at our university (blue: student, red: corrector) :-D3
-
So, since I hear from a lot of people (on here and irl) that Linux has a 'very high learning curve', let me share my experiences with the first time my dad touched Linux (Elementary OS) without me interfering at all! (keep in mind that he is very a-technical)
*le me boots the system* (I already did setup a user account for him and gave him the password).
Dad: *enters password and presses enter*
Me: "Hmm that went faster than expected."
Dad: "Uhm I know how to login son, it's not that hard and pretty obvious".
Me: "Alright, why don't you try to open up the default word documents editor on here! I'll be right back!"
Me: *Goes away and returns after a minute*.
Dad: *already a few test sentences typed in LibreOffice writer* it's going pretty well :)!
Me: "Oo how did you find that?!"
Dad: "Well, there's a thingy that says 'applications' so I clicked in and found it in the "Office" section, do you think I am blind or something?!"
Me: 😐. uhm no but I just didn't think you'd find it that quickly. Now try to install Chromium browser! *thinking: he'll fail this one for sure* I'll be right back :).
Me: *returns again after a minute or so*
Dad: *already searching for stuff through Chromium*
Me: "wait, how the hell did you do that so quickly, it's not the easiest thingy for most people".
Dad: "Jesus, it's not that hard! I went to the application browsing thingy, typed 'software' and then a sorta software store icon showed up so I clicked it and it opened a windows with a search bar saying something like 'search for applications/software'. clicked in it, typed 'chromium', saw it coming up, there was a very clear 'install' button, it asked for my password, I put it in and after a little it gave a notification that it was installed. Then I went to that application browsing thingy again and typed Chromium. Then I hit enter because it selected an icon called chromium...."
Me: O.o. Okay this is going very good, now open an email client and login to your email address!
Dad: *goes to application browsing thingy, types 'email', evolution icon shows up, dad clicks it, email address setup steps show up and dad follows them quickly. After about a minute, everything is setup.
I expected this to be a hard process for someone who dealt with Windows his entire life but damn, I underestimated it.
Asked him if he found it easy/what he liked about it:
"Well, it's very clear where I can find everything, default browser/email/word document editor programs are easy to find and that's about all I need so yeah, great system!"
I am proud of you, dad!77 -
Today was the most fuckedup day of my internship as a software developer. I have this shithead manager who doesnt know how to explain the client requirements properly and keeps on fucking yelling at me for not understanding the requirement and not coming up with the right output. That asshole compares me with the other teammate as to how fast he is and how slow i am to even write 5 lines of code in python.(I am new to python). He has yelled at me in his cabin with the door open so that everyone on the floor could hear. Most humiliating and disappointing day of my life. I dont feel like seeing that shitheads face again. I just have a month left and i will be happy if the opportunity doesnt get converted to a full time. Todays events have made me doubt myself to a great extent and has left me disheartened. Ranting abt it makes me feel a little better.7
-
WHAT THE FUCK.
I have to deal with a fucking bug that crashes my app only when I'm NOT looking for it.
I investigate another bug? Then BAM, here it is and crashes the app. And I have to start over again find the right conditions to not trigger it again.
I investigate that bug? Nope, everything runs as smooth as velvet.
It's like a Heisenbug, but the cat is dead in the box AND pissing all over the lab at the same time.3 -
UPDATE: I have my dream job.
About a year ago I commented on Devrant that I was having some hard luck interviewing for development jobs.
Shortly after my post I decided to lower my expectations and took a job at a tech support call center.(3 month contract)
After getting a little experience(Not just a degree) I was able to land a hardware support job at a fortune 500 company.(Not what a programmer really wants 😂)
I worked hard and started writing tools at home to help with the job. I started giving them out to the other techs and put them on a little internal website for easy access.
About 3 months ago I just became a software engineer within the company.(after 6 months of hardware repair.) The main reason I got the job was because I showed them how much overtime and extra work I had done and that the techs relied on my software to do there jobs and that I was dependable.
It was hard work but it was worth it. And I built software that I never would have done if I hadn't taken this "lower job"
So keep your chin up and your fingers on the keys, I was in your shoes a year ago. 😉12 -
Computer Science is probably the only major where if you suck at it and end up dropping out, you're more likely to be a leader than someone who is good at it and sticks with it.
There were roughly 200 people in my freshman class majoring in CS, by my sophomore year that number had dropped to about 120. A lot of people dropped out because it was too damn difficult for them, and they switched to less technical majors like "Business Information Technology" or "Management Information Systems." Almost without exception, the people who dropped out are now managing teams of developers, they actually have programmers reporting to them. Seriously, WTF?
This isn't even the worst of it, there are people who majored in art history who are now "product managers," who take the word "manager" in their job title literally, they think they're above developers. Some of them will even profess with no small amount of pride that they "know nothing about technology." You can hear the pride in their voice when they say it, as if they're saying "I'm a lot of things, but at least I'm not a geek." Is there any other field of study where people boast with such pride that they know nothing about it? I mean, very few people will say "I know nothing about history" or "I know nothing about literature", and if they do say it, they'll say it with a bit of humility. When it comes to Computer Science though, knowing nothing about it is almost a badge of honor.
Rant the f**k over.19