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 - "life of coder"
-
rant? rant!
I work for a company that develops a variety of software solutions for companies of varying sizes. The company has three people in charge, and small teams that each worked on a certain project. 9 months ago I joined the company as a junior developer, and coincidentally, we also started working on our biggest project so far - an online platform for buying groceries from a variety of vendors/merchants and having them be delivered to your doorstep on the same day (hadn't been done to this scale in Estonia yet). One of the people from management joined the team working on that. The company that ordered this is coincidentally being run by one of the richest men in Estonia. The platform included both the actual website for customers to use, a logistics system for routing between the merchants, the warehouse, and the customers, as well as a bunch of mobile apps for the couriers, warehouse personnel, etc. It was built on Node.js with Hapi (for the backend stuff), Angular 2 (for all the UIs, including the apps which are run through a WebView wrapper), and PostgreSQL (for the database). The deadline for the MVP we (read: the management) gave them, but we finished it in about 7 months in a team of five.
The hours were insane, from 10 AM to 10 PM if lucky. When we weren't lucky (which was half of the time, if not more), we had to work until anywhere from 12 PM to 3 AM, sometimes even the whole night. The weekends weren't any better, for the majority of the time we had to put in even more extra hours on the weekends. Luckily, we were paid extra for them, but the salary was no way near fair (the majority of the team earned about 1000€/mo after taxes in a country where junior developers usually earn 1500€/month). Also because of the short deadline given to us, we skipped all the important parts like writing tests, doing CI, code reviews, feature branching/PR's, etc. I tried pushing the team and the management to at least write tests and make feature branches/PRs, but the management always told me that there wasn't enough time to coordinate and work on all that, that we'll do that after launching the MVP, etc. We basically just wrote features, tested them by hand, and pushed into the "test" branch which would later get tested and merged into master.
During development, one of the other juniors managed to write the worst kind of Angular code you could imagine - enormous amounts of duplication, no reusable components (every view contained the everything used in the view, so popups and other parts that should logically be reusable were in every view separately), fuck - even the HTML was broken (the most memorable for me were the "table > tr > div > td" ones, but that's barely scratching the surface). He left a few months into the project, and we had to build upon his shit, ever so slightly trying to fix the shit he produced. This could have definitely been avoided if we did code reviews.
A month after launching the MVP for internal testing, the guy working on the logistics system had burned out and left the company (he's earning more than twice the salary he got here, happy for him, he is a great coder and an even better team player). This could have been avoided if this project had been planned better, but I can't really blame them, since it was the first project they had at this scale (even though they had given longer deadlines for projects way smaller than this).
After we finished and launched the MVP, the second guy from management joined, because he saw we needed extra help. Again I tried to push us into investing the time to write tests for the system (because at this point we had created an unstable cluster fuck of a codebase), but again to no avail. The same "no time, just test it manually for now, we'll do that later when we have time" bullshit from management.
Now, a few weeks ago, the third guy from management joined. He saw what a disaster our whole project was. Him joining was simply a blessing from the skies. He started off by writing migrations using sequelize. I talked to him about writing tests and everything, and he actually listened. He told me that I'm gonna be the one writing them, and also talked to the rest of management about it. I was overjoyed. I could actually hear the bitterness in the voices of the rest of management when they told me how to write the tests, what to test, etc. But I didn't give a flying rat's ass, I was hapi.
I was told to start off by writing a smoke test for the whole client flow using Puppeteer. I got even happier, since I was finally able to again learn new things (this stopped at about 4 or 5 months into the project).
I'm using jest as the framework and started writing the tests in TypeScript. Later I found a library called jest-extended, but it didn't have type defs, so I decided to write them and, for the first time in my life, contribute to the open source community.19 -
My whole team was a circus:
- Dev 1, the senior: he will be spent his days coding his personal projects and will convince management that everyone else needed to prove themselves so he will have nothing to do and we will do all the work.
- Dev 2, the junior: he was convinced that his mission in life was to be friends with his team. He's desk was far from the rest of the team so he will show just right after lunch EVERY FREAKING DAY with a list on his phone of random things he wanted to talk about like music, artists, art, news, etc., he really thought I didn't notice the list.
- Dev 3: the vegan: you will hear on every chance how she was so awesome for being vegan.
- Dev 4, the expert: if you ask him anything he will stare at you in silence to make you feel like you are a stupid for not knowing the answer and then turn around like nothing.
- Dev 5, the ghost: he will show early every day, code without mouthing a word and leave at 5pm, I think I heard him saying "hmmm" once but I might be wrong.
- Dev 6, the coder by accident: he was a graphic designer and ended up doing front end so he hated his job.
- Dev 7, me: the one who didn't care about anything but doing his job and leave.
- The project manager: she didn't knew anything about technology but will attend meetings with clients on her own, commit to deadlines and then inform us that the project that we estimated for 8 weeks will have to be done in 2 with new additions to the features.
You know the drill, here's your potato :/5 -
A little late, and similar to other lovely ladies on here, but the greatest influencer for me is my husband.
He's always pushed me to learn more and be a better, cleaner coder. He taught me continuous integration, introduced me to the Atom editor, and showed me that my nerdy interests and choice of career can actually be quite attractive and not "intimidating" or "inappropriate” for a woman.
He's my go-to hackathon partner, my strictest code reviewer, and my life long teacher.
Ich liebe dich, mein Schatzelein! 😍7 -
Tl;Dr - It started as an escape, carried on as fun, then as a way to be lazy, and finally as a way of life. Coding has defined and shaped my entire life from the age of nine.
When I was nine I was playing a game on my ZX spectrum and accidentally knocked the keyboard as I reached over to adjust my TV. Incredibly parts of it actually made a little sense to me and got my curiosity. I spent hours reading through that code, afraid to turn the Spectrum off in case I couldn't get back to it. Weeks later I got hold of a book of example code to copy out to do various things like making patterns on the screen. I was amazed by it. You told it what to do, and it did it! (don't you miss the days when coding worked like that?) I was bitten by the coding bug (excuse the pun) and I'd got it bad! I spent many late nights on that thing, escaping from a difficult home life. People (especially adults) were confusing, and in my experience unpredictable. When you did things wrong they shouted at you and threatened to take you away, or ignored you completely. Code never did that. If you did something wrong, it quietly let you know and often told you exactly what was wrong. It wasn't because of shifting expectations or a change of mood or anything like that. It was just clean logic, simple cause and effect.
I get my first computer a year later: an IBM XT that had been discarded by a company and was fitted with a key on the side to turn it on. With the impressive noise it made it really was like starting an engine. Whole most kids would have played with the games, I spent my time playing with batch scripts and writing very simple text adventures. And discovering what "format c:" does. With some abuse and threatened violence I managed to get windows running on it. Windows 2.1 I think it was.
At 12 I got a Gateway 75 running Windows 95. Over the next few years I do covered many amazing games: ROTT, Doom, Hexen, and so on. Aside from the games themselves, I was fascinated by the way computers could be linked together to play together (this was still early days for the Web and computers networked in a home was very unusual). I also got into making levels for Doom, Heretic, and years later Duke Nukem 3D (pretty sure it was heretic; all I remember is the nightmare of trying to write levels entirely by code!). I enjoyed re-scripting some of the weapons and monsters to behave differently. About this time I also got into HTML (I still call this coding, but not programming), C, and java. I had trouble with C as none of the examples and tutorial code seemed to run properly under a Windows environment. Similar for my very short stint with assembly. At some point I got a TI-83 programmable calculator and started rewriting my old batch script games on it, including one "Gangster Lord" game that had the same mechanics as a lot of the Facebook games that appeared later (do things, earn money, spend money to buy stuff to do more things). Worried about upcoming exams, I also made a number of maths helper apps, including a quadratic equation solver that gave the steps, and a fake calculator reset to smuggle them into my exams. When the day came I panicked and did a proper reset for fear of being caught.
At 18 I was convinced I was going to be a professional coder as I started a degree in Computer Science. Three months later I dropped out after a bunch of lectures teaching what input and output devices were and realising we were only going to be taught Java and no C++. I started a job on the call centre of a big company, but was frustrated with many of the boring and repetitive tasks we had to do. So I put my previous knowledge to use, and quickly learned VBA to automate tasks. It wasn't long before I ended up promoted to Business Analyst where I worked on a great team building small systems in Office, SAS, and a few other tools.
I decided to retrain in psychology, so left the job I was in and started another degree. During my work and placements my skills came in use a number of times to simplify and automate tasks. I finished my degree, then took a job as a teaching assistant while I worked out what I wanted to do next and how to pay for it. Three years later I've ended up IT technican at the school, responsible for the website, teaching a number of Computing lessons each week, and unofficial co-coordinator for Computing as a subject. I also run a team of ten year old Digital Leaders who I am training in online safety and as technical experts; I am hoping to inspire them to a future in coding. In September I'll be starting teacher training with a view to becoming a Computing specialist teacher. Oh, and I'm currently doing a course in Android Development in my free time.
And this all started with an accidental knock on the keyboard of a ZX Spectrum.6 -
More of a question than a rant. What to do regarding programming.
I'm self taught, php, c, c#, and I make stupid little programs that make my life easier as a sys admin.
I want to ask, how do I take things further? Where I'm from, it's really hard to get a job as a programmer without 5 years experience and knowledge in 5 other languages.
Do I try and make bigger apps to showcase myself and hope someone finds me, or what do I do in this instance. I'm not a fully fledged coder, but I'm comfortable and if I don't know something i learn it pretty quickly.
Is there a way that you get a job, even as a junior? Or is it pure luck?10 -
So I just had this job interview with a "startup" (side note: who the fuck still calls limping companies "startups" in 2024? That is sooooo 2010s).
There was this tattooed and very pale girl (you just know the vibe), the mandatory Norse bearded tall guy and the balding, "I'm-in-my-fifties-but-I-am-not-a-square, maaan" sleasy-looking white guy in a button up shirt but no suit jacket. The whole stereotypes gang came looking for their missing nerdy Indian.
The sleasy bloke goes on and on on a looong tirade on how they're "a tech innovation academy", how they "move fast and break things" and they "run smoking hot", so that "long nights are to be expected".
So, they usual red-flagging shit.
Then they all went on a "but we're not like all those companies that look exactly like us" word salad about "sustainability and a healthy work life balance", with their "highest value" being "the utmost respect at all times". I'm nodding my head at the meaningless splurge until they fart out the sentence "for example, cussing while talking with colleagues is a fireable offence".
If some hustling enterprise rather prefers a posh working environment, one can adapt to such circumstances. Provided, of course, that said enterprise adheres to the administrative coherence expected from a culturally refined institution. Mostly by compliance, from the leadership, to a rigidly predictable working schedule.
Now, if the bloody curs want coder dogs that work assfucking hours with a shit eating grin, they better swallow our fucking sailor mouths. Fuck, I've done twenty hour shifts getting my ass kicked in dark startup fisting/rush rooms. If unable to yell at any blabbering cocksucker to go stick his fucking opinions up the bitch who crapped him, then I ain't gonna bloody be there.
TL;DR they can either have a "utmost respect" working environment XOR a "fast and hot" daily hustle.
After they crapped out that oxymoron I could barely hold myself to avoid saying "sorry, I do not partake in any of the psychedelics you must be on".
On to the next interviews!9 -
My colleague is what you would call a cowboy coder. He solves problems with really complex solutions that only he understands and does not seem to care about that the team doesn't understand it. He's super fast and very skilled, but it leaves the rest of the team hanging. He sometimes works at his spare time so things we worked on the previous day can be totally changed the next day without any notice. He has also removed code written by someone else because he did not like it, in secret. I found this while browsing through commits that were committed directly to master without a PR.
We have tried talking to me about this but it doesn't seem to work. He seems to value speed over anything else and doesn't seem to have any respect for other team member's opinions.
What the hell do I do? Has anyone else worked with a similar typed person? He's really making my life hard and I think it's very frustrating. Please help.13 -
So a little story about finding your way. I worked at an IoT software firm, very well established. I had a hard time with the on boarding process due to some factors, and I must have lagged behind their mental schedule for my growth. It was clear nonetheless that I was a quality coder and had made some friends there.
It wasn’t enough for the ensuing corporate bullying. It went by and I took it. I became the yes man just so I don’t frustrate anyone enough to turn away my ask for help. This made things worse and before long, I a grown man went to visit my mum and all but cry at how small I felt, after all my hard work getting to the company.
I felt sick with failure but I knew I couldn’t go back. I emailed my resignation and dropped off my company laptop.
4 months later I am working at a medical startup with my own projects, that I have 100% control over. And the quality of my work and ethic is pleasing upper management in all the right ways. I’ve never been happier, and there are barely any perks on paper. No free lunches on Thursdays or discounts at the local high street. I’m the happiest I’ve ever been in my life because I said NO to feeling or being treated any less than I worked and progressed to be.
Don’t let other people stop your potential for their own ego, or any other reason. 😊 -
It began when I was tasked with creating a better and more engaging experience for our new Facebook page. This was in Facebook's early days, so there were not really any "best practices". We were making it up as we went along. I decided one way would be to game-ify things, since gaming, at the time, was a Big Deal on Facebook and people were starting to use it to build customer funnels.
Grasping for low-hanging fruit, I decided a Tetris variant around our topic would be fun. I had to hire a dev because at the time I was a static HTML web developer just getting into social media management. I knew nothing about game development or how to use Facebook's API for such things.
Long story short, we got about $10,000 (FB app devs came at a premium then) into the project when I came across a very recent article about the history of Tetris games. It said that even though Tetris had once been considered for all intents to be public domain due to it being created by a Russian coder during the Cold War, it had just been acquired by an IP protection entity that was charging royalties for any variant of Tetris created from a specific date onward and paying the original developer. So, even though I thought I had been thorough in my initial permissions checking, it turned out we were gonna be in deep doo-doo with licensing fees and restrictions if we released this game to the public.
I had to call my boss and admit my error. She was FURIOUS and really gave me an ass-chewing over it. I then had to call the marketing person whose budget I'd been slaving away at wasting. She was a bit more forgiving (her budget was in the millions). Then I had to call the corporate legal department and explain what was going on. They told me to immediately pay any outstanding hours, then fire the dev but not before getting him to send me all code and assets, deleting his copy, and then, upon my receipt of those assets, deleting MY copy so that nothing of it ever existed. And I was supposed to say _nothing_ to the dev about why he was being let go, so that there would be no "trail" leading back to this fiasco. (The dev hounded me for weeks asking what he'd done wrong. It killed me that I was bound and gagged by corporate legal and couldn't tell him.)
I was in so much trouble. I was literally in tears over it. I'd never wasted that much money in my life. That incident pretty much sealed my fate as far as any trust my bosses ever put in me again (not much at all). I was a bit of a pariah in a lot of ways for the next 5 years whereas I had come onto the team as a young social media rockstar at first.
After that, and a couple of other bad scenarios that were less my fault and more due to a completely dysfunctional management and reporting structure, they eventually "transferred" me to another team. Which was really just a way of getting rid of me by sending me to a department that was already starting to outsource overseas and lay people off. It was less messy that way. I was in the first set of layoffs.
Since then, I've had a BIG fear of EVER joining a large corporation EVER again. I prefer to work for small businesses now, even if I get paid less. Much less stressful from an office politics and impact of mistakes standpoint.3 -
!shortRant
You all complaining about shit code from coworkers and about fucking WordPress. Looks different, but know what? Answer is the same.
Money.
Let me explain.
For example, you were born in USA. You can choose any profession, and if you became pro - you will be payed great. Looks nice, isn't it?
But if you were born in Russia, India, somewhere in Africa, whatever, you can be businessman, coder or you can suck a dick to the end of you life.
Not that great, yeah?
You are looking around and see great people with their own dreams and talents. But then you ask them "to which faculty are you going?" Answer is obvious. And that's how shitcoders are born.
And yeah, about WordPress. I'm mobile developer, I just can't understand how awful it is (or not, idunno). The only thing I know - if I were PHP developer, I could earn twice more than now. But why I didn't choose that way? Because I REALLY LOVE MY WORK. Everyday is good, I'm working at weekends often, because I want.
So please, shut up. You could never work with WordPress, but you motherfucker CHOOSE IT. You could switch to node, go, Java. Why the flying fuck you didn't? Oh yeah, MONEY. So please, shut up.
Devrant isn't for crying girls complaining about shit they did themselves. (No sexism, just metaphor, sorry girls)10 -
I'm in a situation here, I had an idea for an app and I started coding it. Since I'm a front end developer I find it not amusing to do the backend part. I then started to share the idea and such with good classmate (not a coder). I then made him join me on this adventure. After a lot of coding he said he wanted to contribute with something since I'm coding all day and he's not. Then we agreed freelancing the back end part.
Some time later we got a pretty good deal on some Indians doing the whole app. I thought to myself "this feels kinda good!" so we went on with the freelancer.
Days went to months and we finally got the app back. I did a mistake of paying him all the milestones without testing the app in its wholeness, later finding out that one part of the login system didn't work. That lead to a deeper debug to find out that the core function of the app was commented out.. I then wrote the freelancer back with minimal and slow response.
Now the deadline of the app is like in 2 months. If not we miss a whole year.
My classmate knows about this and he's the one who played for the freelancing. Now we have talked about me doing the whole backend myself.
The only issue I have now is that I feel like he's just sitting home doing nothing other than flashing money around and me busting my ass of writing code that I really am not good at. (basically learning more than coding)
But he played a lot of money for this.. So I feel kinda bad for him.
Rip life.15 -
A bit late.. and not much about how to learn to code..but more of a figuring out if the kid has a right mind set to do so..
If the kid is not the type to question everything, not resourceful, not a logical/critical thinker, gives up easily and especially if not interested in how things work then being a dev is most probably not for them.. they can still persue coding, but it will end badly..
From my experience, people who have a better education than me, but lack those skills turned out to be a crappy dev.. not interested in the best tool to complete the tasks, just making 'something', adding more shit to the already shitty stack.. and being happy with that.. which of course is not the best way to do things around here..or in life!!
Soo.. if the kid shows all that and most importantly shows interest in learning to code.. throw him the java ultimate edition book and see what happens.. joke!
There are plenty of apps thath can get you started (tried mimo, but being devs yourself it's probably not so hard to check some out and weed out the bad ones) that explain simple logic and syntax.. there is w3schools that explains basics quite well and lets you tinker online with js and python..
so maybe show them these and see what happens.. If it will pick their interest, they will soon start to ask the right questions.. and you can go from there..
If the kids are not the 'evil spawns' of already dev parents or don't have crazy dev aunties and uncles, then they will have to work things out themselves or ask friends... or seek help online (the resourceful part comes here).. so google or any flavour of search engines is their friend..
Just hope they don't venture to stack overflow too soon or they will want to kill themselves /* a little joke, but also a bit true.. */
Anyhow, if the kid is exhibiting 'dev traits' it is not even a question how to introduce it to the coding.. they will find a way.. if not, do not force them to learn coding "because it's in and makes you a lot of moneyz"..
As with other things in life, do not force kids to do anything that you think will be best for them.. Point them in direction, show them how it might be fun and usefull, a little nudge in the right direction.. but do not force.. ever!!!
And also another thing to consider.. most of the documentation and code is written in english.. If they are not proficient, they will have a hard time learning, checking docs, finding answers.. so make sure they learn english first!!
Not just for coding, knowing english will help them in life in general. So maaaaybe force them to learn this a bit..
One day my husband came to me and asked me how he can learn.. and if it's too late for him to learn coding.. that he found some app and if I can take a look and tell him what I think, if it is an ok app to learn..
I was both flattered and stumped at the same time..
Explained to him that in my view, he is a bit old to start now, at least to be competitive on the market and to do this for a living, but if it interests him for som personal projects, why not.. you're never too old to start learning and finding a new hobby..
Anyhow, I've pointed out to him that he will have to better his english in order to be able to find the answers to questions and potential problems.. and that I'm happy to help where and when I can, but most of the job will be on him.
So yeah, showed him some tutorials, explained things a bit.. he soon lost interest after a week and was mindblown how I can do this every day..
And I think this is really how you should introduce coding to kids.. show them some easy tutorials, explain simple logic to them.. see how they react.. if they pick it up easily, show them something more advanced.. if they lose interest, let them be.
To sum up:
- check first if they really want to learn this or this is something they're forced to do (if latter everything you say is a waste of everybodys time)
- english is important
- asking questions (& questioning the code) is mandatory so don't be afraid to ask for help
- admitting not knowing something is the first step to learning
- learn to 'google' & weed out the crap
- documentation is your friend
- comments & docs sometimes lie, so use the force (go check the source)
- once you learn the basics its just a matter of language flavour..adjust some logic here, some sintax there..
- if you're stuck with a problem, try to see it from a different angle
- debugging is part of coder life, learn to 'love' it4 -
This is a rundown of my day.
Today I had the immense pleasure to continue implementing an web table with server side paging, filters and sorts, and to persist all those values in the url query strings.
Thank fucking god for vue.
And just before sleep, I inflated like 40 balloons for a bday tomorrow and I didn't have an inflator, so let me say this.
FUCK BALLOONS. The brand of these motherfuckers was horrible.
I hate it that they all come with this fucking dust in the bag.
Bitch, I'm putting this shit in my mouth.
Isn't it curious how bitch is like a very powerful insult in the sense that it's very funny but also very validating.
Like you could say that in the middle of argument against a woman and actually win it.
But sadly women don't have an insult against men of which make use, so it's very unfair in my opinion.
In fact there are so many female targeted insults that you kinda feel untouchable as a guy.
Except if a woman insults the size of your dick. That is a fucking tomahawk missile.
Anyhow, not making any type of gender inequality analysis or whatever, I just thought it was a peculiar observation.
Even bigger anyhow , I'm not good at inflating balloons, I'm a web dev, what did you expect? That I could have basic ordinary skills in life.
Helloooo, I said I am a WEB... DEVELOPER.
It's a fucking miracle I am able to complete basic day to day tasks necessary to live.
All I know doing is adding 5 unaudited packages everyday to my current project.
(Just kidding, i'm relatively ok as a coder, but if you actually thought it was true just because of being a web dev, then go eat a dick, and if you didn't like this dyslexia fueled rant, go eat another dick)1 -
Don’t let anyone tell you what to do in your life. Be whatever you want to be.
...if you do decide to be a coder, remember no language is better than the other. No language is perfect. You’ll never be a perfect coder. You’ll always need to search for basic things.
If at any point of time you disagree with any of this, you’re on the wrong path.2 -
Entering 2021 strong with more knowledge and more experience 💙💪
2020 was a year of learning.
It taught us the value of time, to believe in ourselves, to make the best use of what we have, not take anything for granted and always keep learning.
Only then we can overcome our biggest fears
Wishing you all a very Happy New Year 2021rant happy new year programming comic life of coder programming programmers life programmer life programming life11 -
i always get sucked into this "cute code" hell whenever i am working with a b2c codebase, and especially with kotlin code.
here's a scenario:
task : build a debounce logic for an input view where each user input is currently triggerring an api call.
my steps
1. read what debouncing is.
2. see if any code is available on the internet
=> found a code piece on the internet with some level of abstraction ( basically a simple final class that implements the input event callback and encapsulates the debounce logic)
3) copy it, run it , it wokrs
------
for any sane coder, these steps are hardly 10-30 mins and they can move on with life. but its your truly that made this task into a 6hour research only to come up at similar solution. my curiosity led me to stupid places
1) why this class is final? what if someone else wanna use it but with a different behaviour? lets try open(non final class) .
2) why even use a class? it extends an interface, lets try to wrap the logic in interface itself (kotlin supports interfaces that don't require implementation)
3) umm , the interface works but it looks ugly, with all its global overridden variables. what about we make it extension?
4) yeah the extension approach is also not very good, lets go back to open class.
5) but extend is super nice to look! lets keep the extension and open class too
6) can we optimise the implementation? why it uses an additional handler? what if we provided everything in constructor? how about builder pattern?
FUCK MY BRAIN! there are so much fucking options that i forgot that i spent 4 hours on this small thing
the simplest approach would have been tk just shove all the listeners and everything in activity and forget about it :/
senior devs on this platform, how do you stop yourself from adding every concept that you know into the smallest possible task?6