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 - "#dev #work #programming"
-
You know what?
Young cocky React devs can suck my old fuckin LAMP and Objective-C balls.
Got a new freelance job and got brought in to triage a React Native iOS/Android app. Lead dev's first comment to me is: "Bro, have you ever used React Native".
To which I had to reply to save my honor publicly, "No, but I have like 8 years with Objective-C and 3 years with Swift, and 3 years with Node, so I maybe I'll still be able help. Sometimes it just helps to have a fresh set of eyes."
"Well, nobody but me can work on this code."
And that, as it turned out was almost true.
After going back and forth with our PM and this dev I finally get his code base.
"Just run "npm install" he says".
Like no fuckin shit junior... lets see if that will actually work.
Node 14... nope whole project dies.
Node 12 LTS... nope whole project dies.
Install all of react native globally because fuck it, try again... still dies.
Node 10 LTS... project installs but still won't run or build complaining about some conflict with React Native libraries and Cocoa pods.
Go back to my PM... "Um, this project won't work on any version of Node newer than about 5 years old... and even if it did it still won't build, and even if it would build it still runs like shit. And even if we fix all of that Apple might still tell us to fuck off because it's React Native.
Spend like a week in npm and node hell just trying to fucking hand install enough dependencies to unfuck this turds project.
All the while the original dev is still trying TO FIX HIS OWN FUCKING CODE while also being a cocky ass the entire time. Now, I can appreciate a cocky dev... I was horrendously cocky in my younger days and have only gotten marginally better with age. But if you're gonna be cocky, you also have to be good at it. And this guy was not.
Lo, we're not done. OG Dev comes down with "Corona Virus"... I put this in quotes because the dude ends up drawing out his "virus" for over 4 months before finally putting us in touch with "another dev team he sometimes uses".
Next, me and my PM get on a MS Teams call with this Indian house. No problems there, I've worked with the Indians before... but... these are guys are not good. They're talking about how they've already built the iOS build... but then I ask them what they did to sort out the ReactNative/Cocoa Pods conflict and they have no idea what I'm talking about.
Why?
Well, one of these suckers sends a link to some repo and I find out why. When he sends the link it exposes his email...
This Indian dude's emails was our-devs-name@gmail.com...
We'd been played.
Company sued the shit out of the OG dev and the Indian company he was selling off his work to.
I rewrote the app in Swift.
So, lets review... the React dev fucked up his own project so bad even he couldn't fix it... had to get a team of Indians to help who also couldn't fix it... was still a dickhead to me when I couldn't fix it... and in the end it was all so broken we had to just do a rewrite.
None of you get npm. None of you get React. None of you get that doing the web the way Mark Zucherberg does it just makes you a choad locked into that ecosystem. None of you can fix your own damn projects when one of the 6,000 dependency developers pushes breaking changes. None of you ever even bother with "npm audit fix" because if security was a concern you'd be using a server side language for fucking server side programming like a grown up.
So, next time a senior dev with 20 years exp. gets brought in to help triage a project that you yourself fucked up... Remember that the new thing you know and think makes you cool? It's not new and it's not cool. It's just JavaScript on the server so you script kiddies never have to learn anything but JavaScript... which makes you inarguably worse programmers.
And, MF, I was literally writing javascript while you were sucking your mommas titties so just chill... this shit ain't new and I've got a dozen of my own Node daemons running right now... difference is?
Mine are still working.34 -
I’m kind of pissy, so let’s get into this.
My apologies though: it’s kind of scattered.
Family support?
For @Root? Fucking never.
Maybe if I wanted to be a business major my mother might have cared. Maybe the other one (whom I call Dick because fuck him, and because it’s accurate) would have cared if I suddenly wanted to become a mechanic. But in both cases, I really doubt it. I’d probably just have been berated for not being perfect, or better at their respective fields than they were at 3x my age.
Anyway.
Support being a dev?
Not even a little.
I had hand-me-down computers that were outmoded when they originally bought them: cutting-edge discount resale tech like Win95, 33/66mhz, 404mb hd. It wouldn’t even play an MP3 without stuttering.
(The only time I had a decent one is when I built one for myself while in high school. They couldn’t believe I spent so much money on what they saw as a silly toy.)
Using a computer for anything other than email or “real world” work was bad in their eyes. Whenever I was on the computer, they accused me of playing games, and constantly yelled at me for wasting my time, for rotting in my room, etc. We moved so often I never had any friends, and they were simply awful to be around, so what was my alternative? I also got into trouble for reading too much (seriously), and with computers I could at least make things.
If they got mad at me for any (real or imagined) reason (which happened almost every other day) they would steal my things, throw them out, or get mad and destroy them. Desk, books, decorations, posters, jewelry, perfume, containers, my chair, etc. Sometimes they would just steal my power cables or network cables. If they left the house, they would sometimes unplug the internet altogether, and claim they didn’t know why it was down. (Stealing/unplugging cables continued until I was 16.) If they found my game CDs, those would disappear, too. They would go through my room, my backpack and its notes/binders/folders/assignments, my closet, my drawers, my journals (of course my journals), and my computer, too. And if they found anything at all they didn’t like, they would confront me about it, and often would bring it up for months telling me how wrong/bad I was. Related: I got all A’s and a B one year in high school, and didn’t hear the end of it for the entire summer vacation.
It got to the point that I invented my own language with its own vocabulary, grammar, and alphabet just so I could have just a little bit of privacy. (I’m still fluent in it.) I would only store everything important from my computer on my only Zip disk so that I could take it to school with me every day and keep it out of their hands. I was terrified of losing all of my work, and carrying a Zip disk around in my backpack (with no backups) was safer than leaving it at home.
I continued to experiment and learn whatever I could about computers and programming, and also started taking CS classes when I reached high school. Amusingly, I didn’t even like computers despite all of this — they were simply an escape.
Around the same time (freshman in high school) I was a decent enough dev to actually write useful software, and made a little bit of money doing that. I also made some for my parents, both for personal use and for their businesses. They never trusted it, and continually trashtalked it. They would only begrudgingly use the business software because the alternatives were many thousands of dollars. And, despite never ever having a problem with any of it, they insisted I accompany them every time, and these were often at 3am. Instead of being thankful, they would be sarcastically amazed when nothing went wrong for the nth time. Two of the larger projects I made for them were: an inventory management system that interfaced with hand scanners (VB), and another inventory management system for government facility audits (Access). Several websites, too. I actually got paid for the Access application thanks to a contract!
To put this into perspective, I was selected to work on a government software project about a year later, while still in high school. That didn’t impress them, either.
They continued to see computers as a useless waste of time, and kept telling me that I would be unemployable, and end up alone.
When they learned I was dating someone long-distance, and that it was a she, they simply took my computer and didn’t let me use it again for six months. Really freaking hard to do senior projects without a computer. They begrudgingly allowed me to use theirs for schoolwork, but it had a fraction of the specs — and some projects required Flash, which the computer could barely run.
Between the constant insults, yelling, abuse (not mentioned here), total lack of privacy, and the theft, destruction, etc. I still managed to teach myself about computers and programming.
In short, I am a dev despite my parents’ best efforts to the contrary.30 -
!rant
New job (first CS job).
Day 1: Install Ubuntu
Day 2: Dev said "it was so cute when he asked if he could uninstall windows." Also, first pair programming with engineer of 12 years. First commit (he did all the work, I just tried keeping up."
Day 3: "Here, try this bug " nearly get there. Have to leave early. Team event (Group VR experience, was wicked fun with drinks afterwards. Turns out boss man is a total bad ass. Swam with sharks and giant Wales)
Day 4: Fix bug. Notice odd behaviour. Fix that too. (All on my own). Code review: "This, that but works and is good." Get asked if I want to go to customer to do A, B and C. Tell Boss I only know B. He said "Tell me what you need for A and C."
I'm so God damn happy.8 -
Job interview goes really well. Senior Dev 90-100k.
Ok, so for your "test" write up a proposal for a web based bulk email sending system with its own admin panel for building list, tracking emails, and with reporting.
I write up an estimate. Low ball the absolute fuck out of it because I'm trying to get a job. Know a few good libraries I can use to save some time. Figure I can just use sendmail, or PHPMailer, or NodeMailer for the emailing, and DataTables Editor for a simple admin CRUD with reporting. Write the thing up. Tell them they can have it in LAMP or Node.
Come in at 36 hours.
Then these fucking wanks told me they wanted me to actually do the project.
My exact response was:
"I bill $50 an hour, let me know"
They did not let me know.
Young devs, jobless devs, desperate devs. I've seen a fair amount of this. And for the right job I might go as high as maybe 4 - 6 hours of unpaid work for some "programming test". But please be careful. There are those who will try to exploit lack of experience or desperation for free work.15 -
I'm drunk and I'll probably regret this, but here's a drunken rank of things I've learned as an engineer for the past 10 years.
The best way I've advanced my career is by changing companies.
Technology stacks don't really matter because there are like 15 basic patterns of software engineering in my field that apply. I work in data so it's not going to be the same as webdev or embedded. But all fields have about 10-20 core principles and the tech stack is just trying to make those things easier, so don't fret overit.
There's a reason why people recommend job hunting. If I'm unsatisfied at a job, it's probably time to move on.
I've made some good, lifelong friends at companies I've worked with. I don't need to make that a requirement of every place I work. I've been perfectly happy working at places where I didn't form friendships with my coworkers and I've been unhappy at places where I made some great friends.
I've learned to be honest with my manager. Not too honest, but honest enough where I can be authentic at work. What's the worse that can happen? He fire me? I'll just pick up a new job in 2 weeks.
If I'm awaken at 2am from being on-call for more than once per quarter, then something is seriously wrong and I will either fix it or quit.
pour another glass
Qualities of a good manager share a lot of qualities of a good engineer.
When I first started, I was enamored with technology and programming and computer science. I'm over it.
Good code is code that can be understood by a junior engineer. Great code can be understood by a first year CS freshman. The best code is no code at all.
The most underrated skill to learn as an engineer is how to document. Fuck, someone please teach me how to write good documentation. Seriously, if there's any recommendations, I'd seriously pay for a course (like probably a lot of money, maybe 1k for a course if it guaranteed that I could write good docs.)
Related to above, writing good proposals for changes is a great skill.
Almost every holy war out there (vim vs emacs, mac vs linux, whatever) doesn't matter... except one. See below.
The older I get, the more I appreciate dynamic languages. Fuck, I said it. Fight me.
If I ever find myself thinking I'm the smartest person in the room, it's time to leave.
I don't know why full stack webdevs are paid so poorly. No really, they should be paid like half a mil a year just base salary. Fuck they have to understand both front end AND back end AND how different browsers work AND networking AND databases AND caching AND differences between web and mobile AND omg what the fuck there's another framework out there that companies want to use? Seriously, why are webdevs paid so little.
We should hire more interns, they're awesome. Those energetic little fucks with their ideas. Even better when they can question or criticize something. I love interns.
sip
Don't meet your heroes. I paid 5k to take a course by one of my heroes. He's a brilliant man, but at the end of it I realized that he's making it up as he goes along like the rest of us.
Tech stack matters. OK I just said tech stack doesn't matter, but hear me out. If you hear Python dev vs C++ dev, you think very different things, right? That's because certain tools are really good at certain jobs. If you're not sure what you want to do, just do Java. It's a shitty programming language that's good at almost everything.
The greatest programming language ever is lisp. I should learn lisp.
For beginners, the most lucrative programming language to learn is SQL. Fuck all other languages. If you know SQL and nothing else, you can make bank. Payroll specialtist? Maybe 50k. Payroll specialist who knows SQL? 90k. Average joe with organizational skills at big corp? $40k. Average joe with organization skills AND sql? Call yourself a PM and earn $150k.
Tests are important but TDD is a damn cult.
Cushy government jobs are not what they are cracked up to be, at least for early to mid-career engineers. Sure, $120k + bennies + pension sound great, but you'll be selling your soul to work on esoteric proprietary technology. Much respect to government workers but seriously there's a reason why the median age for engineers at those places is 50+. Advice does not apply to government contractors.
Third party recruiters are leeches. However, if you find a good one, seriously develop a good relationship with them. They can help bootstrap your career. How do you know if you have a good one? If they've been a third party recruiter for more than 3 years, they're probably bad. The good ones typically become recruiters are large companies.
Options are worthless or can make you a millionaire. They're probably worthless unless the headcount of engineering is more than 100. Then maybe they are worth something within this decade.
Work from home is the tits. But lack of whiteboarding sucks.37 -
I recently joined the dark side - an agile consulting company (why and how is a long story). The first client I was assigned to was an international bank. The client wanted a web portal, that was at its core, just a massive web form for their users to perform data entry.
My company pitched and won the project even though they didn't have a single developer on their bench. The entire project team (including myself) was fast tracked through interviews and hired very rapidly so that they could staff the project (a fact I found out months later).
Although I had ~8 years of systems programming experience, my entire web development experience amounted to 12 weeks (a part time web dev course) just before I got hired.
I introduce to you, my team ...
Scrum Master. 12 years experience on paper.
Rote memorised the agile manifesto and scrum textbooks. He constantly went “We should do X instead of (practical thing) Y, because X is the agile way.” Easily pressured by the client to include ridiculous (real time chat in a form filling webpage), and sometimes near impossible features (undo at the keystroke level). He would just nag at the devs until someone mumbled ‘yes' just so that he would stfu and go away.
UX Designer. 3 years experience on paper ... as business analyst.
Zero professional experience in UX. Can’t use design tools like AI / photoshop. All he has is 10 weeks of UX bootcamp and a massive chip on his shoulder. The client wanted a web form, he designed a monstrosity that included several custom components that just HAD to be put in, because UX. When we asked for clarification the reply was a usually condescending “you guys don’t understand UX, just do <insert unhandled edge case>, this is intended."
Developer - PHD in his first job.
Invents programming puzzles to solve where there are none. The user story asked for a upload file button. He implemented a queue system that made use of custom metadata to detect file extensions, file size, and other attributes, so that he could determine which file to synchronously upload first.
Developer - Bootlicker. 5 years experience on paper.
He tried to ingratiate himself with the management from day 1. He also writes code I would fire interns and fail students for. His very first PR corrupted the database. The most recent one didn’t even compile.
Developer - Millennial fratboy with a business degree. 8 years experience on paper.
His entire knowledge of programming amounted to a single data structures class he took on Coursera. Claims that’s all he needs. His PRs was a single 4000+ line files, of which 3500+ failed the linter, had numerous bugs / console warnings / compile warnings, and implemented 60% of functionality requested in the user story. Also forget about getting his attention whenever one of the pretty secretaries walked by. He would leap out of his seat and waltz off to flirt.
Developer - Brooding loner. 6 years experience on paper.
His code works. It runs, in exponential time. Simply ignores you when you attempt to ask.
Developer - Agile fullstack developer extraordinaire. 8 years experience on paper.
Insists on doing the absolute minimum required in the user story, because more would be a waste. Does not believe in thinking ahead for edge conditions because it isn’t in the story. Every single PR is a hack around existing code. Sometimes he hacks a hack that was initially hacked by him. No one understands the components he maintains.
Developer - Team lead. 10 years of programming experience on paper.
Writes spaghetti code with if/else blocks nested 6 levels deep. When asked "how does this work ?”, the answer “I don’t know the details, but hey it works!”. Assigned as the team lead as he had the most experience on paper. Tries organise technical discussions during which he speaks absolute gibberish that either make no sense, or are complete misunderstandings of how our system actually works.
The last 2 guys are actually highly regarded by my company and are several pay grades above me. The rest were hired because my company was desperate to staff the project.
There are a 3 more guys I didn’t mention. The 4 of us literally carried the project. The codebase is ugly as hell because the others merge in each others crap. We have no unit tests, and It’s near impossible to start because of the quality of the code. But this junk works, and was deployed to production. Today is it actually hailed as a success story.
All these 3 guys have quit. 2 of them quit without a job. 1 found a new and better gig.
I’m still here because I need the money. There’s a tsunami of trash code waiting to fail in production, and I’m the only one left holding the fort.
Why am I surrounded by morons?
Why are these retards paid more than me?
Why are they so proud when all they produce is trash?
How on earth are they still hired?
And yeah, FML.8 -
Why are job postings so bad?
Like, really. Why?
Here's four I found today, plus an interview with a trainwreck from last week.
(And these aren't even the worst I've found lately!)
------
Ridiculous job posting #1:
* 5 years React and React Native experience -- the initial release of React Native was in May 2013, apparently. ~5.7 years ago.
* Masters degree in computer science.
* Write clean, maintainable code with tests.
* Be social and outgoing.
So: you must have either worked at Facebook or adopted and committed to both React and React Native basically immediately after release. You must also be in academia (with a masters!), and write clean and maintainable code, which... basically doesn't happen in academia. And on top of (and really: despite) all of this, you must also be a social butterfly! Good luck ~
------
Ridiculous job posting #2:
* "We use Ruby on Rails"
* A few sentences later... "we love functional programming and write only functional code!"
Cue Inigo Montoya.
------
Ridiculous job posting #3:
* 100% remote! Work from anywhere, any time zone!
* and following that: You must have at least 4 work hours overlap with your coworkers per day.
* two company-wide meetups per quarter! In fancy places like Peru and Tibet! ... TWO PER QUARTER!?
Let me paraphrase: "We like the entire team being remote, together."
------
Ridiculous job posting #4:
* Actual title: "Developer (noun): Superhero poised to change the world (apply within)"
* Actual excerpt: "We know that headhunters are already beating down your door. All we want is the opportunity to earn our right to keep you every single day."
* Actual excerpt: "But alas. A dark and evil power is upon us. And this… ...is where you enter the story. You will be the Superman who is called upon to hammer the villains back into the abyss from whence they came."
I already applied to this company some time before (...surprisingly...) and found that the founder/boss is both an ex cowboy dev and... more than a bit of a loon. If that last part isn't obvious already? Sheesh. He should go write bad fantasy metal lyrics instead.
------
Ridiculous interview:
* Service offered for free to customers
* PHP fanboy angrily asking only PHP questions despite the stack (Node+Vue) not even freaking including PHP! To be fair, he didn't know anything but PHP... so why (and how) is he working there?
* Actual admission: No testing suite, CI, or QA in place
* Actual admission: Testing sometimes happens in production due to tight deadlines
* Actual admission: Company serves ads and sells personally-identifiable customer information (with affiliate royalties!) to cover expenses
* Actual admission: Not looking for other monetization strategies; simply trying to scale their current break-even approach.
------
I find more of these every time I look. It's insane.
Why can't people be sane and at least semi-intelligent?18 -
It seems like every other day I run into some post/tweet/article about people whining about having the imposter syndrome. It seems like no other profession (except maybe acting) is filled with people like this.
Well lemme answer that question for you lot.
YES YOU ARE A BLOODY IMPOSTER.
There. I said it. BUT.
Know that you're already a step up from those clowns that talk a lot but say nothing of substance.
You're better than the rockstar dev that "understands" the entire codebase because s/he is the freaking moron that created that convoluted nonsensical pile of shit in the first place.
You're better than that person who thinks knowing nothing is fine. It's just a job and a pay cheque.
The main question is, what the flying fuck are you going to do about being an imposter? Whine about it on twtr/fb/medium? HOW ABOUT YOU GO LEARN SOMETHING BEYOND FRAMEWORKS OR MAKING DUMB CRUD WEBSITES WITH COLOR CHANGING BUTTONS.
Computers are hard. Did you expect to spend 1 year studying random things and waltz into the field as a fucking expert? FUCK YOU. How about you let a "doctor" who taught himself medicine for 1 year do your open heart surgery?
Learn how a godamn computer actually works. Do you expect your doctors and surgeons to be ignorant of how the body works? If you aspire to be a professional WHY THE FUCK DO YOU STAY AT THE SURFACE.
Go learn about Compilers, complete projects with low level languages like C / Rust (protip: stay away from C++, Java doesn't count), read up on CPU architecture, to name a few topics.
Then, after learning how your computers work, you can start learning functional programming and appreciate the tradeoffs it makes. Or go learn AI/ML/DS. But preferably not before.
Basically, it's fine if you were never formally taught. Get yourself schooled, quit bitching, and be patient. It's ok to be stupid, but it's not ok to stay stupid forever.
/rant16 -
This is what I found in the logs:
3280546 I had a cup of tea and now it's fixed
9daaf6c copy and paste is not a design pattern
958ca5b It compiles! Ship it!
a9edf8d LAST time, Masahiro, /dev/urandom IS NOT a variable name generator...
438072f 640K ought to be enough for anybody
1fb839b Too lazy to write descriptive message
4d70890 ...
d6ce0c8 Ugh. Bad rebase.
a00b544 Programming the flux capacitor
49715cb Fix my stupidness
4babf07 Do things better, faster, stronger
49b3a7b SEXY RUSSIAN CODES WAITING FOR YOU TO CALL
12c7b55 formatted all
2658c87 and so the crazy refactoring process sees the sunlight after some months in the dark!
2376c89 - Temporary commit.
a83220a I honestly wish I could remember what was going on here...
3347007 work in progress
3382b4c well crap.
109748a Glue. Match sticks. Paper. Build script!
c3f025e Useful text
70394e7 Who knows WTF?!
0d78f14 breathe, =, breathe
5344e39 removed tests since i can't make them green
8a3a6bf better grepping
2777cc4 first blush
cf620ff Continued development...
9591c19 Too lazy to write descriptive message
767e0cd Some shit.
763602a Yes, I was being sarcastic.
8d7a602 /sigh
c6296e5 rats4 -
Ahhhhh devrant... long time no see.
I just need to get something off my heart. The past two years, I worked for the same ISP in Germany, but now as a devops engineer. Well, popo hit the fan really quick lately..
First a good friend, team lead for one of five areas in Germany, quit his job. He was one of the nicest persons I knew, and he believed that all that five areas should work together and share dev resources. Thats why I work mostly in other areas as developer.
Shortly after, his deputy quit as well. I heard that this specific area, the management were a bunch of dicks, but wow!
A short while later, I learnd the hard truth, why those two good friends quit, and that brings me to this story. In a meeting I readied myself up to present my new plattform - a social room - to management. I got a lot of positive feedback from others and we thaught managment would approve of the project. But nope. "We can buy from external, we dont need to program ourselfs. In fact lets stop spending money on internal programming, we should outsource everything!"
I was baffeld... Wtf did i just witness? My team lead didn't say anything, and afterwards I didn't dare to question it, but I told most of my close dev friends and we all realizied, that the rumors were true... We will be shifting into project managment.
At this point, I realized that I wasnt having it, and made a linkedIn account, not because I wanted to switch jobs, but because, meh you never know.
One week ago, one of my bestest buddies said he will quit and join his team lead that left eariler this year, I was heartbroken. Me and our other buddy are devestated, because now we have to do everything he had done. Management didn't listen as we told them that nobody can maintain his code. I have so many projects, I can bearly keep up with them. Now I got a lead role for creating the server infrastucture for a huge project my buddy was working on. Only as specialist and not PM, but his Team Lead thinks I am replacing him!
Last week I got a message on LinkedIn, a consulting firm reached out to me to aquire me as a new consultant or devops engineer. They look great, only less vacation (26 instead of 30 days), 40h shifts instead of 38h and only slightly more base payment. I currently receive about 53.000€ a year, the new firm only grants up to 60.000€ a year for anyone. Otherwise, they look great.
With all my buddies quitting around me, work getting more while time developing decreasing, I don't know what the right thing to do is... There is no way I can get a payment increase in my current position. I always say "my workplace is save, but my work isnt". I don't want to do project managment.
Today I have a meeting with my team lead, she is really nice btw. This is an annual meeting where we discuss my future in the company etc. Shortly after, I have a meeting with the new firm to discuss a bunch of questions I have.
I dont know what to do...
Edit: I missed you, devrant6 -
My first dev job. Me and another guy get hired at the same time. He will be the lead dev, and I’ll be the junior dev on a long term project. Project gets delayed (and eventually canceled, but that’s a different story), so the lead dev decides to give me programming challenges to test my skill level. I successfully complete the challenges, but they aren’t up to his standards. Belittles me in front of our manager. Afterwards I ask him to show me how he would have done it. The dude can barely type let alone show me the way it should be done. I say nothing to the manager.
A few weeks pass, it’s clear the project we were hired for is canceled, so we are given other work. They task the lead dev with porting the company website to Wordpress so non-devs can alter content. They chose Wordpress mainly because the lead dev said he is familiar with it. Two weeks later, no progress has been made. They ask me if I can do it, and I do it in 2 days including additional functionality that was requested. Manager asks me why I thought lead dev couldn’t do what I did. I said, “I don’t think lead dev knows what the fuck he is doing. I don’t think he knows how to program.” Manager says, “Huh.”
Several months later lead dev is still there, but has yet to work on any projects with any success. They finally let him go.
Glad to finally get that off my chest.6 -
When I was 12 I started programming by makimg games. Then when I was 18 I stopped with a game dev study (because of personal reasons). I went to a web dev study and found work 4 years later. Today my company hired a new sales person who has worked at a few game dev companies and she said she will try to put me on game dev projects.
Im so happy now :D4 -
I finally did it. I finally got rid of that client in a positive, respectful manner.
So basically, my dad has a freelance colleague. For a side project that person asked me to make him a website. My dad mentioned to said person that my sister's boyfriend does web design (he's trained to use autocad for designing the structure of furniture, nothing fancy just straight lines and upside down doors that fail after a while..
So my brother in law charged the guy 400 money for the design. I charged the guy 200 for the programming because my dad forced me to drop down my price to fit the budget because business relationship and he obviously couldn't let my sister's boyfriend not make more money than he deserves.
In the end after waiting on the design for weeks (I literally saw him do it in photoshop all in 2 layers on his laptop in half an hour) I had to rush the project because the due date was coming up. I already had most of it done but I had to redo a good part of the front-end to fit the design structure. I also had to re-do the design in photoshop to get the images and colors I needed, then cut it up into html. So realistically, my sister's boyfriend barely did anything.
Now the deal was that I'd develop the website and perform any updates/upgrades to it. I'd also host it on my webserver for a monthly fee. My sister's boyfriend was to handle any and all content related support.
At first it was all good, I only ever spoke with the guy when he needed a feature added and he paid me well for it. Overall the hit I took in initial development was paying off. As time went by, my sister's boyfriend started ignoring the guy's calls and the guy started calling me instead.
Now, he had this deal with my brother in law where he could charge his time at 35 money an hour. That's about 4 times minimum wage for not doing much.
Then I started to basically take over all support, but I was only allowed to charge 30 an hour. Pretty reasonable still and I wasn't too busy so it was all good.
As time went by I ended up getting asked to do more and more minimal changes. At some point I had done so many minimal changes I had to charge the guy about 2 hours extra that month and he went completely mental saying I can't just work for hours without telling him beforehand. We decided I had to discuss a price before any change. I charged my time on the phone with him twice after that and both times he bitched about me being expensive and once he even said he wanted to leave.
Now comes the fun part. A week ago he had an issue that was 100% support related. He tried calling my sister's boyfriend but the guy obviously didn't pick up. He called my dad about it, and my dad ended up calling my my sister's boyfriend. Now this guy is so slimy, he purposely didn't hang up the phone knowing my dad would use his cell and assume the other party would hang up because calls cost money. The guy heard my dad call my sister's boyfriend and heard him pick up immediately. He went completely mental saying how he wants both of us to always reply and call him back immediately.
This guy was always my lowest priority. He didn't really make me money and his calls and requests were annoying and unnecessary. Add to that that I specifically didn't want to handle support and was forced into it anyway, while all 'design' things (up to figuring out where and how to display a visitor counter) absolutely had to go to my sister's boyfriend..
But regardless of that, I generally replied to his emails within 10-20 minutes and rarely more than 25 hours.
My dad agreed (for us) that we now both had to reply to him within 24 hours. I was now stuck checking my voicemail every couple hours because my sister's boyfriend sucks at life.
During his rant he threatened to leave me, again. That was the point where I said fuck it.
For the past week I've been ignoring his calls. When he emails me I don't take more than 5 minutes replying. This morning I found an e-mail with 4 requests;
He wanted me to make a content-related change;
He wanted me to give him access to the site's Google analytics;
He wanted me to add a feature and write a guide on how to use it;
And fucking finally, he wanted a 'token to transfer his website'.
I promptly emailed him back saying I added his email a week ago and that he'd gotten an email from Google about it then, that I'd changed the content he wanted me to, a price for the last dev task and a token for his domain name, adding that its valid for 35 days and that his new host can contact me to receive a backup file of his website.
Sadly, I do have this on 10-minute dev job to do, but then I'm invoicing him all jobs I haven't invoiced yet and he can find another host willing to deal with his insanity.
The best part is I lose a webhosting client but I'm sure he'll still ask my sister's bitched parasitic boyfriend whenever he needs a photo resized and he'll still pay him 35 money for 2 minutes of work.
Fuck customers.6 -
Once I had to do a 'hands on' pair programming session for a position I applied for... Together with the lead dev we would switch coding every 15 minutes It was somewhat of a horror story...
The assignment was to implement an password reset flow, connecting it to the api and then handling the entire password reset flow, in Angular becahs ye know has to be Angular...
After drafting the ui and setting up the click events, I wanted to hookup the api calls, but then it was time to switch around...
The fucktard dev first started to adjust my classmappings to be more in line with his preference, without touching the css classnames... Ok... Micro managing ... Check...
So after breaking the styles, he wrote the fetches to the api endpoints and that was his 15 minutes of shame...
I continued only to find out the endpoints we were using had errors in them and would not return anything workable...
The dev said he'd tested the endpoint before and it worked, but clearly it didn't...
After about an hour of going back and forth trying to get this to work he got a call from a client because server was down (surprise), he excused himself and had to prioritize on this, running out and leaving me there for the remaining morning ...
I just sat there waiting for the HR checkout talk, only to lean towards rejecting the position...
Fucking waste of time, and in the end the feedback was they doubted MY TECHNICAL SKILLS ... And wouldn't make me an offer 😂👍 nice story bro...
K THX BAI!7 -
>be me
>I hate front-end dev, but I can do it. I hate switching between markup, styling, and logic.
>I like back-end and low level programming
>stay unemployed for a year and a half, because all offers are for React and Angular
>find backend job, yay
>they actually make me work on front-end shit
>mfw pic related7 -
Hello everyone, this is my first time here so hi! I want to tell you all a story about my current situation.
At 18 while in the military I was able to get my first computer, it was a small hp pavilion laptop with windows 7. The system would crash constantly, even though I would only use it for googling stuff and using fb to talk to people. 5 months after I got it and continuously hated it decided to find out why and who could I blame (other than myself) for the system making me do the ctrl alt del dance all the time....
Found out that there are people called computer programmers that made software. Decided to give it a go since I had some free time most days. Started out with c++ because it was being recommended in some websites. Had many "oh deeeeer lord" moments. After not getting much traction I decided to move to Java which seemed like an easier step than C++. Had fun, but after some verbosity I decided to move into more dynamic lands. Tried JS and since at the time there was no Node and I was not very into the idea of building websites I decided to move into Python, Ruby, PHP and Perl and had a really great time using and learning all of them. I decided to get good in theoretical aspects of computer programming and since I had a knack for math I decided to get started with basic computer science concepts.
I absolutely frigging loved it. And not only that, but learning new things became an obsession, the kind that would make me go to bed at 02:40 am just to wake up at 04:00 or 06:00 because the military is like that. I really wanted to absorb as much as I could since I wanted to go to college for it and wanted to be prepared since I did not wanted to be a complete newb. Took Harvard CS50, Standford Programming 101 with Java, Rice's Python course and MIT's Python programming class. I had so much fun I don't regret it one bit.
By the time I got to college I had already made the jump to Linux and was an adept Arch user, Its not that it was superior or anything, but it really forced me to learn about Linux and working around a terminal and the internals of the system to get what I want. Now a days I settle for Fedora or Debian based systems since they are easier and time is money.
Uni was a breeze, math was fun and the programming classes seemed like glorified "Hello World" courses. I had fun, but not that much fun, most of my time was spent getting better at actual coding. I am no genius, nor my grades were super amazing(I did graduate with honors though) but I had fun, which never really happened in school before that.
While in school I took my first programming gig! It was in ASP.NET MVC, we were using C#, I got the job through a customer that I met at work, I was working in retail during the time and absolutely hated it. I remember being so excited with the gig, I got to meet other developers! Where I am from there aren't that many and most of them are very specialized, so they only get concerned with certain aspects of coding (e.g VBA developers.....) and that is until I met the lead dev. He was by far one of the biggest assholes I had ever met in my life. Absolutely nothing that I would do or say made hem not be a dick. My code was steady, but I would find bugs of incomplete stuff that he would do, whenever I would fix it he would belittle me and constantly remind me of my position as a "junior dev" in the company saying things as "if you have an issue with my code or standards tell me, but do not touch the code" which was funny considering that I would not be able to advance without those fixes. I quit not even 3 months latter because I could not stand the dick, neither 2 of the other developers since the immediately resigned after they got their own courage.
A year latter I was able to find myself another gig. I was hesitant for a moment since it was another remote position in which I had already had a crappy experience. Boy this one was bad. To be fair, this was on me since I had to get good with Lumen after only having some exposure to Laravel. Which I did mentioned repeatedly even though he did offer to train me in order to help him. Same thing, after a couple of weeks of being told how much I did not know I decided to get out.
That is 2 strikes.
So I waited a little while and took a position inside another company that was using vanilla PHP to build their services. Their system was solid though, the lead engineer remains a friend and I did learn a lot from him. I got contracted because they were looking for a Java developer. The salary was good. But when I got there they mentioned that they wanted a developer in Java...to build Android. At the time I was using Java with Spring so I though "well how hard can this be! I already use Android so the love for the system is there, lets do this!" And it was an intense, fun and really amazing experience.
-- To be continued.10 -
Don't get me wrong, I like funcional programming, but this smug „This would neeever happen with FP“ bullshit really gets on my nerve and kind of turns me off the idea of ever wanting to work with FP programmers.
It's just another paradigm, it's still possible to write unmaintainable fuckugly crapcode with functional programming.
And it is still very possible to write beautiful, clean, well maintainable code with OOP. Get over yourselves and understand that it's a tool and not a religion, and a good dev should know when to pick which tool for which job without childish notions of intellectual superiority.4 -
I built very involved code with multiple auth systems, async programming, business logic, error handling, and etc. I was asking for the missing environment variables during the call with devops and had a screen share going. Environment variables were the last thing I needed before knowing if it would work. I filled in the config and all the code worked perfectly.
The devs lost their shit. One suggested that I had somehow tested it beforehand because it is impossible that it would work the first time. “How? I didn’t have config details or access to any of the remote APIs until now.”
The dev lead finished the call with, “That was some big brain next level shit.” Then they went and reviewed and tested it after the call and didn’t have much to suggest besides naming nitpicks.
It was at that point I knew I was a hero to the other devs.3 -
my story so far
Hey guys. i just wantes to share my story becoming something i think is like a dev.
I was always interested in solving problems. my grandfather has a company with a bit over a 100 employees. one day i decided to start working there. he needed someone to build up the erp system (mostly maintenance). about a month after i started he decided to get a new erp system because the one he had would not fill his needs. not knowing how big this got i told him that i want to build it up. from getting the orders over production with machines to billing.
he agreed. after a short time we knew that even this new system does not fullfill our needs. but it was so damn expensive. i told my grandfather: trust me, i am handling this. no further costs. and i started to learn programming. i learned night and day (visual basics.net, sql, c#). since then i wrote about 8 additional modules for the system in coorperation with the users. today, 3 years later we are far ahead our market in terms of transparency and information flow. i worked very hard for this and it is a great feeling to see that the things i do help my colleagues and are used.
i never learned this stuff in school and i know that i cannot tell that i am a professional programmer.
but when someone asks me i tell them i am a programmer because my solutions work and i think i deserve to call me that.
thanks for reading :)4 -
Computer Science is a mysterious world of three kinds of devs, irrespective of what background/profile/language they had/worked in.
The ones at the top, who keep doing crazy shit in big companies or open-source and keep adding material to the unstoppable code flowing. These constitute 5% of the dev community.
The ones at the bottom are the newbies who try to become masters/ninjas of programming by following the shit on the internet but don't understand logic or how things work. This is like 75% of dev community on the web. If you don't agree to that percentage, you don't know the number of students and non-CS people trying to code. I can see hundreds of classmates/colleagues with no understanding of basic Javascript concepts but introducing themselves as a software developer and ruler of the Web.
The remaining 15% in the middle are the "experienced" fellows who keep building shit to get to the top 5%. They work on enterprise/commercial software until the next upgrade and while the wallets keep getting fatter, they don't actually contribute to the community.
This is the part where I want people to understand the power of a dev.
What sets apart programmers/devs from other engineers:
while everyone else is busy solving the current issues/requirements of the world, we devs are the ones who 'build'.
With a right motive, a developer can solve in-numerous problems of the society, be it education, poverty or unemployment.
An experiment by Lee to put data on the web created a world of unforeseeable opportunities.
Hope to see more of Musks and less of Zuckerbergs in the future.9 -
Paranoid Developers - It's a long one
Backstory: I was a freelance web developer when I managed to land a place on a cyber security program with who I consider to be the world leaders in the field (details deliberately withheld; who's paranoid now?). Other than the basic security practices of web dev, my experience with Cyber was limited to the OU introduction course, so I was wholly unprepared for the level of, occasionally hysterical, paranoia that my fellow cohort seemed to perpetually live in. The following is a collection of stories from several of these people, because if I only wrote about one they would accuse me of providing too much data allowing an attacker to aggregate and steal their identity. They do use devrant so if you're reading this, know that I love you and that something is wrong with you.
That time when...
He wrote a social media network with end-to-end encryption before it was cool.
He wrote custom 64kb encryption for his academic HDD.
He removed the 3 HDD from his desktop and stored them in a safe, whenever he left the house.
He set up a pfsense virtualbox with a firewall policy to block the port the student monitoring software used (effectively rendering it useless and definitely in breach of the IT policy).
He used only hashes of passwords as passwords (which isn't actually good).
He kept a drill on the desk ready to destroy his HDD at a moments notice.
He started developing a device to drill through his HDD when he pushed a button. May or may not have finished it.
He set up a new email account for each individual online service.
He hosted a website from his own home server so he didn't have to host the files elsewhere (which is just awful for home network security).
He unplugged the home router and began scanning his devices and manually searching through the process list when his music stopped playing on the laptop several times (turns out he had a wobbly spacebar and the shaking washing machine provided enough jittering for a button press).
He brought his own privacy screen to work (remember, this is a security place, with like background checks and all sorts).
He gave his C programming coursework (a simple messaging program) 2048 bit encryption, which was not required.
He wrote a custom encryption for his other C programming coursework as well as writing out the enigma encryption because there was no library, again not required.
He bought a burner phone to visit the capital city.
He bought a burner phone whenever he left his hometown come to think of it.
He bought a smartphone online, wiped it and installed new firmware (it was Chinese; I'm not saying anything about the Chinese, you're the one thinking it).
He bought a smartphone and installed Kali Linux NetHunter so he could test WiFi networks he connected to before using them on his personal device.
(You might be noticing it's all he's. Maybe it is, maybe it isn't).
He ate a sim card.
He brought a balaclava to pentesting training (it was pretty meme).
He printed out his source code as a manual read-only method.
He made a rule on his academic email to block incoming mail from the academic body (to be fair this is a good spam policy).
He withdraws money from a different cashpoint everytime to avoid patterns in his behaviour (the irony).
He reported someone for hacking the centre's network when they built their own website for practice using XAMMP.
I'm going to stop there. I could tell you so many more stories about these guys, some about them being paranoid and some about the stupid antics Cyber Security and Information Assurance students get up to. Well done for making it this far. Hope you enjoyed it.26 -
Part 1: https://devrant.com/rants/4210605
So let's talk about these tasks we were assigned. Ms Reliable and Mr DDTW's friend who I just realized I haven't named yet were in charge of programming communications. Ms Enabler and Mr DDTW were in charge of creating the vehicle subclasses for the new variants we were instructed to build. Each one had to handle one variant, and we estimated that both of these would be about the same difficulty (Ms Enabler's one turned out to be a little harder).
I like Ms Enabler, and she's a good friend, although she isn't the best at problem solving and her strengths as a dev lie in her work ethic and the sheer amount of theory she knows and can apply. These just so happened to be the exact opposites of my strengths and weaknesses. Within a few days of having assigned the tasks, she came up to me asking for help, and I agreed. Over the following couple of weeks I'd put in quite a lot of hours reviewing the design with her, and we'd often end up pair programming. It was more work for me, but it was enjoyable and overall we were very efficient.
The other two girls in the group were also absolutely fine this sprint. They simply did the work they had to and let us know on time. Outside of some feedback, requests, bugfixes, and mediating disagreements, I didn't have to do anything with their tasks.
A week and half into the sprint and everybody else has their part almost in an MVP state. As Mr DDTW hadn't said or shown anything yet, I asked if he could push his stuff to the repo (he got stuck with this and needed help btw), and what does he have?
A piece of shit "go to this location" algorithm that did not work and was, once again, 150 lines of if statements. This would not have been such a massive deal if THE ENTIRE PREVIOUS SPRINT HAD BEEN DEDICATED TO MAKING THE CODE DO THIS IN A SENSIBLE WAY. Every single thing that this guy had written was already done. EVERY SINGLE THING. A single function call with the coordinates would let the vehicle do what he wrote but in a way THAT ACTUALLY WORKED AND MADE THE TINIEST BIT OF FUCKING SENSE. He had literally given so few shits about this entire goddamn project that he had absolutely zero clue about what we'd even done last sprint.
After letting this man civilly know through our group chat about his failures, giving him pointers on what's wrong and what he can use and telling him that he should fix it by the end of the week, his response?
"I'll try"
That was it. Fuckass was starting to block us now, and this was the first sign of activity he's given since the sprint started. Ms Enabler had finished her work a fucking week ago, and she actually ASKED when she ran into trouble or thought that something could be improved. Mr DDTW? He never asked for shit, any clarification, any help, and I had let everybody know that I'm open. At least the other two who didn't ask for shit ACTUALLY DID SOMETHING. He'd been an useless sack of shit for half a semester in three separate projects and the one time he's been assigned something half important that would impact our grades he does this. I would not stand for it.
I let him know all this, still civil (so no insults) but much less kind, capped with "Stop fooling around. Finish this by the of the week." which probably came off as a threat but his shithead kinda had it coming.
He was actually mad. Dropped a huge faux-apologetic spiel in the chat. Why couldn't I just trust him (his code was garbage and he was constantly late without explanation), his work was almost done (it wasn't and if he'd started he'd understand the scope of what he was assigned), that the problem was that I'm a condescending piece of shit (bruh), and was suddenly very interested in doing work. Literally everybody ignored him. What was funny was seeing the first questions and requests for help after that spiel. I obliged and actually answered what he asked.
The end of the week came and went he'd just uploaded more garbage that didn't work. I had foreseen this and, on top of everything else, had been preparing his section of the work done by myself and properly. Thus came a single commit from me with a working version of the entire module, unblocking the entire team. I cannot imagine the sheer hatred for this man at that moment for the commit message to simply be:
"judgement"
And with that, all I got was a threat to report me to the professor for sabotaging his work. The following day our group got an email from the professor, with no explanation, asking for an almost-immediate video conference. Group chat was a shitshow of panic, as nobody knew what was going on. Least of all Mr DDTW.
Once again, I'm approaching the word limit so to be continued in part 3 (hopefully of 3)7 -
Indian web dev companies suck ( for developers )
when I finished 3 year grad program in computer application here in my country (India), I thought life's gonna be fun working as a developer. Oh boy, I was so wrong.
I started out working for a small service based IT company, followed by 2 more. I realized really quickly that they're nothing short of a scam. If your company's only agenda to somehow survive in the market and showing no signs of growth in 8 fucking years, then I'm sorry you're working for scamsters.
Now I'm not saying that all of them are alike. But most of them sorta are.
They don't give a shit about quality, not one bit. Quality means no money in the short run. And they haven't been able to develop any strategy to deal with that. Hence, no growth.
They promise 100 things on their website but only provide shitty services in 10.
There is no pair programming, no code review, no code quality check, no architect, no database designer. They won't give you extra time to write test cases. They use git as a storage device.
They don't put their developers (especially the ones who are learning) under any sort of managed development framework to ensure smooth work.
At the end of the day, their main objective is to somehow NOT deliver a project but finish a milestone and make money out of it.
After cashing out for a milestone, they want you to put your current project on hold and start working on a new project until you have like 10-15 projects in the pipeline and you're severely overwhelmed and you just wanna fucking QUIT.
They would say YES to literally every fucking thing, only to disappoint the client later.
I can't believe someone in the US, or UK thought it'd be a good idea to approach these companies
for their brand new app ideas. They're so fucked.
They're rarely finishing any project.
I'm sorry if I hurt your feelings. I had to get it out of my system.11 -
About 18 months ago my non-technical Manager of Applications Development asked me to do the technical interviews for a .NET web developer position that needed to be filled. Because I don't believe in white board interviewing (that's another rant), but I do need to see if the prospective dev can actually code, for the initial interview I prepare a couple of coding problems on paper and ask that they solve them using any language or pseudo code they want. I tell them that after they're done we'll discuss their thought process. While they work the other interviewing dev and I silently do our own stuff.
About half way through the first round of technical interviews the aforementioned manager insisted we interview a dev from his previous company. This guy was top notch. Excellent. Will fit right in.
The manager's applicant comes in to interview and after some initial questions about his resume and experience I give him the first programming problem: a straightforward fizzbuzz (http://wiki.c2.com/?FizzBuzzTest). He looked as if the gamesters of Triskelion had dropped him into the arena. He demurs. Comments on the unexpectedness of the request. Explains that he has a little book he usually refers to to help him with such problems (can't make this stuff up). I again offer that he could use any language or pseudo code. We just want to see how he thinks. He decides he will do the fizzbuzz problem in SQL. My co-interviewer and I are surprised at this choice, but recover quickly and tell him to go ahead. Twenty minutes later he hands me a blank piece of paper. Of the 18 or so candidates we interview, he is the only one who cannot write a single line of code or pseudo code.
I receive an email from this applicant a couple of weeks after his interview. He has given the fizzbuzz problem some more thought. He writes that it occurs to him that the code could be placed into a function. That is the culmination of his cogitation over two weeks. We shake our heads and shortly thereafter attend the scheduled meeting to discuss the applicants.
At the meeting the manager asks about his former co-worker. I inartfully, though accurately, tell him that his candidate does not know how to code. He calls me irrational. After the requisite shocked silence of five people not knowing how to respond to this outburst we all sing Kumbaya and elect to hire someone else.
Interviews are fraught for both sides of the table. I use Fizzbuzz because if the applicant knows how to code it's an early win in the process and we all need that. And if the applicant can't solve it, cut bait and go home.
Fizzbuzz. Best. Interview. Question. Ever.6 -
Why the fuck do people care about age so much?
Unlike other activities, you can be 15 years old and be as good as a senior dev, so why the fuck do you need to degrade me because you found out my age?
I still deliver the promised work, so what the fuck?
As for kids who try to get recognition because they're young and program, well, fuck you too!
Programming isn't about age or maturity, since in this age of tech, anyone can pick up a computer and an internet connection and learn, so why do you feel that younger individuals have less capabilities?
I just had to get that out of me since it pisses me off a fuck load.16 -
Tl;dr porn is ruining my life.
Today I had a meeting with the project leader and the CTO. They had bad news, which did not come as a surprise.
In short, they said I did not pass the expectations they had, and unfortunately need to find somewhere else to work.
This is my third time being told to find somewhere else to work, and I really can't describe how it feels. I was even told that I maybe I should reconsider my future as a developer, and kids can do programming better than I can do.
It's really difficult when all you've done in the last year is to learn and improve your current skills.
I have good grades, a unique experience, built lots of unique projects, and a GitHub portfolio with high activity. The apps I've built are used by many customers today. I also have a blog with 600 k views where I share dev tips.
The thing with this work if I'm going, to be honest, is that they expected someone with senior experience, and unfortunately, I don't have that thus it takes many years to build it. So I started here with almost scratch experience of the things they needed.
On the other hand, it feels like a relief in that I can finally focus on my personal business. And maybe this wasn't the right place to work, maybe it requires a couple of jobs until I find the right place.
Despite the bumpy ride, and what such people tell you, I'm not going to give up.
10 years ago, my school teacher told me I was going to be a carpenter (nothing against that) but I manage to get an MSc degree in the engineering field.
There's a lot of shit going into your head when you receive such message like "What if they are true, what if I can't handle programming, what if I'll never be anything etc".
I'm not giving up, this is just a great story every successful person has.
What my number one problem is, and I will f*** win is porn addiction. Get rid of that, and the future is bright.
Sorry for mixing so many things here.14 -
My first work was a paid internship.
My first couple weeks on the job I was supposed to be working on the same machine with another dev to get the gist of the process and everything. Kind of pair programming mixed with mentorship. Sounds cool?
Yeah... Problem is my fellow dev was more interested in spending around 80% of her time chatting around with her boyfriend and friends on Microsoft Chat.
Anyway, I soon got bored of having to look to the other side all the time, and went to our boss and asked for some other stuff to do "because I'm better learning by doing than by example".
Almost 20 years later, I'm still in touch with this dev... But she soon left the job and pursued a career as a translator and interpreter. She was always more interested in talking than programming 😃1 -
Modern web frontend is giving me a huge headache...
Gazillion frameworks, css preprocessors, transpilers, task runners, webpack, state management, templating, Rxjs, vector graphics,async,promises, es6,es7,babel,uglifying,minifying,beautifying,modules,dependecy injection....
All this for programming apps that happen to run inside browsers on a protocol which was designed to display simple text pages...
This is insanity. It cannot go on like this for long. I pray for webasm and elm to rescue me from this chaos.
I work now as a fullstack dev as my first job but my next job is definitely going to be backend/native stuff for desktop or mobile. It seems those areas are much less crazy.10 -
So a few days ago I shared about the conflict with my colleague on learning React. Today I was let go. Obviously I asked why they would do that and they said they feel the problem isn't even my React knowledge but the fact I don't grasp the fundamentals of OO programming.
Thing is in these 3 months there has not been a single code review. They are either going of what my lying colleague told them (they claimed he was excluded from giving feedback), or the consultants who were hired to help us. And yes, I got feedback I should improve but at the same time the assurance so long as I show improvement it'd be fine. And I was told they could see improvement. So I'm not sure what changed but suddenly there is no budget to keep me on. In any case it feels like shitty corporate bullshit.
But I can't say they are wrong. I struggle to explain simple concepts I know in words. I've worked a series of bad jobs where nobody cared how you did stuff as long as it got done. I feel I'm so behind now and so affected by bad knowledge it's even harder to fix than to learn the first time. So I'm wondering how to fix this.
I'm really gutted too because I loved this company. I was finally getting a fair wage instead of being underpaid. The people were excellent. I felt I could finally relax and feel safe at work. And now I feel betrayed. Which for someone with self esteem issues is very hard. Can't trust in myself and can't trust in others.
I'm gonna try and pick myself up in the morning, but today I feel totally shit. This wasn't how I'd expected things to go. I thought my manager had intended to talk conflicts over but instead I get the boot. And the advice to stop overselling myself. Real useful that. Like it is on me that they hired me despite my subpar interview because my CV looked good. It's a shitty excuse. In any case they're now stuck with a dev that walks out of work, throws false accusations about colleagues, and another person warned me about to not engage because nothing good ever came from it. He's gonna keep over engineering everything and make up for all the time he wastes outside of work creating a dysfunctional environment for everyone. But yeah, easier to fire the new person who does her best despite the odds. And who cautioned against over engineering because we kept missing deadlines. And who believes in refactoring when it is needed because that's how agile works. Yeah better keep someone who has no sense of work life balance and makes others miserable then claiming he's being driven out by your ignorance. And of course the consultants who throw your own people under the bus. Can't get rid of those now.7 -
My dev role model is my senior who taught me JavaScript when I was a noob. He was so cool. One of the few real programmers who enjoy their work in a clusterfuck world of idiots who pretend for money.
His philosophy sticks with me even today. I was new to the industry and the long hours of low pay intern work were getting to me. But he kept reminding me that programming still has this cool, engineering side where you blitz stuff out on a keyboard and build awesome shit.
I owe him my career because without him I'd still be one of the other stooges who bitch about the job and avoid studying. But since working with him, I never speak bad about my profession. Programming is a beautiful profession, even if the people I work with are sometimes dumbfuck dicks. And he taught me that distinction.2 -
How did you break through your own barriers to finally learn programming?
My SO is constantly complaining that we don’t have enough money. I make a decent amount as a full-time dev at a large company, but we live in an expensive city and are currently going through a time of few funds.
He started driving delivery food orders, he likes it okay, but it pays very little. He still complains about money.
I want him to learn JavaScript.
He was once asked to make a website for a company he’s involved in. He only used SquareSpace, but he was never satisfied with their stock code. He went digging for JavaScript snippets he could use, and he made one of the most beautiful and responsive websites I’ve seen.
Since then, I’ve been encouraging him to learn JavaScript. I’m trying to convince him it will be a great source of additional income, he can make his own schedule while doing contract work, and he can ask me anything he wants while he’s learning. How many beginners have someone they can ask anything of, at any time?
He doesn’t want to learn. He doesn’t think he is capable. I remember this feeling before I learned to code. A chunk of someone else’s JS does look genuinely terrifying if you don’t know what it means. I want him to give it one honest try before he decides it’s “not for him,” but he isn’t open to it enough to try.
What can I do to help him understand he is capable? He’s in his mid-30s and insists he’s too old to catch up. He’s smart, detail-oriented, and I know he would write code that’s a million times cleaner than mine. He absolutely has a programmer inside of him, and I want to encourage him to simply try.
Is there something I can to do introduce JS in a non-threatening way? Or should I just accept his refusal and let it go? Thanks for any advice.18 -
I wrote a prototype for a program to do some basic data cleaning tasks in Go. The idea is to just distribute the files with the executable on our shared network to our team (since it is small enough, no github bullshit needed for this) and they can go from there.
Felt experimental, so I decided to try out F# since I have always been interested with it and for some reason Microsoft adopted it into their core net framework.
I shit you not, from 185 lines of Go code, separated into proper modules etc not to mention the additional packages I downloaded (simple things for CSV reading bla bla)
To fucking 30 lines of F# that could probably be condensed more if I knew how to do PROPER functional programming. The actual code is very much procedural with very basic functional composition, so it could probably be even less, just more "dense"
I am amazed really. I do not like that namespace pollution happens all over F# since importing System.IO gives you a bunch of shit that you wouldn't know where it is coming from unless you fuck enough with Ionide and the docs. But man.....
No need for dotnet run to test this bitch, just highlight it on the IDE, alt enter and WHAM you have the repl in front of you, incremental quasi like Lisp changes on the code can be REPL changed this way, plethora of .NET BCL wonders in it, and a single point of documentation as long as you stay in standard .net
I am amazed and in love, plus finding what I wanted to do was a fucking cakewalk.
Downside: I work in a place in which Python is seen as magic and PHP, VB.NEt and C# is the end all be all of languages. If me goes away or dies there will be no one else in this side of the state to fuck with F#
This language needs to be studied more. Shit can be so compact, but I do feel that one needs to really know enough of functional programming to be good at it. It is really not a pure language like Haskell (then again, haskell is the only "mainstream" pure functional language ain't it not?) but still, shit is really nice and I really dig what Microhard is doing in terms of the .net framework.
Will provide later findings. My entire team is on the Microsoft space, we do have Linux servers, but porting the code to generate the necessary executables for those servers if needed should be a walk in the park. I am just really intrigued by how many lines of code I was able to cut down from the Go application.
Please note that this could also mean that I am a shit Golang dev, but the cut down of nil err checkings do come somewhere.9 -
Where I currently work (and have done for 10 years) we were recently recruiting for another dev, and one of the other devs and our line manager were running the interviews.
After 3 or 4 failed interviews they decided to test the questions on me... I got 3 out of 10 :(
My argument was (and still is) if I get stuck programming I can google, or you can teach me new stuff. And I can make a good cup of coffee2 -
i genuinely like programming. it's like solving logical puzzles for me, challenges on a smaller or bigger scale, and this is fun.
i always feel this when working on something on my own, i.e. a full stack project where i take care of everything.
but i'm so sick and tired of corporate software development.
i'm tired of scrum, all these scrum meetings, it feels like they are sucking my life energy away. if at least i had the feeling that i work in a team where everybody contributes, the team work is nice and also project management is aligned.
i'm tired of having too many different tasks in too many different areas or projects and never having the feeling to be able to really concentrate on one thing, to be able to do a job well enough so that i'm content with it.
i'm tired of this feeling that what i'm working on is not meaningful. the feeling that my team is not part of a bigger story where everyone contributes their part and where there is a sense of productive collaboration between teams. the feeling that mismanagement will result in a lot of money being burned, because of work being thrown away or becoming irrelevant, or because of miscommunication, making promises that can impossibly be delivered on.
this feeling that i cannot really improve or fix the ship we are sailing with, but rather being handed a bucket and being told to constantly remove the leaking water and put it back in the ocean, but always at multiple sites of the ship all at once.
i'm tired of being the only female dev and altogether feeling so different from the rest of the team, feeling that i do not belong there.
even though i need to make a living, i just can't imagine anymore to spend so much of my lifetime for something that makes me feel so bad...7 -
After I spent 4 years in a startup company (it was literally just me and a guy who started it).
Being web dev in this company meant you did everything from A-Z. Mostly though it was shitty hacky "websites/webapps" on one of the 3 shitty CMSs.
At some point we had 2 other devs and 2 designers (thank god he hired some cause previously he tried designing them on his own and every site looked like a dead puppy soaked in ass juice).
My title changed from a peasant web dev to technical lead which meant shit. I was doing normal dev work + managing all projects. This basically meant that I had to show all junior devs (mostly interns) how to do their jobs. Client meetings, first point of contact for them, caring an "out of hours" support phone 24/7, new staff interviews, hiring, training and much more.
Unrealistic deadlines, stress and pulling hair were a norm as was taking the blame anytime something went wrong (which happened very often).
All of that would be fine with me if I was paid accordingly, treated with respect as a loyal part of the team but that of course wasn't the case.
But that wasn't the worst part about this job. The worst thing was the constant feeling that I'm falling behind, so far behind that I'll never be able to catch up. Being passionate about web development since I was a kid this was scaring the shit out of me. Said company of course didn't provide any training, time to learn or opportunities to progress.
After these 4 years I felt burnt out. Programming, once exciting became boring and stale. At this point I have started looking for a new job but looking at the requirements I was sure I ain't going anywhere. You see when I was busy hacking PHP CMSs, OOPHP became a thing and javascript exploded. In the little spare time I had I tried online courses but everyone knows it's not the same, doing a course and actually using certain technology in practice. Not going to mention that recruiters usually expect a number of years of experience using the technology/framework/language.
That was the moment I lost faith in my web dev future.
Happy to say though about a month later I did get a job in a great agency as a front end developer (it felt amazing to focus on one thing after all these years of "full-stack bullshit), got a decent salary (way more than I expected) and work with really amazing and creative people. I get almost too much time to learn new stuff and I got up to speed with the latest tech in a few weeks. I'm happy.
Advice? I don't really have any, but I guess never lose faith in yourself.3 -
Did I ever say I love my PM? He's fucking awesome.
In the summer I got an internship at this company and the PM had plans to turn me into a permanent employee, junior position I assume. I told him I'd need a month after school started to see how things went with school and the job at the same time. In the end I decided I couldn't work full-time because I don't have time for it. Also, I want to explore a bit the CS field and see if there's anything else I like (quantum computing and low level programming are at the top of my list), so I decided I won't be renewing my contract as an intern either.
Last week I went into a call with my PM to tell him about all of this and I did not expect the response I got. He actually thinks I'm doing right and supported me in my decision to learn other things. I didn't expect this kind of response at all and it made me feel much, much better (I was pretty nervous to tell him). He also told me that if I want to work on something else in order to learn I just have to ask (I currently do web dev).
But that's not all. He gives us, developers, space to work and doesn't micromanage us. He has technical understanding, doesn't force deadlines on us and understands that sometimes things take longer than expected. He is just great and I'm kind of sad I'll be leaving this job because he's awesome and (from what I read here on devrant) that seems to be pretty rare.
Anyways, that's it, no anger or anything today, I just wanted to say I like my PM very much.4 -
The year was 1983. My best friend and neighbour at the time invited me over to see an amazing device that his father had brought home from work, an IBM PC. We played a game called Track & Field, and I was amazed that the machine remembered my name once I've entered it. (Uptil then the only machines with any kind of memory that I've come in touch with, were arcade games and my cousin's video game console, which was also the first electronic gaming device I've ever played, back in 1978). In the early 1980s, computers were anything but commonplace in Åland Islands, but I think that it was in 1983 that people became aware of them, and there was a budding interest to buy one, at least among us kids. It was my sister who wished for a home computer for Christmas, so the same year Santa gave us a ZX Spectrum. It came with a game called Thro' the Wall, an Arcanoid clone(, that has inspired me to make my own clone "Wall" for all the different home computers I've had, ranging from Commodore 16 and Canon V-20 to Amiga 500 and Amiga 1200). Unfortunately, we only managed to load the game (delivered on a C cassette) like once or twice after several attempts. It turned out that the hardware was faulty and dad got a refund after first having had to complain a lot at the dealer (which went out of business some ten years ago), and then bought the Commodore the next Christmas. Anyway, I wrote my first code on the ZX Spectrum. It doesn't really count for programming as all I did was typing examples and running them. I do recall altering one example though, a program drawing the Swedish flag on the screen, by adding an inner red cross thus turning it in the Åland flag. But, with the Commodore 16 (which had an excellent Basic interpreter) I got started with programming almost immediately and by the end of 1984 I had written my fist very own Basic programs. In 1996 I got my first IT job, and am still a dev. So, what became of my childhood friend and neighbour? He runs a successful computer dealership :)
-
Honestly, nothing kills your brain cells faster than doing the same repetitive tasks at work, day in and day out. It’s like I'm just on autopilot—pushing buttons, running scripts, rinse, repeat. At some point, I start wondering if I’m a dev or just a glorified robot.
And to keep my sanity intact? Competitive programming. Yeah, that’s how I free my mind—throwing myself into algorithmic problems during my break time, just to remind myself that there’s more to life than the mundane loop of tasks at work. I’ll take an NP-hard problem over this any day. At least that makes me think.6 -
So I worked with this guy for 2 years. Lets call him Fred. He came into the company and immediately inserted himself as a programmer lead. I asked him to talk to our boss to determine if he was in fact in charge of the devs now. Our boss said he is not in charge of anything. He continued to act like a lead. I was like fine, "you can play boss for now". He was actually very helpful to bounce ideas off of and knew a lot about programming in general. I enjoyed working with him.
Fast forward 2 years after he was hired. I come into work and notice he isn't at work. I figure he was taking a longer vacation. It was around thanksgiving. A week goes by. I ask another coworker where Fred is. Coworker, "Oh, he was let go." Apparently there was a conflict with our boss with Fred. The boss had to work the weekend to write a bunch of code Fred was supposed to write.
So I got paranoid and wondering if I was going to get fired. I didn't understand the specifics of why and nobody was explaining this. I had planned on working on some extra code for another coworker, but decided against this due to the recent events. I just kept working the task I was assigned, but I kind of got depressed about this. This hurt my productivity for a month or two.
A few months go by. I talk to the coworker about Fred. The coworker explains that Fred never actually generated any code that was usable. Some of the code this coworker had to fix. So the sum total of code was actually a negative amount of lines written while working here.
How the fuck do you stay employed without writing code as a developer? The guy was smart, and understood math way better than I understand it. How can Fred seem like he knows what he is doing, but not produce anything? This would embarrass me to be this unproductive. I don't think the guy was incompetent. He always contributed guidance and helped keep projects on task. My coworker thinks Fred was trying to be a manager instead of a developer. Why not balance that and be both? I get sick of coding at times and would love to just talk to people.
I am very confused how Fred fucked up a pretty laid back dev job.4 -
The worst part of being a dev
My social dilemma
In a fast paced world where the average human spends at least 6 hours a day with technology, deriving basic entertainment, pleasures and engaging in various activities.
Here we are the developers that have to engage with technology for longer hours for a living , having to keep up with deadlines, immersing our minds in complicated algorithms and then the endless possibilities of entertainment from the machine in so few human hours a day , you wonder how you’d get off, and to top it up, I personally work from home.
And then the dilemma of overcoming different suggestions from various parties in taking a break off, a break off to what you later ask yourself, thus creating the shadow of doubt, splitting the fragile programmer’s mind , trying to solve this imaginary puzzle, “this bug of the mind”.
Then the challenge often arises in creating a balance, telling yourself, just catching up with people with this same technology takes a whole day, or then again quitting my Job, but from my little experience of life, nobody likes a poor visitor, this is actually worse than a “bug” and as I bask in this quagmire, “a little voice in my head keeps singing keep doing what you love doing”.
Like an infinite loop of crazy, spiralling back to these machines, trying the find and fix the balance of normalcy. Always remembered the cool years of college tho, with so much people around and then again that was college.
An then the thought arises, maybe something else might be worth doing, but after so much time spent in building your skills and the enormous joy of programming even typing without looking at the keyboard is a real pleasure, and yeah sure the days are short with the reality of a constant need to survive, remain sane, compete and make the best of life in such short time.
Then how do we know if we have fallen off the so-called “social track”, when we have only lived so little to really comprehend the most parts of life? with such constant stream of unanswered question, you’d realise you shouldn’t have burdened the mind creating such questions in the first place
But then again maybe it gets better, one of the above, the disturbed mind or the situation as whole and yes I try oh I try, I place calls, do some visiting, no relationship tho but with a good perspective in mind.
In this race of life, you sometimes ask yourself would you rather be in a different position, or maybe already put exactly where we belong. For this illusionary fight with self is a fight with reality as a whole and true bliss comes from actually letting go as time and people pass you by.
And my greatest achievement to date aside family and my work is getting into the 1000 club on devRant.2 -
When I was 11 or 12 and I found a magazine for kids that for some reason had an HTML tutorial to build a personal site with Microsoft Frontpage. I think it was 2006 back then and for a few weeks I learnt a lot about HTML, managed to create my site and upload it to a free host. I was fascinated. That was my first close up, at least, to something related to programming. From that day, I knew I was going to work with computers. Now I'm a Java dev but I'm still seeking the language for me. Maybe Javascript.
-
Since this post was too long for devrant's 5k sign limit, I split it in several parts. I will try to make each part comprehensible as a standalone post. This is part one of WHY WOULD I WANT TO WORK WITH YOU? saga. A tale of empathy, competence and me being a dick, even though I didn't really want to be one. The part one is titled: "Bad times, good times". It may or may not have any value. It probably won't be funny.
I dedicate this to every single junior or entry level dev out there, struggling to find a job in their field.
=====
What do you think, how long does it take for junior with 6 months of commercial experience to find a dev job? If your answer was "idk", you're right. If your answer was "3 montths maybe", you're also right. At least this is how long it took for me. I am writing this at 2am, couple of hours after I managed to get employed. I am happy. My employer probably is happy too. My recruiters certainly are. The guy whose offer I had to reject after we were almost ready to sign the contract, on the other hand, isn't. He probably hates me. We'll get to that one post at a time.
Let's move back in time a little bit. It's December 12th, 2019. It is third month after I left my family home. I don't ha0ve a job, I was living first in my older brother's apartment for a month, then I started to rent my own. I have literally no money, I'm in debts. I moved out because reasons that would make up for another couple of posts, and for said reasons I refused to get 'any job just to pay the bills'. You can imagine that I was in pretty bad situation, and my psyche didn't really take that shit too well either. My daily meal was a bowl of rice with a little bit of self-hatred on top. Gourmet.
At that time, my daily routine would consist of practicing music, practicing programming, trying to get a job and surviving. Some of my friends just turned their backs against me. I did a small rework of my contact list as well. It was a *hard* time. I had sent my CV to around a hundred different companies with very little to no response. Some of them required at least bachelor's in IT for their frontend dev. Some of them required experience I didn't have. Some of them just didn't care to answer me. And then that one day happened. Three different people wanted to meet me and talk about internships/job offers. I will share what happened next in next posts, but here's a quick spoiler. I got a job. Yes, I am hyped.
Dear fellow Dev. This is a small reminder. If you're having bad times, just remember that if you focus on what you need to do, you will be just fine. Sometimes it may take days of struggling, sometimes it will take months of eating mostly rice. We all... Most of us have been through this.
Next posts will be less inspirationalstufftelling and more storytelling. Let this post be a setup, a small context to keep in mind upon reading my next stories. Because it is quite important. For me and for the story.3 -
Serious question, what's so great about using Macs for programming and dev work? Junior dev here and all my colleagues and superiors can't stand them.
Is there actually a technic benefit that I'm missing?59 -
Colleagues improvising themselves "Evangelists of everything" but continuously asking me how to do things.
Now you can go ask there.1 -
Anyone else here with anxieties, depression or what-not? I feel this could get heavy, but I feel this is the only place I could write this. So...
My 18-month-long programming course is slowly coming to an end. Time has come for us to be sent out to job interviews at various companies.
Every single time an interview comes up, I feel the exact same mix of my inconfidence, constant anxiety, "I'm gonna throw up", impatience and whatever else is there in my head. I figured it would get easier with each consecutive interview but it hasn't.
The questions they ask make me sick. The atmosphere is unfathomable. Robots are more humane.
- Why do you want to work with us?
I need money for my meds and something to down them with? I willingly put myself through this shit to become a corporate slave, what else is there to say? I can only hope I'll be writing any code here.
- Where do you see yourself in 2-3 years?
Far away from anything remotely related to an HR department of any sort?
- Had you been a fruit, which one would you be? Whatever would come out of my tears blended with semen? What the fuck is even that question?
Of course those aren't my actual responses, but conjuring the IRL ones to finish the process is a serious burden. And those are only some HR ones. After this barrage of questions they want my lifeless, flaccid body to write code. I mean ok, it's a software dev gig, but I already gave all I had on self-clairvoyance.
We'll be in touch!
Is there a strategy you guys have when you go to an interview? Any tips for taming the acrid beast running around in your brain? Is it too much to talk with a human in a humane language without "15 buzzwords to make the recruiter moist"?5 -
I started to hate programming.
I started with a lot of enthusiasm 11 years ago up to become in 2 years a full stack dev, a sysadmin and had also my fair share of technical assistance on every device plus hardware experience mounting hardware like cctvs, routers, extenders, industrial printers and so on. At the time you actually had the tools to solve problems and had to crack your head and pull hairs to solve stuff and people actually was developing solution and frameworks that solved stuff.
Today I can't stand anything.
Every midschooler feels entitled to release a framework that is announed as the next cure for cancer. Web dev once was thin and simplistic, now simplicity is considered a bug and not a feature.
I'm working on an angular project for the nth time and the whole environment is a clusterfuck of problems held togheter with kids glue.
Someone did a tool/framework for everything but most of it is barely well tested or mature.
Just to start this project we had to know, beside html/css/js techs like Angular, Kafka, Kubernetes, Docker, git, Lit, npm/node, mysql/sql server, webpack/grunt and the hell that it brings, C#/Asp.NET/MVC/WebAPI, and so on, the list is long.
DAMN. Making a simple page which shows a tabbed view with some grids requires you to know a whole damn stack of technologies that need to cooperate togheter.
It's 10x more complex and I actually find it much less productive than ever.
But what bugs me most, is that 90% of that stuff is bug ridden, has some niche use case or hidden pitfall and stuff because with this whole crap of "hey we put on github you open a ticket" they just release spaghetti code and wait for people to do the debug for them.
Angular puts out a version every 2 days and create destructive updates.
I am so tired that I spend most of my 8hrs binging youtube vids in despair to procrastinate work.
I liked to do this once....13 -
I've been thinking about how to answer this for a while, but I'll approach it from a different angle. The time I (nearly) lost faith in my dev future wasn't because of a technology, bad programming language or an external influence. It was *me*.
The first job I had after the PhD, I was (in the first couple of weeks) tasked with updating various packages on a live Redhat server. "No problem", I thought, "I've done this before many a time on Debian, easy as pie!"
Long story short, I ended up practically bricking the server because I mistyped and uninstalled something I shouldn't have, didn't understand a piece of configuration, then tried to bodge it back and cocked things up further. Couldn't even log in via SSH, the hosting company had to be called, a serial connection set up, etc.
To say I was mortified, embarrassed and had my pride dented would be a massive understatement. I seriously thought I'd get fired on the spot, and that I should perhaps change careers to something where I couldn't cock things up as much.
...but you can't think like that, otherwise the world leaves you behind. So I picked myself up, apologised profusely, took some relevant training, double checked everything I was doing on that server in future and got back to work. After a few months of "proving myself", it was then seen as nothing more than a rather amusing story, and I became a senior dev there a couple of years later.1 -
There are a lot... I am going to pick the interview dialogue (incl. test) with the government.
Following situation:
-5 recruiters
-3 candidates (including me) who have all passed an online test that did last for 3 hours
The online test was for the government to see how every candidate is good at math, English, situation adaptation, historical questions, a little bit of techy questions like "What does fps stand for?" and basic questions like that.
Even tho I did apply for a job as a software developer, there was not a single fucking question about programming. I shit you not. Anyways...
After everyone did introduce themselves. I was given the following question by one of the recruiters:"How do you think will the regular work look like to you, if you were to schedule it? We will be starting with you, <myName>"
Me:"Since this is hopefully going to be my first job in software development, I can only assume it for now. Based on my knowledge about this specific topic that I have made by reading other software developers' work experiences in form of textual content, I guess that I am going to do this [...] and that [...]. Oh and after this comes the planning phase (I had mentioned the sprints and agile "frameworks") and meetings of how the projects are doing so far.
After this comes the phase of sitting down and getting to work on the project I am assigned to.
At the end comes the "see you tomorrow, xyz" phase and everyone leaves."
Somebody else from the 5 recruiters:"I am sorry to interrupt you right here, but we are not offering you a dev job. It rather is a mixture of dev and sysadmin. You will be working most of the time fixing someone's problem with their PC and not sitting in a dark and empty corner of a warm room."
This was such a disrespect that I could not give an answer to. I was deeply shocked. Developers need more respect. Most of the fucking things you use, are created by developers, you asshole.
"We will be very happy, if you can call us by tomorrow to let us now if you are still interested."
Me does not even bother anymore and blacklists that government as a "trust me. You do not want to work there" type of job offering place.
Since I did not sign any NDA. It is the government of Germany.
PS: I did apply for a *dev* job. But somehow they did decide to create a new job and assign me to it. That is not professional.5 -
Passionate programmer attends one of the toughest interviews ever and solves lot of algorithmic problems coding in different programming languages. Impresses the interview panel providing solutions with as much as efficiency as possible. Gets selected, completes induction and gets a nice Dev machine allocated.
Manager walks in and says we got to work with the production support team on fixing a UI bug.2 -
TL;DR:
JuniorDev ignores every advice, writes bad code and complains about other people not working because he does not see their result because he looks at the wrong places.
Okay, so I am really fed up right now.
We have this Junior Dev, who is now with us for circa 8 months, so ca. a year less than me. Our first job for both of us.
He is mostly doing stuff nobody in the team cares about because he is doing his own projects.
But now there's a project where we need to work with him. He got a small part and did implement that. Then parts of the main project got changed and he included stuff which was not there anymore. It was like this for weeks until someone needed to tell him to fix it.
His code is a huge mess (confirmed by senior dev and all the other people working at the project).
Another colleague and me mostly did (mostly) pair programming the past 1-2 weeks because we were fixing and improving (adding functionality) libraries which we are going to use in the project. Furthermore we discussed the overall structure and each of us built some proof-of-concept applications to check if some techniques would work like we planned it.
So in short: We did a lot of preparation to have the project cleaner and faster done in the next few weeks/months and to have our code base updated for the future. Plus there were a few things about technical problems which we need to solve which was already done in that time.
Side note: All of this was done not in the repository of the main project but of side projects, test projects and libraries.
Now it seems that this idiot complained at another coworker (in our team but another project) that we were sitting there for 2 weeks, just talking and that we made no progress in the project as we did not really commit much to the repository.
Side note: My colleague and me are talking in another language when working together and nobody else joins, as we have the same mother tongue, but we switch to the team language as soon as somebody joins, so that other colleague did not even know what we were talking about the whole day.
So, we are nearly the same level experience wise (the other colleague I work with has just one year more professional experience than me) and his work is confirmed to be a mess, ugly and totally bad structured, also not documented. Whereas our code is, at least most of it, there is always space for improvement, clean, readable and re-useable (confirmed by senior and other team members as well).
And this idiot who could implement his (far smaller part) so fast because he does not care about structure or any style convention, pattern or anything complains about us not doing our work.
I just hope, that after this project, I don't have to work with him again soon.
He is also one of those people who think that they know everything because he studied computer science (as everybody in the team, by the way). So he listens to nothing anybody explains to him, not even the senior. You have to explain everything multiple times (which is fine in general) and at some points he just says that he understood, although you can clearly see that he didn't really understand but just wants to go on coding his stuff.
So you explain him stuff and also explain why something does not work or is not a good thing, he just says "yes, okay", changes something completely different and moves on like he used to.
How do you cope with something like this?6 -
A lot of things dev say are true, but this one I don't believe as much:
Many devs say that it's important for everybody to learn a bit of a basic programming language, to learn about computers and how programs are made. I disagree, I think that instead people should learn *how* things work. Ex, in my school people always use a VPN to get around the proxy. I don't care if they know basic statements, I think it's more important to learn how a VPN works. Most of them don't even know what VPN stands for. Am I the only one?3 -
I still wonder why people go to programming classes thinking a dev is paid a lot. Not all devs are paid a lot and it takes passion and hard work to be a good dev. Don't just go there for the money. You'll regret wasting your life.4
-
!rant
How I think the process for designing a hardware-driver is like
CEO: "Alright everyone, we have designed and created this great product, now let's write a driver for it!"
PM: "Great then! We just code for Windows, create an eye-catching UI but leave the actual at the worst possible case that could work!"
Dev: "B-But isn't there other OSes, like Linux and Android that people use on their computers too?"
PM: "Shut up! We are going to JUST support Windows and f*** no absolutely other OSes!
Dev: "But what if they are also developers, and want to control and use this great product by programming it themselves? We should make the driver open-source, or at least give them some APIs!"
PM: "Nonsense! They are only going to use this product on M$ Windows, and with the program we provide to them, even if it's crappy and crashes most of the time!"
Dev: "But-but..."
PM: "No buts! That's our final decision!"
And some other consumer devs are like, "F*** it, we just reverse-engineer the codes and write a new driver ourselves!"
:|3 -
I have been burnt out for over a year and a half now combined with mental health issues.
I was working an underpaying job, doing senior-dev work for a less than junior-dev pay, with an incompetent understaffed team. The work was so mundane and most of the clients were stupid. I hated work, my colleagues, and most of all I hated programming.
I finally quit the job and quit programming as well. I couldn't touch or see a terminal window without panicking. I've been spending my time binge watching series and movies.
Recently though, I've started picking up coding again. I've been blogging and doing some changes to my blog beside other light stuff.
This is the story of my first burnout and it's taken its toll on me. I hope it's the last one but who knows.3 -
Next week I'm starting a new job and I kinda wanted to give you guys an insight into my dev career over the last four years. Hopefully it can give some people some insight into how a career can grow unexpectedly.
While I was finishing up my studies (AI) I decided to talk to one of these recruiters and see what kind of jobs I could get as soon as I would be done. The recruiter immediately found this job with a Java consultancy company that also had a training aspect on the side (four hours of training a week).
In this job I learned a lot about many things. I learned about Spring framework, clean code, cloud deployment, build pipelines, Microservices, message brokers and lots more.
As this was a consultancy company, I was placed at different companies. During my time here I worked on two different projects.
The first was a Microservices project about road traffic data. The company was a mess, and I learned a lot about company politics. I think I never saw anything I built really released in my 16 months there.
I also had to drive 200km every day for this job, which just killed me. And after far too long I was finally moved to the second company, which was much closer.
The second company was a fintech startup funded by a bank. Everything was so much better than the traffic company. There was a very structured release schedule, with a pretty okay scrum implementation. Every team had their own development environment on aws which worked amazingly. I had a lot of fun at this job, with many cool colleagues. And all the smart people around me taught me even more about everything related to working in software engineering.
I quit my job at the consultancy company, and with that at the fintech place, because I got an opportunity I couldn't refuse. My brother was working for Jordan Belfort, the Wolf of Wallstreet, and he said they needed a developer to build a learning platform. So I packed my bags and flew to LA.
The office was just a villa on the beach, next to Jordan's house. The company was quite small and there were actually no real developers. There was a guy who claimed to be the cto of the company, but he actually only knew how to do WordPress and no one had named him cto, which was very interesting.
So I sat down with Jordan and we talked about the platform he wanted to build. I explained how the things he wanted would eventually not be able with WordPress and we needed to really start building software and become a software development company. He agreed and I was set to designing a first iteration of the platform.
Before I knew it I was building the platform part by part, adding features everywhere, setting up analytics, setting up payment flows, monitoring, connecting to Salesforce, setting up build pipelines and setting up the whole aws environment. I had to do everything from frontend to the backest of backends. Luckily I could grow my team a tiny bit after a while, until we were with four. But the other three were still very junior, so I also got the task of training them next to developing.
Still I learned a lot and there's so much more to tell about my time at this company, but let's move forward a bit.
Eventually I had to go back to the Netherlands because of reasons. I still worked a bit for them from over here, but the fun of it was gone without my colleagues around me, so I quit last September.
I noticed I was all burned out, had worked far too much, so I decided to take a few months off and figure out what I wanted to do with my life. I even wondered whether I wanted to stay in programming.
Fast forward to last few weeks. I figured out I actually did want to work in software still, but now I would focus on getting the right working circumstances. No more driving 3 hours every day, no more working 12 hours every day. Just work close to home and find a company with the right values.
So I started sending out resumes and I gave one recruiter the chance to arrange some interviews too. I spoke to 7 companies in the span of one week. And they were all very interested. Eventually I narrowed it down to 2 companies and asked them for offers. And the company that actually had my preference offered me significantly more than I asked for, which settled the deal.
So tomorrow I'm officially signing with them, and starting next week I'll be developing in Kotlin, diving into functional programming and running our code in serverless environments. I'm very excited! -
Im now working as a fulltime dev for 3 years. I do programming since im 9 and now that I collected some experience, I have to to say, its horrible. Seriously. What the fuck is wrong with german internship companys? Letting me do 3 years of FUCKING CRYSTAL REPORTS. IN A DEVELOPMENT TEAM THAT CONSISTS OF A TEAM LEAD THAT ACTUALLY HAS TO LEARN SHIT LIKE PROPER OOP AND ASYNC/AWAIT FROM ME. THEY EVEN ASKED ME IF I CAN DROP OF MY HOBBY PROJECTS TO WORK ON SAMPLES THAT THEY CAN LEARN FROM! NO! FUCK! JUST BECAUSE THESE DOUCHBAGS ARE TOO LAZY TO FUCKING LEARN TECHNOLOGY THEY SHOULD BE PASSIONATE ABOUT IN THEIR FREE TIME, IM NOT MAKING IT MY JOB TO FREAKING SHOW THEM THAT HAVING A STATIC CLASS CONTAINING ALL MODELS EVER EXISTED IN THE APP IS A BAD THING! SERIOUSLY, THERES ONLY ONE INSTANCE OF EVERY MODEL WE HAVE! AND THEN THEY BLAME SQL SERVER FOR RACE CONDITIONS WHEN TRYING ASYNC!!!! WHAT THE FUCK!! AND STILL, IF I TELL THEM WHATS WRONG, IM AN IDIOT BECAUSE IM A JUNIOR! Please tell me that i didnt waste 10 years of my life dedicating to such bullshit. Will that change? Is it company specific?9
-
After weeks of feeling useless at work as being the "available tech support", but not actually doing anything, I was finally assigned a new learning task, which is looking into Prolog
Doesn't feel like my cup of tea, but at least I'm putting my head to work again ¯\_(ツ)_/¯4 -
Today I was debugging some shitty code left by unknown developer whos linkedin account is dead and phone number left in contact card calls local pizza house.
I knew it qould be hard so i've made myself comfortable, gathered 5 redbulls and other items that diabetes people would kill for eating again.
After around 10 minutes i was already frustrated but i kept the pace. "Who is the best, little devie, you!" - I fooled my ego to keep up and shut up.
After around 10 next minutes my attention span has ended. Limbic system started injecting some hormones into my brain, but I remained silent.
First two energy shots were applied. I felt like hero again. Two minutes after I was debugging through some library that was written fo java and found out that it ahots some natives to a c lang lib called "mypreciouslib".
Oh flock, how can i debug it if ita compiled , I cannot do such things, Me be only junior dev. I started swearing, but silently.
Started ollydbg to see what is inside livrary, i searched through but i couldnt match anything it was like mess stirred with fecals of an elephant.
So I opened aida pro " with vitamins" cause obviously, our pm says "but you write in java right " so we dont need those tools right ? Fuck no.
Aida was better at least i could find some funcions calls, but hey, the progress. I was swearing out loud, with earplugs in. And by the time I've sweared all the things in company i got a reminder.
"Hey -insane- stop swearing, the children are here."-sayys pm, it is some kind of " family and work " shitfuck day.
So i asked them: " why wouldnt you buy this fucking tools for programmming for us , you wouldnt have to hear me fucking swearing" . then i realized that , colleagues in room heard all of it, and one of them, total fuckface buttlicker(dev without bit of knowledge) started something like "you are wrong, see how good our software is sellling". Pm was like smiling like he thanked him for buttlicking again. Not to mention he is officially retarded and i know his password to all our services cause he is so smart to put it into text file and then have sharing files in windows turned on.
The other one told aloud, that we would be much better with some debugging tools that are better than fucking eclipse if we have to work without code.
PM told us that he will arrange a meeting. At that point I didnt care any longer. I just fired myself, fuck them.
Please saint Stallman give me hope and joy of programming from my teenage years. Uhhh..2 -
This isn't a funny rant or story. It's one of becoming increasingly unsure of the career choices I've made the path they've led me down. And it's written with terrible punctuation and grammar, because it's a cathartic post. I swear I'm a better writer than this.
The highlights:
- I left a low-paying incredibly stable job with room to grow (think specialized office worker at a uni) to become a QA tester at a AAA game studio, after growing bored with the job and letting my productivity and sometimes even attendance slip
- I left AAA studio after having been promoted through the ranks to leading an embedded test tools development team where we automated testing the game (we got to create bots, basically!) and the database, and building some of the most requested tools internally to the company; but we were paid as if we were QA testers, not engineers, and were told that wouldn't change; rather than move over or up, I moved out to a better paying, less fabulous web and tools development job for a no-name company
- No-name company offered one or two days remote, was salaried, and close to home. CTO was a fan of long lunches and Quake 3 Arena 1-2 hours at the end of every day. CTO position was removed, I got a lot of his responsibilities, none of his pay, and started freelancing to learn new skills rather than deal with the CFO being my boss.
- Went to work as a freelancer for an email marketing SaaS provider my previous job had used. Made loads of money, dealt with an old, crappy code base, an old, cranky senior dev, and an owner who ran around like the world was on fire 24/7; but I worked without pants, bought a car, a house, had a kid, etc;
Now during ALL of this, I was teaching game dev as an adjunct at my former uni. This past fall, I went full time as a professor in game dev. I took a huge pay cut, but got a steady schedule (semester to semester anyway) and great benefits. I for once chose what I thought was the job I wanted over more money and something that was just "different". And honestly, I've regretted it so much. My peer / diagonally above me coworker feels untrustworthy half the time and teaches the majority of the programming courses when he's a designer and I've been the game programming professor for 8 years (I also teach non-game programming courses, but those just got folded into the games program...); I hate full-time uni politics; I'm struggling with money for my family; and I am in the car all the time it feels like. I could probably go back to my last job, which had some benefits, but nowhere near as good; my wife doesn't want me back to working in the house all the time because that was a struggle unto itself once we had a kid (for all of us, in different ways); and I have now less than 24 hours to tell my university I want to not pursue longer term contracts for full-time and go back to adjunct next Fall (or walk away entirely), or risk burning a bridge (we are reviewing applicants for next year tomorrow, including my own) by bailing out mid-application process.
I'm not sure I'm asking for advice. I'm really just ranting, I guess. Some people I know would kill to have the opportunities I have. I just feel like each job choice led me further away from a job I liked, towards more money, which was a tradeoff that worked out mostly, but now I feel like I don't have either, and I'm trapped due to healthcare and 401k and such. Sure, I like working more with my students and have been able to really support them in their endeavors this semester, but... that's their lives. Not mine. The wife thinks I should stay at the university and we'll figure out money eventually (we are literally sinking into debt, it's not going well at all), while most people think I should leave, make money, and figure out the happiness factor once my finances are back on track and the kid is old enough to be in school.
And I have less than 24 hours it feels like to make a momentous decision.
Yay. Thanks for reading :)2 -
I actually never felt the need to scream at a co-worker so let's talk about that time a co-worker screamed at me instead.
tl;dr : some asshole boss screamed and threatened me because someone else's project was shit and didn't work.
Context: I was in my third year of school internship (graded) and my experience is C, C++, C#, Python all in systems programming, no web.
I was working as an intern for a shit company that was selling a shit software to hospitals (though not medically critical, thank God) the only tech guy on site was the DBA (cool guy) the product was maintained by a single dev in VB from his house, the dude never showed up to work (you'll understand why) and an other intern who couldn't dev shit.
I was working with the DBA on an software making statistical analysis from DB exports, worked nice, no problems here if we forget the lack of specs or boundaries (except must work in ieShit).
The other intern was working on something else (don't ask me what it is) I just remember it was in GWT before the community revived it. His webapp was requesting the company http server for a file instead of having one of it's java servlet to fetch it (both apps ran on sane server) which caused a lot of shit especially CORS error. That guy left (end of contract) and leaves his shit as is, boss asked me to deploy the app, I fiddle with it to see if it works and when I find out it doesn't then that asshole starts screaming at me in front of every other employee present, starts threatening to burn me in the tech world and have me thrown out of my school for no goddamn reason than the other dude's project doesn't work.
After the screaming I leave and warn my school immediately.
I guess that's why the other dev never came to work.
I had three weeks of internship left, that I did from home and worked probably less than 2 hours a day so suck it asshole.
Still had a good grade because I was reviewed by the DBA and he was happy with the work I did.
It was only later that I realized that what he did was categorizing as harassment (at least in France) and decided that never again this would happen without a response from my lawyer.1 -
As a Dev in college working for teams in college, I don't really have a need to use git, since most of 'self proclaimed prestigious programmer child prodigies' I work with have no idea what it is; but I use it anyways as good programming practice and ease of backups.
So I tried using a GUI client after months of the git bash, and even though I looked up a few tutorials (was embarrassed the whole fucking time). I ended up adding, committing and pushing via bash.
Can anyone explain me how is the GUI client helpful in large projects and stuff?8 -
Tried flutter for the first time in life, for 2 days, java based Android dev here.
I have some.... thoughts...
Flutter does not feel extremely new to me. It is very much relatable if you have ever tried basic the spring/ other java based gui framework. It is trying to achieve the goods from multiple worlds,its so far good, but mann its playing on thin ice.
Flutter : Yo boy embrace me. I am the beauty. checkout my hot reload.
Me :❤️❤️😍 (But wait. your first execution is wayy longer than a simple android studio build. And AS would generally take smaller time after every rebuild. And you are going to take the same long time as first build, if app gets closed or my usb gets accidentally removed. So I see what you did there ;))
Flutter: Ha. Checkout my function passing as parameter. ever thought your puny java going to give you that?
Me :you got me ,❤️. (Although this style is not so uncommon with web devs)
Flutter: everything is a widget, everything is stateful or stateless, Single Streams FTW!
me: ❤️
Flutter:You kotlin devs are gonna love me, i got Small, concise code
Me: Now wait, This is a thin ice for me, okay? I hated when kotlin replaced everything with symbols & lamdas for a confusing but small code, So be careful,even though your code is still good.
Flutter : Control every pixel , dear! No more xmls!
Me : Yes, what is with that? are we accidentally going in the past?
Java desktop apps, spring framework used to build whole layouts with programming language. The day i stepped into Android, it was xml for ui and java/kotlin for code. was that a bad decision or is this one?
Anyways i liked my stuff seperated, but that's just me.
Flutter : Ugh so much whining. Are you going to work with me or not?
Me : Yes mam! ❤️4 -
Hi all,
This might be a long post so bear with me. I work for a company and there was a project for a huge client. I'm junior in skill (been programming for about two years) but my job title doesn't reflect that. Anyways, I got the design about a month ago but I was on deadline for two other projects so I couldn't pick it up until last week Wed. Ironically, that's when the final design was delivered & told me it was due next week Wednesday. I built it as fast as I could. Finished mobile but for some reason, this last part for desktop just wasn't working out and it just so happens to be the most crucial part of the piece. (I was also sick the entire time and didn't sleep for the last two days nor did I eat). I was supposed to demo it yesterday but I still needed to make a few updates and the project coordinator took me off the project & gave it to a dev with more experience. This has never happened to me before. I'd go as far as to say this is my first big fuck up. I've always delivered on deadline and I'm taking this pretty hard. Has anyone been in similar situations? What do I do? Any advice?1 -
Hey guys, I've hit a major snag in my dev life.
My backend/frontend Java project has hit a wall as the material I was using from Udemy on advanced Java programming was boiling down to copy and paste programming without the learning. That doesn't really work for someone with 2 years programming experience but only a good 2 months of Java knowledge. I need to learn not just follow along what's written on a screen. Thankfully I learned to give in about 2 weeks in so I didn't waste a ton of time on it.
Would books be a better option? I self taught C++ mainly from books and preferred that over videos, but when I did C# videos were mostly better than books.
And...I guess I'll open the floodgates to recommendations for other stacks. I like Java and I'd like to keep using it but I know you don't want to get married to a way of doing things. My end goal is to make an E-commerce website that I can show off in interviews about a year from now.
Please be kind, I'm feeling a bit like crap right now. :(7 -
This is real rant, not one of these funny stories!
So, I spent 4 years to get a Computer Science degree, and did two specializations, 3.5 years more in Uni. I have 6 years of experience working in IT, from support to programming. I also speak 3 languages.
I'm from a South America country, and now I'm living in EU.
I'm 30 now and earning a little more than a MacDonald's cashier earns in the US. I have to live in a shared apartment like a fucking Uni student. I have nothing, no car, no house, no girlfriend. WTF!
IT is a fucking lie! Profession of the future my ass!
In Uni they said that finding a good job was easy, that companies would literally grab us by the neck to work for them. LIE!
I did found a low paying job though, where at least I could learn a lot more.
People were really satisfied with my work and I even received a proposal of one of our clients to work for them, but the offer wasn't good enough.
I tried entering some big companies as a Trainee, but it was so ridiculous, they said they were looking for an IT person, but they asked things related to economy and other stuff that had nothing to do with IT. I always failed in the group work/interview, it was so ridiculous, I remember one candidate saying her dream was to work for the company since she was a child, SERIOUSLY!
When the opportunity came, I moved to EU and now I'm working as a dev. But as I said, I'm not satisfied with it! In the US the yearly average software engineer salary is about 100K, I earn less than 1/4 of it. And don't come saying that US pays more because of the cost of life, here the cost of life is the same or even more expensive, a super small apartment/loft is at least 180K, a simple new car 18K and a Big Mac costs 4€.
In the US, the average salary of someone that just graduated from uni is 60K to 70K! LOL
In EU, it's super hard for someone to earn 100K, that's why many companies are creating offices here, good workforce, 2 to 3 times smaller salary!
IT also sucks because it's too volatile, there's new stuff all the time. Someone always has to come with a new language, new framework, new library, etc etc. And you have to keep learning new stuff all the time.
Also job openings always ask for experienced people, like you must have at least two years of experience with VUE.js, or something.
Do you remember the last time you went to a doctor for a checkup, did they use a new tool, or did something different during the checkup? Probably not, the medic don't have to learn new stuff all the time, he is still using a stethoscope, he is still placing a wooden stick in your mouth to check your throat...
But in IT, almost no one nowadays is going to create code using CoffeeScript, they instead will use TypeScript.
I read an article saying that an IT professional must study 20 hours a week to keep up with new trends. So I must work 40 hours and study another 20? LOL
It's not that I don't like learning new stuff, but this sucks, I want to maybe learn something different or have a hobby.
Today I regret going to uni, I feel it was a waste of time and money. They taught things like calculus and physics that I never had to use professionally, and even programming stuff like linked lists I never had to use.
If instead I had studied dentistry or studied to be a ophthalmologist I think I would be earning more, would be working more independently and wouldn't need to keep up learning new things so much.
Also to work in IT you don't need a diploma, I read an article by a dude that learned programming by his own, did some software for his portfolio and got a job at Google.
When I read these kinds of story I regret even more going to uni, It really feels I wasted my time.
For these reasons I can't recommend going to uni to study IT, if you want to go to uni go study something else!
If you want to study programming do it on your own, there's everything you must know online for free, create a portfolio, and look for a job or even try working for yourself!
Living the life I have now, there's just no incentive to keep going.
Should I keep learning new stuff so maybe I can get a better job that will still pay low, or quit and try creating something on my own?
Or even ditch IT all together and go back to uni? LOL NO!5 -
Not really a rant (?)
I started my first programming job in January this year. I went there staight after Highschool, so i had no real experience, knew only the basics of software development and my written code was quite a mess. So one of my first real tasks (after 2 months) was to write a business logic for batch handling (for a warehouse management system). I invested quite some time to develop a suitable architecture, talked with some other developers and wanted to cover the whole thing with unit tests (which really nobody at the company uses). So I spent about 3 weeks to write the whole thing, test it and improve it many times. It worked perfectly and I got pretty good feedback from the code-review.
1 month ago - the code worked perfectly and was multiple times testet (also by the client) - the client came with some totally new requirements for the batch handling. I tried to impelemt them, but soon found out, that the architecture doesn't supported them, it was not build for the required handling and would soon become a totally mess, if i tried to make it work.
So I was pretty mad, because I had to change the whole fucking thing, but I also wanted to make it better. I hab gained some experience and decided (with some help of a senior dev) to make a completely new try with a different architecture, that can be easily expanded, if needed. I build my concept, wrote and tested the whole new code in 3 days. Fucking 3 days compared to the initial 3 weeks, and it worked, better and even faster.
I was quite pissed to delete the old code, and especially that i had wasted 3 weeks for it and had to struggle with many different things. But I lerarned so much from it and also in the months between, that I was also really glad that I had the opportiunity to write it again.
This whole thing made me now realize that this is, what I really like to do and what I'm good in. I really enjoy learning new things and for me, programming is the best and easiest way to do it. Despite alle the cons and annoying side effects of it, I really found my dream job here.1 -
I am an Indie game developer. I've been working solo for two or three years now and teaching myself. I can work in 3D modeling applications as well as program in c++ and do blueprint in unreal engine. I know most of the pipeline and the suite.
I'd like to transition to doing game Dev full time or at the very least do programming as my job. I have no degree.
I'm looking for contracts or whatever I can get and I'd like to get suggestions on how I should go about quitting my shity night shift job at a factory and finally work in tech.
I've got a couple contracts going on right now that I am not sure if they are going to last. I would like to know how I should go about finding more and or what things I should do in order to get residual income so I can focus on my own projects.
I have several of my own games in the works and I'm developing some tools for the marketplace. Advice?28 -
My first dev project. That is a toughie. Years ago (1998) I did some BASIC programming in HS. Then a few years after that (somwhere between 2002 and 2006) I did a lot of video game editing with hex editors and other tools to replace dialog to translate video games from Japanese to English, but there was not much coding there.
The first one I remember in recent times that involved any kind of coding was back in 2012/2013, there was a save state editor for Final Fantasy III on android (it didn't work for the iOS saves) but the editor was in Chinese. I ended up working with someone else to change it to English, so that others could use it easier. After that, I decided to code one from scratch for a different game.
I spent weeks working on it, and finally released a save editor for Final Fantasy Dimensions (I made sure it worked for both iOS and Android save files). It was my first great achievement, however it was way to many lines of code (I didn't know about loops or arrays back then, so I had a lot of repeating code). I eventually ended up making ones for Final Fantasy IV and VI, however those were never released to the public, as I had trouble getting the CRC to calculate properly every time.
This led me down the path I am now, going for my Bachelor's in IST with a specialization in Programming. -
I need to rant about life decisions, and choosing a dev career probably too early. Not extremely development related, but it's the life of a developer.
TL;DR: I tried a new thing and that thing is now my thing. The new thing is way more work than my old thing but way more rewarding & exciting. Try new things.
I taught myself to program when I was a kid (11 or 12 years old), and since then I have always been absolutely sure that I wanted to be a games programmer. I took classes in high school and college with that aim, and chose a games programming degree. Everything was so simple, nail the degree, get a job programming something, and take the first games job that I could and go from there.
I have always had random side hobbies that I liked to teach myself, just like programming. And in uni I decided that I wanted to learn another language (natural, not programming) because growing up in England meant that I only learned English and was rarely exposed to anything else. The idea of knowing another fascinated me.
So I dabbled in a few different languages, tried to find a culture that seemed to fit my style and attitude to life and others, and eventually found myself learning Korean. That quickly became something I was doing every single day, and I decided I needed to go to Korea and see what life there could be like.
I found out that my university offered a free summer school program for a couple of weeks, all I had to pay for was the flights. So a few months later I was there and it was literally the best thing I'd done in my life to that point. I'd found two things that made me feel even better than the idea of becoming the games programmer I'd always wanted to be. Travelling and using my other language to communicate with people that I couldn't in English. At that point I was still just a beginner, but even the simple conversations with people who couldn't speak English felt awesome.
So when I returned home, I found that that trip had completely thrown a spanner into my life plan. All I could think about after that was improving my language skills and going back there for as long as possible. Who knows what to do.
I did exactly that. I studied harder than I'd ever studied for anything and left the next year to go and study in Korea, now with intermediate language skills, everyday conversations no longer being a problem at all.
Now I live here, I will be here for the next year and I have to return to England for one year to finish my degree. Then instead of having my simple plan of becoming a developer, I can think of nothing I want to do less than just stay in England doing the same job every day, nothing to do with language. I need to be at least travelling to Korea, and using my language skills in at least some way.
The current WIP plan is to take intensive language classes here (from next week, every single weekday), build awesome dev side projects and contribute to open source stuff. Then try to build a life of freelance translation/interpreting/language teaching and software development (maybe here, maybe Korea).
So the point of this rant is that before, I had a solid plan. Now I am sat in my bed in Korea writing this, thinking about how I have almost no idea how I'm going to build the life that I want. And yet somehow, the uncertainty makes this so much more exciting and fulfilling. There's a lot more worrying, planning and deciding to do. But I think the fact that I completely changed my life goals just through a small decision one day to satisfy a curiosity is a huge life lesson for me. And maybe reading this will help other people decide to just try doing something different for once, and see if your life plan holds up.
If it does, never stop trying new things. If it doesn't (like mine), then you now know that you've found something that you love as much as or even more that your plan before. Something that you might have lived your whole life never finding.
I don't expect many people to read this all, but writing it here has been very cathartic for me, and it's still a rant because now I have so much more work and planning to do. But it's the good kind of work.
Things aren't so simple now, but they're way more worth it.3 -
Fucking german computer science classes
You get a few UML structograms and have to finish a half finished project. It's the most boring way to learn programming ever. Instead of giving us a task or a project to work on, it's literally translating UML to C#.
Is this what one is gonna do later as a software dev?7 -
Development tools for embedded projects shouldn't need fucking internet to operate. Every fucking app needing internet to even startup is getting more and more stupid. I do a LOT of development offline. I usually have my dev machine away from internet for weeks at a time. It very nice to not have to deal with update issues and the like during this time. So naturally I choose tools to do offline programming for both desktop and embedded. So I decided that for my embedded work I wanted to have better environment than Arduino IDE. Now enters VSCode with Platform IO. I download all the target platforms for my boards. I get it all working and installed. Then I take my computer to my non internet location. I fire up VSCode, select the platform, create a test project, and compile the code. Everything is working great. Then I go to upload the code to my board:
"Blah blah blah you need internet first time talking to a board blah blah blah." Seriously? WTF? Who does stupid shit like this? Once you install your dev tools they should be fucking installed! Now I have to drag my fucking dev boards to another location and do a test install just to do fucking offline programming.
FUCK YOU PLATFORM IO!
Notice I don't blame VSCode for this. I know this IDE is very internet dependent, but it works once you get your plugins installed regardless of internet. Unless of course you are doing internet based programming.3 -
I Started in 2012 at 12 years old with Minecraft as an introduction to computer programming. I created a few of my own mods and released them to the forums. I think my name was "lilwillis2" if you want to look them up. Once I created mods, I got into game development. I used The Cherno's game programming tutorials and a few others on youtube. After having my fun with game Dev and the debt of College soon to come, I got into developing my own apps, which got me into using react-native. React native made me realize that I should probably try to stay up to date with the latest frameworks and languages, so that I can create a surpieror product in much less time. It also made me realize how quickly programming changes. Last year, before getting into react-native, I got a summer job using Django and mezzanine at a local company as a web developer and they want me to work there again this year, maybe even on a salary with a pay raise. I recently turned 18 and I already look at code I wrote a few months ago as crap 😂, but hey it means I'm improving quickly!
BTW, if anyone knows any tips on paying/saving for college, please do let me know!1 -
I'm considering quitting a job I started a few weeks ago. I'll probably try to find other work first I suppose.
I'm UK based and this is the 6th programming/DevOps role I've had and I've never seen a team that is so utterly opposed to change. This is the largest company I've worked for in a full time capacity so someone please tell me if I'm going to see the same things at other companies of similar sizes (1000 employees). Or even tell me if I'm just being too opinionated and that I simply have different priorities than others I'm working with. The only upside so far is that at least 90% of the people I've been speaking to are very friendly and aren't outwardly toxic.
My first week, I explained during the daily stand up how I had been updating the readmes of a couple of code bases as I set them up locally, updated docker files to fix a few issues, made missing env files, and I didn't mention that I had also started a soon to be very long list of major problems in the code bases. 30 minutes later I get a call from the team lead saying he'd had complaints from another dev about the changes I'd spoke about making to their work. I was told to stash my changes for a few weeks at least and not to bother committing them.
Since then I've found out that even if I had wanted to, I wouldn't have been allowed to merge in my changes. Sprints are 2 weeks long, and are planned several sprints ahead. Trying to get any tickets planned in so far has been a brick wall, and it's clear management only cares about features.
Weirdly enough but not unsurprisingly I've heard loads of complaints about the slow turn around of the dev team to get out anything, be it bug fixes or features. It's weird because when I pointed out that there's currently no centralised logging or an error management platform like bugsnag, there was zero interest. I wrote a 4 page report on the benefits and how it would help the dev team to get away from fire fighting and these hidden issues they keep running into. But I was told that it would have to be planned for next year's work, as this year everything is already planned and there's no space in the budget for the roughly $20 a month a standard bugsnag plan would take.
The reason I even had time to write up such a report is because I get given work that takes 30 minutes and I'm seemingly expected to take several days to do it. I tried asking for more work at the start but I could tell the lead was busy and was frankly just annoyed that he was having to find me work within the narrow confines of what's planned for the sprint.
So I tried to keep busy with a load of code reviews and writing reports on road mapping out how we could improve various things. It's still not much to do though. And hey when I brought up actually implementing psr12 coding standards, there currently aren't any standards and the code bases even use a mix of spaces and tab indentation in the same file, I seemingly got a positive impression at the only senior developer meeting I've been to so far. However when I wrote up a confluence doc on setting up psr12 code sniffing in the various IDEs everyone uses, and mentioned it in a daily stand up, I once again got kickback and a talking to.
It's pretty clear that they'd like me to sit down, do my assigned work, and otherwise try to look busy. While continuing with their terrible practices.
After today I think I'll have to stop trying to do code reviews too as it's clear they don't actually want code to be reviewed. A junior dev who only started writing code last year had written probably the single worst pull request I've ever seen. However it's still a perfectly reasonable thing, they're junior and that's what code reviews are for. So I went through file by file and gently suggested a cleaner or safer way to achieve things, or in a couple of the worst cases I suggested that they bring up a refactor ticket to be made as the code base was trapping them in shocking practices. I'm talking html in strings being concatenated in a class. Database migrations that use hard coded IDs from production data. Database queries that again quote arbitrary production IDs. A mix of tabs and spaces in the same file. Indentation being way off. Etc, the list goes on.
Well of course I get massive kickback from that too, not just from the team lead who they complained to but the junior was incredibly rude and basically told me to shut up because this was how it was done in this code base. For the last 2 days it's been a bit of a back and forth of me at least trying to get the guy to fix the formatting issues, and my lead has messaged me multiple times asking if it can go through code review to QA yet. I don't know why they even bother with code reviews at this point.18 -
I actually only started programming a little less than two years ago. I entered my freshman year of college as a mathematics major, but as time went on I ended up enjoying coding in C++ much more than trying to work out partial equations.
I have since become fascinated with many aspects of computer science, mainly web development and systems programming (I discovered Linux and the command line only a year ago and I'm practically in love). I've since been working for a couple fairly new startups with duties from developing a mobile native app in AngularJS/Ionic to migrating content to new servers and developing custom themes on WordPress. I have deep, deep aspirations of eventually being employed by Google as a Senior Software Dev (although I'd definitely prefer working for a company that would allow 100% remote work 😁). I've even finally began developing my own projects, ranging from a URL shortening service to a basic online encyclopedia.
I wanna spend the rest of my life doing this shit. Hell, I hope I die at my computer.1 -
Did I really go to university, have object oriented programming taught to me from scratch and embedded in me as best practice, work with OO frameworks for 3 years and become a damn good web dev just to use Drupal?7
-
wk257 - How did you learn to program?
GTA San Andreas Multiplayer Mod (SAMP), when I was maybe 14. Then some Java in high school. Studied Engineering and the only thing that didn't completely suck was programming (C), so I changed my field to work as a dev.2 -
Obligatory subjective view from inexperienced eyes of a highschooler
I think it's evolving to be more beginner-friendly and more easily accessible. I'm seeing ppl roughly my age can program pretty well (ignoring the mandatory programming classes in highschool that stuff is just no (I know, we had this convo before but do hear me out, although it teaches fundamental programming in Pascal, the execution sucks ball because "mandatory")). I'm not saying we are on par with the in-industry devs, it's just we can code well enough to at least make decent small program/script.
With newer scripting languages that are easy to pick up and syntactically similar to English which is obviously Python, both objectively and subjectively, and its ability to be OOP without scaring first-timers of the what-the-blyn-is-this blank program (looking at you C#) people can be introduced to programming and programming concepts fairly easily and they can switch from Py to other languages with little to some hiccups, from my personal exp at least.
But then there's the "too much kiddies in the field" arguments I saw on dR (I think) a while back then when SO decided to better support newbies. To that, I can only say "Please give us a chance". We're completely oblivious to how the dev world work nor how you guys do your work so before you scold us on this, at least tell us how to work like you before you go on a 2-A4-page rant on how the industry is not as good as before and how it has degraded.
That leads to the problems of politics invading programming. We have it, I hate it, goddammit I wanna murder them. Linux CoC controversy is just...no. And then there's forced diversity in hiring (also ranted on dR a while back) and corporations pissing devs off to satisfy a minor group. I'll just shut up on this. No no no no no no no NO I'm not gonna. Not gonna.
Do correct me if I'm wrong though. I'm a less than a junior dev.2 -
this year i finally found a job where I don't feel like dying, and it pays well. things are going so smoothly that I'm a bit weirded out, in a good way.
the work as a dev requires creativity and is mentally exhausting, but i got a nice routine going on (not a lot of programming, mostly database maintenance), and even with the high pressure I'm still fine :) -
I had very small experience on programming and applied for a dev Job kind of accidently.
But having good mathematical Background I convinced the Interviewer to give me the chance of learning during an internship. So I started a console Tool for special testing purpose with good success.
After the internship they asked me if I'm willing to lern Javascript and HTML. Though I had a lot of fun there, the answer was easy 😏
Now I'm a senior there having a team of 4-5 devs
And I still enjoy coding a lot 😎
So basically I learned coding during work -
Node: The most passive aggressive language I've had the displeasure of programming in.
Reference an undefined variable in a module? Prepare to waste your time hunting for it, because the runtime won't tell you about it until you reference a property or method on the quietly undefined module object.
Think you know how promises work? As a hiring manager, I've found that less than 5% of otherwise well-experienced devs are out of the Dunning Kruger danger zone.
Async causes edge cases and extra dev effort that add to the effort required to make a quality product.
Got a bug in one of your modules? Prepare yourself for some downtime because a single misplaced parentheses can take out the entire Node process, killing unrelated pages and even static file hosting.
All this makes for a programming experience that demands much higher cognitive load, creates more categories of bugs, and leads to code bloat/smell much more quickly than other commonly substituted languages.
From a business perspective, the money you save on scaling (assuming your app is more compute efficient under Node) is wasted on salaries and opportunity costs stemming from longer dev time, more QA, and more frequent outages.
IMO, Node is an awesome experiment, a fun language, a great tool for specific use cases, and a terrible fucking choice for an entire website.8 -
>Be me.
>Apprentice dev, first real programming job.
>Excited to start work.
>Contract comes through.
>About what I expected, i.e. we own everything you make while working here.
>Sign and send the signed pages back.
>Next day...
>READ THESE 5 20 PAGE PDF BOOKLETS, DO PENSIONS, SIGN 3 DOCUMENTS, LET US LOOK UP YOUR DICK PICS AND EVERYTHING ELSE, GIVE US YOUR PASSPORT, AND SEND BACK THE ENTIRE CONTRACT.
>...ok.6 -
Any dev who is asked to give “deadlines” then cried about how it’s “waterfall” and you cannot produce business requirement deadlines in agile methodology needs to stop being dependent on terminology and learn that part of programming is proper estimation.
Milestones, business deadlines and agile can go-exist. Anyone who says they don’t, then cries “waterfall” when asked to produce deadlines greater than 4 weeks out, please never work with me11 -
Well I guess my first dev project will probably end up as my last (For good reason).
Not long after dippig my toe in the programming world by messing with Minecraft mods, I decided to take a gamemaking class at my high school which introduced me to gamemaker, straight away I was able to use my java knowledge to sort of become the go to person for help, so while everyone was following tutorials for a basic pac man clone I had started work on the final asignment which was to create a fundamentally playable game.
Taught myself how to use spritesheets, tilesets, external libraries and the like and decided, fuck it lets make an RPG based around looting dungeons, ended up decidng on the title 'Plunder', since then the project grew and grew in scope to the point it is now unrecognisable with my goals as of now compared to then.
Now that project has been placed on hold as the story and world just grew in scope to the point I litteraly do not have the knowledge or time to actually work on the game, so I've started converting that world into a book which is slowly motivating me to almost slice up the game and work on individual pieces.
But considering the drain and effort that has gone into this, pretty sure IF (And that's a big if) I ever do release this game that took basic concept 9 years ago, don't think I would ever be able to top that achievement.
Thankyou for coming to my ted talk.
(Just for shits and gigs I might try and did up some old projects related ot this and post them in the comments if anyone may be interested ¯\_(ツ)_/¯) -
Just a quick rant on JavaScript,
So there’s a lot of people hating javascript, and while not a long time ago i was part of them, but I changed my opinion a little.
I think JavaScript is a great way to deal with website programming as it is quick and efficient, but I would not say to program directly on it, use a js-compilable language (CoffeScript, TypeScript, Kotlin(I think), etc.), but then you might say: “Well, no need for js then, compile it in byte code”. That would break the point of how I see web design/dev. The main intent behind webpages is to have an easy and fast way to send code to other computers to render them, that’s why it is interpreted: “Easy to send” and “*All* computers can handle it” with the proper browser. You need to be able to change the way the website is rendered and/or works sometimes, for diverse reasons like copy/pasting data, make it render properly or use plugins/add-ons to change that code to suit your needs.
I think js should be kept as a “readable byte-code”, so that means: {
Keep comments when compiling the js-compilable code,
Add standardized machine-readable comments that will indicate to smart code viewers how to show a particular thing (Like have a higher-end function compiled in js shown as a minimized code with explanations of the function)
Keep it nicely formated and don’t obfuscate (coz that’s annoying)
Etc.
}
So you bypass the quirks and all that pesky js stuff, while keeping it’s good sides.
-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-
Part 2:
Web design for non-web:
Ok so things like node.js, electron, react-native and all that stuff; I won’t say they’re bad but...
Why we have this is because web designers wanted to make desktop apps and were like “Hey! Making web pages is easy! Let’s port it to desktop”, the problem is: Web technologies were made to work on a restricted canvas, aka a browser. It’s good on web for reasons mention earlier and more. But it’s not on desktop! You’re trying to push it outside of those boundaries. It’s difficult to make it break that canvas and go outside, make something that really works! For social media clients and that kind of stuff that you want to make a little more inclusive, yes! it’s a great idea (hello devrantron ;), but not if it’s an exact same copy of the website, just use the website. But for things that are supposed to really make use of YOUR computer; no!
I see those PWA (progressive webapps aka mobile app, but it’s an offline website”), I stand for the same positions, social media and those sort of things: yes, great idea! Games? 🤢.
I have way more to say but I have difficulties to remember them while reading, so feel free to comment your thoughts
Lol, “just a quick rant”1 -
I'm not going to lie, the surge of bootcamps really irks me. Not because I'm afraid of competition, or that I'm an elitest. Mainly because a lot of people who attend these bootcamps have no real interest in software engineering. I sometimes attend a meetup, and it's a beginner meetup. I try to help out. And a lot of people clearly have no patience for learning software engineering. I try to be encouraging, but sometimes I just want to be dick and tell them "Why the hell do you want to be a dev, if you're not interested in how computers work".
I'm an 100% myself taught developer. Granted I'm 38 and taught myself programming at 14. But it came out of an earnest desire and love for technology in general. So I never shyed away from learning? C and assembler? Bring it on. Theoretical computer science? I can get with that. For me I loved computer so much, that I was willing to learn about anything in the realm of computing.
This is what annoys me with the adult bootcamp crowd. I feel they're only willing to learn as long as it's easy. If something gets complicated or complex, then they check out. And I a lot of their questions is "tell me how to do this/that". But they don't know why they would do it.
To me it feels like they're trying to fast track themselves to a dev job. Yet you would think if they're trying to do this all professionally, they would be open to learning as much as possible, and not closing themselves off.
My semi-friend who runs the meetup is trying to start a bootcamp himself. So I try I severely hold my tongue when I attend those meetups. And I want to be supportive. I certainly don't want to be the reason why people are turned off by programming. But at the same time, I hate how people are abusing this profession because they think it's fast money and an easy way to earn 6 figure salaries.3 -
AI is dumb and is not going to rob your work as a programmer.
Expanding on this:
https://devrant.com/rants/12459112/...
Don't know about the others, but programming and IT is mostly safe unless you're a secretary answering to mails pressing 1 keystroke at time with index finger.
Bullshit.
I’ve tried EVERYTHING. As a developer, I know exactly what instructions to give and how to explain them. I tried this stuff for years.
I abandoned the idea to give Ai a full blown workspace to vscode with copilot, even with experimental LLMS (Claude 3.5, Gpt4o, o1, as per my linked post, copilot is dumb as a rock), because it fucks up every fucking time so bad.
I tried getting an AI to build a simple project, something that has plenty of samples of code around, something that I was sure it could have been in its training dataset. A copy of Arkanoid, in HTML/CSS/JS, even reformulating the prompts over and over with different LLMs that claim to have reasoning abilities. I provided detailed feedback step by step, pointed out the errors, improvements, and problems in-depth to: o3, o1, 4o, deepseekv3+R1, and Qwen 2.5 Ultra. I even activated web search and suggested scanning GitHub repos when necessary. I gave examples of code after several failed attempts.
And guess what? Nothing. A total mess. Half the time, the game didn’t even run, and when it did, everything was wrong—bricks overlapping, barely anything working the way I asked. Even though the internet is full of similar code, and I gave it part of the solution myself when it couldn’t figure it out.
Don’t worry, AI isn’t going to steal your job—it’s just a broken toy. Fine for repetitive, simple tasks, but nothing more.
It's years that they make hyped up bold statements that the next model will revolutionize everything and it's years that I get delusional results.
It's just good at replacing some junior bovine work like mapping some classes or writing some loops with not too much variables and logics involved.
Sigh. My error was getting too comfortable using it and trusting/hoping that this ramp up in AI developement would have brought an easier life to dev.
Silly mistake.7 -
!rant
For all of youse that ever wanted to try out Common Lisp and do not know where to start (but are interested in getting some knowledge of Common Lisp) I recommend two things:
As an introductory tutorial:
https://lisperati.com/casting.html/
And as your dev environment:
https://portacle.github.io/
Notice that the dev environment in question is Emacs, regardless of how you might feel about it as a text editor, i can recommend just going through the portacle help that gives you some basic starting points regarding editing. Learn about splitting buffers, evaluating the code you are typing in order for it to appear in the Common Lisp REPL (this one comes with an environment known as SLIME which is very popular in the Lisp world) as well as saving and editing your files.
Portacle is self contained inside of one single directory, so if you by any chance already have an Emacs environment then do not worry, Portacle will not touch any of that. I will admit that as far as I am concerned, Emacs will probably be the biggest hurdle for most people not used to it.
Can I use VS Code? Yes, yes you can, but I am not familiar with setting up a VSCode dev environment for Emacs, or any other environment hat comes close to the live environment that emacs provides for this?
Why the fuck should I try Common Lisp or any Lisp for that matter? You do not have to, I happen to like it a lot and have built applications at work with a different dialect of Lisp known as Clojure which runs in the JVM, do I recommend it? Yeah I do, I love functional programming, Clojure is pretty pure on that (not haskell level imo though, but I am not using Haskell for anything other than academic purposes) and with clojure you get the entire repertoire of Java libraries at your disposal. Moving to Clojure was cake coming from Common Lisp.
Why Common Lisp then if you used Clojure in prod? Mostly historical reasons, I want to just let people know that ANSI Common Lisp has a lot of good things going for it, I selected Clojure since I already knew what I needed from the JVM, and parallelism and concurrency are baked into Clojure, which was a priority. While I could have done the same thing in Common Lisp, I wanted to turn in a deliverable as quickly as possible rather than building the entire thing by myself which would have taken longer (had one week)
Am I getting something out of learning Common Lisp? Depends on you, I am not bringing about the whole "it opens your mind" deal with Lisp dialects as most other people do inside of the community, although I did experience new perspectives as to what programming and a programming language could do, and had fun doing it, maybe you will as well.
Does Lisp stands for Lots of Irritating Superfluous Parentheses or Los in stupid parentheses? Yes, also for Lost of Insidious Silly Parentheses and Lisp is Perfect, use paredit (comes with Portacle) also, Lisp stands for Lisp Is Perfect. None of that List Processing bs, any other definition will do.
Are there any other books? Yes, the famous online text Practical Common Lisp can be easily read online for free, I would recommend the Lisperati tutorial first to get a feel for it since PCL demands more tedious study. There is also Common Lisp a gentle introduction. If you want to go the Clojure route try Clojure for the brave and true.
What about Scheme and the Structure and Interpretation of Computer Programs? Too academic for my taste, and if in Common Lisp you have to do a lot of things on your own, Scheme is a whole other beast. Simple and beautiful really, but I go for practical in terms of Lisp, thus I prefer Common Lisp.
how did you start with Lisp?
I was stupid and thought I should start with it after a failed attempt at learning C++, then Java, and then Javascript when I started programming years ago. I was overwhelmed, but I continued. Then I moved to other things. But always kept Common Lisp close to heart. I am also heavy into A.I, Lisp has a history there and it is used in a lot of new and sort of unknown projects dealing with Knowledge Reasoning and representation. It is also Alien tech that contains many things that just seem super interesting to me such as treating code as data and data as code (back-quoting, macros etc)
I need some inspiration man......show me something? Sure, look for a game called Kandria in youtube, the creator, Shimera (Nicolas Hafner) is an absolute genius in the world of Lisp and a true inspiration. He coded the game in Common Lisp, he is also the person behind portacle. If that were not enough, he might very well also be Shirakumo, another prominent member of the Common Lisp Community.
Ok, you got me, what is the first thing in common lisp that I should try after I install the portacle environment? go to the repl and evaluate this:
(+ 0.1 0.2)
Watch in awe at what you get.
In the truest and original sense of the phrase (MIT based) "happy hacking!"9 -
Pair programming/debugging with the new dev is like pulling teeth. OMG he is slow. He wants to write down Every. Single. Thing. Point. By. Tedious. Point. I wouldn't usually mind (after all, everybody has their own preferred method of learning) but I've currently got a to-do list longer than Kanye West's List of Rediculous Lyrics to Work Into My Next Song.
-
!dev
any career shifters?
have u guys felt every morning not excited going to work? like every single day, you lost your joy and everything in programming and thinking about shifting a career?6 -
How do you guys cope with being a junior dev and constantly receiving criticism about your work from your team leader?
I started working as a developer quite late: I did go to college in my early years but I was lazy at the time, so I didn't complete it. So I worked about ten years in a totally different industry, but I always wanted to go back to being a developer.
I've managed to do it when I was 34: I was a web developer in a small company and I was pretty much the only dev, except for an older dude who only knew Visual Basic 6 and kept programming things with it (in 2020ish!). In those years I always felt like a was way ahead of my colleague, and my efforts to apply best practices were not so welcome.
I eventually got tired of that situation, because I was feeling like wasting my time: I was already quite old and stuck in a jurassic environment
Then, I landed in a new company. Completely different environment: they use modern frameworks, TDD, static analysis, code reviews and stuff, and they do one to one meetings every two weeks. From the beginning, I felt like I was the dinosaur there: they were way ahead of me and I struggled to keep the pace. I immediately said that to my manager, but he was like "don't worry, it's just the start. I'm sure you will do great". Except I did not. I started collecting criticism about my work and I keep receiving it. When I tell my manager that constant criticism is not good for my self esteem, he replies "I can understand, but you have to manage it and I cannot avoid to correct you when you make mistakes". But it became really difficult for me to receive constant criticism, I very rarely have a compliment or a good word about what I do.
Is it just me? Should I finally grow up now that I am almost 40 and accept that working always sucks and you cannot be satisfied of what you do? Or am I simply a bad developer and should look for another job?
I am starting to get tired of this situation.12 -
I'm just walking out of a physics and programming final and the end of the semester. Imagine my joy knowing I'll have a whole month of extra time to work on personal dev stuff.
-
Cargo cult programming at its finest. I need to build a separate project twice, and restart visual studio to get this one to work.
Why? No one knows anymore and there is not user story for "Unfuck the dev environment" so we're not allowed to spend time fixing it. -
TL;DR Shit programer trying pass off stealing code as "Recycling"
Backstory:
Client hires senior dev. He lied and knows nothing. Has been causing havoc in production since day 1. My crusades to defend production have been without much success.
Since he wants to LITERALLY put his name on every big project, he finds any reason to make a new version of it (or make a slight astetic modification) to say he did something.
The client doesn't know or care about the programming side of things. Which means it is incredibly difficult to get him to understand the issues this brings. Not to mention that the "senior dev" is acting as a consultant to the client, altering the facts.
Story:
The piece of shit, is trying to make a new version of a big project. It was originally made by my mentor. Again, if you are using someone else's work to complete your own, I don't care. But if you take 99% of another person's work and then say...
"I took and existing project, which was similar to what I'm trying to make. Then I modified it to fit our needs."
Fuck you man!
You took someone else's work. Now you're trying to present it as your own. No references to our team. Again, there is literally nothing new about this project. It's exactly like the original. The client didn't even ask for this.3 -
When the CTO/CEO of your "startup" is always AFK and it takes weeks to get anything approved by them (or even secure a meeting with them) and they have almost-exclusive access to production and the admin account for all third party services.
Want to create a new messaging channel? Too bad! What about a new repository for that cool idea you had, or that new microservice you're expected to build. Expect to be blocked for at least a week.
When they also hold themselves solely responsible for security and operations, they've built their own proprietary framework that handles all the authentication, database models and microservice communications.
Speaking of which, there's more than six microservices per developer!
Oh there's a bug or limitation in the framework? Too bad. It's a black box that nobody else in the company can touch. Good luck with the two week lead time on getting anything changed there. Oh and there's no dedicated issue tracker. Have you heard of email?
When the systems and processes in place were designed for "consistency" and "scalability" in mind you can be certain that everything is consistently broken at scale. Each microservice offers:
1. Anemic & non-idempotent CRUD APIs (Can't believe it's not a Database Table™) because the consumer should do all the work.
2. Race Conditions, because transactions are "not portable" (but not to worry, all the code is written as if it were running single threaded on a single machine).
3. Fault Intolerance, just a single failure in a chain of layered microservice calls will leave the requested operation in a partially applied and corrupted state. Ger ready for manual intervention.
4. Completely Redundant Documentation, our web documentation is automatically generated and is always of the form //[FieldName] of the [ObjectName].
5. Happy Path Support, only the intended use cases and fields work, we added a bunch of others because YouAreGoingToNeedIt™ but it won't work when you do need it. The only record of this happy path is the code itself.
Consider this, you're been building a new microservice, you've carefully followed all the unwritten highly specific technical implementation standards enforced by the CTO/CEO (that your aware of). You've decided to write some unit tests, well um.. didn't you know? There's nothing scalable and consistent about running the system locally! That's not built-in to the framework. So just use curl to test your service whilst it is deployed or connected to the development environment. Then you can open a PR and once it has been approved it will be included in the next full deployment (at least a week later).
Most new 'services' feel like the are about one to five days of writing straightforward code followed by weeks to months of integration hell, testing and blocked dependencies.
When confronted/advised about these issues the response from the CTO/CEO
varies:
(A) "yes but it's an edge case, the cloud is highly available and reliable, our software doesn't crash frequently".
(B) "yes, that's why I'm thinking about adding [idempotency] to the framework to address that when I'm not so busy" two weeks go by...
(C) "yes, but we are still doing better than all of our competitors".
(D) "oh, but you can just [highly specific sequence of undocumented steps, that probably won't work when you try it].
(E) "yes, let's setup a meeting to go through this in more detail" *doesn't show up to the meeting*.
(F) "oh, but our customers are really happy with our level of [Documentation]".
Sometimes it can feel like a bit of a cult, as all of the project managers (and some of the developers) see the CTO/CEO as a sort of 'programming god' because they are never blocked on anything they work on, they're able to bypass all the limitations and obstacles they've placed in front of the 'ordinary' developers.
There's been several instances where the CTO/CEO will suddenly make widespread changes to the codebase (to enforce some 'standard') without having to go through the same review process as everybody else, these changes will usually break something like the automatic build process or something in the dev environment and its up to the developers to pick up the pieces. I think developers find it intimidating to identify issues in the CTO/CEO's code because it's implicitly defined due to their status as the "gold standard".
It's certainly frustrating but I hope this story serves as a bit of a foil to those who wish they had a more technical CTO/CEO in their organisation. Does anybody else have a similar experience or is this situation an absolute one of a kind?2 -
And another weekend full of work, because I don‘t get shit done in the office.
Being kind if the lead dev in my team, everyone is coming to me for nearly everything and I rarely have time to work on my current ‚fulltime‘ project.
It‘s really frustrating. I just want to code .__. FML
(Maybe I should learn other programming languages and switch jobs? I always wanted to learn Haskell)2 -
I need help!
This is gonna be a long question/story.
I'm a Syrian based in Malaysia working as a lead web dev in a good company.
I have a friend in trouble and I want to help him.
Here's a summary:
My friend is a project manager at a gaming studio he happens to be an Iranian atheist with around 2 years of experience in the game making industry.
He worked on and delivered a couple AAA games at his current place of employment as a project manager in one of the teams that made those games.
He stood up for his team when the management was overworking team till after midnight sometimes and forcing them to work on weekends without any tangible compensations ( basically they gave them things like free lunches, movie tickets, etc).
The result of his standing up to his team was the management handing him a notice telling him that he'll be fired within 2 months due to "underperforming".
This was a month and a half ago.
He looked around in Malaysia for a job that can get him a working visa, but his niche background couldn't help.
After his termination in few weeks he can extend his stay at Malaysia for approximately 2 - 3 months.
Now the reason why I mentioned that he's an "Iranian atheist" is the fun part of this story (sarcasm), Iranian government considers him as an "infidel" and he's banned from Iran.
His Iranian passport can't get him anywhere where he can make a living.
So basically he has close to no options.
Now to where I come into all of this:
I want to help him.
I'm going to dedicate my free time for the next 2 - 3 months teaching him web development, the problem is, I don't know how to teach web development in such a short time, in fact I've never taught anyone programming from scratch.
If he can show promising results I know that I can make a case for him get him a position in the company I work for.
I already convinced him today to try and learn web development because I can tell that in Malaysia there's always demand on good web developers.
Now to my request:
how can I best teach web development to someone with no programming background ? I'm thinking about teaching him front end development, so: HTML, CSS/SASS and JavaScript. maybe react js as well if possible ( high demand is usually on React/ Angular front end developers)
Did anyone here teach programming to someone else before?
Did anyone here learn web development in such a short time?
If you've read all this... Thank you :)17 -
My biggest data loss and also contributed in me getting into computer stuff was when dad formatted the computer before I was able to take a backup, felt so bad at that time it had all my photos from school with friends.
So instead of crying in the corner and me not knowing they can be brought back, at least half of them, I started learning how computers work, how software work, what type of software is out there ...etc. Though that brought more work for dad having to format my mess every month of so XD
But I ended up learning a lot of new things. Then one programming class at school sent me into the dev world2 -
What are the chances of landing any kind of job in the software field without my CS bachelor's degree completed?
Cuz I'm so tired of the impractical bullshit I've had to do in class for the last 2 or 3 years. I just don't get why the University does not prepare people to work in dev teams yet it seems to be a prerequisite for any consideration to be hired in the field.
Edit: I'm quite familiar with programming and learn quickly. But is that not sufficient?6 -
I actually do have something to rant about!
The people I've decided to work with... are complete and utter fools. They don't want to keep updated with new practices and merely talk about awesome stuff... Let me elaborate.
The first person is someone I spent really many hours just writing with, I've helped him build on his personal project, which has now become our project (which I've done most of the work on now). He keeps writing about things that aren't fucking relevant for the current task - furthermore, he completely refuses to use any type of collaboration software in order to keep an eye on tasks we want to, and already have completed. He likes Git but doesn't provide helpful git messages, sometimes even stuff like 'forgot this'.. never any freaking description of what's actually been done! Not even after agreeing it should be done, he just doesn't understand what a helpful message is apparently.
I might be a bit special regarding wanting to follow practices, but how the fuck do you make any amount of money by being so ignorant!? He was a WP 'developer' a while ago, and has since changed to JS and are using a framework which he doesn't understand - he can't even remember what the documentation states.
So why do I 'work' with him? He knows a lot of phrases he's read in books, blogs, and the likes. That makes him really inspirational and positive and he really wants to become successful(like me!). But over the last few months, I've realized how bad he is at programming - he doesn't know basic programming concepts and have a hard time applying any sort of knowledge to his programming. If it's not pre-built, he can't use it, not even if the documentation has specific examples. He barely grasps the concept of binding data to a variable. He wouldn't know how to access it again though, it's just for the sake of binding it to some existing functionality.
The other guy really likes his old style. He hired me to maintain some application. Which has turned out to be a hell of several small tasks he needs to be finished or reworked - with no clear definition of the task. Most of the time, he'll do some initial changes, show the changes to me, vaguely explain what they do (not what he's trying to achieve) and first THEN ask me to do these changes, most often in some files that don't exist (he uses the wrong filenames so I have to guess/ask where the changes need to be made).
To top it all off, old syntax is used and don't get me started on the spaces+tabs for indenting lines... Because I've already added a great ESLint+Prettier conf and everything should be nicely formatted according to pre-defined rules.
But he won't take the time to install some plugins in his editor and I'm left with sometimes buggy, badly formatted code (the code I have to make changes with!) - that's while he several times have agreed that I can do what I want and that he even questions his own ways when looking at my changes which he calls by-the-book.
So why the motherfucking fuck do I keep working with him?
Well, he keeps paying so that's really nice - I haven't been able to properly execute the bigger tasks(which pays more) though, due to a lack of information or some badly written code I couldn't quite figure out how works (at a glance).
He also keeps talking about these new projects he wants to make.. he even has these freaking papers with descriptions and data-structures and we converse really good about these new awesome projects. He also likes cryptocurrencies(which is an interest of mine he has inflamed quite a bit) and lastly, he seems like a genuinely nice guy who I'd like to spend some time with even besides coding and work.
So now I stand here - stuck with people that make me feel like a demi-god or something because I use a git style-guide and ESLint+Prettier with the Airbnb style-guide.
What should I do? I'd really like some remote work and have a desperate need for money... So much so, that I might even have to pick up a fulltime job, in order to save my sorry ass - all because I like speaking with people who just like the thought of programming...
I'm actually quite lonely with my thoughts and they are the two only people I've had some sort of relationship with - who has an invested interest in programming/dev... I really like that, despite having to follow their thoughts as they surely can't follow mine.
Please be my friend or give me some paid work lol.
Also, I've been moving the last couple weeks - those weeks has been the most stressful of my life and have not contributed to my overall wellbeing and relations with people... It's good to be back at the computer again and be reading some devRant though!1 -
Working for unappreciative fucktard clients who believe they know more about dev than a seasoned professional and try to give me advise on how to approach my work and or solve programming issues. FUCK Sake if you know it then don't hire me you fucktard client.
My best experience is working for a small company and bridging their disconnected systems together using an array of programming languages such as Go, PHP, VB, Batch Script, Javascript and C -
Note to devs here. Please don't choose a framework for the hype at your work. Use it on your own time or company hackaton/learning time.
I'm looking at you angular.
Production ready doesn't mean sanity ready.
Now because some dev choose such technology for arbitrary reasons. (hype, latest acronym on CV). I spend more time debugging and understanding than I would if some simpler technology was chosen. Look at all the options then choose the simplest one that has and seems to have active maintenance. Zen of python is the best thing to happen in programming and I think everyone, even if you don't like Python should follow it. Save you and your colleagues brain time and ask for advice.
Also IMO react is probably third or second best option, higher if one requirement is to be react native. Angular is even lower because it's complexity is unforgivable when a dev has not enough front-end experience.8 -
Not sure if forums like DevRant ever helped me but it certainly gave me an impression of how work in the industry is. It sort of prepared
me for the bs that I could face and I ended up expecting and managing those situations. This will be both a happy, raw and a grumpy thought. I’m a self taught dev, I failed my education due to a situation outside my control but I always loved programming, it’s mostly because I love solving problems and creating something I feel is my own. Today I’m a core member in a company and I’m also a contractor in my own company. I love the variety of working on my own and I love helping team members, I love organising projects and the experiences others bring help me grow and expand what is literally my life’s passion. I started out as a consultant because someone saw my passion and my experience, they took a chance and well, I can’t say I’ve disappointed them. I just recently got to know into my adult life that I got ADD and meanwhile it probably pushed me out of the normal, it helped me focus on the things I liked. I was 6 years when I wanted to learn programming and I was 10 when I first started learning, I felt like a failure when I was 18 after literally 6 hours a day of learning development each day, I didn’t have a job for several years and when I was 24 - prior to becoming a consultant, someone offered me a job, it was one of those “5 day” interview assignments, where I practically delivered a finished, fully tested project for them. They offered me lowest of pay (15 usd/hr). They took advantage of my situation, put me on a solo project and said it wasn’t good enough because it didn’t fit their preferences after 50 hours of dedicated work without any guidance, specs or meetings. I’d say thanks but I was never considered before I had “experience” by others, I hope I’ll get the chance to give someone that experience before they go through the same as me. I could go on for so long about what I feel is wrong about this industry but one description that continually come up “impostors syndrome”, shut the fuck up if you don’t know what you’re talking about and give even “newbies” a chance. Programming and development is more than experience.1 -
Is there any other programmer that started as an architect (building architect, not IT)?
I'm divided between two different careers and working around 15hours a day because I can't focus on one. Is this a normal thing?
I work as an architect for the past 6 years and were always interested in the technology part of it.
Soon I got to be a BIM coordinator and started using Dynamo for Revit.
After that, I got involved in learning Python and now start studying web dev (front-end)
Programming is very addictive! I get it now why IT people stay in their dorm like it's a cave
In architecture there's always a client you need to make happy, while in programming I create things the away I want them to be, without all the boring formalities that I am used to.
I can learn it for free and there's a huge community to help on it. All careers should be like this.
I'm happy, but really tired 😪 my social life is resumed to hanging out with my dogs5 -
Serverless and death of Programming?!
_TL;DR_
I hate serverless at work, love it at home, what's your advice?
- Is this the way things be from now on, suck it up.
- This will mature soon and Code will be king again.
- Look for legacy code work on big Java monolith or something.
- Do front-end which is not yet ruined.
- Start my own stuff.
_Long Rant_
Once one mechanic told me "I become mechanic to escape electrical engineering, but with modern cars...". I'm having similar feelings about programming now.
_Serverless Won_
All of the sudden everyone is doing Serverless, so I looked into it too, accidentally joined the company that does enterprise scale Serverless mostly.
First of all, I like serverless (AWS Lambda in specific) and what it enables - it makes 100% sense and 100% business sense for 80% of time.
So all is great? Not so much... I love it as independent developer, as it enables me to quickly launch products I would have been hesitant due to effort required before. However I hate it in my work - to be continued bellow...
_I'm fake engineer_
I love programming! I love writing code. I'm not really an engineer in the sense that I don't like hustle with tools and spending days fixing obscure environment issues, I rather strive for clean environment where there's nothing between me and code. Of course world is not perfect and I had to tolerate some amounts of hustle like Java and it's application servers, JVM issues, tools, environments... JS tools (although pain is not even close to Java), then it was Docker-ization abuse everywhere, but along the way it was more or less programming at the center. Code was the king, devOps and business skills become very important to developers but still second to code. Distinction here is not that I can't or don't do engineering, its that it requires effort, while coding is just natural thing that I can do with zero motivation.
_Programming is Dead?!_
Why I hate Serverless at work? Because it's a mess - I had a glimpse of this mess with microservices, but this is way worse...
On business/social level:
- First of all developers will be operations now and it's uphill battle to push for separation on business level and also infrastructure specifics are harder to isolate. I liked previous dev-devops collaboration before - everyone doing the thing that are better at.
- Devs now have to be good at code, devOps and business in many organisations.
- Shift of power balance - Code is no longer the king among developers and I'm seeing it now. Code quality drops, junior devs have too hard of the time to learn proper coding practices while AWS/Terraform/... is the main productivity factors. E.g. same code guru on code reviews in old days - respectable performer and source of Truth, now - rambling looser who couldn't get his lambda configured properly.
On not enjoying work:
- Lets start with fact - Code, Terraform, AWS, Business mess - you have to deal with all of it and with close to equal % amount of time now, I want to code mostly, at least 50% of time.
- Everything is in the air ("cloud computing" after all) - gone are the days of starting application and seeing results. Everything holds on assumptions that will only be tested in actual environment. Zero feedback loop - I assume I get this request/SQS message/..., I assume I have configured all the things correctly in sea of Terraform configs and modules from other repos - SQS queues, environment variables... I assume I taken in consideration tens of different terraform configurations of other lambdas/things that might be affected...
It's a such a pleasure now, after the work to open my code editor and work on my personal React.js app...2 -
I mostly come back to programming for the kicks of when something actually works :) But the reason I started was a life changing moment of black and green Space Invaders some 30+ years ago. After that it was all about computers and/or gaming.
My mom thought she was being smart saying I could buy something for my own money. Saved like crazy and sold all my toys. That got me 8bit Sega Master System.
I continued with C64, Amiga 500, a few Pentiums and a bunch of PCs before iMacs and Macbooks took over.
There are so many better developers so just as with music I just create stuff for fun, challenge and personal expression. But at work there are also opportunities to improve the world a little bit by dev work and I'm always grateful for the chance. -
How did your quest into the dev world look like? That's mine:
First time: Age 12, was in a C++ evening class for like 2 weeks, I undetstood nothing.
Second time: Age 16-18
Fiddled with scripts for steam games and jailbroken my iPhone while fiddling with aystem configs. Nothing major.
Third time: Age 19, learned Python in a Cybersecurity course. Failed miserably because the tutors were shit, thought I hated programming.
Fourth time: Age 21, developed a lot of scripts in my sysadmin job, one of them needed a GUI so I leanred C# and WPF. Enjoyed it so much I eventually enrolled in a Java 10 month course.
Fifth time: Now, age 22, learning Android and Fullstack javascript by myself. Enjoying every moment.
I still work as a sysadmin though.3 -
How to disconnect from work after working hours? Im working for the last 4 months as a mid level dev in this company. I mean Im able to problem-solve and do my work but sometimes I get so addicted to problem solving that I get worried and become obsessed, hyperfixated (especialy if Im stuck on something for lets say a couple weeks). It goes to the point where I work from home 12-14 hours a day just to figure out some bug in the flow.
Thing is, our codebase is large and when doing every new refactor/feature some surprises happen. I dont have a decent mentor who could teach me one on one or even do pair programming with. All i have is just some colleagues who can point me to right direction or do a code review from time to time. Thats it.
I dont know why I take this so personally. For example I had to do a feature which I did in 1 week, then MR got approved by devs and QA. After that during regression they found like 3 blockers and I felt really bad and ashamed. While in reality our BA did not define feature properly, devs who reviewed it didnt even launch the code and poke around in the app, and our team's QA tested only the happy scenario. Basically this is failing/getting delayed because of a failure in like 6-7 people chain.
However for some reason Im taking this very personally, that I, as a dev failed. Maybe due to my ADHD or something but for the next days or weeks as long as I dont find solution I will isolate myself and tryhard until I get it right. Then have a few days of chill until I face another obstacle in another task again. And this keeps repeating and repeating.
My senior colleague tells me to chill and dont let work take such a toll on my emotional/physical/mental health. But its hard. He has 7 years of experience and has decent memory. I have 2-3 years of experience and have ADHD, we are not the same. I dont know how to become a guy who clocks out after 8 hours of work done everyday. Its like I feel that they might fire me or I will look bad if I dont put in enough effort. Not like I was ever fired for performance issues... Anyways I dont know how to start working to live, instead of living for work.
I hate who Im becoming. I dont work out anymore, started smoking a lot, dont exercise. I live this self induced anxiety driven workaholic lifestyle.6 -
The double-edged sword of teamwork. I'm an indie Game dev, so I have no choice but to work with others of completely different fields. I enjoy it and I get a lot of motivation seeing things done and learning many new disciplines, but team projects have so many downsides when you have to handle everything from programming to cinematography that someone else was meant to do.
My final team uni project I even had to do our music composing cause our sound effects guy did almost nothing in 6 months (he wrote 6 midi notes in 2 weeks at one point). -
So I'm helping my vocational school teacher with his Programming class as a graduate. While we were alone and talking about normal stuff (plans for the class and stuff like that), he brought up discord and after that I told him "I really wanna work for them, but I don't wanna move" and he continued to tell me how I have so much potential, how nothing stops me, how I am going far and that I'm going to do a lot. I wanted to legit cry inside because I've always thought the exact opposite of myself and always just thought about living a normal life, with the same dev job, nice home yknow the norm.
Idk man that talk happened in the afternoon today and Im still overwhelmed with the positivity.3 -
Trying to convince the class that test-driven development + DTSTTMPW ("do the simplest thing that might possibly work") + pair programming is the way to go, our software dev prof had us split in groups of two that would each get a turn to
1. add a unit test
2. edit the code so it passes the test
3. commit the change
The goal was to write a java class that converts integers to roman numerals.
Each group had only 2 minutes before the prof made them revert their changes.
After 45 minutes the code was just 10 lines of this:
if ( n == 1 )
return "I";
else if ( n == 2 )
return "II";
else if ( n == 3 ) ... -
This is more of an essay than a rant. TLDR at the end. I simply can't choose from all the shitty lecturers I've had, so I'm going to have to go through them one by one. But of background. I'm currently in 7th year of college, I did a multimedia degree in 2 years, a intro course to Software Dev and I'm currently in my final year of my Software Dev degree. So let's start.
Intro Software Course
- we had a database module, which was thought by, I shit you not, the head of the psychology course in the college, she attempted to teach us Databases using access. And not even using SQL, using access GUI components and it's query builder. Need I say more?
1st year software dev
- We had a networking module, the guy that taught the labs, he literally didn't say more than 12 words the entire 12 week semester, his answer to any question you asked him was a grunt and "research it"
- We had a psychology module, I have no fucking idea why, but instead of learning something useful we were told to read this and get in touch with your feelings...
- database module. Yes we actually did SQL here, 12 weeks of select statements and normal form, talked about by a guy in a monotone voice, who sounded like he was contemplating bringing in an assault riffle some day. Also instead of using MySQL he decided to use Ingres. Why I will never know.
2nd Year Software Dev
- We had a module called Algorithms and Data Structures. The lecturer gave us problems she couldn't solve. Simple problems. She was also crazy. Absolutely nuts.
- Object Orientated Programming. I had this lecturer for 3 semesters up until 3rd year. This guy did COBOLT in college, graduated in the 70s or something and went straight into teaching, he taught us Java for nearly 2 years. He literally copied and pasted texts from PDFs and read through them in class. He told myself and another guy at one stage he really didn't care, and was just counting down the days to his retirement.
- Databases again, different lecturer from 1st year, taught us for 2 semesters (24 weeks) and somehow managed to teach us nothing.
3rd Year Software Dev
- software engineering.. This is where the biggest cunt I've ever met was introduced. He arrives into class 15 minutes late every time without fail, talks shit about stuff that has no relevancy to the topic at all, tries to turn everything into a rugby metaphor and every time you ask a question he somehow dodges it and swiftly changes topic. This cunts past profession? A Project Manager. Fucking typical. This dickhead has also thought me 2 other modules.
4th yr Software Dev
- El cunto mentioned above for 2 more modules. Need I say more.
- real time systems, this module took the piss, the module was written by the lecturer which is what earns his space here. Assignments given to us, which required more time to do than we had in labs so we had to work at home, the problem we that is we were using an obscure RTOS called OS9 which would only work on the college computers. When brought to the lecturers attention he just said "figure it out"
Internet of Things - There was 2 lecturers, each lecturer seemingly working off a different plan, one week you'd have one lecturer, the next would be the other one going on about something completely different and unrelated to anything else we'd done.
Some lecturers didn't even make this list as I couldn't be bothered trying to think back about how shit other ones were. These were the ones that always stood out in my mind.
My main take away point from this is that you go to college for the paper which says you have a degree. Learning things that are going to benefit you in a career is up to yourself.
TLDR; 90% of my college lectures were shit. You need to learn useful stuff yourself.1 -
ok,. so i've been into job hunting for a while and i found this rather attractive posting with reasonable salary and work hours, it clearly states "PHP Backend Programming With Laravel", so i applied, a day later, i got in contact with the employer via skype, and to my surprise, the employer told me that skills in c# is required because the job position is for a senior c# dev... smh2
-
I've been working at a consulting company (lone programmer) as a Web Dev for about 2 or 3 months and I'm now skeptical about quitting.
I have the liberty to use any technologies I want, unless we get something already using a certain stack. The atmosphere is great and I only work part-time. The problem is that they have me working like a hog on many different projects simotaneously and expect me to meet deadlines despite new projects coming in weekly. Again, I'm the only programmer here, nobody to help me out. I don't make a killing but the pay isn't too bad considering it's part-time.
I've also noticed that my programming activity has degraded since I started working. I feel like I'm slowly losing the motivation I once had to keep working on my personal side projects.
Any tips on what to do?1 -
Overall, pretty good actually compared to the alternatives, which is why there's so much competition for dev jobs.
On the nastier end of things you have the outsourcing pools, companies which regularly try to outbid each other to get a contract from an external (usually foreign) company at the lowest price possible. These folks are underpaid and overworked with absolutely terrible work culture, but there are many, many worse things they could be doing in terms of effort vs monetary return (personal experience: equally experienced animator has more work and is paid less). And forget everything about focus on quality and personal development, these companies are here to make quick money by just somehow doing what the client wants, I'm guessing quite a few of you have experienced that :p
Startups are a mixed bag, like they are pretty much everywhere in the world. You have the income tax fronts which have zero work, the slave driver bossman ones, the dumpster fires; but also really good ones with secure funding, nice management, and cool work culture (and cool work, some of my friends work at robotics startups and they do some pretty heavy shit).
Government agencies are also a mixed bag, they're secure with low-ish pay but usually don't have much or very exciting work, and the stuff they turn out is usually sub-par because of bad management and no drive from higher-ups.
Big corporates are pretty cool, they pay very well, have meaningful(?) work, and good work culture, and they're better managed in general than the other categories. A lot of people aim for these because of the pay, stability, networking, and resume building. Some people also use them as stepping stones to apply for courses abroad.
Research work is pretty disappointing overall, the projects here usually lack some combination of funding, facilities, and ambition; but occasionally you come across people doing really cool stuff so eh.
There's a fair amount of competition for all of these categories, so students spend an inordinate amount of time on stuff like competitive programming which a lot of companies use for hiring because of the volume of candidates.
All this is from my experience and my friends', YMMV.1 -
So I don't know if any of you know what BPA (Business Professionals of America) is (and its okay if you dont because its for highschoolers)
They hold competitions for us each year and Im going to be on my classes web dev team as the back-end python programmer. Weve already assigned everyone to their languages and were going to study so we can be prepared.
For the competition we have a few months to work on a website that actually works, front end, back end and all. There has to be forms and maybe even signup sheets that actually work.
Its really exciting and I'm definitely going to post the adventure of programming it along the way on devRant!!
If you wanna learn more about BPA go to their website, if your curious about what some kids get to experience then I'd suggest checking it out!!! -
Trying to learn a bizarre custom javascript wrapper that was used to communicate with complex mobile RF devices, the point being was to control them, but damn thing did not work for crap even if you tried hard.
When any of us devs asked the senior "dev" who designed it if there was any documentation on it so we could actually get started on working, he literally told us we sucked ass and that we were pieces of shit that knew nothing of programming.9 -
Being a native Android dev for most of my college days(yet to start a full time professional life), i often feel scared of my life choices.
Like, i chose to go into a field in which am totally on my own . Android is not a subject taught or supported by colleges, so a virtual shelter that every fresher gets, i.e that of a "he's just a college passout, he wouldn't know that" is not for me. I am supposed to be a self learner and a knowledgeable android dev by default.
Other than that , idk why i feel that am having a very specific skillset which would be harmful for me if am not the best at it.
I feel the same for entire Android dev. I mean, its nothing but a very specific hardware device with a small screen and a bunch of lmited sensors. Our tools and apps are limited to just manipulate them to do little fancy stuff offline. Other than that everything (and sometimes even this too) could be achieved by a website/webapp of a web dev.
A particular native android dev don't know how the ML/AI stuff works, don't know how backend stuff works don't know how the cloud stuff works, jeck we don't even know how those unity games work!
We are just some end product makers taking data from somewhere handled by someone and printing them in fancy gui.
(But we are good at ranting about stupid mobile hardware manufacturers, i tell u that)
So am not sure if being an Android dev is a going to be good for me in the future. I mean , a web dev always gets to interact at every level of products, but we can't.
I always feel my future will end up being limited to being good in Android, later shifting to IOS to being completely unemployed because everything is controlled by js and web dev tools and native programming is no longer a thing anymore :/4 -
I'm working in a company as fullstack developer where we use Angular for frontend, and C# for backend, lots of cool things to learn, for instance, we need a way to dynamically load forms controlled from backend, not something that is common but interesting to solve.
However, I feel sometimes I don't belong here, not because the things we do is not fun, it's just that most of the developers have very little experience with building web apps. And this means I don't develop as much as I wanted towards the web path.
I was informed before starting here, that 3 web devs would be hired including me, and they have experience with Angular. After I was hired, one guy decided to jump off (skilled web dev), and it was only me and the other guy left. The other guy has little experience with the web in general, but extremely good in terms of architecture and programming patterns in C#.
The salary is fine, but it's just I don't feel the growth I was expecting. Most of the things I learn on my own, which I've done in the past years.
I'm thinking that if I work in a place with skilled web devs, I'll learn lots of great things which I don't have to search all the time.3 -
Well here I go my first rant.
A little bit of background:
So I started working my first job a little over a month ago. found devrant about a week in. I was lucky that at a very young age I found programming and liked it (about 6 or 7). I went to college just to get a degree (bachelors of game development).
The job that was a "Great" opportunity that would be bad to let slip by (not a game dev job sadly). Well during the interview they asked me simple thing like what programming languages I know and some simple stuff like that, they never did ask me to demonstrate my knowledge though. Then they went to the weirder questions.
Do you know SQL? yeah at a very base level.
Do you know Excel? I mean I used is a bit, but not very much.
Etc.
A few of the questions felt a little out of place for the field, But it was the only "programming job" that would hire an experienced junior developer, so I took it. Guess I should have asked more questions.
Now I'm here at a job to help replace someone who is retiring. He wasn't a programmer really, but he wrote some code out of necessity well his platform of choice was VBA in Excel. Oh, and that's not the best part, he also dealt with mistakes that happen in the lab (electronics shit). So when ever there is a fuck up I have to go figure out how to search a poorly designed database (that is constantly changing), and today is the day he leaves, so no more help after today. My biggest fear currently is that I wont be able to fill a request that someone makes and I'll be the reason the company is losing money. And with all the stress/burn out that's building up I haven't been working on personal projects, which being my main source of entertainment might be making me depressed. Even when I do work up the effort to work on my projects I don't get very much entertainment. (If anyone has a suggestion for this that would be helpful.)
TIL: Even if the job is a great opportunity don't stop searching and ask a lot of questions.2 -
First rant! I'm currently on my first actual dev job and I've been learning a ton, doing extra studying/side projects in my free time and office environment is decent with good colleagues!
BUT
1) I'm getting paid about half as much as someone on my level (education and experience considered) - partly my fault, but thought experience would outweight the shit pay, now I'm really starting to question this bullshit
2) I'm away from all my friends, and by the end of my contract, 90% of them would have graduated... Have no friends outside of work where I live, and any social life I had, died when I moved
3) My work project is fucking tedious and could be flipped upside down to be of actual use, but no, company can't change how they've done things for the past 1000 years. But who gives a flying fuck about junior's suggestions, I haven't got decades of experience to back my ideas, plain logic and industry feedback isn't enough
4) Programming 24/7 for months is doing no favours to my hobbies, as I'm either too tired to do anything, or I don't have the time
5) The piece of shit library that I HAVE to use (because alternative has no support, lacks basic documention, the usual...) is built so that any automation that my project is meant to provide, is next to impossible to achieve, so day-to-day I'm just spitting in the wind as I'm slowly falling behind schedule
Quitting isn't really an option, as I'd have to find a job with significantly higher pay, really quickly to benefit from leaving... which is next to impossible
So here I am, stuck between frustration with aspects of my life and being contempt with other half (the learning and programming as a career)...
Is this something that will stay with me throughout my career/life? Or is it simply a shitty-entry-level situation out of which I'll grow out of?5 -
TLDR: I didn't & still not sure if it is..
I love bug hunting & fixing & figuring out how stuff works, but many will argue this is not even real programming..
Long version how I ended up programming:
Back in highschool, I was deciding between english and mathematics & computer science.. I filled in the form for the latter. Got a change of hearts but I already gave the extra/backup empty form to schoolmate..
Figured it's for the better because it's a hell to get a job as an english teacher/prof anyways + I dislike comunications with people + documentation (if any) is in english etc..
At the end of first year, I didn't even apply for all the exams because you had to have both programming 1&2 to pass or even be eligible to take the year again.. I figured I'd fail them, so once I actually passed both (& actually not with bad grades), I was fucked.. had to retake the year, which means I lost time + still had to pay the rent etc.. decided to drop out and return home and do the IT engineer course instead to at least have some formal education to help me find a job. Finished that without problems, I 'specialised' in network administration.
I got a job straight out of school as a web developer.. the irony.. got some conflicts with the boss and was terminated (material for another rant).
Later I sought out admin jobs, but got declined because I was overqualified and had programming experince. FML, right?
Ended up sending out mandatory job applications for IT administration & programming to not lose the bonuses & got called up to a meeting in the company I work for since then.
No qualifications for .net & MS technologies, but they liked my CV so the ended up setting up the interview anyway. I didn't know half of the technologies and concepts by proper name, but they figured I understand enough of the content to give me a try. A few years later, I got the most fucked up project they have because of my love for new thigs and trying to understand everything. It's aaaalmost bearable now.. still needs a lot of work, but I'm happy where I am. Saddly, I'm still second guessing if I'm doing a proper job as a dev, but they seem to be very ok with my work. (:6 -
I’ve become so indecisive in terms of knowing what I want from my career.
All I know is what I don’t want (to end up a in management)
I’m definitely getting a new job and right now it looks like I’ve got 3 offers on the table
Option 1, a previous company I worked for. Still the same problems with the company there as before but the work was interesting and unusual. and my line manager was a good guy.
They have practically no legacy code.
Not much in the way of company benefits but they’re local and it would be nice to see friends again.
So feels like the pull to this is strong.
Option 2, a fully remote company that I’ve been referred to by an ex-workmate.
They’ve not even tech tested me because they’ve read my blogs and GitHub repos instead and said they’re impress. So just had a conversation with them. I feel honoured that they took the time to look at what I’ve done in my own time and use that in their decision.
Benefits are slightly better than option 1 (more hols)
But they’re using .net 6 and get a lot of heavy use on their system and have some big customers. I think the work is integrations to start with and moving services into docker and azure.
Option 3, even though I’ve got an offer from this one but they can’t actually explain the work until We can arrange a call next week (they recruit and then work out what team your in, but Christmas got in the way of me having a call with them straight away)
It’s working on government systems and .net is their least used stack so probably end up switching to Java. Maybe other tech stacks too.
This place has much better benefits than option 1 and 2 (more hols and more pension), but 2 days a week in office.
All of the above pay the same salary.
Having choice feels almost as bad as having no choice.
It’s doing my head in thinking about it , (even tho I might as well not think about it at all until the call with option 3 happens).
On the one hand with option 3, using a tech stack that’s new to me might be refreshing, as I’ve done .net for 10 years.
On the other hand I really like c# and I’m very good at it. So it feels a bit like I should be capitalising on that and using my experience to shape how the dev is done. Not sure I and I can do that with option 3, at least for a while.
C# feels like it’s moving forward nicely and I’m not sure I can say the same for Java or other languages.
I love programming and learning new stuff but so unable to let things go. It’s like I have a fear that c# will move on without me and I’ll end up turning into one of those devs whose skills are a decade out of date.
Maybe the early years of my career formed me in this way.
Early on I worked at a company where there was a high number of Cobol devs who thought they had a job for life.
But then redundancies came and many left. Of those who stayed they had to cross train to Java and they just couldn’t do it.
I don’t think the tech was hard for them, I think they were just so used to not learning that they could no longer adapt.
Think most of them ended up retiring after trying to learn Java for a few years.8 -
I had a pretty good year! I've gone from being a totally unknown passionate web dev to a respected full stack dev. This will be a bit lengthy rant...
Best:
- Got my first full time employment dev role at a company after being self-taught for 8+ years at the start of the year. Finally got someone to take the risk of hiring someone who's "untested" and only done small and odd jobs professionally. This kickstarted my career, super grateful for that!
- Started my own programming consulting company.
- Gained enough confidence to apply to other jobs, snatched a few consulting jobs, nailed the interviews even though I never practiced any leet code.
- Currently work as a 99% remote dev (only meet up in person during the initialization of some projects.) I never thought working remotely could actually work this well. I am able to stay productive and actually focus on the work instead of living up to the 9-5 standard. If I want to go for a walk to think I can do that, I can be as social and asocial as I want. I like to sleep in and work during the night with a cup of tea in the dark and it's not an issue! I really like the freedom and I feel like I've never been more productive.
- Ended up with very happy customers and now got a steady amount of jobs rolling in and contracts are being extended.
- I learned a lot, specialized in graph databases, no more db modelling hell. Loving it!
- Got a job where I can use my favorite tools and actually create something from scratch which includes a lot of different fields. I am really happy I can use all my skills and learn new things along the way, like data analysis, databricks, hadoop, data ingesting, centralised auth like promerium and centralised logging.
- I also learned how important softskills are, I've learned to understand my clients needs and how to both communicate both as a developer and an entrepeneur.
Worst:
- First job had a manager which just gave me the specifications solo project and didn't check in or meet me for 8 weeks with vague specifications. Turns out the manager was super biased on how to write code and wanted to micromanage every aspect while still being totally absent. They got mad that I had used AJAX for requests as that was a "waste of time".
- I learned the harsh reality of working as a contractor in the US from a foreign country. Worked on an "indefinite" contract, suddenly got a 2 day notification to sum up my work (not related to my performance) after being there for 7+ months.
- I really don't like the current industry standard when it comes to developing websites (I mostly work in node.js), I like working with static websites (with static website generators like what the Svelte.js driver) and use a REST API for dynamic content. When working on the backend there's a library for everything and I've wasted so many hours this year to fix bugs and create workarounds related to dependencies. You need to dive into a rabbit hole for every tool and do something which may work or break something later. I've had so many issues with CICD and deployment to the cloud. There's a library for everything but there's so many that it's impossible to learn about the edge cases of everything. Doesn't help that everything is abstracted away, which works 90% of the time but I use 15 times the time to debug things when a bug appears. I work against a black box which may or may not have an up to date documentation and it's so complex that it will require you to yell incantations from the F#$K
era and sacrifice a goat for it to work properly.
- Learned that a lot of companies call their complex services "microservices". Ah yes, the microservice with 20 endpoints which all do completely unrelated tasks? -
As I started learning React, I found the allure of declarative style of programming appealing. I try to avoid maintaining multiple state variables for data that can be derived from the base state itself that's stored in the redux store. It works wonders when I have to change something; as I just need to make changes to one function in the utils folder and that change is implemented across the whole app, rather than change the instances everywhere as was the case when I initially started working on this project after the previous dev left.
But I see myself redefining a lot of computed values everywhere, and if I just try to define them in the root component, I'll end up with a huge list of props being passed to a couple of components. Shifting it to the utils folder helps a bit, but then I find myself defining even the simplest of array filtering methods to the utils folder.
Is this need to define computed values everywhere a trade-off that you need to accept when you write declarative code, or is there a workaround/solution I am missing? As of now, the code-base is much better than how it used to be when they had a literal Java dev work on React with their knowledge of Java patterns being used in a framework that is the polar opposite of OOP, but I still feel like there's room for improvement in this duplication of computed values.2 -
Aka... How NOT to design a build system.
I must say that the winning award in that category goes without any question to SBT.
SBT is like trying to use a claymore mine to put some nails in a wall. It most likely will work somehow, but the collateral damage is extensive.
If you ask what build tool would possibly do this... It was probably SBT. Rant applies in general, but my arch nemesis is definitely SBT.
Let's start with the simplest thing: The data format you use to store.
Well. Data format. So use sth that can represent data or settings. Do *not* use a programming language, as this can neither be parsed / modified without an foreign interface or using the programming language itself...
Which is painful as fuck for automatisation, scripting and thus CI/CD.
Most important regarding the data format - keep it simple and stupid, yet precise and clean. Do not try to e.g. implement complex types - pain without gain. Plain old objects / structs, arrays, primitive types, simple as that.
No (severely) nested types, no lazy evaluation, just keep it as simple as possible. Build tools are complex enough, no need to feed the nightmare.
Data formats *must* have btw a proper encoding, looking at you Mr. XML. It should be standardized, so no crazy mfucking shit eating dev gets the idea to use whatever encoding they like.
Workflows. You know, things like
- update dependency
- compile stuff
- test run
- ...
Keep. Them. Simple.
Especially regarding settings and multiprojects.
http://lihaoyi.com/post/...
If you want to know how to absolutely never ever do it.
Again - keep. it. simple.
Make stuff configurable, allow the CLI tool used for building to pass this configuration in / allow setting of env variables. As simple as that.
Allow project settings - e.g. like repositories - to be set globally vs project wide.
Not simple are those tools who have...
- more knobs than documentation
- more layers than a wedding cake
- inheritance / merging of settings :(
- CLI and ENV have different names.
- CLI and ENV use different quoting
...
Which brings me to the CLI.
If your build tool has no CLI, it sucks. It just sucks. No discussion. It sucks, hmkay?
If your build tool has a CLI, but...
- it uses undocumented exit codes
- requires absurd or non-quoting (e.g. cannot parse quoted string)
- has unconfigurable logging
- output doesn't allow parsing
- CLI cannot be used for automatisation
It sucks, too... Again, no discussion.
Last point: Plugins and versioning.
I love plugins. And versioning.
Plugins can be a good choice to extend stuff, to scratch some specific itches.
Plugins are NOT an excuse to say: hey, we don't integrate any features or offer plugins by ourselves, go implement your own plugins for that.
That's just absurd.
(precondition: feature makes sense, like e.g. listing dependencies, checking for updates, etc - stuff that most likely anyone wants)
Versioning. Well. Here goes number one award to Node with it's broken concept of just installing multiple versions for the fuck of it.
Another award goes to tools without a locking file.
Another award goes to tools who do not support version ranges.
Yet another award goes to tools who do not support private repositories / mirrors via global configuration - makes fun bombing public mirrors to check for new versions available and getting rate limited to death.
In case someone has read so far and wonders why this rant came to be...
I've implemented a sort of on premise bot for updating dependencies for multiple build tools.
Won't be open sourced, as it is company property - but let me tell ya... Pain and pain are two different things. That was beyond pain.
That was getting your skin peeled off while being set on fire pain.
-.-5 -
Hey guys, first time writing here.
Around 8 months ago I joined a local company, developing enterprise web apps. First time for me working in a "real" programming job: I've been making a living from little freelance projects, personal apps and private programming lessons for the past 10 years, while on the side I chased the indie game dev dream, with little success. Then, one day, realized I needed to confront myself with the reality of 'standard' business, where the majority of people work, or risk growing too old to find a stable job.
I was kinda excited at first, looking forward to learning from experienced professionals in a long-standing company that has been around for decades. In the past years I coded almost 100% solo, so I really wanted to learn some solid team practices, refine my automated testing skills, and so on. Also, good pay, flexible hours and team is cool.
Then... I actually went there.
At first, I thought it was me. I thought I couldn't understand the code because I was used reading only mine.
I thought that it was me, not knowing well enough the quirks of web development to understand how things worked.
I though I was too lazy - it was shocking to see how hard those guys worked: I saw one guy once who was basically coding with one hand, answering a mail with another, all while doing some technical assistance on the phone.
Then I started to realize.
All projects are a disorganized mess, not only the legacy ones - actually the "green" products are quite worse.
Dependency injection hell: it seems like half of the code has been written by a DI fanatic and the other half by an assembly nostalgic who doesn't really like this new hippy thing called "functions".
Architecture is so messed up there are methods several THOUSANDS of lines long, and for the love of god most people on the team don't really even know WHAT those methods are for, but they're so intertwined with the rest of the codebase no one ever dares to touch them.
No automated test whatsoever, and because of the aforementioned DI hell, it's freaking hard to configure a testing environment (I've been trying for two days during my days off, with almost no success).
Of course documentation is completely absent, specifications are spread around hundreds of mails and opaquely named files thrown around personal shared folders, remote archives, etc.
So I rolled my sleeves up and started crunching as the rest of the team. I tried to follow the boy-scout rule, when the time and scope allowed. But god, it's hard. I'm tired as fuck, I miss working on my projects, or at least something that's not a complete madness. And it's unbearable to manually validate everything (hundreds of edge cases) by hand.
And the rest of the team acts like it's all normal. They look so at ease in this mess. It's like seeing someone quietly sitting inside a house on fire doing their stuff like nothing special is going on.
Please tell me it's not this way everywhere. I want out of this. I also feel like I'm "spoiled", and I should just do like the others and accept the depressing reality of working with all of this. But inside me I don't want to. I developed a taste for clean, easy maintainable code and I don't want to give it up.3 -
Wanting to see if I can build a full web dev stack on my phone, any ideas?
So found I found a not so helpful terminal emulator, a programming keyboard, enough IDEs to make your head spin, and a few rooted apps if rooting was an option right now. I'm half tempted to setup ssh and ftp on a cloud server such as Google cloud.
I'm doing this to see if it's possible and able to be used during work, although I am beginning to doubt the idea will make it into my development cycle.4 -
After I finished the university, I felt like I didn't know anything. I'm learning everyday something new in my work (I'm working 8 years as a dev), but I can't say comfortably that I'm good at programming. After work I'm going home, where I learn and practice new things and deepen my understanding of the core concepts, but again, I feel like I don't know anything. Will I ever feel that I'm a good programmer?2
-
I've been programming for 15 years now or more if I count my years I programmed as a hobby. I'm mostly self learned. I'm working in an environment of a few developers and at least the same amount of other people (managers, sales, etc). We are creating Magento stores for middle sized businesses. The dev team is pretty good, I think.
But I'm struggling with management a lot. They are deciding on issues without asking us or even if I was asked about something and the answer was not what they expect, they ask the next developer below me. They do this all the way to Junior. A small example would be "lets create a testing site outside of deployment process on the server". Now if I do this, that site will never be updated and pose a security risk on the server for eternity because they would forget about it in a week. Adding it to our deployment process would take the same time and the testing site would benefit from security patches, quick deployment without logging in to the server, etc. Then the manager just disappears after hearing this from me. On slack, I get a question in 30 minutes from a remote developer about how to create an SSH user for a new site outside of deployment. I tell him the same. Then the junior gets called upstairs and ending up doing the job: no deployment, just plain SSH (SFTP) and manually creating the database. I end up doing it but He is "learning" how to do it.
An other example would be a day I was asked what is my opinion about Wordpress. We don't have any experience with Wordpress, I worked with Drupal before and when I look at a Wordpress codebase, I'm getting brain damage. They said Ok. The next day, comes the announcement that the boss decided to use Wordpress for our new agency website. For his own health and safety, I took the day off. At the end, the manager ended up hiring an indian developer who did a moderately fair job. No HiDPI sprites, no fancy SASS, just plain old CSS and a simple template. Lightyears worse than the site it was about to replace. But it did replace the old site, so now I have to look at it and identify myself part of the team. Best thing? We are now offering Wordpress development.
An other example is "lets do a quick order grid". This meant to be a table where the customer can enter SKU and quantity and they can theoretically order faster if they know the SKU already. It's a B2B solution. No one uses it. We have it for 2 sites now and in analytics, we have 5 page hits within 3 years on a site that's receiving 1000 users daily... Mostly our testing and the client looked at it. And no orders. I mean none, 0. I presented a well formatted study with screenshots from Analytics when I saw a proposal to a client to do this again. Guess what happened? Someone else from the team got the job to implement it. Happy client? No. They are questioning why no one is using it.
What would you do as a senior developer?
- Just serve notice and quit
- Try to talk to the boss (I don't see how it would work)
- Just don't give a shit1 -
For everybody who's had to start job hunting for their first real programming job, I have a few questions.
Is starting to apply for jobs 4-5 months ahead a good idea or is it better to wait it out with a 2-3 month time frame? I'm graduating in June 2019.
Is it better to apply for jobs with a search field of "junior developer" or to be more specific like "Jr Java web dev/Jr node.js"?
I know a lot of job descriptions are just company wishlists and not real indicators of skill. I have enough job experience to know how that part of the world works.
My aim is to try for Chicago(go Cubs) or New England, maybe Boston or NYC. I'd say I have a better shot with Chicago being just a 4 hour drive from home base. But, you never know. This is my first real shot at a job in this field so I'm trying to keep my expectations in check.
Hopefully I can get something to work before rumblings of the 2020 election start in my home state. 🙄2 -
February will be the first full year at this company as full time employee.
I've updated so many legacy projects, optimized a lot of workflows as well as built new tools to improve efficiency and remove unnecessarily duplicate projects (sometimes literally only 3 variables were different between multiple projects)
My one co-worker taught himself enough code to do the job but doesn't think like a programmer though he is asking me for help and advice to improve what he does since ive proven i know a little. my other direct co-worker I'm practically teaching a Programming 100 course to them
My direct manager at one point said he was so happy he took a chance on me even though I didn't interview well
I like my job, I find it so much better than my last job which was horribly toxic, and more fun than my first 'real' job as a night shift help desk for basically a warehouse environment.
But I feel under paid sometimes for how much i do and all ive improved in my first year, I have my first yearly review coming up. I'm hoping to get a decent raise for all ive done and I want to somehow go over everything with the HR person to justify it. But I have no idea how to talk about my dev work to them in a way a non technical person could understand. I'm also not sure how the review process will work. Like will my manager be there. Or is it just me and HR, is there a paper I'll be sent to fill before hand,1 -
I feel sad about being in a standstill position in my life right now. everything feels like stopped, and i am not growing.
My only source of income is my job, which does pays well, but not much. I have been in this job for 6 months (3rd job in 3 years) and although it is satisfying in terms of the work i do, everything else is just bleh. quantity of work is a lot, there is chaos everywhere, bosses are incompetent and demanding and worst of all , its hybrid, so am wasting 2-3 days every week.
apart from work, i struggle to make myself useful. outside work hours, i want to earn more money, health, popularity and power.
- for health, i goto gym , which hopefully is the onlh thing going correct in my life. although am not getting any major transformation, the feeling of pain among my muscles feels good and people seems to know me somewhat in there.
- for money, popularity and power , am again at a still.
--- power comes from popularity and money.
--- money comes from ability to influence(and optionally with knowledge) .
--- popularity also comes with knowledge and/or ability to influence.
--- knowledge can be bought/learned.
- above all are my guesses. i haven't yet cracked the exact dependency graph in here. but the simplest thing to get is knowledge and i have been trying to get a hold of it, but in vain
- i have tried a lot of stuff in last 3 years :
--- get better in android ( which i did by working professionally) ,
--- learn web frontend (html/css/js/react, etc ., for which i took courses and i know them now somewhat ) ,
--- learn web backend ( spring, node, flask, aws, etc .,for which i took courses/videos)
--- learn no code stuff (markdown generators, wordpress etc , for which i tried as hobby)
--- learn ios/hybrid stuff(flutter, react native etc, for ehich i watched videos, did courses etc)
- the problem is, am just good at one thing (android) and have a limited knowledge (5-30%) of all the others. companies won't pay me more to be a mediocre full stack dev than what they are paying me now to be a decent junior android dev
- the areas where i lack as of now is DS,Algo, Competitive programming and System designing. these are skills expected for someone trying to crack a good fortune 5xx company
- i am not so sure if i want to do these since there isn't a guarantee whether i will be happy to be in google or amazon. i could guess the amount they would pay me for being a mediocre full stack dev.
- i am not even sure if its good for me to change jobs every few months. i contribute heavily wherever i go, nd i leave at the moment am about to receive a probable reward(probable promotion/increment) for a more concrete reward ( the definite increment from a job switch)
- my existing knowledge is being wasted like the various uselss courses i did in college as i am unable to find a usecase for them. i am tired of making useless jira clones , caclulators and portfolio pages for myself which no one will be using or appreciating.
- keeping the whole tech life aside, my family runs the blood of businessmen and i am not able to progress in that as well. my father was an average grocery shop owner whose shop is now on rent and who is now doing a sales job too. however, their family shop with grandfather and brothers was once a very popular and money minting business 40 years ago.
- i sometimes feel i could do good in business area, but i am a complete blank slate in that department with no one to support (my father is old now)
- alongside non career problems ( midlife crisis, money shortage, no friends ), life feels pretty stagnant right now :/13 -
In reply to this:
https://devrant.com/rants/260590/...
As a senior dev for over 13 years, I will break you point by point in the most realistic way, so you don't get in troubles for following internet boring paternal advices.
1) False. Being go-ahead, pro active and prone to learn is a good thing in most places.
This doesn't mean being an entitled asshole, but standing for yourself (don't get put down and used to do shit for others, or it will become the routine) and show good learning and exploration skills will definitely put you under a good light.
2)False. 2 things to check:
a) if the guy over you is an entitled asshole who thinkg you're going to steal his job and will try to sabotage you or not answer acting annoyed, or if it's a cool guy.
Choose wisely your questions and put them all togheter. Don't be that guy that fires questions in crumbles, one every 2 minutes.
Put them togheter and try to work out the obvious and what can be done through google or chatgpt by yourself. Then collect the hard ones for the experienced guy and ask them all at once. He's been put over you to help you.
3) Idiotic. NO.
Working code = good code. It's always been like this.
If you follow this idiotic advice you will annoy everyone.
The thing about renaming variables and crap it's called a standard. Most company will have a document with one if there is a need to follow it.
What remains are common programming conventions that everyone mostly follows.
Else you'll end up getting crazy at all the rules and small conventions and will start to do messy hot spaghetti code filled with syntactic sugar that no one likes, included yourself.
4)LMAO.
This mostly never happens (seniors send to juniors) in real life.
But it happens on the other side (junior code gets reviewed).
He must either be a crap programmer or stopped learning years ago(?)
5) This is absolutely true.
Programming is not a forgiving job if you're not honest.
Covering up mess in programming is mostly impossible, expecially when git and all that stuff with your name on it came out.
Be honest, admit your faults, ask if not sure.
Code is code, if it's wrong it won't work magically and sooner or later it will fire back.
6)Somewhat true, but it all depends on the deadline you're given and the complexity of the logic to be implemented.
If very complex you have to divide an conquer (usually)
7)LMAO, this one might be true for multi billionaire companies with thousand of employees.
Normal companies rarely do that because it's a waste of time. They pass knowledge by word or with concise documentation that later gets explained by seniors or TL's to the devs.
Try following this and as a junior:
1) you will have written shit docs and wasted time
2) you will come up to the devs at the deadline with half of the code done and them saying wtf who told you to do that
8) See? What an oxymoron ahahah
Look at point 3 of this guy than re-read this.
This alone should prove you that I'm right for everything else.
9) Half true.
Watch your ass. You need to understand what you're going to put yourself into.
If it's some unknown deep sea shit, with no documentations whatsoever you will end up with a sore ass and pulling your hair finding crumbles of code that make that unknown thing work.
Believe me and not him.
I have been there. To say one, I've been doing some high level project for using powerful RFID reading antennas for doing large warehouse inventory with high speed (instead of counting manually or scanning pieces, the put rfid tags inside the boxes and pass a scanner between shelves, reading all the inventory).
I had to deal with all the RFID protocol, the math behind radio waves (yes, knowing it will let you configure them more efficently and avoid conflicts), know a whole new SDK from them I've never used again (useless knowledge = time wasted and no resume worthy material for your next job) and so on.
It was a grueling, hair pulling, horrible experience that brought me nothing in return execpt the skill of accepting and embracing the pain of such experiences.
And I can go on with other stories. Horror Stories.
If it's something that is doable but it's complex, hard or just interesting, go for it. Expecially if the tech involved is something marketable.
10) Yes, and you can't stop learning, expecially now that AI will start to cover more and more of our work.4 -
So, after studying software development and games programming, I ended up working as a Salesforce developer. Been doing it for over a year now, but it's still not something I'm passionate about.
I got invited to an interview for a different job. Games industry related, using golang to do backend work.
Switching from Salesforce to Engine. From frontend to backend. I have faith that I can do it, the question I'm struggling with is... Should I?
I have no idea what the pros and cons are, junior dev In both roles, pay is about the same but for the fields themselves, is being a backend dev better than frontend? Is golang a desired language? Do I have career security by learning these things?
Or should I stay where I am now, give up enjoying my job in favour of something I class incredibly easy?
Any advice would be greatly appreciated.8 -
I am having an introspective moment as a junior dev.
I am working in my 3rd company now and have spent the avg amount of time i would spent in a company ( 1- 1.5 years)
I find myself in similar problems and trajectories:
1. The companies i worked for were startups of various scales : an edtech platform, an insurance company (branch of an mnc) and a b2b analytics company
2. These people hire developers based on domain knowledge and not innovative thinking , and expect them to build anything that the PMs deem as growth/engagement worthy ( For eg, i am bad at those memory time optimising programming/ ds/algo, but i can make any kind of android screen/component, so me and people like me get hired here)
3. These people hire new PMs based on expertise in revenue generation and again , not on the basis of innovative thinking, coz most of the time these folks make tickets to experiment with buttons and text colors to increase engagement/growth
4. The system goes into chaos mode soon since their are so many cross operating teams and the PMs running around trying to boss every dev , qa and designer to add their changes in the app.
5. meanwhile due to multiple different teams working on different aspects, their is no common data center with up to date info of all flows, products and features. the product soon becomes a Frankenstein monster.
6. Thus these companies require more and more devs and QAs which are cogs in the system then innovative thinkers . the cogs in the system will simply come, dimwittingly add whatever feature is needed and goto home.
7. the cogs in system which also start taking the pain of tracking the changes and learning about the product itself becomes "load bearing cogs" : i.e the devs with so much knowledge of the product that they can be helpful in every aspect of feature lifecycle .
8. such devs find themselves in no need for proving themselves , in no need for doing innovative work and are simply promoted based on their domain knowledge and impact.
My question is simply this : are we as a dev just destined to be load bearing cogs?
we are doing the work which ideally a manager should be doing, ie maintaining confluence docs with end to end technical as well as business logic info of every feature/flow.
So is that the only definition of a Software Engineer in a technical product?
then how come innovations happen in companies like meta Microsoft google open ai etc?
if i have to guess as a far observer, i would say their diversity in different fields helps them mix and match stuff and lead to innovative stuff.
For eg, the android os team in google has helped add many innovative things in google cloud product and vice versa.
same is with azure and windows . windows is now optomissed to run in cloud machines when at one point it was just a horrible memory hogging and slow pc OS
for small companies, 1 ideology/product/domain is their hero ideology/product/domain .
an insurance company tries to experiment with stuff related to insurances,health,vehicles,and the best innovations they come up with is "lets give user a discount in premium if they do 5000 steps a day for an year".
edtech would say "lets do live streaming for children apart from static videos"
but Android team at google said , "since ai team is doing so well, lets include ai in various system apps and support device level models" ~ a much larger innovation as 2 domains combined to make a product
The small companies are not aiming to be an innovative product, they are just aiming to be a monopoly product. and this is kinda sad2 -
My way through front end started with a simple request of changing a blog CSS.. which I knew nothing of. Looking back it feels odd starting with CSS then HTML, JS and now first PHP; but oh well what ever works?
That was a couple of years ago and lately I've done couple of minor freelance projects and have helped students at my university with it (I studied network engineer because I doubted myself..).
I never felt that I knew enough of programming or front end.. that I wasn't really "good enough" to apply for a job even though I almost finish the frontend certificate at FCC, did the Android application schoolar via Google and have worked a lot with Adobe CC overall and help people with their front end issues from school, even with library's I haven't touched (mighty power of Google search and quick learning).
Now sit here as a stockmen in my lunch break being all excited for one thing based on a conclusion I took last week.. if I never try to follow my passion for it, I'll stay a stockmen.. so I applied for s frontend job and got a call in for an interview today. I still doubt myself but figure I must try.. I do not wish to stay where I have been the whole year but to move on and work as a front end Dev. If I get it.. than Santa came early and if not.. well.. keep on evolving and trying I guess. *Holding thumbs* -
I started to contribute to open source again to improve as a dev and to break away from web stuff, on top of that I want to improve my professional imagine with a rebuilt personal website, decent LinkedIn posting and a more curated GH profile (starting from the name, I’ll replace the childish “edgy” name I’m using with actual name + surname).
The only issue I have is that on my current GH profile there are a couple of issue on random OSS projects which I offered to fix but then I’ve not maintained the promise for mental health or work issues which deprived me of any willpower towards evening programming. Do you think it’s better for me to create a new profile to get rid of these or I can still use my current profile without risking significant reputation damage?2 -
My advice would be to have fun with coding and make things that you like. Consider all other job fields. Only work in programming if it makes you fulfilled and gives you good memories looking back. If you do work as a dev, be passionate about making the code and projects beautiful and high quality. Search for mentorship from developers you admire.
-
Being pretty much the only one who has some knowledge of how to code and get my way around tech (even if minimal, I'm too lazy for my own good) in my familiar household - and by extension, my family (Family extends FamiliarHousehold - LoL I'm sorry) - (my brother is on his first grade of a programming course in high school, I'm a 2nd grade uni student aiming to become a game dev) sometimes I wish I knew nothing of it.
Don't get me wrong, I do like working on code (if in Java. C is making me wanna tear my eyes out) but sometimes ignorant family members push me through the edge.
I worked on a business thing my family started this summer and one of the "jobs" was managing everything via a website.
Fair enough, I knew nothing of it when I started but I learn fast and just like that I knew my way around it. The problem came when I had to teach the person who started the project how it worked. This doesn't sound all that bad except he is kinda in the stone age regarding informatics.
He got a computer a few years ago and he pretty much only played poker in it, and he still had one of those old nokias you could throw to a wall and get a hole into it. The computer is like 9y and runs like crap.
To make things worse he bought a new phone, a smartphone, and pestered me to teach him. I swear trying to teach him is like repeating the same thing 1000x and pray he keeps it in his head. Spoiler: he doesn't. ( sanity--; )
So to try and easy my suffering I decided to make a manual for the website (which is outdated by now because the team behind the website did a 180 and some things looks different), but it acted as if I'd done nothing. ( sanity--; )
To top this off he keeps on saying I don't wanna help him. ( sanity--; )
This kept going for the whole damn summer, and meanwhile I had to go back to uni and in the first days I still got like 4-5 calls/day, half of those might about the smallest things because he's so panicky.
Like (both examples happened while I was still there but it kinda goes along those lines sometimes):
- (During the period they changed the website the first time since we're there; they were mostly doing changes back and forth and testing because it had a new layout for a day or 2 before going back; also the site was totally functional, except for a thing or 2)
Him: "They're changing the website, why are they doing that?"
Me: "Because it's their website and they can?"
Him: "WHY DIDN'T THEY LET US KNOW"
Me: "They don't have to, they don't work for you." ( sanity--; )
Or (during the same period; the pages have a menu on the left; one of the submenus has a counter that resets every time the session ends; during that maintenance time they must've "disabled" the function because the number kept growing even after the session ended):
Him: "WHY IS THE NUMBER GROWING?"
Me: "They're working on the code, relax, it's nothing."
Him: "But why." ( sanity--; )
The only quesion he pretty much hasn't asked me yet is why "Is the website's colour this one and not that one?".2 -
I can't wait until I feel like Dr. Frankenstein when I build my PC this week. My first real computing rig!!
Some backstory: My main dev machine is my old Lenovo laptop running Ubuntu (my baby). I took Windows off of it when I got a Surface through a job and have been using that for Windows specific work. I'm going to be giving that to my little sister next time I travel home. In short, this is the first computer that will be able to cut through anything I throw at it and play games that aren't at least 6 years old.
The build is centered around an i5-8400 and gtx 1060 6GB, and I'll be running Windows as a primary OS for gaming. However, I fell in love with programming on Linux and there is no way Linux won't be on my machine. I understand the differences between dual-booting and virtualization, but I want to hear how you guys run Linux on your Windows gaming machines or if you go about it another way. I also have heard horror stories about drivers for Linux, and wonder if my graphics card being certified by Ubuntu LTS actually means that it will operate correctly. I have also only ran VMs on crappy computers so I haven't had any experiences where that performed better than dual-booting. I'd love some feedback or to hear about all of your setups, as hardware has never been my strong suit.
I'll post a pic of my setup when it's done too.4 -
I've lost count of the days at this point...
First things first, lets all praise musky for getting David Bowie stuck in my head for the next month or so, not a bad thing, his song choice was on point. Also the rants have become few and far between because apparently I have to be an "adult" and go to work, pay my bills, and other things that distract me from programming.
Okay, now to the actual dev stuff. I've started to think that maybe my scope of languages is limited somewhat to my comfort zone, which is only java at this point. So for my project (game development), I've decided to pick a language based on what will work best instead of what I'm comfortable with, my runners so far...
C++: The default go to for game development. I would chose this but if I did, my best C++ game would look like Frankenstein's monster and would be filled with terrible code. For that alone I have scratched C++ from my list, for lack of experience.
Java: My usual, my go to, my comfort zone. I don't want to be comfortable though, I want to learn things. That asides, java has tones of resources, frameworks, libraries, and tutorials available. In addition, it's also able to run on pretty much anything, huge ++. The cons are trying to find the best resources, frameworks, libraries, and tutorials to use for a particular situation and that can be hard and confusing. Java may still be my go to but I'll get to that with the next language.
C#: I have never touched C# in my life, and the only things I know about it are what I've heard or read. So far I've heard it is SIMILAR to java, based around C++, and has aged really well compared to other languages. I like that it is similar to java without it being the same language, it will force me to learn things over and you can never reinforce the basics enough. It also has the huge benefit of being Microsoft based while still running on iOS, linux, macOS, windows, and android. This gives me really easy access to implement a mobile version (in the future obviously), while being able to run well on windows, the default OS for most gamers.
Overall I will start writing in C# and see if I like it. If I don't it's no big deal, I still have a good option in java to fall back on. I'm open to hearing opinions on this topic, java vs. C# but please keep your bias nonexistent and you constructive conversation very high. If any actual game developers that have experience with both languages are out their, and reading this, please comment so I can pick your brain.
Some of you may ask about the android scholarship, I contacted google and told them android development wasn't for me so they sent someone a late invite and rescinded mine, hopefully someone else will put it to better use.
Holy god this is long. I'm sorry. -
So the other day, an old acquaintance asks me (a noob full stack dev) for advice on what programming langs to languages to learn.
I (like all other noobs eager to help) asked him about his previous programming skills, if any. He says "Yes yes, I did a course on HTML and CSS." To this I ask, what exactly are you looking to do. Back-end development he says.
I am frustrated with people asking me what to learn and how to learn when they are not even willing to do slightest of the work themselves. I am usually very helpful to people, but as a programmer, I would certainly try to do a complete research before I go around asking others.
What do you guys do? How do you handle such questions.4 -
Has anyone moved into A.I. programming from a decently long web dev career. Or maybe you work in AI and you have 2c.
Worried about what comes next. So, I've decided to pivot hard into core math and comp sci like linear, calc, probability, dsa.
Worth it? Naive? I was a calculus tutor way back.7 -
So the project I have been working on for the past 5 months was finally released yesterday with only very minor problems, this stemmed from both programming side, and users entering data incorrectly.
It has been a rather hectic 5 months. I've had to deal with crap like:
- clients not knowing their own products
- a project manager that didn't document anything (or at least everything into a Google Slides document)
- me writing both requirements AND specifications (I'm a dev, not a PM)
- developers not following said specifications (then having to rewrite all their work)
But the worst thing I think would be the lack of vision from everyone. Everyone sees it as a "project" that should be get it over and done with rather a product that has great potential.
So with the project winding down, and only very few things left to fix/implement. Over these 5 months I learned a lot about domain driven design, Laravel's core, AWS, and just how terrible people are at their jobs. I imagine if I worked with people who gave a damn, or who actually had skills, I probably wouldn't have had such a difficult project.
Right now I'm less stressed but now feel rather exhausted from it all. What kind of things do you to help with the exhaustion and/or slow down of pace?1 -
The most productive way of development is going slow and don't make a lot mistakes. Lately, I'm doing the opposite. It's often not your skills or knowledge but just your patience / expectation to be managed. Since I switched from C to Python I got the mindset that everything should be possible to make in short time with low effort. Being used to do a lot of effort because of C development gave me a lot of patience and upgraded me to be a better dev at any language. But sadly, I notice it's a skill you can lose. How to retrain my patience. Doing a lot of C again. But I want to have the patience NOW (retoor said impatiently). What a paradoxale dilemma shit. You have to do patient stuff to be become patient whey really sucks and sucks if you became inpatient.
Very underrated skill that actually says a lot about you as programmer: patience.
With enough patience you can master anything. Without it, you're depending on tools that allow you to. That's OK, but there's always some price to be paid. Many time it's the ignorance not knowing how the tools work and thus how it actually works. Some people can live with that, others don't. Knowing how somethings works is relative anyway. Do you know how it works until the language level? Kernel level? Framework level? Everyone chooses themselves what the limit is I guess. My limit is the C api / kernel interface.
Random thoughts. I'm just bit frustrating performing low lately and speculating about what to do about it. I just don't have a different hobby than programming. Doing something else for a while to give brain a rest would be best but it should be something raising dopemine. TV / gaming doesn't do that for me.
Sigh, how to do absolutely nothing. I did it for a 1,5 year full time but that was because of medication. Now it's impossible.18 -
What the hell am I!? I wonder if you guys can help me...
I've been programming most of my life but I've never actually been a developer by title or job role. I thought maybe if I list what I do and have done someone here could help? I'm sure there are more of you in a similar boat.
- C# and VB dev for some quick DBMS projects to help me understand and mine databases and create a nice simple view for project teams to show findings from the data to help make certain decisions.
- Automating a lot of my colleagues work with Python and if very restricted then just VBA macros in Excel and MSP. This did also include creating tools to gather data during workshops and converting the data for input into other systems.
- Brought Linux to the office with most team members now moving over to Linux with the peace of mind to know that though they do need to try solve their own problems, I can help if need be.
- Had to learn AWS and then implement an autoscaling and load balanced data center installation of a few Atlassian toolsets.
- Creating the architecture diagrams documentation needed for things like the above point.
- Having said that, also have ended up setting up all the Jira/Confluence etc. servers we use and have implemented so far whether cloud (Azure/AWS) or on prem and set up scripts to automate where possible.
- Implemented an automated workflow view in SharePoint based on SP list data and though in an ASPX page, primarily built in JS.
- Building test systems in PHP/JS with Laravel and Angular to help manage integration between systems. Having quite a time right looking into how to build middleware to connect between SOAP and REST API's, the trouble caused more by the systems and their reliance on frameworks we're trying to cut out of the picture.
- Working on BI and MI and training a team to help on the report creation so that I can do the fun creative stuff and then set them to work on the detail :)
Actually it seems safe to say that it seems that though I've finally moved into a dev office (beforehand being the only developer around) I seem to be the one they go to when a strategic solution is needed ASAP and the normal processes can't be followed (fun for someone with a CompSci degree and a number of project management courses under the belt... though I honestly do enjoy the challenges)
But I always end up Jack of all but master of, well hopefully some at least. let's not even get started on the tech related hobbies from circuit design and IoT to Andoid / iOS and game dev and enjoying a bit of pen testing to make sure we're all safe at work and at home.
As much as I don't like boxes, I'm interested to know if there is in fact a box for me? By the way, the above is just a snapshot of my last two years minus the project management work...2 -
I don't have a cs degree (my degree is in aerospace engineering). However, I think the question is valid for any degree. The answer depends on the field. When sitting in on interviews over the years, the type of degree for programming jobs never seemed that important if there were experience involved. So, if the job description required 2 yrs exp. in X, then that experience trumped the degree type. If the job was for a junior dev right out of college, then degree type becomes one of the most important factors. So, for that first job, it's important that you've got a degree (any degree) because it shows that you can accomplish that chunk of work. Having a cs degree at that point does provide a distinct advantage over those with medieval romantic french poetry degrees. That's the game, and don't fret if 95% of the material you study in college you never use again. The point of studying it wasn't to use it immediately (go learn a trade if that's your bent), it was to both test you and to expose you to specialties that you might want to do later.
-
I’m at my last hair with this job; I report to 3 (two mid-level; one senior) project managers. The senior PM decided not to fix up the company’s jira and has encouraged “I’ll tell you what to do by mail, text, call. Even outside office productivity apps,” and I didn’t mind it but it’s become unbearable. Each of these PMs manage at least one client that I have to work with — in essence, any given day I’m reporting to these PMs, for multiple tasks for at least 2 clients, especially for MVPs. One of the mid-level PM (let’s call her T) has taken it upon herself to make me look bad. I’m the only developer at the company; when I joined the only two developers had already left a week prior, so I was their replacement (no one mentioned this to me during any of the 3 interviews).
T reports to the senior PM and senior PM, who is friends with T from outside the job, would also give T instructions to provide me in regard to Senior PM’s clients. To made this clearer, Senior PM’s client would request for a feature or whatever, Senior PM would prepare a lousy document and send to T to send to me, just so, T can have things to say in standup daily like “I reached out to the Dev to fix xyz’s something something,” so this means I have had to tolerate T twice as much as the other PMs. (She’s new to the job, a week after me — Senior PM brought her in — they both do not have technical experience relating to work tools for programming but I can say Senior PM knows how to manage clients; talk shop).
Anyhow, T gets off by making me look bad and occasionally would “pity” me for my workload but almost in a patronizing way. T would say I don’t try to reply messages in 5 minutes time after I receive them (T sends these messages on WhatsApp and not slack, which is open during work hours). T would say, “I can’t quite get a read of this Engineer — you(me) are wired differently,” whenever one of T’s requests is yet to be completed because I’m handling other requests including T’s, even though T had marked the completed ones as Done on her excel sheet (no jira).
In all of this, I still have to help her create slides for our clients on all completed tasks for the week/month, as senior PM would tell me because “T is new to this.” We’ve been at the job for roughly 4 months now.
I have helped recruit a new developer, someone the company recommended — I was only told to go through their résumé and respond if they are a good fit and I helped with the interview task (a take-home project — I requested that the applicant be compensated as it’s somewhat a dense project and would take their time — HR refused). The company agreed with the developer’s choice of full WFH but would have me come in twice a week, because “we have plenty live clients so we need to have you here to ensure every requests are handled,” as if I don’t handle requests on my WFH days.
Yesterday, T tried making me look bad, and I asked, “why is it that you like making me look bad?” in front of HR and T smiled. HR didn’t say anything (T is friends with HR and T would occasionally spill nonsense about me to HR, in fact they sit together to gossip and their noise would always crawl to my corner; they both don’t do much. T would sleep off during work hours and not get a word for it — the first time I took a 10 minutes break to relax, T said, “you look too comfortable. I don’t like that,” and HR laughed at T’s comment. While it was somewhat a joke, there was seriousness attached to it). As soon as HR left, I asked T again, “why is it that most of the things you say are stupid?”, T took offense and went to her gossip crew of 4, telling them what I had just said, then T informed senior PM (which I’m fine with as it’s ideal to report me to her superior in any circumstance). Then I told those who cared to listen, T’s fellow gossipers, that I only said that in response to T’s remark to me in front of them, a while back, that I talked like I’m high on drugs.
I’ve lost my mind compiling this and it feels like I’m going off track, I’m just pissed.
I loved the work challenges as I’ve had to take on new responsibilities and projects, even outside my programming language, but I’m looking for a job elsewhere. My salary doesn’t not reflect my contributions and my mental health is not looking good to maintain this work style. I recall taking a day off as I was feeling down and had anxiety towards work, only to find out HR showed T my request mail and they were laughing at me the next day I showed up, “everybody’s mental health is bad too but we still show up,” and I responded to T, “maybe you ought to take a break too”.3 -
Best path depends on where you are in life and what you can afford.
Used to be the case that formal college/uni for K-12 graduates was a great path, provided you had the tenacity to stick with the program.
I had almost dropped out of my bachelor of programming systems 4year programme because it was too strict for my lazy ass, but it was totally on me to not be giving it my best.
Now, fast forward to today's age we have a lot of accelerated paths a person can take to get the foot in - bootcamps are successful option for many, but you need to immerse yourself and give it your all to start getting a feel for software dev mindset.
Self-teaching is and was a viable option, but you run a risk of embeddding a lot of potential mistakes to your thinking/process which can make it hard to work in real scenarios with other people.
In short, college and bootcamps are still king, I think -
Hi devRant. Wanna rant with some shit about my company. First some good parts. I work in company with 600+ employees. It's one of the best companies in my region. They provide you with any kind of sweets(cookies, coffee, tea, etc), any hardware you need for your work (additional monitor, more ram, SSDs, processor, graphics card, whatever), just about everything you need to make your work faster/comfortable. Then, we have regular reviews (every 6 months), which rise salary from $0.75 to $1.5 per hour. (I live in poor country, where $15 per hour makes your more solvent then 70% of people, so having 100-200 bucks increase every half year is quite good rise).
The resulting increase of review depends on how team leader and project manager are satisfied with my work. And here starts the interesting (e.g. the shit comes in).
1) Seniority level in our company applies depending on the salary you have. That't right. It does not depend on your skill. Except the case when you're applying to vacancy. So if you tell that you're senior dev and prove it during interview, you'll have senior's salary. This is fine if you're just want money. But not if you love programming (as me) because of reasons bellow.
2) You don't need to have lots of programming experience to be a team leader. You can even be a junior team leader (but thanks god, on research projects only). You start from leading research projects and than move to billable if the director of research department is satisfied with your leading skills.
As a consequence our seniors are dumb AF. This pieces me off the most. Not all of them. A would say half of them are real pro guys, but the rest suck at programming (as for a senior). They are around junior/middle level.
I can understand if guy has $15 rate but still remains junior dev. That's fine. But hell no, he is treated as a middle, because his rate is $10+ now! And his mind has priority over middles and juniors. Not that junior have lof of good tougths but sometimes they do.
I'm lucky to work yet on small project so I'm the only dev, and so to speak TL for myself. But my colleague has this kind of senior team leader who is dumb AF. They work on ASP.NET Core project, the senior does not even know how to properly write generic constraints in C#. Seriously.
Just look at this shit. Instead of
MyClass<T> where T: class {}
he does this:
abstract class EnsureClass {}
MyClass<T> where T: EnsureClass {}
He writes empty abstract class, forces other classes to inherit it (thus, wasting the ability to inherit some useful class) just to ensure that generic T is a class. What thA FUCK is wrong with you dude?! You're a senior dev and you don't even know the language you're codding in.
And this shit is all over the company. Every monkey that had enough skill just to not be fired and enough patience to work 4-5 years becomes a senior! No-fucking-body cares and reviews your skill increase. The whole review is about department director asking TL and PM question like "how is this guy doing? is he OK or we should fire him?" That's the whole review. If TL does not like you, he can leave bad review and the company will set you on trial. If you confront TL during this period, pack your suitcase. Two cases of such shit I know personally. A good skilled guy could not just find common language with his TL and got fired. And the cherry on top of the case is that thay don't care about the fired dev's mind. They will only listen to reviewer. This is just absurd and just boils me down.
That's all i wanted to say. Thanks for your attention. -
Firstly give me the skill equivalent to the best in the field. If the rules allow it all of these skills listed and if not any of these :-
1. Computer networking to the point of having the same knowledge as the best in the field. Why? I am curious about that stuff and being able to work as a network engineer if I don't get a good Dev job
2. Cyber security. Why? I enjoy it and being able to make sure my code is not easily exploitable is a cherry on top. Also having a backup job in case I don't get a good dev job
3. Being able to communicate with non dev people about developer or non developer stuff easily and being a really good leader.
4. Being a good developer in whatever language I use and instantly being able to learn new programming languages and frameworks or libraries with ultra in depth information. -
What the fuck, does an EAT even do?!! Other than gaining a salary comparable to a Dev and just sitting in meeting day in day out.
How the fuck can someone work in tech without knowing even the basics of programming12 -
Do you randomly feel intense hatred towards people in your friend circle ?
Well I am
I have tons of friends to hang out and randomly talk about well... random things.
When it comes to more engineering related dev discussions I only have a couple friends.
One I don't speak to since he isn't very passionate about the field other than the money aspect. It's hard discussing with a person who can only see the monetary aspect of things.
Well this other guy was my only companion on this journey.. but he gave up and took on an acting career. Tbh I feel cheated. I don't have a companion / rival / anybody who I can really talk heart to heart when I get a random fun idea.
I understand how acting is on its own a pretty difficult skill but I definitely am feeling intense hatred for this fucker.
No knowledgeable guy puts himself in a situation where he has to decide between acting and electronics/programming .. and I considered this bloody motherfuck my intellectual companion.
This is what it feels like to be lonely despite having so many people around.
I'm going to work on creating a split personality. It's my only option to surviving in an engineering deprived country as mine (India).
The same country where 70% people end up engineers and most of them don't know what an oscilloscope is.1 -
Our company has the opportunity to start moving towards a more microservices architecture approach.
There is so much technical debt that needs to be paid back, this opportunity is a godsend!
Now, of course, the whole "programming language debate" comes into play at this point.
To provide some context, we've reached the point where we need to be able to scale, and at the same time where speed and performance are also important. I would argue that scale is of more importance at this stage.
Our "dev manager" (who is really only in that position since he's the oldest, like scribbling on a notepad and the sound of his own voice) wants to use Rust, as this is a peformant language. He wants to write the service once and forget about it. (Not sure that's how programming works, but anyhoo). He's also inclined to want to prematurely optimize solutions before they're even in production.
I want to use Typescript/NodeJS as I, along with most on the team are familiar with it, to the point that we use it on a daily basis in production. Now I'm not oblivious to the fact that Rust is superior to Typescript/NodeJS, but the latter does at least scale well. Also, our team is small - like 5 people small - so we're limited in that aspect as well.
I'm with Kent Beck on this one...
1. Make it work
2. Make it right
3. Make it fast
We're currently only at step 1, moving onto step 2 now!7 -
So, I’m currently a software tester (please don’t hate me) who is looking to move into development. I’ve been teaching myself programming and have been applying for junior dev jobs.
But it’s been tough, places I’ve been applying for want candidates who have had at least 1 year experience developing in a previous role.
I’ve had an interview for a junior role, but they wanted someone with more experience (and it was my first technical interview so I may have made a few mistakes)
I don’t want to be testing software manually forever (seriously, the manual regression test pack where I work is 1000+ test cases), I find programming more interesting and fun.
What can I do devRant?
Onwards and upwards with the applications. 👍4 -
Hi So I need some solid advice from you all wonderful people.
I think i am now ready to look into job side of this world, but have lots of doubts , read my story.
I have been learning android for last 2 years. Most of the time i have been trying to understand how stuff works in android , but i have also gained a few other skills ( python programming, kotlin/flutter basics data analysis basics, testing, some graphic designing, aweful web dev ,etc). But i really want to work with Android. I don't have any specific Salary figure in mind, but i guess my knowledge is better or atleast par with most of the good android developers.
So i want to know how is this fresher/placement thingy work?
1.) GETTING KNOWN? : How can i make some good android based company aware that I am available for hiring? Should i start emailing every android related company that i know of? Should i start listing my profile on recruitment sites like linkedin or internshala? This year it is being said that companies will come for placements. From the status of my college, they are going to give me way to less $ , nd i know am not going to like any of them, but i guess i have to sit for them too.
2.INTERVIEW OR DIRECT PLACEMENTS? A little pre-context: i am currently starting my 4th year in clg. Afaik , 4th year isnt that strict and their can be leniency in terms of attendance. But my college is a place full of political cun*s in the name of directors and HODs and I don't know if they are again going to enforce the old 75% mandatory criteria. Plus if the company is from a different state/country , then my attendance would definitely not suffice.
So mainly i am unsure if somehow a company hires me, i would be able to start immediately. I heard that there are interviews for job recruitment after which the candidate is binded with an agreement to do some months training followed by permanent working after college completion.
This type of agreement is very much suitable for me, since from what my friend tells me, trainings can be lenient and understanding regarding exam preparations nd stuff.
So what do company usually chooses? Binding a fresher on immediate working basis or do they consider graduate completion?
Also, i suck at competitive coding. Do i need to polish myself on that or some company is willing to give me chance on the basis of my other skills 🙈(okay, no kidding , that's a serious question. I need to either work on getting better in competitive or build more apps based on that)
3.) ANDROID OR EVERYTHING? From what i have heard, working as a professional fresher is more like being an allrounder than being a domain specialist. But as i already stated, i really dig android and that's no small framework. I may di other stuff too, but won't interest me nd my output might be less efficient than expected.
So freshers can really be asked to do any stuff? Or can i still be in the area i like being into?
4.) COMPANY OR START-UP? Yeah, this is a general debate starter. Ignoring the business side of the conversation ( job safety vs more salary, experience, etc) the thing that's most important for me is the presence of a team. I want someone to assign me a task, whose vision i could follow, from whom i could learn, and some other people who are supportive and doing the same amount / similar work that am doing . This is so much import8 for me that i can easily ignore other factors for a better team. I once took a call from a startup ceo who hired me, a 2 month old android beginner at that time, as the "lead android developer"
But if am being on a team where i am supposed to do any random stuff that is assigned, then obviously this whole point of "visionary, helpful leader, guiding team, "etc goes moot9 -
I noted music is disaster for my work. It distracts I loose my focus and efficiency decrease also.
mood swingings when I listen too much music I have a hated feeling l. So I decided to quite listening music during work.
It may help me in the rest of thr time when I am alone and need to really distress myself3 -
the red haired girl and the blue haired girl.
there was this story about a programmer who spent years studying computer science before finally getting a job.
the dev studied only computer science and was put on blue team after a few days.
a few hours into one of the constant coding sessions, the boss told the devs that red team members and blue team members would be working in pairs.
the person from red team transferred the devs work to their data base without the dev knowing, then locked down the devs computer. the dev could not do anything. later, the dev got fired for not doing any work. after that, the company got millions of dollars, and the dev did not see any of it.
both the dev and the managers made a note not to hire any programmer who cannot secure their work.
it is not ethical to teach people programming without also teaching them cyber security.
computer networking, programming and security should all be the same major.
it is a bad idea to teach people how to build anything without telling them how to secure it.
the story above was just a scenario, but it probably happens way more often than people think.
Schools should teach both things in the same major.5 -
I can work productively and for very long hours with a lot of stuff which many dev considers productivity hurdles:
- single small monitor? No problem (in fact in one occasion in which my roommate accidentally broke my laptop charghing port and I couldn't get a spare I worked on an iPad connected trough SSH to a Linux machine completing one of the hardest tasks I ever did without significant loss of productivity)
- old machine? That's ok as long as I can run a minimal Linux and not struggle with Windows
- noise and chatter around me? A 10€ pair of earbuds are enough for me, no noise cancelling needed
- "legacy" stack/programming language? I'd rather spend my days coding in Swift or Rust but in the end I believe which is the dev and its skill which gets the job done not fancy language features so Java 8 will be fine
- no JetBrains or other fancy IDE? Altough some refactoring and code generation stuff is amazing Neovim or VS Code, maybe with the help of some UNIX CLI tools here and there are more than enough
despite this I found out there is a single thing which is like kryptonite for my productivity bringing it from above average* to dangerously low and it's the lack of a quick feedback loop.
For programming tasks that's not a problem because it doesn't matter the language there's always a compiler/interpreter I can use to quickly check what I did and this helps to get quickly in a good work flow but since I went to work with a customer which wants everything deployed on a lazily put together "private cloud" which needs configurations in non-standard and badly documented file formats, has a lot of stuff which instead of being automated gets done trough slowly processed tickets, sometimes things breaks and may take MONTHS to see them fixed... my productivity took a big hit since while I'm still quick at the dev stuff (if I'm able to put together a decent local environment and I don't depend on the cloud of nightmares, something which isn't always warranted) my productivity plummets when I have to integrate what I did or what someone else did in this "cloud" since lacking decent documentation everything has do be done trough a lot of manual tasks and most importantly slow iterations of trial and error. When I have to do that kind stuff (sadly quite often) my brain feels like stuck on "1st gear": I get slow, quickly tired and often I procrastinate a lot even if I force myself out of non work related internet stuff.
*I don't want this to sound braggy but being a passionate developer which breathes computers since childhood and dedicating part of my freetime on continuously improving my skill I have an edge over who do this without much passion or even reluctantly and I say this without wanting to be an èlitist gatekeeper, everyone has to work and tot everybody as the privilege of being passionate in a skill which nowadays has so much market2 -
I am feeling a lot doubtful right now.
I am an average undergrad student who has been dedicating efforts in java/Android for most of my college life.
As of now i have decent command over java , launched 2 simple apps on playstore, worked as an android dev intern in 3 companies and make decent medium complexity apps. I will say i am 40-60% down the path of an expert native Android dev.
However apart from Android, am dumb as a stick. I know shit about ai,ml, web dev, js , react, hybrid stuff, and am not very good with competitive programming and system topics ( os, Algorithms, networking, etc)
So this closes a lot of doors for me. I can't apply to some top tier companies as they would either want expert competitive skills or expert Android dev skills.
I had bad experiences with startups which are usually willing take rejected students like me for the post of a droid dev... there is usually low packages , high pressure, and treatment like a slave
So i am very unsure what to do next. I have tried to learn web dev/ ai-ml-data sciences. They are not very interesting to me, but again, what is interest really :/
What should be my focus now?
A) I could be learning competitive and other interview related topics so that i could crack interviews of top companies , and later try to get a position of android developer there.
B) i could focus on become better in Android and start learning things that i don't know like rx, kotlin, etc. I could then hope to crack interview of medium sized app dev companies which would mainly focus on my android knowledge in their interviews
C) i could increase my skill set and learn web dev or ai/ml topics to increase my recruiter pool. It would be like option B, but i will have more medium sized companies willing to take me.
Currently i am in a shit storm. I am about to go into a mass recruiter company in which i have heard would be doing more or less data entry work2 -
Some of my dev role models are not actually devs. I am always impressed when people make a tool they need without much programming experience. It highlights how the actual programming work doesn't have to be a hindrance, it's just a matter of sitting down and getting it done.
One if my favorite examples is Chris Huelsbeck who made his own sound engine and editor to emulate the extra virtual sound channels he needed on the Amiga. He actually emulated an emulator that someone had made OF the Amiga on the Atari ST.
http://eab.abime.net/showthread.php... -
I’m currently in school and halfway done my bachelors in SE and I need a PT job.
I used to work as a server and security guard, but I want to do something PT that’s somewhat related to dev. My focus is game programming and most game studios generally take only full timers.
What are some industries in the dev field that can be good to work in on a part time basis? Any tools/languages I should pick up?
Or even better - something that I could do on a PT basis related to dev from home? -
does it makes sense for me to join a DSA/competitive programming course?
I am an Android Dev for last 5 years with around 2+ years of work exp. Wherever I apply, i am either accepted or rejected based on my level of knowledge as a mobile dev.
However, I think that there are certain companies in which i don't apply (FAANG, for eg) , whose initial rounds are solely based on DSA and if i have a good knowledge of DSA too, then i might be able to crack them too.
This might be FOMO calling , but i really feel myself as a bit inferior software professional in comparison to those who can create TRIE, BST , Red black tree or use popular stuff like Djikstra, knapsack, n-queens or whatnot. For me, the usual solution is to use built-in sorting functions or google. I am more valuable in areas where a nice looking ui is needed quickly
My goal is to be in tech for multiple years and be a great engineer/ tech lead .6