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 - "next framework"
-
EDIT: devRant April Fools joke (2017)
-------------------------
@trogus and I have had an absolute blast working on devRant over the last year. However, we're strong believers in only working on a project if you're passionate about it, and over the last few months, we've sadly lost some of that passion so we've to announce, with heavy hearts, that we will both be moving on. We've decided to focus 100% of our energies on our next product, one which we are confident has billion dollar potential: Semicolon JS (http://semicolonjs.com).
We identified this sizable market opportunity as we were building out the new devRant website. Every JavaScript framework we tried left us wanting more. More efficiency. More elegance. More extensibility. That's what Semicolon JS is: more. More than a framework, it's a guiding philosophy. We believe that Semicolon JS will do for front end development what Material Design has done for user interface design. We're calling it Semicolon JS because even though you can still develop JavaScript without it, like a semicolon, we think it will soon become a standard and synonymous with quality JS development.
So comes the obvious question. What will happen to devRant? We wanted to make the announcement today because we will be officially shutting down the product in 30 days. So that gives everyone a full month to take in the last memories, look at those rants they really loved, and hopefully take some time to chat with @trogus and I about Semicolon JS and what we have planned.
With so many thanks and looking towards the future,
- @dfox and @trogus160 -
LONG RANT AHEAD!
In my workplace (dev company) I am the only dev using Linux on my workstation. I joined project XX, a senior dev onboarded me. Downloaded the code, built the source, launched the app,.. BAM - an exception in catalina.out. ORM framework failed to map something.
mvn clean && mvn install
same thing happens again. I address this incident to sr dev and response is "well.... it works on my machine and has worked for all other devs. It must be your environment issue. Prolly linux is to blame?" So I spend another hour trying to dig up the bug. Narrowed it down to a single datamodel with ORM mapping annotation looking somewhat off. Fixed it.
mvn clean && mvn install
the app now works perfectly. Apparently this bug has been in the codebase for years and Windows used to mask it somehow w/o throwing an exception. God knows what undefined behaviour was happening in the background...
Months fly by and I'm invited to join another project. Sounds really cool! I get accesses, checkout the code, build it (after crossing the hell of VPNs on Linux). Run component 1/4 -- all goocy. run component 2,3/4 -- looks perfect. Run component 4/4 -- BAM: LinkageError. Turns out there is something wrong with OSGi dependencies as ClassLoader attempts to load the same class twice, from 2 different sources. Coworkers with Windows and MACs have never seen this kind of exception and lead dev replies with "I think you should use a normal environment for work rather than playing with your Linux". Wtf... It's java. Every env is "normal env" for JVM! I do some digging. One day passes by.. second one.. third.. the weekend.. The next Friday comes and I still haven't succeeded to launch component #4. Eventually I give up (since I cannot charge a client for a week I spent trying to set up my env) and walk away from that project. Ever since this LinkageError was always in my mind, for some reason I could not let it go. It was driving me CRAZY! So half a year passes by and one of the project devs gets a new MB pro. 2 days later I get a PM: "umm.. were you the one who used to get LinkageError while starting component #4 up?". You guys have NO IDEA how happy his message made me. I mean... I was frickin HIGH: all smiling, singing, even dancing behind my desk!! Apparently the guy had the same problem I did. Except he was familiar with the project quite well. It took 3 more days for him to figure out what was wrong and fix it. And it indeed was an error in the project -- not my "abnormal Linux env"! And again for some hell knows what reason Windows was masking a mistake in the codebase and not popping an error where it must have popped. Linux on the other hand found the error and crashed the app immediatelly so the product would not be shipped with God knows what bugs...
I do not mean to bring up a flame war or smth, but It's obvious I've kind of saved 2 projects from "undefined magical behaviour" by just using Linux. I guess what I really wanted to say is that no matter how good dev you are, whether you are a sr, lead or chief dev, if your coworker (let it be another sr or a jr dev) says he gets an error and YOU cannot figure out what the heck is wrong, you should not blame the dev or an environment w/o knowing it for a fact. If something is not working - figure out the WHATs and WHYs first. Analyze, compare data to other envs,... Not only you will help a new guy to join your team but also you'll learn something new. And in some cases something crucial, e.g. a serious messup in the codebase.11 -
Guy: dot net dev (C#) on windows. (desktop + server)
Team(not his team, he just happened to sit next to us): php/frontend devs and Linux (server) people.
Team: starting a new project! We'll have to see what framework to use and what server :D
Guy: i know it's none of my business...... but I'd recommend dot net and windows server!
Me: respectfully, that hardly makes sense, you know our skillset/field... i understand that it works for you but it doesn't really for us :).
Next to that we'd rather not use windows for security reasons.
It's fine if that happens once.
When it happened for the 1748472823'th time, I had a real hard time controlling myself.10 -
I am gonna rage for a bit.
Before I start, know this: I diehard love development, computer science and everythjng surrounding it.
The area comes with a very nice and interesting history and cultural impact. In particular, here as it was in the U.S of A. I love it, I love researching till my eyes beg me to stop and my brain fries. I love reading about history and the silicon knights that madd shit happen through digital wizardry.
And you can only imagine how happy I was when I got my shiny lol B.S in Comp Sci, keep it in my office and errthang.
I
Fucking
Love
My
Field
But. I have noticed something recently. In 2018(obviously before that) this new generation has a knack for making things cringey.
What do I mean by that?
Well, shit like that. Is it necessary? Or what about images(multiple) showing stuff like "double tap for your favorite language!"
Why? Why must we be this way? Why do people find a way to shit all over nice things? Is this shit necessary?
I specially hate pictures of girls showing their legs and right next to them a laptop with some basic af css file --->#codergirl ....fuck off.
Or the trillions of code pictures that are only html or some js framework flavor of the week.
Its just retarded man.39 -
I have to let it out. It's been brewing for years now.
Why does MySQL still exist?
Really, WHY?!
It was lousy as hell 8 years ago, and since then it hasn't changed one bit. Why do people use it?
First off, it doesn't conform to standards, allowing you to aggregate without explicitly grouping, in which case you get god knows what type of shit in there, and then everybody asks why the numbers are so weird.
Second... it's $(CURRENT_YEAR) for fucks sake! This is the time of large data sets and complex requirements from those data sets. Just an hour through SO will show you dozens of poor people trying to do with MySQL what MySQL just can't do because it's stupid.
Recursion? 4 lines in any other large RDBMS, and tough luck in MySQL. So what next? Are you supposed to use Lemograph alongside MySQL just because you don't know that PostgreSQL is free and super fast?
Window functions to mix rows and do neat stuff? Naaah, who the hell needs that, right? Who needs to find the products ordered by the customer with the biggest order anyway? Oh you need that actually? Well you should write 3-4 queries, nest them in an incredibly fucked up way, summon a demon and feed it the first menstrual blood of your virgin daughter.
There used to be some excuses in the past "but but but, shared hosting only has MySQL". Which was wrong by the way. This was true only for big hosting names, and for people who didn't bother searching for alternatives. And now it's even better, since VPS and PaaS solutions are now available at prices lower than shared hosting, which give you better speed, performance and stability than shared hosting ever did.
"But but but Wordpress uses MySQL" - well then kill it! There are other platforms out there, that aren't just outrageously horrible on the inside and outside. Wordpress is crap, and work on it pays crap. Learn Laravel, Symfony, Zend, or even Drupal. You'll be able to create much more value than those shitty Wordpress sites that nobody ever visits or pay money on.
"But but but my client wants some static pages presented beside their online shop" - so why use Wordpress then? Static pages are static pages. Whip up a basic MVC set-up in literally any framework out there, avoid MySQL, include a basic ACL package for that framework, create a controller where you add a CKEditor to edit page content, and stick a nice template from themeforest for that page and be done with that shit! Save the mock-up for later use if you do that stuff often. Or if you're lazy to even do that, then take up Drupal.
But sure, this is going a bit over the scope. I actually don't care where you insert content for your few pages. It can be a JSON file for all I care. But if I catch you doing an e-commerce solution, or anything else than just text storage, on MySQL, I'll literally start re-assessing your ability to think rationally.11 -
Biggest scaling challenge I've faced?
Around 2006~2007 the business was in double-digit growth thanks to the eCommerce boom and we were struggling to keep up with the demand.
Upper IT management being more hardware focused and always threw more hardware at the problem. At its worst, we had over 25 web servers (back then, those physical tall-rectangle boxes..no rack system yet) and corresponding SQL server for each (replicated from our main sql server)
Then business boomed again and projected the need for 40 servers (20 web servers, 20 sql servers) over the next 5 years. Hardware+software costs (they were going to have to tear down a wall in order to expand the server room) were going to be in the $$ millions.
Even though we were making money, the folks spending it didn't seem to care, but I knew this trajectory was not sustainable, so I started utilizing (this was 2007) WCF services and Microsoft's caching framework Velocity. Started out small, product lookup data (description, price, the simple stuff) and within a month, I was able to demonstrate the web site could scale with less than half of our current hardware infrastructure.
After many political battles (I've ranted about a few of those), the $$ won and even with the current load, we were able to scale back to 5 web servers and 2 sql servers. When the business increased in the double-digits again, and again...we were still the same hardware for almost 5 years. We only had to add another service server when the international side of the business started taking off.
Challenge wasn't the scaling issue, the challenge was dealing with individuals who resisted change.3 -
Seven months ago:
===============
Project Manager: - "Guys, we need to make this brand new ProjectX, here are the specs. What do you think?"
Bored Old Lead: - "I was going to resign this week but you've convinced me, this is a challenge, I never worked with this stack, I'm staying! I'll gladly play with this framework I never used before, it seems to work with this libA I can use here and this libB that I can use here! Such fun!"
Project Manager: - "Awesome! I'm counting on you!"
Six months ago:
====================
Cprn: - "So this part you asked me to implement is tons of work due to the way you're using libA. I really don't think we need it here. We could use a more common approach."
Bored Old Lead: - "No, I already rewrote parts of libB to work with libA, we're keeping it. Just do what's needed."
Cprn: - "Really? Oh, I see. It solves this one issue I'm having at least. Did you push the changes upstream?"
Bored Old Lead: - "No, nobody uses it like that, people don't need it."
Cprn: - "Wait... What? Then why did you even *think* about using those two libs together? It makes no sense."
Bored Old Lead: - "Come on, it's a challenge! Read it! Understand it! It'll make you a better coder!"
Four months ago:
==============
Cprn: - "That version of the framework you used is loosing support next month. We really should update."
Bored Old Lead: - "Yeah, we can't. I changed some core framework mechanics and the patches won't work with the new version. I'd have to rewrite these."
Cprn: - "Please do?"
Bored Old Lead: - "Nah, it's a waste of time! We're not updating!"
Three months ago:
===============
Bored Old Lead: - "The code you committed doesn't pass the tests."
Cprn: - "I just run it on my working copy and everything passes."
Bored Old Lead: - "Doesn't work on mine."
Cprn: - "Let me take a look... Ah! Here you go! You've misused these two options in the framework config for your dev environment."
Bored Old Lead: - "No, I had to hack them like that to work with libB."
Cprn: - "But the new framework version already brings everything we need from libB. We could just update and drop it."
Bored Old Lead: - "No! Can't update, remember?"
Last Friday:
=========
Bored Old Lead: - "You need to rewrite these tests. They work really slow. Two hours to pass all."
Cprn: - "What..? How come? I just run them on revision from this morning and all passed in a minute."
Bored Old Lead: - "Pull the changes and try again. I changed few input dataset objects and then copied results from error messages to assertions to make the tests pass and now it takes two hours. I've narrowed it to those weird tests here."
Cprn: - "Yeah, all of those use ORM. Maybe it's something with the model?"
Bored Old Lead: - "No, all is fine with the model. I was just there rewriting the way framework maps data types to accommodate for my new type that's really just an enum but I made it into a special custom object that needs special custom handling in the ORM. I haven't noticed any issues."
Cprn: - "What!? This makes *zero* sense! You're rewriting vendor code and expect everything to just work!? You're using libs that aren't designed to work together in production code because you wanted a challenge!?? And when everything blows up you're blaming my test code that you're feeding with incorrect dataset!??? See you on Monday, I'm going home! *door slam*"
Today:
=====
Project Manager: - "Cprn, Bored Old Lead left on Friday. He said he can't work with you. You're responsible for Project X now."24 -
I usually don't work for indian clients. But when I do, they make sure I don't get paid.
Some highlights from my last project,
Client: Do you know ERPnext?
Me: No, but I am good at python.
Client: My boss wants me to find a guy who can create barcode generator for erpnext.
Me: I can use pyBarcode to do it.
This is exciting I thought. I get to learn a new framework. Start working on it. Not an hour passes by,
Client: hey can you remove this menu item?
Me: Which one?
Client: Also can you add the dashboard icons to left sidebar? Like Odoo? Do you know it? It is also python based.
Me: Then why don't you just use Odoo instead?
Client: My boss wants it. He doesn't understand computers. He is pissing mr off.
Me: Then how come he suggested erpnext?
Client: His friend told him.
*experience mindfuck*
For the next 3 days he has me working on these UI tweaks, never mentions barcode again.
But I finish the barcode stuff. Tripple check everything to make sure they work. Tell him to check so I can get paid. Guy asks his boss to check.
Boss > Client: It doesn't work
Me: What doesn't work?
Boss > Client: Everything!
Client: I actually tested everything and they work. My boss doesn't know how to use it. He is very old.
Makes me make more changes and finally when I ask for the work done so far,
Client: Boss didn't come to office today. I'll get you paid. Please try to understand my situation.
Me thinking, "mofo your boss didn't hire me,l. You did". But I keep calm and tell him I won't work until I get paid 50%.
3 days passed. No reply. Set his skype status to "Away" forever.
*spidey sense tells me I'm not getting paid, again*
U am beyond pissed and burnt out. I fucking wish there was a mafia I can request to collect my fucking money from them.20 -
"Fuck JavaScript, its such a shitty language" seems to be quite a common rant today. It seems as if JS is actually getting more hate than PHP, which is certainly odd, considering the stereotype.
So, as someone who has spent a lot of time in JS and a lot of time elsewhere, here are my views. Please, discuss your opinions with me as well. I am genuinely interested in an intelligent conversation about this topic.
So here's my background: learned HTML/CSS/JS in that order when I was 12 because I liked computers. I was pretty shitty at JS until U was at least 15, but you get the point, Ive had it sploshing about in my brain for a while.
Now, JS certainly has its quirks, no doubt, but theres nothing about the language itself that I would say makes it shitty. Its a very easy leanguage to use, but isn't overdeveloped like VB.net (Or, as I like to call it, TheresAFunctionForThat)
Most of the hate is centered around JS being used for a very broad range of systems. I doubt JS would be in the rant feed so often if it were to stay in its native ecosystem of web browsers. JS can be used in server backend, web frontent, desktop and mobile applications, and even in some system services (Although this isn't very popular as of yet). People seem to be terrified that one very easy to learn language can go so far. And, oh god, its interpreted... How can a system app run off an interpreted language? That's absurd.
My opinion on JSEverything is that it's progress. Thats what we're all about, right? The technologies already in place are unthreatened by JS, it isn't a gamechanger. The only thing JS integration is doing is making tedius and simple tasks easier. Big companies with large systems aren't going to jump ship and migrate to JS. A startup, however, could save a fucking ton of development time by using a JS framework, however. I want to live in a world where startups can become the next Google, because technology will stagnate when youre trying to protect your fortune, (Look at Apple for fucks sake) but innovation is born of small people with big ideas.
I have a feeling the hate for JS is coming from fear of abandoning what you're already doing. You don't have to do that. JS is only another option (And a very good one, which is why it's becoming so popular).
As for my personal opinion from my experiences... I've left this part til the end on purpose. I love programming and learning and creating, so I've never hated a lamguage, really. It all depends on what I want to do. In the times i've played arpund with JS, I've loved it. Very very easy. The idea of having it on both ends of web development makes a lot of sense too, no conversion, just direct communication. I would imagine this really helps with speed, as well. I wouldn't use it in a complicated system, though. Small things, medium size projects: perfect. Running a bank? No.
So what do you think about this JSUniverse?13 -
me, browsing the web: oh wow what a cool css framework, bookmarked, ill totally use it for my next project
me, making a project: "free bootstrap templates"4 -
➡️You Are Not A Software Developer⬅️
When I became a developer, I thought that my job is to write software. When my customer had a problem, I was ready to write software that solves that problem. I was taught to write software.
But what customers need is not software. They need a solution to their problem. Your job is to find the most cost-effective solution, what software often is not.
According to the universal law of software development, more code leads to more bugs:
e = mc²
Or
errors = (more code)²
The number of bugs grows with the amount of code. You have to prioritize, reproduce and fix bugs.
The more code you write, the more your team and the team after it has to maintain. Even if you split the system into micro services, the complexity remains.
Writing well-tested, clean code takes a lot of time. When you’re writing code, other important work is idle. The work that prevents your company from becoming rich.
A for-profit company wants to make money and reduce expenses. Then the company hires you to solve problems that prevent it from becoming rich. Confused by your job title, you take their money and turn it into expensive software.
But business has nothing to do about software. Even software business is not about software. Business is about making money.
Your job is to understand how the company is making money, help make more money and reduce expenses. Once you know that, you will become the most valuable asset in the company.
Stop viewing yourself as a software developer. You are a money maker.
Think about how to save and make money for your customers.
Find the most annoying problem and fix it:
▶️Is adding a new feature too costly? Solve the problem manually.
▶️Is testing slow? Become a tester.
▶️Is hiring not going well? Speak at a meetup and advertise your company.
▶️Is your team not productive enough? Bring them coffee.
Your job title doesn’t matter. Ego doesn’t matter either.
Titles and roles are distracting us from what matters to our customers – money.💸
You are a money maker. Thinking as a money maker can help choose the next skill for development. For example:
Serverless: pay only for resources you consume, spend less time on capacity planning = 💰
Machine Learning: get rid of manual decision-making = 💰
TDD: shorter feedback cycle, fewer bugs = 💰
Soft Skills: inspire teammates, so they are more productive and happy = 💰
If you don’t know what to learn next — answer a simple question:
What skills can help my company make more money and reduce expenses?
Very unlikely it’s another web framework written in JavaScript.
Article by Eduards Sizovs
Sizovs.net18 -
I had a coworker that was an Air Force pilot (99% certain he was telling the truth as I was working for a government contractor and he had security clearance so I'd be a little surprised if he fooled HR and our whole team). Thing is... He genuinely believed the earth is flat. Whenever anybody would ask "haven't you seen the curvature of the earth? Like... More than once?" He'd respond with "yes I have, what's your point?". Uh.... Okay.
Didn't help that he also was convinced cpp is the only language you ever need for any project. Like, "what if instead of building a web API and two separate native mobile app frontends (Swift/Java)... We instead build our own proprietary C++ framework that somehow runs on IOS and Android and we can also use it for our Backend instead of .Net?"
I'm not saying I love Java or Swift or that at some point I haven't thought about why we can't just use cpp in both, but you're supposed to grow out of that kind of thinking. I think every noobie or college students thinks "oh there's got to be a way". But at some point in your career you realize even if you could, it wouldn't be any easier to use and the performance gain would crazy small compared to amount of effort and you'd be playing catch up with both IOS/Android forever.
But no matter how many times we'd shoot it down, he'd keep bringing it up. And he wasn't straight out of school or something. He had like 20 years of programming experience.
I don't have a lot of memorable co-workers that were positive but honestly I think that's because usually if they're good at what they do I don't have to interact with them a bunch or spend time thinking "Jesus what am I going to have to fix next from this guy". I definitely have worked with good/great programmers, they just don't stand out as much as the shitty ones.1 -
Can someone tell who the fuck lets morons with absolutely 0 knowledge of how the industry works go on and write articles concerning "what programming languages to learn" clickbait articles?
Look, I never looked into them. Not even when starting, I knew (out of spite) that the people that built Windows Vista were developers and then I went ahead to look what a software engineer was. I went down the rabbit hole from that and my next step at the time (I was on the local library) was to go ahead and look for programming books, C++ and Java caught my eye, so I got them two books and went down. Later on I found about JS and Python and similar shit like that and I just continued to learn. I seldom bothered to learn from internet articles because to my opinion if I needed to read documentation then I might as well fucking read it from the people that designed X technology.
some were good, some were shit, etc etc, but I never bothered to look for "what programming languages to learn" articles because I could give close to two shits about some other dickhead telling me what to learn, I have always been rather hesitant to take other people's opinion into consideration when it comes to my own learning.
BUT today I clicked on one of those articles out of curiosity.....
"Many DEVELOPER (notice the lack of proper grammar) choose to leave Visual Basic in favor of more modern frameworks like C#, Java or .NET"
Ok, so, for whatever the fuck reason Java is mentioned along C# and a fucking framework (.NET) rather than just C# for microsoft shit, is this moron talking about VB.NET at all? is he going about VB6? what? what is going on here?
Obj C is not relevant at all and should be immediately replaced by Swift since it is a modern, and stable language (never mind that each release has breaking changes on entire code bases, yeah, fuck it, just jump alltogether and ignore Obj C and the decades of stable code it has)
"Coffeescript has been replaced by the newer features of Java" <--- ok fam, you lost me here, give me your "ITPro" card please and then kick yourself repeatedly in the groin since I won't be bothered touching you, i might get some stOOpid on me.
Fuck, these articles are all over the place, from idiots like the one above, to the moron raving about pharo smalltalk shitting on every tech you use.
Just.....please bring back shit like byte magazine and shit.....please? or Linux Format, make Linux Format more popular across the board, where people who know their shit think twice before spewing their bullshit to the masses? Some fucking kid there might want to know where to start and these fucking idiots are out there just ruining shit for everything.25 -
John: You know, I don't appreciate it when I run the application and it crashes on me. Especially when you say it's working. If you say you've debugged it and got it working, I shouldn't be able to break it in the first 2 minutes.
--------------------------
me: You know John, with all due respect, there are two ways that this can go. Either we can actually work on this project as a team and get something done, or I can leave and have you flounder on your own trying to complete the rest of this project for the next 4 months. Now, I know that you don't have a lot of experience in this framework, so that means you owe me the respect I deserve and not complain about the way things are getting done.
--------------------------
Me: Ok, John, I'll fix it.1 -
We were in a college group. Five people. Making project in PHP. Some forced us to use cakePHP framework than left. One guy decided to not participate and decited to do it next year. One guy didn't know PHP at all. The two of us have to do all the work for five people.
On the presentation day we have ten minutes to do it. Guy without PHP knowledge forget password for our app, make three wrong guesses and locked us out of our app for five minutes.2 -
I'm coming off a lengthy staff augmentation assignment awful enough that I feel like I need to be rehabilitated to convince myself that I even want to be a software developer.
They needed someone who does .NET. It turns out what they meant was someone to copy and paste massive amounts of code that their EA calls a "framework." Just copy and paste this entire repo, make a whole ton of tweaks that for whatever reason never make their way back into the "template," and then make a few edits for some specific functionality. And then repeat. And repeat. Over a dozen times.
The code is unbelievable. Everything is stacked into giant classes that inherit from each other. There's no dependency inversion. The classes have default constructors with a comment "for unit testing" and then the "real" code uses a different one.
It's full of projects, classes, and methods with weird names that don't do anything. The class and method names sound like they mean something but don't. So after a dozen times I tried to refactor, and the EA threw a hissy fit. Deleting dead code, reducing three levels of inheritance to a simple class, and renaming stuff to indicate what it does are all violations of "standards." I had to go back to the template and start over.
This guy actually recorded a video of himself giving developers instructions on how to copy and paste his awful code.
Then he randomly invents new "standards." A class that reads messages from a queue and processes them shouldn't process them anymore. It should read them and put them in another queue, and then we add more complication by reading from that queue. The reason? We might want to use the original queue for something else one day. I'm pretty sure rewriting working code to meet requirements no one has is as close as you can get to the opposite of Agile.
I fixed some major bugs during my refactor, and missed one the second time after I started over. So stuff actually broke in production because I took points off the board and "fixed" what worked to add back in dead code, variables that aren't used, etc.
In the process, I asked the EA how he wanted me to do this stuff, because I know that he makes up "standards" on the fly and whatever I do may or may not be what he was imagining. We had a tight deadline and I didn't really have time to guess, read his mind, get it wrong, and start over. So we scheduled an hour for him to show me what he wanted.
He said it would take fifteen minutes. He used the first fifteen insisting that he would not explain what he wanted, and besides he didn't remember how all of the code he wrote worked anyway so I would just have to spend more time studying his masterpiece and stepping through it in the debugger.
Being accountable to my team, I insisted that we needed to spend the scheduled hour on him actually explaining what he wanted. He started yelling and hung up. I had to explain to management that I could figure out how to make his "framework" work, but it would take longer and there was no guarantee that when it was done it would magically converge on whatever he was imagining. We totally blew that deadline.
When the .NET work was done, I got sucked into another part of the same project where they were writing massive 500 line SQL stored procedures that no one could understand. They would write a dozen before sending any to QA, then find out that there was a scenario or two not accounted for, and rewrite them all. And repeat. And repeat. Eventually it consisted of, one again, copying and pasting existing procedures into new ones.
At one point one dev asked me to help him test his procedure. I said sure, tell me the scenarios for which I needed to test. He didn't know. My question was the equivalent of asking, "Tell me what you think your code does," and he couldn't answer it. If the guy who wrote it doesn't know what it does right after he wrote it and you certainly can't tell by reading it, and there's dozens of these procedures, all the same but slightly different, how is anyone ever going to read them in a month or a year? What happens when someone needs to change them? What happens when someone finds another defect, and there are going to be a ton of them?
It's a nightmare. Why interview me with all sorts of questions about my dev skills if the plan is to have me copy and paste stuff and carefully avoid applying anything that I know?
The people are all nice except for their evil XEB (Xenophobe Expert Beginner) EA who has no business writing a line of code, ever, and certainly shouldn't be reviewing it.
I've tried to keep my sanity by answering stackoverflow questions once in a while and sometimes turning evil things I was forced to do into constructive blog posts to which I cannot link to preserve my anonymity. I feel like I've taken a six-month detour from software development to shovel crap. Never again. Lesson learned. Next time they're not interviewing me. I'm interviewing them. I'm a professional.9 -
Fuck my manager. >_<
I'm a fresher at a medium-sized company. Our team is relatively new and we don't have a dedicated support team for the product the team developed (before I joined the company).
So when I was allocated to the team, I was put into support, citing it as a good learning experience (and it was). But it's been a few months. And the support work got boring and uninteresting, looking at logs which don't say anything, dumps which are completely normal and most of all, dealing with unresponsive OSEs, when they claim the issue is super critical and really tricky.
Anyway, there was this tool (among other things) that had to be developed as a support tool for our product and I ended up being paired with a guy who ended up being in charge of it. We started working on it slowly, designing and implementing a framework for the tool.
This goes without saying, I love development.
4 days later, my manager says "why are you developing it? Who's gonna look at support issues?"
Fucking hell. I was hired to be a developer and you got me just decide to up and shove me into support for the next 3-6 months while others are at least enhancing our shitty ass product? And I can't even quit for another year and a half because I signed a bond!
Oh, the depression.11 -
PORTFOLIO INFLATION
when every junior is writing algorithms, the next step up, the only way to keep up is writing apps. When every junior is writing apps, the next leg up is writing an entire SN.
Eventually junior full stack devs are writing microservice streaming cloud backend content delivery optimized social networks wrapped in virtualization with load balancing, proper CI, public accessible analytics apis, written in custom webaseembly compiled scripting backend utilizing both the latest graphql and every single feature of postgres, while also being a web site builder, an in browser app, mobile optimized, designed to transmogrify your asset pipelines linearflow functional-oriented modular rust cratified turbencabulator while cooking your turducken with CPU cycles, diffusing your gpt, and finetunning your llama 69 trillion parameter AI model to jerk you off all at the same time.
And then the title "wizard" becomes a reality as the void of meaning in our lives occupied by the anxiety of trying to reduce the fear of rejection in job hunting, is subsumed by the brief accidental glance into the cthulian madness-inducing yawning abyss of the future which is all the rest of our lives we have to endure existing for until at last sweet sweet death consumes us and we go to annihilation never having to configure one more framework or devops deploy of another virtual environment.
And it dawns on us that we no longer develop or write code at all. No, everything has become a "service" in this new hellscape future. We slowly come to the realization that every job is really just Costco greeter, or eventually going to be reduced to something equivalent, all human creativity, free will and emotions now taken care of by the automation while we manage the human aspects, like sardines pushing against one another not realizing their doom has been sealed along with the airless can they have been packed into, to be suffocated by circumstance and a system designed to reduce everything to a competition of metrics designed by the devil, if the metrics were misery", and "torture", while we ourselves are driven by this ratfuck wheel to turn endlessly toward social cannibalism, like rats eating their babies, but for the amusement of wallstreet corporate welfare whores who couldnt turn a dime if it wasnt already stolen.
And on our gravestones, those immortal words are carved, by the last person who gave up the ghost, the last whose soul wasnt yey shovelled onto the coal fires driving the content machine consuming the world:
Welcome to costco. I love you.12 -
not sure if counts as a compliment, but the follwing exchange with my team lead programmer felt pretty good:
"... wait, where did you find this function you're using here?"
"i didn't, it was missing so i wrote it."
"but... oh, i didn't realize you're gonna need it, if i had, i'd have given you a different task... noooo, that's internal framework functionality, i write that stuff for you guys so that you can just use it, cause it's complicated... oh, god, no, where did you put, how did you imple... (right clicks, go to definiton)... oh, it's exactly where it's supposed to be... (skims the code)... and is written exactly as if i had written it.
(looks at me and smiles, then turns to the rest of the team), guys, that component i told you to wait with making because i first need to write that complicated utility function that you'll need to use? you can start working on it now, Midnight wrote that function for me. (turns back to me) Nice, quick learner. But next time, at least let me know first, yeah?"
(that was third day in a new job, corporate-sized system. the rest of the team had been working there on that system for the past 2 years.
(probably not a good form, kinda going over team lead's head, but tbh i didn't realize i'm not supposed to touch that code because "it's complicated", while doing my task i just realized i need a function similar to a family of already implemented ones, so i just followed their convention amd added it.)
tl;dr - best programming compliment is people being surprised/confused that i did something which they thought as a normal thing that they will have to do for me, because it's in their job description to be doing it for people on my position/with my job description)9 -
brain: ABSTRACTION ABSTRACTION ABSTRACTION too much ABSTRACTION!
me: jeez calm down a lil i just deployed a boilerplate ember web app with cli tools with next to nothing amount of 'my' code.
b: YES U SUCKER THAT'S WHAT WENT WRONG U DON'T KNOW SHIT ABOUT THE LIL STUFF THAT HAPPENS BEHIND THE SCENES THE FUCK MAN U CALL YOURSELF A CS STUDENT YOU CAN'T EVEN WRITE A COMPILER YET
m: sooo remember when we were studying logic gates and binary conversions and you sigkilled all my threads cuz it was 'boring'?
b: why yes why do you ask
m: WELL that's where we'll end up again if you don't stop nagging me about going down. Trust me, I KNOW how to starve you and you'll beg me to use Python again. You start making advanced data structures in C and the next thing you know you're writing assembly code 'just for fun'.
I have a hackathon coming right up and I have to use a framework or my team loses the advantage. Are we good?
b: well if you put it that way...BUT AFTER THAT YOU'RE TAKING ME TO AN ALGORITHM SESSION
m: *eerily stares at the dusty book in the corner*
you... have a deal3 -
!Rant
Designer decide to have a meeting with stakeholders about UX/UI workflow for control panel of our new embedded system (no framework, no library, gui is bit per bit rendered on frame buffer).
A week later, still nothing on my table, not a mail, not a call. Meanwhile I wrote a framework, the control system, renderer, and messaging queues between tasks.
Wrote some widgets, a layout system and a view swtching mechanism, and a separate stack control to use a "back" button.
Now I am stuck for I do not know what should happen when clicking on various (non obvious) items on the touchscreen.
Fine, I'll ask the designer.
"Oh, I will write the workflow next week" (ETA time, 2 weeks. Seriously? You take a week to draw on Adobe Illustrator 20 screenshot with text and I have another week to write it from scratch in C?)
Ok, while you write it, just tell me what should happen when I click an active item.
"Well, we didn't talk about that. We just decided the colour of the icons on the screen..."
For fuck sake...8 -
GoodGuy BroCow
Senoir problem
2years back
Senoir dev was assigned to make a webapp for billing
Dude uses dreamviewer and writes code like a bitch
Phpmysqljqueryhtml whole thing mixed very badly and undocumented
His function name format fun_1()
a simple update cost him a day,
Told him to use brackets atleast and also a framework ,guy denies
Days go by
He learns a lot of stuffs from me ,like how to use inspect in chrome lol, how to use sqlite for small projects , and orm and frameworks.
He used to pin his mistakes on me, so that boss gets angry on me
Then i quit the job
2 years went by
Now he is unemployed, nobody wants a 24 year old plain php coder and template editing web developer
Anyway I hired him, he was my first senior, whatever he did,it didnt matter to me, bcoz i remember
the days we spent on the same hall right next to each other coding in php,
days we brainstormed to fix a div
Also the days we ate lunch and breakfast together6 -
Worst things about being a dev? Boy, this will be a long one!
- Whatever I do, be it hard work or smart work, I feel I am always underpaid.
- Most people who don't know tech feel my job shouldn't take that long. "Oh, a website that should be easy." "Oh, REST services, that's cute!"
- Most people who know a little tech will be like, "Here is the code for this on Google, then why are you charging this much"
- Companies like Microsoft and Apple who are too cool to follow standards.
- Always underpaid!
- The friggin compilers and random environment vars. Sometimes you make no change and the code works on a restart. I mean wtf!
- Having to give/meet deadlines, when we know most of the times things get out of control.
- Having to work for jerks mostly who don't know squat, and can't tell the difference between a CPU and a Wooden box.
- Sometimes I wanna take a break from my laptop(traveling and stuff) , those are the times I get the maximum work load!
- Did I mention we are always underpaid?
- Because of the kind of work I do, finding a girl has been challenging. Where the heck are they!
- We have to stay always updated. Often we deploy something using a framework and the next day we see an update.
- Speaking of updates, I hate having to support for OSes like Microsoft.
- Speaking of OSes, I hate Apple!
- Speaking of Apple, I feel we are underpaid, de javu?
...
How much would you hate me if I wrote "just kidding" ?3 -
Not actually a rant, but need some place to vent it out.
The company where I work develops embedded devices enabling the automobiles to connect to the internet and provide various end user infotainment services. My job mostly relates to how and when we update the devices.
There are about 100 different
variants of the same device, each one different from the other in a way that the process required to update for each of these device variants is significantly Different. Doing this manually would be and actually was a nightmare for almost everyone, so I set out on writing a tool that addresses this issue.
I designed my solution mostly in Python, allowing me for quick prototyping. First of all, I'd never written a single line of python code in my life. So I learn python, in matter of 2 nights. I took days off from work so I could work on this problem I had in my head. And in about 4 days, I was up with a solution that worked, reliably. I prepared a complete framework, completely extendable, in order to have room for 101th variant that might come in at any time. And then to make it easier and a no Brainer for everyone, the software is able to automatically download nightly builds and update the test devices with nothing more than a double click.
But apparently this wasn't enough. Today I found out that someone worked on a different solution in the background just a week ago, while reusing most part of my code. And now they start advertising their solution over mine, telling everyone how crappy my code is. Seriously, for fucks sake, my code has been running without issues since more than a year now. To make it worse, my manager seems to take sides with the other guy. I mean I don't even have someone to explain the situation to.
I really feel betrayed and backstabbed today. I worked my days, my nights, my vacations on this code. I put blood, sweat and tears into this. I push my self over my limits, and when that was not enough, I pushed my self even harder. But it all seems in vain today. All the hours that I spent, just to make it easier for everyone... All a complete waste. When you write code with such passion, your code is like your family... You want to protect it... But with all this office politics and shit, I seem to be losing my grip.
I've been contemplating the entire night, where I might have gone wrong, what could I've done to deserve this...but to no avail. I'm having troubles sleeping, and I'm not sure what I should do next.
Despair, sheer bloody Despair!8 -
Yknow, I want to make an android app that I have in my mind for about half a year now and I already tried twice, both with Kotlin and with Java but everytime I try it's just pain and suffering and frustration...
No it's not because of the language, I like Java and I like Kotlin too and I'd say I'm at least decent at Kotlin and really good in Java...
No no.. the issue is the fucking Android SDK and the mix-and-match documentation available online!!!
Every fucking time I want to implement some sort of UI element, user action or a background service and I start googling how to do it It comes with with at least 3 different stack overflow solutions, all of them saying "that way of doing it is deprecated, instead you should X" and looking up the OFFICIAL FUCKING DOCS it will just make me roll up in the corner and cry because of how fucking inconsistent it is and the retarded domain language it uses... fucking transactions for fucking fragments inside fucking activities... because I guess the word "screen"/"view"/"template" or something similar natural just was too mainstream for the all knowing alphabet soup that google is...
And then you start looking up what the fucking difference even is and how to code it up only to find out there's at least 12 other opinions on how fragments should be used and what should be an activity and what should be a damn fragment...
But that's not all, that's just the base... I get a headache even thinking about how the fucking inflating of templates and the entire R. notation works. You want to open a fucking tiny corner menu with the settings options? WELL THEN YOU FUCKING BETTER REMEMBER TO IMPLEMENT IT THROUGH SOME SORT OF EVENT AND INFLATE THE MENU YOURSELF EVEN THOUGH ITS THE SAME FUCKING THING WITH STATIC STRINGS...
AND WHY THE FUCK DO I NEED LIKE 4 NEW FILES TO IMPLEMENT A FUCKING LISTVIEW...
also talking about ListViews... what was wrong with "ListView"... Why do we need a "RecyclerView"... oh right... because the fucks fucked the fuck up and all the legacy components were designed by a monkey and are next to useless! SO WE NEEDED A NEW NAME FOR THE FIXED VERSION, CANT NAME IT LISTVIEW AGAIN... FUCK YOU...
honestly... if I got a dolar for every "what the fuck android" I said during trying to understand that mess I'd be richer by a few hundred...
oh oh oh, but you know what? You don't like the android SDK? that's fine, you can use fucking React or Flutter or something... yeah.. because instead of torturing myself with the android SDK I want to torture myself with an abstraction of the same SDK and JavaScript as the fucking cherry on top... HAVE YOU FUCKING SEEN THE CODE FLUTTER SHOWS ON THEIR WEBSITE AS THE "Introduction" ?!!!
Look at this piece of shit:
[code in attached image, we could really use a proper Markdown support at least for rants]
THAT'S NOT EVEN THE ENTIRE THING, THAT'S JUST THE *REALLY* UGLY PART...
The fucking nesting... What is it with JS and all the fucking nesting everytime?! It looks like shit.... It reads like shit as well...
WHY, in the name OF FUCK, IS THERE MORE THAN 5 ANDROID FRAMEWORKS and ALL of them... used this FUCKING NOVEL idea of programming using A FUCKING BRACKET WALL
It always looks like:
(code(code[code{code(code{code()})}]));
If I wanted to make a fucking app or a website using fucking Haskell I'd do that.... at this point reading assembly code feels like heaven compared to this retardation... Why is this so popular?! WHAT DO YOU PEOPLE SEE IN IT?! Clearly it's not the aesthetics... it looks like a fucking frog vomit running down an emus leg, fuck that.... I don't even hate classic JavaScript, it's a good enough language and it does what I tell it to... but these ugly fucking frameworks like react, angular and whatever else uses this fucking format can go fuck right off. This is not the way JS is gonna get a better name for itself...
So:
Fuck Google
Fuck the marionette that designed the Android SDK
Fuck the Hellspawn the came up with the "functional-like" way of using JavaScript
Fuck everyone that thinks "JavaScript everywhere" is a good thing
And deeply future-fuck everyone that makes a new framework following any of these standards, stucks a .js at the end of the name and releases his hairball.js of an invention into the fucking world....
It's a mess... fuck everything android related...14 -
My first rant/story
> 3 years ago company x decides to pay for my software dev degree
> fast forward to today.. x has no idea what I've learned as they never asked..(basically java,php,sql,android)
> x gives me a contract 1 week before my final exams and expects me to work everyday except exam days..
>next day, a dev contacts me - 'oh please brush up on your Vue, Node, angular as well as laravel php framework'
>I've never touched any of those xD fml.. what to do!?8 -
"four million dollars"
TL;DR. Seriously, It's way too long.
That's all the management really cares about, apparently.
It all started when there were heated, war faced discussions with a major client this weekend (coonts, I tell ye) and it was decided that a stupid, out of context customisation POC had that was hacked together by the "customisation and delivery " (they know to do neither) team needed to be merged with the product (a hot, lumpy cluster fuck, made in a technology so old that even the great creators (namely Goo-fucking-gle) decided that it was their worst mistake ever and stopped supporting it (or even considering its existence at this point)).
Today morning, I my manager calls me and announces that I'm the lucky fuck who gets to do this shit.
Now being the defacto got admin to our team (after the last lead left, I was the only one with adequate experience), I suggested to my manager "boss, here's a light bulb. Why don't we just create a new branch for the fuckers and ask them to merge their shite with our shite and then all we'll have to do it build the mixed up shite to create an even smellier pile of shite and feed it to the customer".
"I agree with you mahaDev (when haven't you said that, coont), but the thing is <insert random manger talk here> so we're the ones who'll have to do it (again, when haven't you said that, coont)"
I said fine. Send me the details. He forwarded me a mail, which contained context not amounting to half a syllable of the word "context". I pinged the guy who developed the hack. He gave me nothing but a link to his code repo. I said give me details. He simply said "I've sent the repo details, what else do you require?"
1st motherfucker.
Dafuq? Dude, gimme some spice. Dafuq you done? Dafuq libraries you used? Dafuq APIs you used? Where Dafuq did you get this old ass checkout on which you've made these changes? AND DAFUQ IS THIS TOOL SUPPOSED TO DO AND HOW DOES IT AFFECT MY PRODUCT?
Anyway, since I didn't get a lot of info, I set about trying to just merge the code blindly and fix all conflicts, assuming that no new libraries/APIs have been used and the code is compatible with our master code base.
Enter delivery head. 2nd motherfucker.
This coont neither has technical knowledge nor the common sense to ask someone who knows his shit to help out with the technical stuff.
I find out that this was the half assed moron who agreed to a 3 day timeline (and our build takes around 13 hours to complete, end to end). Because fuck testing. They validated the their tool, we've tested our product. There's no way it can fail when we make a hybrid cocktail that will make the elephants foot look like a frikkin mojito!
Anywho, he comes by every half-mother fucking-hour and asks whether the build has been triggered.
Bitch. I have no clue what is going on and your people apparently don't have the time to give a fuck. How in the world do you expect me to finish this in 5 minutes?
Anyway, after I compile for the first time after merging, I see enough compilations to last a frikkin life time. I kid you not, I scrolled for a complete minute before reaching the last one.
Again, my assumption was that there are no library or dependency changes, neither did I know the fact that the dude implemented using completely different libraries altogether in some places.
Now I know it's my fault for not checking myself, but I was already having a bad day.
I then proceeded to have a little tantrum. In the middle of the floor, because I DIDN'T HAVE A CLUE WHAT CHANGES WERE MADE AND NOBODY CARED ENOUGH TO GIVE A FUCKING FUCK ABOUT THE DAMN FUCK.
Lo and behold, everyone's at my service now. I get all things clarified, takes around an hour and a half of my time (could have been done in 20 minutes had someone given me the complete info) to find out all I need to know and proceed to remove all compilation problems.
Hurrah. In my frustration, I forgot to push some changes, and because of some weird shit in our build framework, the build failed in Jenkins. Multiple times. Even though the exact same code was working on my local setup (cliche, I know).
In any case, it was sometime during sorting out this mess did I come to know that the reason why the 2nd motherfucker accepted the 3 day deadline was because the total bill being slapped to the customer is four fucking million USD.
Greed. Wow. The fucker just sacrificed everyone's day and night (his team and the next) for 4mil. And my manager and director agreed. Four fucking million dollars. I don't get to see a penny of it, I work for peanut shells, for 15 hours, you'll get bonuses and commissions, the fucking junior Dev earns more than me, but my manager says I'm the MVP of the team, all I get is a thanks and a bad rating for this hike cycle.
4mil usd, I learnt today, is enough to make you lick the smelly, hairy balls of a Neanderthal even though the money isn't truly yours.4 -
Best code performance incr. I made?
Many, many years ago our scaling strategy was to throw hardware at performance problems. Hardware consisted of dedicated web server and backing SQL server box, so each site instance had two servers (and data replication processes in place)
Two servers turned into 4, 4 to 8, 8 to around 16 (don't remember exactly what we ended up with). With Window's server and SQL Server licenses getting into the hundreds of thousands of dollars, the 'powers-that-be' were becoming very concerned with our IT budget. With our IT-VP and other web mgrs being hardware-centric, they simply shrugged and told the company that's just the way it is.
Taking it upon myself, started looking into utilizing web services, caching data (Microsoft's Velocity at the time), and a service that returned product data, the bottleneck for most of the performance issues. Description, price, simple stuff. Testing the scaling with our dev environment, single web server and single backing sql server, the service was able to handle 10x the traffic with much better performance.
Since the majority of the IT mgmt were hardware centric, they blew off the results saying my tests were contrived and my solution wouldn't work in 'the real world'. Not 100% wrong, I had no idea what would happen when real traffic would hit the site.
With our other hardware guys concerned the web hardware budget was tearing into everything else, they helped convince the 'powers-that-be' to give my idea a shot.
Fast forward a couple of months (lots of web code changes), early one morning we started slowly turning on the new framework (3 load balanced web service servers, 3 web servers, one sql server). 5 minutes...no issues, 10 minutes...no issues,an hour...everything is looking great. Then (A is a network admin)...
A: "Umm...guys...hardly any of the other web servers are being hit. The new servers are handling almost 100% of the traffic."
VP: "That can't be right. Something must be wrong with the load balancers. Rollback!"
A:"No, everything is fine. Load balancer is working and the performance spikes are coming from the old servers, not the new ones. Wow!, this is awesome!"
<Web manager 'Stacey'>
Stacey: "We probably still need to rollback. We'll need to do a full analysis to why the performance improved and apply it the current hardware setup."
A: "Page load times are now under 100 milliseconds from almost 3 seconds. Lets not rollback and see what happens."
Stacey:"I don't know, customers aren't used to such fast load times. They'll think something is wrong and go to a competitor. Rollback."
VP: "Agreed. We don't why this so fast. We'll need to replicate what is going on to the current architecture. Good try guys."
<later that day>
VP: "We've received hundreds of emails complementing us on the web site performance this morning and upset that the site suddenly slowed down again. CEO got wind of these emails and instructed us to move forward with the new framework."
After full implementation, we were able to scale back to only a few web servers and a single sql server, saving an initial $300,000 and a potential future savings of over $500,000. Budget analysis considering other factors, over the next 7 years, this would save the company over a million dollars.
At the semi-annual company wide meeting, our VP made a speech.
VP: "I'd like to thank everyone for this hard fought journey to get our web site up to industry standards for the benefit of our customers and stakeholders. Most of all, I'd like to thank Stacey for all her effort in designing and implementation of the scaling solution. Great job Stacy!"
<hands her a blank white envelope, hmmm...wonder what was in it?>
A few devs who sat in front of me turn around, network guys to the right, all look at me with puzzled looks with one mouth-ing "WTF?"9 -
Why is it that pretty much zero package & framework maintainers understand semantic versioning?
1. If you do a complete rewrite of your package, but the resulting API is identical, you don't need to bump to the next major version. As a user, I'm thankful for your increased performance or cleaner internal code, but it doesn't really affect my update process.
2. If your package required some-framework 6.0.0, and now ALSO supports some-framework 7.0.0 but is still compatible with 6.0.0, you don't need to bump to the next major version. As a user, I can now upgrade the framework, and know that the package will keep working, but otherwise it doesn't really affect me.
3. Following your versioning along with the framework/language version is super annoying, especially if your library really doesn't need to differentiate between framework versions because it's not actually utilizing new framework functionality.
4. On the other hand, if you stop supporting a certain language, framework or shared library version, or change the public methods, exceptions, fields, etc, you MUST bump to a new major version.
Yet everyone gets this wrong.
For example, many of Laravel's underlying subpackages (for collections, filesystem, database, config, http, mail, etc) do not change their code in a breaking way, or do not even change at all between major framework versions.
Yet they follow along with the major framework version.
Now if someone makes a library "laravel-elasticsearch" which uses the support libraries and collections from laravel, they need to update their package to move along with the versions as well, and often they choose to number their library along with the framework in turn.
This means that to update the framework, you also need to update over 9000 dependencies.
FOR NO FUCKING REASON. THE ONLY CHANGE IN THOSE FUCKING DEPENDENCIES IS TO UPDATE COMPOSER.JSON TO BE COMPATIBLE WITH THE FUCKING FRAMEWORK.
Meanwhile, Laravel itself breaks repeatedly on minor/patch version updates, because breaking changes slip through their review process.
Ugh.3 -
X: Hi, regarding that ticket that you made...
You said "Implement logging to find out the culprit in site generation"...
What do you mean exactly?
Me: "Read the meeting notes, we had a full discussion on this 2 weeks ago".
X: "We don't understand it..."
Me: "As I said before, I have no experience in this tech stack... I'd expect bla to have a logging framework and I'd - for easier recognition - implement additional logging levels based on criteria <me just reading the meeting notes>"
X: But how do we do it?
...
I wish I had invented this discussion.
Because it hurts.
For the jolly of it, I had similar discussions today.
Three times to be exactly.
As I asked some dev what I should do next, put a foley catheter up his urethra or change the bed pan he wasn't amused.
Guess I'll get monday a call of HR.
So Monday I have less work to do, which is awesome.5 -
I started at a company to develop an "uber" clone. Hired by the company's cto. I was happy initially as i had been unemployed for a while but that's because i didn't see the shitstorm coming. The task was build this using php, well 2 weeks later and db locking issues because mysql only allows 100 connections and the website takes over 200mb per request, i tried using the meteor framework, a lil better but the orphaned process would require me to reboot every 2 days. So enter erlang, built in 3 weeks works amazing problems none here... Well in comes the cto (which came in once a week). Apparently he had been reviewing my code and didn't understand it. He couldn't understand no for loops etc and demanded that it be made understandable to a normal dev. Did normal devs write uber no. Anyhow i spent the next 6 Weeks refactoring trying to make elixir looks like imperative programming, he finally gave up, so now I'm deep committed writing an API, finish in a week cto comes in and "why aren't you using patch" i don't need it, well another day implanting a patch api that will never be used. Ok done. Now we have a meeting with the investors who i worked in the same building with and they want a frontend built. I explained i was a backend dev and they needed a uiux expert. Next week cto comes back with this jquery fire pit and stolen bootstrap theme and take me with implementing it. This time we scrap the api change some of the backend logic and implement rest from the 90s one static page per request. After 3 months working with jquery I'm let go because of finical issues. I told them i was a backend dev but they didn't listen if the cto would've gotten a frontend expert things would be different but what to expect from a cto who's coding legacy is creating WordPress plugins.
Hopefully things will be better soon I'm tired of living on the streets.5 -
how to learn web development in 2018:
- watch youtube video of that new shiny promising framework
- spend hours trying to set up development environment
- spend another hours waiting for the dependencies to install
- spend the next few hours wondering and googling why it wont work even at fresh install
- spend another few hours redoing everything just to make sure you haven't missed a step
- realize that the youtube video you watched is uploaded last week, and now the framework developers mysteriously decided to change literally everything
- spend hours looking for another youtube video until you realize that now you are watching completely unrelated youtube video
- spend next hours wondering how your life become this pathetic while overthinking all of your past mistakes, and now you are just this lonely pathetic person with no clear future and that you will spend the rest of your life working at a fastfood chain below the minimum wage with no social life living on your parent's basement.9 -
Is it just me or what. I had begun learning web development (but prefer C, shell scripting, Linux... ).
One thing that amazes me - besides having to learn 1356367626785576 technologies to get something done and the fact we get a fresh new amazing framework every 0.00000000000234 seconds - is CSS.
Amazing, I made a navigation bar where I wanted the items to be displayed in the horizontal position, so I
.navbar li, a {display:inline-block}
Works fine.
Next day I'm doing the same from scratch, doesn't fucking work. I look the previous design, HTML structure looks identical, I only use a different font face and colors.
After a while I randomly decided to put a <div> around the a element in order to do something else, update the page and... Voilá, text is in line.
Like... Wtf.
I'm like fuck it. No way I want to work with this shit, let's go back to shell.6 -
Really fed up with my colleague and possibly my job. Am starting to doubt am cut out to be a developer
Am a junior java dev , been working working for this company for about 2 years now. Although they hired me to be a java dev, they pretty much exclusively had me working on JavaScript crap because none of the other more senior devs wanted to do even so much as poke JS with a long stick....
Oh and the salary was crap but i figured since i had barely 3 years of exp i thought i would stick with it for a while
But a few months ago after seeing other opportunities I got fed up and threatened to quit , already started interviewing etc
Got an offer, not exactly what i wanted but better than where i was. Went to quit but they freaked out and started throwing money at me. They matched and exceed the other salary and promised to addressed the issues that made me want to leave. Ie get me to work more on the java side of the project and have me work with someone more senior who could sort of mentor me, i had been working semi solo on the js shit till then...
The problem is that my supposed mentor is selfish prick... he is the sort of guy who comes in real early, basically he goes to early morning prayer then come in at some ungodly hour and fuckoff home around 3pm
He does all his work early morning then spends the rest of the day with his headphones on stealthily watching youtube, amazon, watching cricket, reading about Palestine , how oppressed muslims are or building a website for some mosque.
I asked him to let me sit with him so that I could just learn how this or that part of the sys worked , he agreed then the very next day comes in and does all the work before i get in at 9 , i asked him how he did it and he tells me oh just read the code.
Its not as simple as that, out codebase is an old pile of non standard legacy dog shit. Nothing works as it should, i tried to go through documentation online for the various stuff we use , but invariably get stuck when i try the usual approach because it turns out the original devs had essentially done a lot of custom hacks and cowboy coding to get stuff working, they screwed around with some of the framework jars & edited libraries to get stuff to work, resulting in some really weird OSGI errors.
My point is that i cant really just "read the code" or google ...
I gotta know a bit more what was actually modified and a lot of this knowledge isn't fucking documented, theres a lot of " ohhh that weird bug yeah yeah that happens cuz x did this hack some years ago to fix this issue and we kinda built on it, yeah we weren't supposed to do that but heyyy what u gonna do, just do this or that instead"
I was asked to set up a web service to export something, since thats his area of expertise and he is suppose to be teaching me the ropes, i asked him to explain where i should start and what would the general workflow be, his response is to tell me to just copy the IMPORT service and rename it to export then "just do it um change it or something" very helpful indeed (building enterprise application here nothing complex at all!!)
He sits right next to me so i can see how much works he actually does, i know when he just idly sitting there so thats when i ask him questions, he always has his earphones on so each time i gotta find a way to get his attention with a poke or a wave, he will give a heavy sigh and a weary look as he removes his headphones, listen to my question then give me the shortest answer possible before IMMEDIATELY turning away and putting his headphones on as fast as possible regardless of whether I actually understood or even heard what he said. If i ask another question ( am talking like an immediate follow up question for a clarification or something) he will
Do the whole sigh + tired look routing to make me know yeah you are disturbing me. ( god was so happy the day he accidentally sat on and broke them)
Yesterday i caught a glance at his screen as i was sitting down and i think he and another dev were talking about me
That am slow with my work and take forever to get into gear.
Starting to have doubts about my own ability n wether am really cut out to be a developer. I know i can work hard but its impossible to do so when you have no clue where to start and unable to look it up since all the custom hacks doesn't really allow any frame of reference.
Feels like am being handicapped and mocked, yesterday i just picked up my gear n left the office.
I never talk ill about my colleagues, whenever i have a 121 with my mgr i always all is fine, x n y are really helpful etc
I tried to indirectly tell my other colleague about this guy, he told me that guy had kinda mentally checked out of this job and was just going through on auto pilot and just laughed it off (they have been working together for almost a decade and a buddies) my other colleague is pretty nice but he usually swamped with work so i feel bad to trouble him.
Am really Fed up with it all7 -
[wk249]
My specialty, I don't think I actually have specialised in anything, maybe that's why I never run out of work, shove a problem on my desk and it gets done, don't have experience? Welp, you do now!
Maybe that's the point, you see a lot of people fall of the wagon or get stuck without work, and here I am just plowing through the next problem at hand.
My career was founded on trying something new, seeing something and going, it's needs X, or Y and building my own with it - no degree got me into software, and no degree is going to replace the years of experience gained by just trying new things.
It also allows you to be well versed in a lot of areas and not feel the paradigm shift when changing stack, language, framework, or whatever, it's just another tool in the shed that has its purpose.1 -
Alright lads here is the thing, have not been posting anything other than replies to things cuz I have been busy being miserable at school and dealing with work stuff.
Our manager left us back in February. Because she was leaving I decided that I wanted to try a different path and went on to become a programmer analyst for my institution, if anything I knew that it was going to be pretty boring work, but it came with nice monetary compensation and a foot in the door for other data science related jobs in the future. Thing is, the department head asked me to stay in the web technologies department because we had a lack of people there and hiring is hard as shit, we do not do remote jobs since our work usually requires a level of discretion and security. Thus I have been working in the web tech department since she left albeit with a different title since I aced the interview for the analyst position and the team there were more than happy to have me. I have done very few things for them, some reports here and there and mostly working directly with the DBA in some projects. One migration project would have costed my institution a total of 58k and we managed to save the cost by building the migration software ourselves.....honestly it was a fucking cake walk, if you had any doubts about the shaddyness of enterprise level applications regarding selling overpriced shit with different levels of complexity, keep them, enterprise is shaddy af indeed. But I digress.
I wrote the specification for the manager position along the previous manager, we had decided that the next candidate needed to be strong with development knowledge as well as other things as to properly understand and manage a software team, we made the academic requirement(fuck you, yes we did ask for academic requirements) to be either in the Computer Science/software engineering area or at least on the Business Administration side. We were willing to consider BA holders in exchange for having knowledge of the development process of different products and a complete understanding of what developers go through. NOT ONE SINGLE motherfucker was able to satisfy this, some of them were idiots that I knew from before that had ABSOLUTELY no business even considering applying to the position, the courage it took for some of these assholes to apply would have hurt their mothers, their God if they had one, and their country, they were just that fucking bad in their jobs as well as being overall shit people.
Then we had 1 candidate actually fall through the cracks enough to get an interview. My dude here was lying out of his ass through the interview process. According to him he had "lots of Laravel experience and experience managing Laravel projects" and mentioned repeatedly how it would be a technology that we should consider for our products. I was to interview him alongside the vice president of our institution due to the head of my department and the rest of the managers for I.T being on vacation leave all at the same bloody time.
Backstory before the interview:
Whilst I was going over the interview questions with the vice president literally offered me the job instead. I replied with honesty, reflecting how I did not originally wanted him but feeling that our institution was ready to settle on any candidate due to the lack of potentials. He was happy to do it since apparently both him and the HOD were expecting me to step up sooner or later. I was floored.
Regardless, out of kindness he wanted to go through the interview.
So, going back to the interview. As soon as the person in question referenced the framework I started to ask him about it, just simple questions, the first was "what are your thoughts on the Eloquent ORM? I am not too fond of it and want to know what you as a full time laravel dev think of it"
his reply: "I am sorry I am not too familiar with it, I don't know what that is" <--- I appreciated his honesty in this but thought it funny that someone would say that he was a Laravel developer whilst not knowing what an ORM was since you can't really get away from using it on the initial stages of learning about Laravel, maybe if one wanted to go through the hurdle of switching to something like doctrine...but even then, it was....odd.
So I met with the hod when he came back, he was stoked at the prospect of having me become the manager and I happily accepted the position. It will be hell, but I don't even need to hit the ground running since I have been the face of the department since ages. My team were ecstatic about it since we are all close friends and they have been following my directions without complaints(but the ocational eat a dick puto) for some time, we work well together and we are happy to finally have someone to stop the constant barrage that comes from people taking advantage of a missing manager.
Its gonna get good, its gonna get fun, and i am getting to see how shit goes.7 -
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 -
Angular is still a pile of steaming donkey shit in 2023 and whoever thinks the opposite is either a damn js hipster (you know, those types that put js in everything they do and that run like a fly on a lot of turds form one js framework to the next saying "hey you tried this cool framework, this will solve everything" everytime), or you don't understand anything about software developement.
I am a 14 year developer so don't even try to tell me you don't understand this so you complain.
I build every fucking thing imaginable. from firmware interfaces for high level languaces from C++, to RFID low level reading code, to full blown business level web apps (yes, unluckily even with js, and yes, even with Angular up to Angular15, Vue, React etc etc), barcode scanning and windows ce embedded systems, every flavour of sql and documental db, vectorial db code, tech assistance and help desk on every OS, every kind of .NET/C# flavour (Xamarin, CE, WPF, Net framework, net core, .NET 5-8 etc etc) and many more
Everytime, since I've put my hands on angularJs, up from angular 2, angular 8, and now angular 15 (the only 3 version I've touched) I'm always baffled on how bad and stupid that dumpster fire shit excuse of a framework is.
They added observables everywhere to look cool and it's not necessary.
They care about making it look "hey we use observables, we are coo, up to date and reactive!!11!!1!" and they can't even fix their shit with the change detection mechanism, a notorious shitty patchwork of bugs since earlier angular version.
They literally built a whole ecosystem of shitty hacks around it to make it work and it's 100x times complex than anything else comparable around. except maybe for vanilla js (fucking js).
I don't event want todig in in the shit pool that is their whole ecosystem of tooling (webpack, npm, ng-something, angular.json, package.json), they are just too ridiculous to even be mentioned.
Countless time I dwelled the humongous mazes of those unstable, unrealiable shitty files/tools that give more troubles than those that solve.
I am here again, building the nth business critical web portal in angular 16 (latest sack of purtrid shit they put out) and like Pink Floyd says "What we found, same old fears".
Nothing changed, it's the same unintelligible product of the mind of a total dumbass.
Fuck off js, I will not find peace until Brendan Eich dies of some agonizing illness or by my hands
I don't write many rants but this, I've been keeping it inside my chest for too long.
I fucking hate js and I want to open the head of js creator like the doom marine on berserk19 -
The client in my previous rant asked me to overhaul their whole internet radio system in three days.
So I went on and install RadioDJ, which needs MySQL, which also needs .NET framework. And an encoder is needed to convert the RadioDJ's output and port it to the streaming host, ShoutCast.
Oh, and every software install needs the network admin's permission.....which won't be here until end of next week.
And here I am, in their broadcasting room on a Sunday, trying to download everything that I can so the admin can install it.
On the bright side, that stupid icon is finally vertically centered.2 -
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! -
Unpopular opinion.
devRant needs a poll feature :D
im starting a new project, and currently deciding on the css framework to pick. kinda sick of injecting bootstrap into everything and reworking it, time for a new toy.
so... Whats your preferred CSS Framework?
poll: https://linkto.run/p/WGJRHYK7
for the privacy conscious among us, feel free to comment below.9 -
This might not resonate with many ranters here... but FUCK Taylor Otwell & Graham Campbell.
Like, not on a personal level. Maybe they're great to drink a beer with. But as framework devs... fuck everything about them.
Laravel seems so nice, it takes away many annoyances of developing in PHP. Collections are the array object you've always needed. The route bindings, middlewares, request validation objects, it's all sweet.
But eventually your company serves a few million customers, you run into specific performance problems or missing features on a deeper level. You open the issue tracker... and see a few hundred issues about the problems you are encountering, they already exist.
Some just have a short paragraph with a request for a feature, some complete PRs with tests in the style of the framework. All of them closed.
Reasons?
"We don't think anyone will ever need this"
"This seems complicated, you can just do <super non-DRY hacky code>"
FUCK YOU WITH YOUR TODO APP SNIPPETS AND USER-POST-ARTICLE EXAMPLES. I'M NOT BUILDING THE NEXT WORDPRESS. I'M DEALING WITH THE REALITY OF GRAPH DATABASE CLUSTERS, COMPLEX AUDITING LOGS AND A GAZILLION QUERIES PER SECOND.
Sigh... the problem with all these "simple" and "elegant" languages & frameworks is that they don't fucking scale.
Not because the language, server or framework intrinsically can't do it, but because the maintainers are stuck thinking in terms of their retarded non-realistic example apps.
I think I'll go back to my cave and write some Haskell or Rust to calm down.2 -
Today I had a problem with a JS framework. The only person who was available who could help me was the one I avoid, because he always knows everything better.
Well, after I asked if he had time for me, he sits next to me and I started to explain.
After looking around, he started blaming my backend code.
(I belong to the kind of dev that tries to write small and simple code. But I also often use the more complex features of the languages.) He suddenly started accusing everyday things in the backend like inheriting a class or using objects and basic data types together as parameters of a method (WTF???) Hell, all I could say at that moment was that I had a problem with this JS framework and not with the backend that worked well. He probably tried for over an hour to find the bug in the backend and just wouldn't listen, after that he gave up. I wonder what this bitch has learned over the years. Can it really be that he forgot the basics of a programming language? Or has the fool never worked with an inheritance before? I think he's an incapable piece of shit, he hasn't even patched my reported vulnerability in his project in the last half year, which allows to inject own code onto the server.
Because of such fucking morons I get a headache when I think about it. How can it be that he's got a higher degree and earns about 50% more. I should leave this company!3 -
A (work-)project i spent a year on will finally be released soon. That's the perfect opportunity to vent out all the rage i built up during dealing with what is the javascript version of a zodiac letter.
Everything went wrong with the beginning. 3 people were assigned to rewrite an old flash-application. Me, A and B. B suggested a javascript framework, even though me and A never worked with more than jquery. In the end we chose react/redux with rest on the server, a classic.
After some time i got the hang of time, around that time B left and a new guy, C, was hired soon after that. He didn't know about react/redux either. The perfect start off to a burning pile of smelly code.
Today this burning pile turned into a wasteland of code quality, a house of cards with a storm approaching, a rocket with leaks ready to launch, you get the idea.
We got 2 dozen files with 200-500 loc, each in the same directory and each with the same 2 word prefix which makes finding the right one a nightmare on its on. We have an i18n-library used only for ~10 textfields, copy-pasted code you never know if it's used or not, fetch-calls with no error-handling, and many other code smells that turn this fire into a garbage fire. An eternal fire. 3 months ago i reduced the linter-warnings on this project to 1, now i can't keep count anymore.
We use the reactabular-module which gives us headaches because IT DOESN'T DO WHAT IT'S SUPPOSED TO DO AND WE CANT USE IT WELL EITHER. All because the client cant be bothered to have the table header scroll along with the body. We have methods which do two things because passing another callback somehow crashed in the browser. And the only thing about indentation is that it exists. Copy pasting from websites, other files and indentation wars give the files the unique look that make you wonder if some of the devs hides his whitespace code in the files.
All of this is the result of missing time, results over quality and the worst approach of all, used by A: if A wants an ui-component similar to an existing one, he copies the original and edits he copy until it does what he wants. A knows about classes, modules, components, etc. Still, he can't bring himself to spend his time on creating superclasses... his approach gives results much faster
Things got worse when A tried redux, luckily A prefers the components local state. WHICH IS ANOTHER PROBLEM. He doesn't understand redux and loads all of the data directly from the server and puts it into the local state. The point of redux is that you don't have to do this. But there are only 1 or 2 examples of how this practice hurt us yet, so i'm gonna have to let this slide. IF HE AT LEAST WOULD UPDATE THE DATA PROPERLY. Changes are just sent to the server and then all of the data is re-fetched. I programmed the rest-endpoints to return the updated objects for a very reason. But no, fuck me.
I've heard A decided (A is the teamleader) to use less redux on the next project and use a dedicated rest-endpoints for every little comoutation you COULD DO WITH REDUX INSTEAD. My will is broken and just don't want to work with this anymore.
There are still various subpages that cant f5 because the components cant handle an empty redux state in the beginning, but to be honest i don't care anymore. Lets hope the client will never find out, along with the "on error nothing happens"-bugs. The product should've been shipped last week, but thanks to mandatory bugfixes the release was postponed to next week. Then the next project starts...
Please give me some tips to keep up code quality over time, i cant take this once more.
I'm also aware that i could've done more, talking A and C about code style, prettifying the code, etc. Etc. But i was busy putting out my out fires, i couldn't kill much of the other fires which in the end became a burning building (a perfect metaphor for this software)4 -
Have u guys noticed internet dev advice is fucking awful now.
“Don’t worry about web performance”
“You don’t need an ID on an input tag”
“Don’t use just react anymore, use a combined framework like next”17 -
In cour company we need an online dashboard that monitors logfiles from various interface processes.
My collage and me, the newest company members (for almost 2 years) get the task to build this and get it presented as some intern project where we can try out some more recent technologies/frameworks.
Now in the first meeting our senior team leader told us we shoeldn't use the noew hot buzzword js frameworks.
Reason? They are not proven and wil probably lose popularity next year and we don't want to migrate everything every half year. Plus he had negeative experiences with Angular in some project he had to work on, probably just because his limited JS skils.
So he wants us to use jQuery to build a modern web application.
I get it you don't want to migrate to TheNewHotThing(tm) every year. Guess what? You fucking don't have to. If I build sonting in Vue.js now, it won't stop working when a new framework comes along.
Look at our own fucking ASP.NET Web Forms prooject, that stil works. Just don't deny the usability of modern frameworks.5 -
'nother "teacher" story here.
Little background knowledge: I'm repeating the things he told us about at home and try to learn them by myself. I use the newest Visual studio and .NET framework version.
In school we have pretty old PC's and even older .NET framework. But let this insanity begin...
As normally i entered my classroom a little late (I have a dangerous habit of ignoring my alarms) and sat down on my chair. We were only 3 people including me at that moment so everything was pretty chill. I ask him what our task was and something along these lines occurred:
Me: what's our task?
Teacher: you remember your shopping list program? I want a textbox in it next to the listview and I want it to show every listview item
Me: that doesn't make sense
Teacher: yadda yadda just do it
Me: kaaaaay, anything else?
Teacher: actually yes! Please use inheritance.
Me: *baffeld* that doesn't make any sense at all. We have 5 different fruits; you tell me i should make a class per fruit!?
Teacher: yes of course! This is how professionals do it all the time. Please give them a distinct attribute, too.
Me: *angry* I'm. Not. Gonna. Do. This. This is total bullshit and also really bad coding style. I'm not going to teach myself something that doesn't make sense at all.
(Note: i know how inheritance works and he knows that too)
Teacher: You have to do it, you won't be prepared for final exams otherwise!
Me: leave my exam prep to me. I won't do this.
Teacher: *grumbles* fine
Later that very same lesson i got a .NET compatibility error. I couldn't work because I wasn't allowed to change anything on the installation nor to install a newer framework. So basically he told me I should've used 'sharpdevelopment' (which is not able to do windows Forms, but hey who cares) and this would not have happened. I was so furious at that moment i just took all my stuff, told him that I work 'from a place where i got decent software and space to think' and left the room.
Why did this person decide to become a programming teacher?7 -
So first of all merry delayed Xmas and of course wishing you all a happy new year.
Now...
I always loved designing and coding, yes I actually like it, I must be absolutely mental or something.. I finally after pushing myself through hours upon hours of courses, finishing most within 15% of the allotted time, and doing more then was requested, I finally found a job, related to front-end development. You might think "Gee; good for you buddy, you filthy commoner.." Well; it didn't last all too long, I basically after nailing the interview process got my first day there within a few days, now I am absolutely stoked and my nerves are shot, plus the 4 cups of coffee aren't helping. I literally was so nervous to do well on my first day, that I slept for only one hour, literally one bloody hour.
I get into the office where I am greeted by an amazing laptop, I mean high-end gaming 360 no-scope all over the place gaming. I sit down and start on getting all my tools ready to go (they let us use whatever IDE we wanted, which I thought was amazing) after getting my IDE and the plugins and all the emails/Slack etc setup, I then get told to get a Dropbox account. I assumed the Dropbox account was just there to share things quickly with the designers, we would obviously be using Git right?! Well; no not exactly, actually not at all - we all used the Dropbox account of one of the bosses, I swear everybody pushed and pulled stuff all the time, a copy of the boss's passport was in there as well, and they had projects from and up to 3 years ago, still in there... It took my Dropbox 3 bloody hours to grab as much as it could to actually allow me to get started...
I then to my absolute dismay notice that I would be working on a prefab of a prefab, basically the only thing I would be responsible for, is to adjust the animations and aligning elements.... Aligning and animations.... Fine, I guess it could be worse right? Started going along with it, using a framework that I never heard of before, till like a good 3 days before starting there called "Greensock" which is amazing I must admit, could've helped me allot on my solo-projects. Problem was; we had designers who wanted things, that just looked plain horrible, it was never 'on-point' so to say, maybe it's just me being a perfectionist but it just looked wrong.
Finally got it done after struggling with the prefabs and what not, then the day was almost over and I finally got to go home, fortunately dodging the drinking that was occurring around 4 in the afternoon in the middle of the office, it wasn't beers or anything of the sort - but hard liquor along the lines of Wodka and straight up Gin. I fortunately had a personal issue I had to attend too, so I got out of there before things got too crazy and they went out for dinner stumbling all over the place.
Well this wen't for a few more days (minus the drinking), with 8 being the exact number of days and my grievance list only kept growing. I was for one a junior-developer and thus with them knowing was supposed to get training from our lead, however; that never occurred instead said 'lead' would leave early or be completely absent on most days, leaving me to mess around with prefabs that did my head in, with no comments nor any indication what it did or should've done, I spent hours just adjusting one line of code at a time to see what would happen.
Eventually they told us to work from home only, so I did - did a project here and there and then got told they wouldn't keep me on board any longer, stating I was too inexperienced and they didn't have enough work (which was a load of bs) and that I lacked "office experience" whatever the heck that means, I was always sociable and hell I ever cracked people up, kept a neat and orderly list of things that needed doing, I even contrary to most commented on my code, so the next poor sod wouldn't be going through 'try by error' hell that I wen't through.
Either way; I currently have been feeling absolutely wrecked in terms of motivation, that job would've solved my financial situation and allowed me to finally do what I wanted to do. Instead of doing some random dead-end job each week or month, I would've had a steady income and something I could've built on.
But to add some positivism to this endless and too long of a rant... I'm currently going through a boot-camp and doing a small Linux based course on the side, this little thing isn't going to hold me back; yeah it will be tough, but then again most things don't come easy..
Thank you for reading and I hope you have allot and I mean allot more luck on your first job.5 -
Had a new co-worker I was responsible for training. I am several years his junior, but he is working with a new language/framework I'm fluent in. Day 4 into training, he walks into my cubicle, sidles up next to me, I look up at him, he farts loudly, then (without seeming to realize what he's done) he proceeds to launch into a long-winded question about coding best practices.
If this were an isolated incident, I'd have written it off, but the dude did it again when he came to my desk and asked me to open a jar of pickles for him, and many times over during casual conversation.1 -
Reviewing some code the other day, seeing a lot classes like:
SimpleThis
CoreThat
BaseSomething
I get the idea..Microsoft is doing it...disguising complexity with clever adjectives.
I think in my next project I'm going to start naming things like
SpaghettiMonster
GodClass
Repository (cause, every framework needs one)
Then in a year and a half-dozen other devs adding their bits, someone asks "SpaghettiMonster...WTF?...why is this data access called..<dev looks at code> Oh good Lord ...oh well...at least the class name is accurate"2 -
Is your code green?
I've been thinking a lot about this for the past year. There was recently an article on this on slashdot.
I like optimising things to a reasonable degree and avoid bloat. What are some signs of code that isn't green?
* Use of technology that says its fast without real expert review and measurement. Lots of tech out their claims to be fast but actually isn't or is doing so by saturation resources while being inefficient.
* It uses caching. Many might find that counter intuitive. In technology it is surprisingly common to see people scale or cache rather than directly fixing the thing that's watt expensive which is compounded when the cache has weak coverage.
* It uses scaling. Originally scaling was a last resort. The reason is simple, it introduces excessive complexity. Today it's common to see people scale things rather than make them efficient. You end up needing ten instances when a bit of skill could bring you down to one which could scale as well but likely wont need to.
* It uses a non-trivial framework. Frameworks are rarely fast. Most will fall in the range of ten to a thousand times slower in terms of CPU usage. Memory bloat may also force the need for more instances. Frameworks written on already slow high level languages may be especially bad.
* Lacks optimisations for obvious bottlenecks.
* It runs slowly.
* It lacks even basic resource usage measurement.
Unfortunately smells are not enough on their own but are a start. Real measurement and expert review is always the only way to get an idea of if your code is reasonably green.
I find it not uncommon to see things require tens to hundreds to thousands of resources than needed if not more.
In terms of cycles that can be the difference between needing a single core and a thousand cores.
This is common in the industry but it's not because people didn't write everything in assembly. It's usually leaning toward the extreme opposite.
Optimisations are often easy and don't require writing code in binary. In fact the resulting code is often simpler. Excess complexity and inefficient code tend to go hand in hand. Sometimes a code cleaning service is all you need to enhance your green.
I once rewrote a data parsing library that had to parse a hundred MB and was a performance hotspot into C from an interpreted language. I measured it and the results were good. It had been optimised as much as possible in the interpreted version but way still 50 times faster minimum in C.
I recently stumbled upon someone's attempt to do the same and I was able to optimise the interpreted version in five minutes to be twice as fast as the C++ version.
I see opportunity to optimise everywhere in software. A billion KG CO2 could be saved easy if a few green code shops popped up. It's also often a net win. Faster software, lower costs, lower management burden... I'm thinking of starting a consultancy.
The problem is after witnessing the likes of Greta Thunberg then if that's what the next generation has in store then as far as I'm concerned the world can fucking burn and her generation along with it.6 -
Was supposed to start my exams training today (Application Development study). At the daily scrum, I told the scrum master (teacher) that I heard (I did hear that tho btw) that the training only starts next week so 'if I could work on my framework to get it ready for the training'. I know I'm supposed to start today with my project but I rather finish my framework really.
He fucking said YES.
So this will be a happy week of framework programming :D -
So I was assigned to improve an existing internal CMS application where they wanted the ability to add extra form applications and restricting them based on people from different departments. As well as include some other improvements like speed as they mentioned that it was slow in some instances.
What I found was the original developer decided to not use any kind of framework and decided to be creative by creating his own MVC framework. With about 300 users in this system and utilising no caching of queries, views, not even using PHP OpCache, even quite a few security holes, I was damn surprised at how this thing was running. I asked the original developer why he didn't use an open source framework and he said that he thought that he'd create something and be the next Facebook.
It was a mammoth task to "improve" this system but the main thing was that I took custody of this project and that I prevented him from trying to make a bigger mess of things for this project. -
Most recently... taking something previous devs had failed at and knocking it out of the park.
Best example was a statistical regression and graphing tool on ASP MVC.
The devs were doing a massive brute force recalculation on the server layer. It would take 24h then fail to save (Entity framework brute force).
We moved it to the database layer and got it down to a passable time.
The same devs were outputting charts to ie 9, chrome, firefox... same deal, half an hour on the initial request (parser churn in the browser)... then failure.
Again got it into a passable time by switching to web sockets and long polling then outputting 1000 or so points at a time to give the browser time to render.
Taking those two cock ups and making them a workable solution was awesome.
Since then, teaching. We have apprentices, newcomers, interns all jumping in and looking to get working. They're all different, what works to teach one person won't the next, each of them so far has caught on to what I was teaching. It's a proud moment to be able to impart knowledge and see someone pick it up, enthusiastically... it's also awesome to see someone excited about what you do. -
So I hear some drama going on in Vuejs community related to next version which will bring breaking changes.
https://dev.to/danielelkington/...
I was just getting into Vue and feeling happy about learning such a beautiful and simple framework.
What do you guys think?12 -
If you also programm in your free time you probably know this kind of situations.
Situation: I'm currently creating my own PHP framework (I know there are plenty... I do it for "fun").
The database Connector Class wasn't working so after an eternity (around 2h) I just went to bed.
11pm: My Eyes open. I'm sure I just solved the problem in my dreams. (Spoiler alert: I didn't)
2am: I go to bed again. It didn't work.
Next day: I open the file add a missing required file. It works. I'm now tired AF and feel like dying and above all: I now get all the suicide PHP memes. Good night guys. I'm getting some sleep.3 -
I have this friend of mine, he was a former course mate and we can call him J.
J called a week ago saying he wanted to come stay with me for a few days and I said no problem buddy come home I'm always around.
When he came around he sounded quite different than the J I used to know. The first thing he said when I opened the door for him was "Do you know God?" and I was like "Hunh... Is that the latest javascript framework?". With my reply I was expecting laughter as a response but seems like buddy is serious.
J: Are you ashamed of him?
Me: What's up man? Jesus ain't coming anytime soon *still joking*.
J: Yes, he is. And we...
Me: Okay. Cut the crap man.
That night was quite long as we argued religious stuff front, back and center. I asked him why he became so religious but his response wasn't really clear. What I could sense from the discussion was "he's in it for the money" because while we were arguing he mentioned that God spoke to him that he would own a Mercedes Benz this year, so for that he created a WhatsApp group luring people to join to receive gospel messages and in turn ask them to sow seeds and make offerings all in the name of God. I was both pissed and perplexed by such an act of selfishness. Why don't you just get a real job, I asked J, and he said the jobs he could find doesn't match his taste :/
The religious argument continued to day 3 and I wasn't feeling it because it has affected my work as I couldn't even concentrate on most task that was supposed to be completed that week. I called him the next day and told him he shouldn't come to my place if he won't boycott the religious arguments we normally have at night because those are my working hours and the arguments wasn't helping matters. I ended the call when I got no response.
Throughout the rest of that day I felt guilt for what I had said to him, maybe there would have been a better way of putting out my reasons to him or atleast allow him arrive home before telling him what I just told him. I felt really bad that night, so the next day I tried to reach so he could come around when he's available but his line wasn't going through.
Few hours later I got a call from another friend we can call E.
--- E: Hey, have you seen J lately.
Me: Yes, he has been with me for few days now.
--- E: Is he there now.
-- Me: No he's not.
--- E: I need to let you know what's up. J isn't feeling okay. He has been with me for quite a while but recently this year he started acting strange. I think he has some mental issues.
-- Me: Mental what?
--- E: Yes. One time he pulled of his shirt running towards the street. I asked him where he was going and he said "they're calling me... they're calling me".
-- Me: That must be serious, I never paid attention I just noticed he was acting too religious.
--- E: Yes man. It took some time before I myself realised what was going on.
--- Me: So what do we do?
--- E: I've spoken to his brother and we also informed the police he was missing, I never knew he was with you.
--- Me: I'll try reaching out if I find him I'll get in touch.
--- E: Okay.
Hanging up the phone, I have never felt so broken in my entire life. All through those time I was arguing with someone in need of help.
How could I not have known. I'm stupid... I'm stupid... I'm stupid! I kept stumping my palm on my head. Shame unto me.
There were moments in our arguments with signs of clear red flags, some things he said wasn't just right but I ignored just to win the arguments. At one point he claimed he was God, at another point he said he doesn't need to work to become rich that money will visit him, he said some really bizarre things if I was observant enough I would have noticed but fuck me I didn't.
Next day, I got a call that he has been found and has been taken to a psychiatric hospital. He was suffering from bipolar disorder. When I got there, he no longer recognises me. This was the same person we both argued few nights ago.
This short experience was devastating for me. I cried like a baby right there in room filled with his family and some other friends.
No one knew why I was crying, it was just me and my guilty conscience. This would have been prevented atleast a little if I had acted differently. I can't hug him now... It's of no use. I can't tell him how great a friend he is and and how much he deserves the world now because it would be useless.
I pray day and night that he gets well soon and I could tell him how sorry I am for not realising he had a condition unknown to me.
I get to visit him twice a week and hope he gets back to the J I've always known, my buddy for life 💑
For anyone reading this:
Sometimes the people around you might look okay from the outside but I promise you there is a lot going in on the inside. Show love to whoever call you their friend and also don't take arguments personally (I failed this test), some people uses arguments to validate theirselves and some might not be as sane as you think.
#ListenMoreSayLess11 -
My boss has a weird habit of asking my opinion and then proceed to choose the worst option. So one day he asked what Java for Web framework we should use I said we should use Spring, we are currently using JSF. Then he asked what version control we should use I said git. Guess what, he decided to use SVN. Next time I'm going to say the worst option maybe that will make him choose the better one.2
-
I was working on a project for a presentation and had a really bad cold. I was building something in JavaScript and the framework was all new to me. No one else wanted to touch it so I said i would have a go.
Basically I put everything I could into it and the director walked in and started using it, ignoring me who wrote it, talking straight to my boss about loads of changes.
I sat there and quietly and thought whatever I did they would change it again as they don’t know what they want.
I felt crap the next day because of the cold and the previous days experience, so I called in sick. I got a load of abuse about the deadline for the presentation and this time I gave it back and said maybe someone else should have stood up and taken that project then. I wasn’t taking anymore of that crap.1 -
Why the heck does every big "giant" wants to promote their own framework? It almost feels like politics of the tech industry. It's not about using the "best", but using "our own". Everyone wants to claim their territory however ridiculously small and unimportant it is. So, I'll have to replace Bootstrap with some framework client designated after completing the project, and see what will be broken.
The good thing about working in an agency is you get to work on such a variety of projects, which can also be the fucking damn thing. Heck I'm not looking to work in an agency for my next job.2 -
I can't recall one single person I can call a mentor, however...
When I first started as a developer I had a senior to work with... I knew close to anything but I was always good at research and learning on my own... But we used an asp.net framework, it was new and there was little to no useful information, only basics... When I asked the senior (let's call him Joe) for help he gave me a quick answer:
Joe: Go to file xx, there's an example of what you need there...
Me: Well, been there and that's great but it doesn't help...
Everytime I was stucked during my first week it was always some sort of the same, so I insisted this time...
Me: so, Joe... I'm really stuck on this one, can you give it a look?
Joe: I know, I've been researching a way to do it for an hour now and can't get it either...
Me: wow! Thanks... But I thought you were an expert on this...
Joe: not really, never used it before. It's as new to me as it is to you! :)
So, that switched me from "this fucking weasel won't help me for shit" to "well, let's help each other"
We became good friends, always challenging each other and from that day on I stopped asking for help, and asking where can I help others...
I had great and greatly bad colleague and seniors. Each one thought me something either what to do or what not to do, how to act or not, how to tackle problems, how to teach...
Everyone I have worked with, worked for or trained is a mentor of mine. Even those I feel like I failed training thought me how to do better next time...
Thank you guys for being grate... Thank you assholes for teaching me how to send a guy go fuck himself! Good luck for those who get stucked with me -
No matter how much fancy stuff you use, next flashy framework to abuse, or whatever shitty js you produce
css will haunt you ...
and fuck you. horribly.3 -
With a recent HAProxy update on our reverse proxy VM I decided to enable http/2, disable TLS 1.0 and drop support for non forward-secrecy ciphers.
Tested our sites in Chrome and Firefox, all was well, went to bed.
Next morning a medium-critical havock went loose. Our ERP system couldn't create tickets in our ticket system anymore, the ticket systems Outlook AddIn refused to connect, the mobile app we use to access our anti-spam appliance wouldn't connect although our internal blackboard app still connected over the same load balancer without any issues.
So i declared a 10min maintenance window and disabled HTTP/2, thinking that this was the culprit.
Nope. No dice.
Okay, i thought, enable TLS 1.0 again.
Suddenly the ticket system related stuff starts to work again.
So since both the ERP system and the AddIn run on .NET i dug through the .NET documentation and found out that for some fucking reason even in the newest .NET framework version (4.7.2) you have to explicitly enable TLS 1.1 and 1.2 or else you just get a 'socket reset' error. Why the fuck?!
Okay, now that i had the ticket system out of the way i enabled HTTP/2 and verified that everything still works.
It did, nice.
The anti-spam appliance app still did not work however, so i enabled one non-pfs cipher in the OpenSSL config and tested the app.
Behold, it worked.
I'm currently creating a ticket with them asking politely why the fuck their app has pfs-ciphers disabled.
And I thought disabling DEPRECEATED tech wouldn't be an issue... Wrong... -
So a co-worker of mine contacted me for help in her project. I was in no mood to help as I hadn't slept properly the previous day. But she begged me to help, so I obliged just so I could get her off my back and catch some rest after 2 hours, or at least that's what I thought it would be. But here I am, 10 hours later, having just finished helping her in her project, and now I have a really bad headache, just waiting to go to sleep, but my brain is betraying me.
It was a project that uses Tryton framework (based on Python), which I sometimes feel is fucking inconsistent. Things won't work as expected most of the time. Her boss (my ex-boss) is a piece of shit, and he wanted the work by the next day (i.e. today). And nobody else (not even the boss, who would have gotten this work done in less than half the time had he helped her even a little bit) was ready to help, because they all hate her for being a slow learner. All I had to do was get some data in a particular format in a text file using the framework. But the amount of tries it took just to get the data in the text files cost around 2 hours due to shitty internet speeds that caused tons of lag on Anydesk. Then we had to take breaks in between for reasons. But due to my agitated state of mind, I couldn't sleep in those breaks. Then I had to spend time tinkering around with ljust and rjust to get the right amount of padding for the data, which took hours due to shitty internet speeds that caused tons of lag on Anydesk. And then Tryton kept throwing errors in between which took some time to fix. But we finally completed half the task, and I am off to sleep.
As I write, my co-worker is still awake completing the work her boss gave her. It's around 1:46am IST. HER BOSS IS A PIECE OF SHIT.2 -
This little game took me like 2h of development, it's build without any framework whatsoever.
It is based on my memory of a very old game my brothers used to play on DOS, it was used to teach how to type superfast
Little details on how this works: the inputs at the bottom are programmed to be used with keys (only letters), ENTER and TAB, no need to use mouse in this game to move around, just hit tab to move to next, hit enter to confirm what you typed.
I know I should upgrade this to use a list of actual words instead of just random letters, but never wanted to actually work on it again.
http://examcopy.altervista.org/apps...
I highly recommend trying it on a PC, also contains Ads, not invasive, tho
Other games I developed:
http://stefagna.altervista.org/swis...
http://examcopy.altervista.org/apps...
Note: PLEASE, DON'T GO TO THE HOMEPAGE OF THESE WEBSITES, they're kind of NSFW4 -
My first software.. Okay. So first time I ever attempted was with my father, i was around 8 or so, i remember very little from it, but in nutshell, i somehow ended up at his job having day off school or something, no idea.
Apparently he was bored, so he decided yo show me... Basic. Yep, thats right. Frking basic. Anyway, he shown me some really basic stuff in basic, and pushed the envelope really hard, just trying to force into me more and more in these 8hrs. I started with filling screen with "o" characters. Most of times he was telling me what to write with elaborate explanation why. At the end of the day, we finished with simple maze game where player was "o" and maze walls was #. Without any goal, or anything.
Next day i was at point 0, understood nothing from it except how to handle keystrokes (and belive me, that for me was huge mindblow, and even bigger mindblow that it actually made prefect sense).
I dont remember much, but later i started with father-assisted c++ and some pascal. I immidietly loved c++ but dropped learning it for (NullPointer) reason.
Thats not really project imho, so now time for my actual first project.
It was about time when ARK survival evolved was a fresh thing, i was playing it a lot. Server admin became buddy. We all complained about max level cap, but to change it in config you needed to input whole new xp curve.
At that time i had great familiarity with google and computers, some thought i was some kind of PC god (seriously I heard someone saying so about me lol) just becouse I could ressurect most cases of broken windows. And I had next to zero programming expirience. It was about to change. I made first c++ actual program, that was making xp curve for you. It took me just bearly 2 days and was series of cin, cout, one file open, some maths in loop, and done. Maths was very bad. But i pushed it into steam forums, and one guy responded how.bad my math was, so we colabed on making 2 iteration. Took around week. Than half a year passed and we wanted go big. Go gui. I had no freaking idea how making gui looks like. Community liked my cli tool, we had quite a lot of downloads, why not go GUI. And thats when I discovered QT framework. And we had few features in mind... It took us half a year to make it. From 60 lines of code i jumped into 1k lines of code. We pushed it and immidietly started working on 4th version with much greater customizability etc.
Than i finished 18 and found a job. Job in php. I got it becouse I made this project.
Now project is abandon. This project also gave me a lesson that donations will not feed you.
Edit: and before you think about my father that he was nice person to show me code, trust me, i dont know bigger dick than him. -
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 -
ATTENTION PLEASE! Important announcement following:
Please check your interface implementations for correct byteorder according specification BEFORE YOU START COMPLAINING ABOUT DATA FAILURES ON EXCHANGING DATA.
Freakin hell, if I'd get some money for every byte order mismatch on testing interfaces, I'd be a be a billionaire.
And why are all those highlevel I-know-every-fucking-framework developer incapable of checking the real memory content of a datatype, and the real data content on the interface even if you tell them that their byte order is obviously wrong?
No, your system is not the centre of the universe and I don't care how you get your less-than-32bit-datatypes-are-for-assembler-usage-frameworks to change byteorder. It's not rocket science, if there's no ready-to-use-function then write those 4 lines yourself.
Next time I get to specify an interface I'll go for mixed-endian, just to make sure everybody involved knows the concepts of endianess afterwards.2 -
I started my career almost 20 years ago now.
I had the chance to work in really good environments, and with people trying to be performant. In my first company, the CTO pushed a lot the new/shiny XP method. Then I used the first iterations of Scrum as a Team Leader.
As I became a Service Manager, I found my love in kanban/lean (and my worst nightmare in sigma six).
I crashed startups created with friends and cashed out sometimes.
I also did a lot of "agile consulting", around productivity, product methods, organization (even got certified SaFe, the Agile framework that states" process over people").
When I came back to Europe, I just wanted to get back to the level I was in North America.
I have done a lot of mentoring, but now I lack the motivation (and time) to keep doing it, the way I did. So I stopped.
And now I have to answer the question "do I leave delivery?". Also, it seems that a lot of actual organizations are starting to put the product under " tech top management" ( companies I like at least).
So I wonder, what my next evolution should be...
Should I leave tech delivery to be fully Top-Management...
Do I want to structure/handle/organize the Product Teams...
Covid has given me time to start thinking a lot more about my situation... And it sucks... -
Laravel, Symfony...
It doesn't seem to matter what framework I pick to learn next. I rarely get past the Installation step where I have to install and learn a bunch of command line tools first.
It makes me realize I no longer want to be a web developer as even the biggest step I can reasonably make in my career will still not result in an income change significant enough to pay for a mortgage, and the smallest step still expects me to understand all of these command line tools for seemingly no payoff whatsoever.
I feel stuck and depressed looking at all the toxic positivity on LinkedIn. I cannot fathom the amount of indoctrination that must be going on between all these people chirping about how great it is to work for their company.6 -
after exploring a lot of ui frameworks and architectures, i am trying to go back to android dev but again with the curiosity for the one single question that i had at the start of my career 5 years back : why is it's ui so complex?
can anyone help me understand it?
like comparing with the most basic ui framework : html/css/js, why android is so different? we got activities, fragments and views. the worst thing in android is lifecycles, that each of these ui components have.
The view lifecycle is simple to get over with : whatever is the lifecycle of its parent, is the lifecycle of view.
a view's parent is another view, whose parent is another view, whose parent is... and so on until we reach the root view which is stored by either a fragment or activity
therefore a view's lifecycle = lifecycle of activity or fragment
till here its very clear. the fuckup is simply in the next part:
WTAF is activity ?WTAF is fragment? why are their various functions called in the sequence they are called? oncreate, on start, onstartview, ondestroy... why?
activity is still somewhat okay, but fragment is completey weird af : it can be a part of activity: basically it can cover your complete screen and behave as an activity itself (so you don't get to say that activity === screen and fragment === view) AND IT HAS ITS OWN FUCKING LIFECYCLES! So does that mean fragment's fucntions cna also be called by OS?
what's more mind fucking, is the fact that android activity can destroy/pause or recreate fragments on its own, by some "views" like viewpager , or even hold multiple fragments as "alive" at the same time, using something called a "backstack" ??!??!
and each of these fragments in the stack can be called by system at any time? like wtf???
all these stuff is super confusing and i haven't even scratched the surface. the newer , more complicated stuff like viewmodel, livedata and again "lifecycles" has a complete seperate behavior and functionality of their own. plus the various "reality-check" scenarios like: when a user is streaming a video in picture-in-picture mode while keeping your app in split screen with maps in the second split, when a call comes and the video keeps running, and user rotates the device, let me know the clusterfuck situation for the 3rd fragment in your 5 icon navigation view currently at the payment page with 2 fragments and 1 activity in backstack!!!
god bless thy soul for this shitty framework isn't going anywhere , rather its super strong and getting more clusterfucked with new beautiful shit everyday.
(if someone can ignore my gentle language, i would really like to know/get redirected to some resources where i can learn more on this)3 -
When you're told in the late afternoon to implement a feature in a legacy codebase you have no familiarity with and written in a framework you've never used by the next day...
Thank goodness for super nice and helpful coworkers... Almost there 😩2 -
If a team uses multiple languages and stacks (Have, JS, Python) do you think it's better to have everyone use/constantly switch between them or have dedicated developers for each language (ie. 80% main, 20% others)?
--END QUESTION, ANSWER NOW BEFOREHAND CONTINUING---
---BEGIN RANT---
My boss likes keeping the team "will rounded" so everyone does everything. One month in working in Java, the next with Node web apps. When I switch to node, it takes like a week of "wtf doesn't it work.... what changed, is it a big?" And usually end it"oh right I remember I need to ..."
And also always... "How the fuck do I write tests in {some reading framework} again?"
So feels like everyone is just a generalist and no one is a master/has time to develop mastery. I don't know if it's just me (1/3 Senior developers on the team that has to do everything) or if I'm the only one that complains... Not that it makes a difference... (Only option to really be heard is to resign but I need to somewhere else to work and finding one is hard for personal reasons)
And well this is the biggest reason I would leave the team. No time for mastery, no standardization/shared knowledge (everyone does their own thing but probably not well and no time for testing or documentation; how the fuck does whatever you wrote work, how do we use it, what the fuck did you put in prod that does ... And where the fuck did you put it cuz it's not in ANY of our repos).
I always feel one day soon it will come crashing down and I can say "I told you so" but will then it's too late and I'll be there one cleaning it up... Again6 -
Some time ago Ex-Boss, who's also a Dev, asks for some opinions about which JS framework we should use in our next project. I gave my 2 cents about react JS and he said no, react won't be any good, we must use Aurelia because it is backed up by Rob etc etc. At that moment I thought: wth is he asking, if he has already made its mind on Aurelia? As at that moment react was getting some hype and I knew the features and advantages, I kept going. Boss, react has shadow DOM. React has this, it has that etc. This discussion ended up with him raising his voice, telling me he is much more experienced than me and telling me to GTFO. That's what I did. And thanks God I did it. I respect other opinions and beliefs but If I'm asked to give my own opinion I will, even if they don't like it.
-
It's been a while since i stopped programming.....
It's been so busy with all the school work/assignments/ and the most important part is that school ends at 10pm, arrive home at 11pm, prepare for tomorrow school stuff, sleep at 2am, wake up at 7am next morning, and again ends at 10pm 5 days a week...
It is exhausting, but I am getting used to this routine.
Studying my own programming skills or working on a side project? Not sure when to do it... The only way to continue studying is at breaks at school, or sleep less and study....
But it is impossible....
I have some great projects that are waiting to go out to the world, to list a few:
- cloud gaming
- cloud storage with live streaming
- complete school schedule management
- home automation framework in dotnet
- deepfakes and ai image generation algorithm (~18 months of training till now)
- game cheat engine (20GB total omfg ^^)
- and more
and I don't have time to finish it. lol
I think it will see the bright world after 3 years of high school... By then, my projects will be ancient, probably....
TIme is really short.
24 hours equally, but feels like 8 hours a day....
Should I abandon the project rn and focus on studying? (probably should)
or should i sell the project or open source it?
Also, how do you manage your time between work(study) and side projects (especially big ones)?4 -
Can we like stop making new Frameworks every month and just take a break for like 2 years, cause Gawd Damn! 😣; It should be illegal to make a new Framework in the next 2 years🙂2
-
Collect project specifications & details.
- order by relevance.
List & install dependencies (possibly spin up a vm).
mkdir ~/Code/{lang}/{framework?}/{project}
Bootstrap skeleton & scaffold.
- ensure functional base.
Iterate specs list & create test case(s) one at a time, going: test => minimal to pass => refactor => next(repeat_cycle)1 -
Javascript fatigue. Because the node scene is so new it doesn't have the established isms and methods of best practices so every few months the next best framework or library comes out promising to fix the problems we all face
-
I'm getting really tired of colleagues jumping onto the next framework/ideology/technology that is going to solve all of our problems, instead of just working on solving some (ANY!) of our problems!
Sometimes you have to put the work in people; it's not all Google, Stack Overflow, Copy and Paste!!2 -
I go to add a method call in a business logic class that's used exclusively in a particular service, and get blocked in the PR by some other guy-
Other Guy: refactor this into the shared framework referenced by all our microservices
Me: it is only and would only be used in this service
OG: what about the other business logic class in this service?
Me: it's not used there, and if it does end up used there then we can refactor it into a class that they both reference then
OG: I need to know when the abstraction of this function will be done. is it going to be delivered next sprint?
Me: YAGNI - better to avoid doing extra work when we don't know if we'll even need it
OG: tbh you can still abstract it with some generics and lambda magic, but im not gonna enforce that
Me: premature abstraction is the root of all evil (tongueout)
OG: not really, its the root of not having a million miles of tech debt in 2 years
I just can't win for losing with the anti-YAGNI yogi.1 -
Just spent 1 week following the upgrade tutorial from one framework to the next. Using their upgrade tool and following the documentation.
Finally finish the work, most things are working it just doesn't seem to work quite right. Must have missed something.
After some digging it turns out they completely removed a function that I rely heavily upon. No mention in the upgrade document, no possible work around. Every forum post about it either has no replies or it says "it's a new feature".
Well fuck you.
The whole project is now useless.
Fml 😭4 -
Hmm, this front-end framework looks great, it would be a shame if... "the latest version of jQuery is required"... Well, fuck you then, let's see the next one.
My day in a nutshell. -
!rant
Frontend people, I need your opinion.
I will soon start building the next version of a rather large project's frontend but I am mostly a backend guy.
It is a custom made web application (PHP, Postgres) that handles all business aspects of a shipping company of about 50 people (trucks, truck free space in shipments for new packages, package tracking via gps on the truck, invoicing, reselling shipping services to other businesses, everything).
The existing frontend is using an ancient version (1.x) of the YUI framework and uses AJAX heavily to refresh the user interface. It's usable, but maintaining and extending it is getting really hard as the project grows larger and larger and more systems are integrated.
So the question is, given this use case, what JS framework do I use and what is a good resource to start learning it?5 -
This is yet another rant about php.
But I'll put my hands on first: I'm less than a junior and I'm looking for a backend language to learn.
So far I've been looking at php with Symfony because it's been used where I work.
Is it my impression or Symfony somehow overcomplicates everything? Like I don't know, for any stupid thing I get stucked (like yesterday, spent two hours on a circular reference problem with serialization).
Also, I don't like it's documentation. I am a book person, meaning that I need pages of text explaining how the framework (or whatever) works in a precise order.
Symfony's docs are like a graph: you often have no idea where you are or "what comes next".
Also, I feel like every page makes you just copy-paste everything without explaining very much what's happening under the hood.
I know there is a cookbook, but it's pretty outdated (like it's at version 3 or 2.7, I don't remember).
Is it just me? Do other Symfony developers experienced the same?10 -
I'm on vacation.
A friend asked me if I could work on a freelance web project. I was getting bored of summer vacations so I said yes.
It was a website for online lottery and it was already developed by some freelancers.
Owner wanted more freelancers to revamp design and administration panel.
I looked at the site and knew that I had seen the worst design and code of my life.
Frontend was made of two colors only, black and yellow. Out of both, black was more prominent. Moreover it had nothing related to Js as if it was developed as a challenge to be accomplished without java script.
Admin panel and backend was much worse than that. No security practices and deprecated essential libraries.
The nightmare is about to end as I have inducted a much better design from themeforest for frontend.
Backend is in my homebrew php framework.
(Good luck future freelancers 😆)
I'm positive that next edits will be features additions only and no one will blame my code.6 -
Holy shit. I've been working on a project for the last few months. It's been going fairly well all things considered. We're currently at the tail-end of the project and are set to be dev complete next Friday.
We're on a headless CMS + Gatsby and decided to use a front-end framework (This is important to the story) to "speed development time."
PM comes to me yesterday and inquires about functional/visual QA on IE11. IE-What?! This framework I was told I had to use doesn't support IE11.. like.. at all, and now we need to support IE11, at the ass-end of this project, cause 60% of the traffic on their current site uses IE11? Oh come on!
So its looking like we get to re-write a few components from scratch. Then we get to try and fix the display issues for the other ones... FML, I was looking forward to being done with this so I could take a week off and go recharge before Thanksgiving garbage.1 -
Personal Observation
=======
Today morning I was looking through different React UI frameworks for my next hobby project. MUI React has been my favorite but I wanted something informal for this project, so I opened up all the two dozen suggested ones by Google searches.
Since reversing on committing to a UI framework, later on, is a huge headache so I was going through the component demos to shortlist a handful for final consideration, and in that, I almost skipped out all the frameworks which weren't showing a preview of their component on the documentation page itself.
========
I wonder how many frameworks are genuinely good but are passed over due to others having better and more illustrative documentation. In a market with vast abundance, one cannot rely on the sincerity of the consumer to invest time and determine the best possible product, for there are plenty of 'good enough' products that the user does not really worry about false negatives. -
I've been trying and testing all kinds of frameworks to get up to speed with modern development. Tinkered with VUE. That was fun. Tinkered with Laravel. Also fun.
Now I'm looking at Agular. Sweet mother of christ, they want me to learn all this shit just to do some Javascript?
I would rather stock shelves at a supermarket then learn yet another crappt framework that will be redundant in 5 years. I'll wait for the next one.7 -
As a frontend developer, I started learn unreal engine 4 in my spare time instead of build next js framework. I found C++ is very difficult in unreal project, even with the experience of building deep neural network for robot soccer back in university🤔11
-
Ah, the merry-go-round of frameworks. Can we settle on one for more than a microsecond?
Switching between React, Vue, Angular – it's like code calisthenics for my brain. Just when I've mastered one, bam, the next shiny framework arrives.
Can't I write code without feeling like I'm auditioning for "Dev's Got Talent"?3 -
Soo I finally uploaded my framework for Java Web last week.
It works great except for forwarding POST requests but meh, I'll fix it later.
Currently it only works for newer Minecraft Spigot version's and BungeeCord, because fucking netty is a piece of shit and Apache commons also... But I'll release a standalone version hopefully next month (maybe even next weekend).
And on the website from Spigot where you can find the link to my GitHub, there were two dicks which tried to steal my code and complained about my obfuscation... The didn't even fucking tried the plugin and gave me 1 star... Fucking pieces of shit fuck...
Anyway: here is the link!
https://spigotmc.org/resources/...3 -
I'm joining a startup next month and they are working on a project that requires knowledge of a unique framework and it's architecture. They know I'm mostly free this month and so they have asked me (in a time frame) to learn and perform certain tasks. They have also scheduled reviews to track progress.
tl;dr: Company wants me to learn stuff before joining and schedule reviews.
Is this behavior normal or/and appropriate?6 -
[ WEBDEV frontend QUESTION ]
I will need to build a new admin dashboard for representing a lot of data from the api. the API is written in PHP and this won't change. We are currently using jquery to make the data interactive (choose date ranges, different filters and so on). Were currently using morris.js for charts. I'm thinking this would be a good opportunity to learn and use a new js framework to make the data more easily bindable on buttons and selects (not so many listeners on buttons and shit like that).I will be developing the front end on my own, alone, so i mostly have freedom here. I need something that has implementations of chart rendering, and which I could learn in a week or two in the evenings after work (starting to work on this in the next week probably). What are your guys recommendation? Whats the best option for dashboards js wise? I was thinking vue, won't I shoot myself in the foot for using a new technology(for me anyway) right from the bat?2 -
I wish everyone would move away from code coverage as a metric and towards some kind of mutation framework.
There seem to be increasing numbers of devs getting themselves off on their "shiny 95% coverage" and patting themselves on the back for covering everything but the 5% of the codebase that actually needs thorough testing.
Oh, and that's ignoring the tests that just assert an exception isn't thrown, or don't assert anything at all. Completely bloody useless, but hey, you just carry on boasting how great all your tests are because you've got a higher coverage than the team next door 😤🙄3 -
Since most of you are working in IT , Communication and related fields, what advice can you give to a student like me who has just began studying Computer Science Engineering ...I mean how should I began, what to do next and get myself placed in a good company.
Talking about myself I have started learning C language and have learnt about basics, pointers, memory allocation, not yet started with data structures and algorithms
I have just done HTML and basic CSS , have understanding of MySQL and know a little bit about flask and Jinja framework in python.
If you could share your experiences, like what you felt at this stage what you do and how you do....how you got placed...what should I do different to cope with the growing competition....
Look I know this place is not for this bullshit but.... my seniors are egocentric bastards, my batchmates don't give a shit about CS , and being a student of tier-3 state government college in India, professors don't care......so I really appreciate if you guys can come forward, and especially Indian guys.4 -
You work in a team, for a team to move forward successfully the team should work in sync. A team always has a goal and a plan to get to it. There are times when the team needs to take a different direction therefore the set path should always be available for change because our environments dictate it.
We all have different styles of working and different opinions on how things should work. Sometimes one is wrong and the other is right, and sometimes both are wrong, or actually sometimes both are right. However, at the end of it all, the next step is a decision for the team, not an individual, and moving forward means doing it together. #KickAssTeam
The end result can not come in at the beginning but only at the end of an implementation and sometimes if you’re lucky, during implementation you can smell the shit before it hits the fan. So as humans, we will make mistakes at times by using the wrong decisions and when this happens, a strong team will pull things in the right direction quickly and together. #KickAssTeam
Having a team of different opinions does not mean not being able to work together. It actually means a strong team! #kickAssTeam However the challenging part means it can be a challenge. This calls for having processes in place that will allow the team members to be heard and for new knowledge to take lead. This space requires discipline in listening and interrogating opinions without attachment to ideas and always knowing that YOUR opinion is a suggestion, not a solution. Until it is taken on by the team. #KickAssTeam We all love our own thinking. However, learning to re-learn or change opinions when faced with new information should become as easy to take in and use.
Now, I am no expert at this however through my years of development I find this strategy to work in a team of developers. It’s a few questions you ask yourself before every commit, When faced with working in a new team and possibly as a suggestion when trying to align other team members with the team.
The point of this article, the questions to self!
Am I following the formatting standard set?
Is what I have written in line with official documentation?
Is what I am committing a technical conversion of the business requirement?
Have I duplicated functionality the framework already offers?
I have introduced a methodology, library, heavily reusable component to the system, have you had a discussion with the team before implementing?
Are your methods and functions truly responsible for 1 thing?
Will someone you will never get to talk to or your future self have documentation of your work?
Either via point number 2, domain-specific, or business requirements documentation.
Are you future thinking too much in your solution?
Will future proof have a great chance of complicating the current use case?
Remember, you can never write perfect code that cures every future problem, but what you can do perfectly is serve the current business problem you are facing and after doing that for decades, you would have had a perfect line of development success.1 -
Fucking hate to explain basic shit to computer illiterate. Usually I don't mind, but right know I working on the project, want to automate one thing I need to do every morning, put two numbers to web page(I will explain details maybe in next rant). So I am only one who fix, buys computers, printer(for some problems I call for other repair man.). Generally speaking working as IT guy. Firm has like 50 computers, some of them has SCADA software. Some computers have Win 7, some win 8 and others win 10, can't upgrade those computers, not enough money(I can deal with this problem). And yes, computer buying is not the fastest, easiest thing too. Because is public firm, I need to do public buying(I don't know how to translate to english), and most of the time wins the lowest price, I am ok with that. But I can't on item specification write I want that model pc or it components. Example: I can't write I want intel processor, however I can write number of cores, frequency. But it's not that bad, usually i have template for all things I buy. One of the worst thing is this, our firm bought new bookkeeping software version, old version was using visual foxpro framework. Good thing I didn't initiate the purchase, because right know I would be jobless, not because I would be fired, but because our senior accountant would drive me crazy. In fact accountants drive me crazy, but I can handle it for now. As I wrote before our form has about 120 workers, major part of workers are old, like my parents age. (I am 28 btw. Mom is 55.). As you all know what happens if you say you work with computers. So our accountants are like 60 years old, got new program, don't know how to work with it, and they ask me how to do certain things. if I don't know how to I ask program's support, every question is like 90 Eur. So in short accountants expect I should know their work and how program works. If I try say something they don't like, they try to make my day hard. Next thing is our billing program. Man that worked before me done some payments import. And when I came everyone expect me to do that. Ok I did that because that people working with billing program would probably fuck it up. And I semi automated that, so I don't mind that much. Sometimes that program fucks up, like it happened yesterday, it send email invoices attachment without filename. Example: people got this attachment ".pdf"(no filename, only extension), And if you save it you need do OPEN WITH command and then select pdf reader or rename file (I don't know what easier). And surprise surprise our firm, customer support redirects all phone calls, emails to me. But I did explain to customer support what to say to people. Still they redirect it to me.
PS: This is my first job after school. I work as part time.
TL;DR Thinking my life, carrier choices. accountants are not the nicest people.8 -
Next.js is a piece of shit framework, (Like React is next level shit), which enforces things in the name of "convention" and is just a PITA to work with. Have to migrate an existing project to next? Make sure you use css-in-js, or you cant use next. Want to use a shared layout? lol, gtfo. Want statically optimized assets? make sure you call the correct apis in pages or you get no optimization.
┻━┻︵ \(°□°)/ ︵ ┻━┻5 -
How do you go about introducing new technologies to your company/team?
Whether it’s writing the next API in another language or using a new framework/library/approach?6 -
Just discovered https://twitter.com/ExpertBeginner1. It's the story of my life. Giant classes, copying and pasting, and architects who create frameworks. It's great when we combine all three: A "framework" created by an architect which is made of giant classes that you copy and paste. Imagine a giant generic class where the generic argument is only used by dead code. Pause for a moment and try to visualize that.
It inherits from a base class with lots of virtual methods called by base methods that throw NotImplementedException, so if you don't need them you have to override them to return empty collections. If you're going to do something so messed up you could just put those default implementations in the base. But no, you can inherit, it compiles, and then it throws a runtime error unless you override methods the compiler doesn't require you to override.
The one method you're required to override has a TODO comment telling you what to put there. Except don't ever do what the comment says because that's the old standard. The new standard says never, ever do that.
Most of the time when I read about copy-and-paste coding it's about devs who copy and paste because they don't know how to write or reuse code. They don't mention the environments where copying and pasting the same classes over and over again is the requirement and you're not allowed to write your own code.
Creating base classes where you just override a method or two can potentially work, but only in the right scenarios and only if you do it right. If you're copying and pasting a class that inherits from the base class and consists entirely of repeated code, why the heck isn't that the base class? It could be a total mess, but at least it would be out of sight and each successive developer wouldn't become responsible for it by including it in their own code.
It's a temporary engagement, but I feel almost violated. I know it's a first-world problem, and I get to work indoors and take vacations. I'm grateful for those things.
Before leaving I had to document the entire process of copying and pasting an entire repo, making a ton of baseline edits that should just be in the template but aren't, and then copying and pasting from other places into the copied and pasted code. That makes me a collaborator. I apologize more than once in the documentation, all 20 pages of it that you have to read and follow before you even get to the part where you write the code for what you actually need it to do.
This architect has succeeded in making every single thing anyone does more about servicing the needs of his "framework" than about writing actual code to do what needs doing. Now that the framework is in and around everything it creates the illusion that it's a critical part of our operations. It's not. It's useless overhead.
Because management is deceived into thinking they need it they overlook the fact that it blows up, big and small, every single day. The log is full of failures that I know no one ever sees. A big chunk of what they think it does fails silently, and they don't even notice until months later when they realize how much data they're missing. But if they lose, say, 25% they'll never notice.
When they do notice they just act like it's normal, go into fire drill mode, and fix it. Doom. You're all doomed. I'm standing on the deck of the Titanic next to my jet ski.1 -
Not exactly a rant, but I'm wondering where to go next with my learning.
I'm a c# dev and I want to get more into massive, scalable, distributed application development.
I sort of want to be with the "cool kids" i.e. open source, node.js, docker, scala, you name it. I get that open source moves quickly, but I get the feeling that every new framework is a fad.
Then again there is the corporate world with shitloads of money who are invested in .net and will very soon want people who can redesign their software so that their management can use all the buzz words.
I'm thinking into get into consulting and claim my slice of pie there by designing their solutions to go on the cloud so they can throw even more money at microsoft.
Anyway, I'm doing a bit of soul searching so feel free to throw in your 2 cents1 -
2 years ago(jan-oct 2020) i was a college student giving his final exams. some of my personal stats were:
- current knowledge of Android Framework and associated stuff(android, java, kotlin, making and deploying apps , best practises, etc) : 30%
- current knowledge of Web tech (html/css/js/php): 5%
- current knowledge of creating backend/frontend apps:2%
also
- free time: somewhat
- Personal health: barely caring about
====
Same year i got my first job (oct 2020) which i switched in next year (oct 2021). before joining the next(my current) job, my personal stats were:
- current knowledge of Java : 30%
- current knowledge of Kotlin : 70-80%
- current knowledge of Android and Android Stuff(the framework, making production ready apps, deploying, best practises , etc) : 70-80%
- current knowledge of Web tech (html/css/js/php): 3-5%
- current knowledge of creating backend/frontend apps:1%
also:
- Free time: lol, i was working at 1 am too
- Personal health: even lesser caring about, body fats and thick muscles at various places
====
it will be almost a year of me working for these guys in November and this has been an interesting year so far. the stats are:
- current knowledge of Java : 35%
- current knowledge of Kotlin : 20-30%
- current knowledge of Android and Android Stuff(the framework, making production ready apps, deploying, best practises , etc) : 20-30%
- current knowledge of Web tech (html/css/js/node/react): 20-25%
- current knowledge of new stuff* (cordova,unity,flutter, react native, ios) : 5-10%
- current knowledge of creating backend/frontend apps:10-15%
also:
- Free time: a good amount of free time, like in addition to weekends and festivals, i take 2-4 leaves every month
- Personal health: improving a lot. loosing weight, gaining muscles, getting better stamina at running and other activities
====
So i am currently at a weird place. As from my stats, you can see that previously i was in a android heavy role in a company that put a lot of pressure, but i was able to become a better sellable dev through it.
My current role is also of an android dev here, but we maintain b2b products and i am sometimes asked to fix bugs in hybrid apps like unity, react native and cordova, so gained a few knowledge there too. and since i have a lot of free time in my hand, i explored a bit of web technologies too (apart from enjoying a relaxing life and focusing on personal health)
However my main concern is that am becoming a less sellable Dev. The lack of exposure/will to work on android tech has made me outdated from a framework that was once my stronghold. remember that i joined my first company purely because of my passion and knowledge of android os.
When i got offer from this company, i also had another, $5000/year lesser offer in hand. both of these offers were very generous , but i went with the greed and took the offer from this company despite knowing that they are looking for someone who will act as a developer-maintainer kind of person, while the other company giving lesser pay had a need of a pure android engineer.
So i am currently 24. should i keep on doing this relaxing but slowly killing job, or go into a painful, pressurizing but probably making me a better "android" engineer job ?2 -
What would you suggest to learn the fullstack js (with mongo,express, vue(example), nodeJs) first instead jumping into the specific framework?and wht are the next step after its been learned?
(Beginner perspective)2 -
recently, I was working on a project to playback archived call recordings, and another developer was hired. part of my job is also to support a third party automation framework for customers, so I got "seconded" to support a proof of concept. the original project had now been messed up, it works, however, the functionality that made it secure has been MASSIVELY compromised for the sake of effort. I've tried to cause a stink as we have a major customer who will fail the next PCI audit. opinions on the situation. the other developer has a lot more experience, but seems to have chosen to satisfy management on deadlines over the original spec...
-
Problem of the day: Which Python GUI Framework should I use for my next project? I’m thinking Kivy.1
-
I will start learning Django framework next week. I know elementary python. Any advice on path I should take will be helpful.1