Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "project idea"
Manager: We really need to save money with this project, so nobody call tech support for anything.
Me: There's this open-source solution that would work great.
Manager: Bad idea! There's no tech support number to call.
i was asked to start a new project, and another dev was brought onto the team shortly after. as soon as he joined, straight away he started an entirely new project and worked on it through the whole weekend, then came back on monday and just sort of pasted his files into/over the code i had already started and was working on, with no regard for folder structure or naming conventions or anything. his work was even split between 2 almost identically named namespaces (both of which were completely different to the existing project namespace) and his shit broke everything i did in the first place. the cherry on top is that none of his work was even functional, it was purely dummy/mockup web pages that weren't linked to any sort of backend.
when i asked him wtf he thought he was doing, he kept saying "i didnt touch your code" and refused to acknowledge that pasting a project over a different project can break stuff, then said it "wasn't his fault that i'm slow and not keeping up". and just kept saying vague bullshit about how i have to do it his way because he "has more experience"
he had no idea what my previous experience was, he had never asked and i had never told him, he just decided that he had more experience than me.
i dug through the shit and found out that he didn't just break my work, he had actually purposely deleted it when he realised it was getting in the way of his spaghetti. i showed him the commit and confronted him with it and all the cunt said was "well the good news is, you know the fix" and kept trying to dismiss me in the most disrespectful ways he could think of. i eventually snapped at him (long overdue at this point) and told him that any experienced developer would not commit code that didn't even fucking compile, especially when they're the one who broke it, and that he needs to grow up. of course he then complained that i was being unprofessional.
our manager decided we should go with fuckfaces """code""" without even looking at the work either of us had done, purely because fuckface is older than me and that's how the world works.
in the end i just told my manager that i refuse to work with the guy and he could either take him or me off the project (guess who he picked) or i quit.
after a few months of the guy failing to deliver any of even the basic functionality that was asked for, the entire project got scrapped, and the dude just quit once everyone realised he was literally just larping as an experienced dev but couldn't accomplish simple tasks.
i never received an apology from anybody involved.5
I met my girlfriend via online dating and she is often checking out recipes on social media, so I came up with the idea to combine cooking and Tinder as a tiny side project.
I built an app that lets you swipe recipes to add them to your cookbook and called it "Daily Cook" and it is available on both Android and iOS. :)13
✨ I created a cli tool that brings my GitHub feed right to my terminal.
It's just a fun idea that I had since I have this habit of checking my github feed every now and then. So made this tool to do it right from my working terminal.
The project is open-sourced in Github
Back when I was an wee lad I interviewed for an startup, not knowing that startups are not real companies. The scumbag interviewer, who was also the owner of the outfit, asked me what I was looking in a company. I said "fair wages, a non-antagonic environment and projects with real roadmaps".
He asked me to elaborate. I said, "You know, if today your product is a sales platform, I do not want to come into work next week and discover it is now an air travel tickets marketplace, or come back the very next day and discover it is now an automated pizza factory, or in the next day and it is now a crypto exchange..."
The scumbag looked PISSED. "Sorry, but we are looking for someone who likes the challenges of a dynamic environment (read: we do not have a business model and we hate the very idea of trying to make money out of our company), and you do not fit the profile"
Startups are not real companies, i.e. they do not systematically charge money in exchange for goods or services in amounts that exceed the cost of providing said goods or services. Most startups are just tax fronts for money laundering schemes. The rest are just playthings for rich assholes who can't get a real output-producing job. Those two categories are not mutually exclusive.
Take Facebook, for example. The poster child of startups. The Zucker that owns it just announced they are setting impossible performance targets on purpose, not even attempting to hide the fact that it is just a way to lay off large quantities of employees without using the words "massive lay offs". Companies, real thin-margin, lots-of-regulation profit-driven companies do not do that. They are not some sort of "capitalist woke", real CEOs just know that if their companies largely miss performance targets on their tenure, purposely or not, next it will be their neck on the chopping block. Because they can be fired if the KPI charts say they suck. But the Zucker cannot be fired, not even after commanding their beanbag and tap beer offices to be heated exclusively by burning hundred dollar bills.
So the Zucker is not interested in performance. Not even in lay offs as expense cutting measures - investors are an infinite source of free money for startups. The Zucker just wants to project power, especially now that engineers are not so confident in the stability of they high-paying jobs.
So are irrelevant 500-souls-or-less self-aggrandizing startups. Their owners are there because it is in vogue to have a startup or ten. And will have that startup pivot to whatever sounds fancy that season. After all, only poor people care about things like EBITDA and profit margins repeatability - A.K.A. "getting more money".
i'm feeling so sick right now.
PM invited team for today to present his "vision": "<name of our component>: what it is and what it is not".
but it didn't make sense and showed that he hadn't understood the problem at all. the whole architecture made no sense given the problems that shall be solved. his architecture diagrams missed some essential parts that were actually the giant weak points of his concept. his pseudocode, that should exemplify interactions between components, didn't address the complexity of required interactions at all. it's like he expects some magic to happen and has no fucking clue about the requirements (but acts like it), even though he is the manager of this software project.
and when devs ask really interesting questions that fundamentally question his concept, discussions lead to nowhere and questions are not answered. at some point he literally said "there is no such thing as <name of our component>, i still have to find this out"
really!? after one and a half year, since you sold the idea for this component to upper management, and after half a year of development, you still can't tell what it is what we actually want to build? are you fucking serious?!
at some point in discussion he said that these questions need to be answered but that "there's no time left", and he ended the meeting. although there was still half an hour of meeting time left.
i'm so fucking sick of this, i hate everything right now. i can't listen to this bullshit any longer. in discussions, he contradicts himself all the time, it is so fucking surreal i'm starting to feel like i'm insane.
it makes me really sad and tired. i don't want to care about this shit any longer.14
If nobody hates you, you're doing something wrong ~ House MD
Tl;Dr : I'm pissing the right people off and my God I like it
That's what I've known and have confirmed doing my current side project with my gf, we are working on a ratemyprofessors clone with extra spicy features, one in particular is so spicy some teachers will be put in a position in which they would rather grind hot peppers with their butt cheeks.
Don't get me wrong, there are good teachers (some of which actually showed support) but some are not good teachers and some aren't good people either; I've decided it's time to stop complaining and take action.
We recently released an alpha and I presented it to a teacher I had this semester (one of the "not so great" kind) as a DB proyect cuz fuck it I'm not doing 2 projects.
This teacher is your run of the mill "I'm lazy and I don't care" teacher and she ran the classroom like a shitty kindergarten, so much so, one of the teams was presenting a buggy admin site as their project and she started talking on the phone! Right up on their faces!!
My turn, I go up and handle her a 30 page printed thesis of my project and said that unlike my mates, I was going to start presenting the idea and then the actual software...why is it printed?, She said; Because I won't be projecting the PDF ma'am, I actually made a professional presentation and that way you can read more technical details while I give a broad overview...
I started talking about the huge issues students face and my research about it, undisciplined teachers, no class structure ~ abrupt interruption ~ "yeah I know like, you are giving so much statistics and numbahs but where is the database?"
I got pissed off because the whole purpose of printing and giving her the docs was for her to ask specific questions AT THE END! So I told her I was getting there and to ask questions at the end...I start showing off the system's sweetest features... everyone got quiet...a girl on the front row kept looking at the teacher and then back to the board with her eyes wide open, the teacher was visibly upset.
I asked someone to please help me by using the site being projected for everyone to see, he searched the teacher's name and it obviously popped up cuz I scrapped the whole teacher index site... some people gasp and others start murmuring.
She freaked and started arguing saying that frontend can't be just HTML and CSS, where did you mentioned x and y feature? admit it's just teacher evaluations! where did you get the teacher names? I want the scripts!....it went on even 10 minutes after class and the next class with a police like interrogation.
So yeah, something tells me I'm not getting an A, but I'm happy after all because that's the kind of reaction I want from those types of professors.
Worth it 😎8
how to become a true scum master:
- formulate jira tasks for your inferiors as vague as possible, best they don't make any sense
- before sprint start, ask the subhuman being to estimate storypoints, and if they say they can't really tell with this description and choose the highest estimate, say "okay, let's estimate it to one sprint length", so they can actually work on it within one sprint (which makes total sense)
- if the scum dares to question the content of the ticket and begs for more details, be like teflon and give no useful answer at all. if they continue asking for a meeting to discuss the ticket, tell them to have a meeting with a coworker about it (who also has no clue). don't be available for them because you have more important stuff to do.
- bully them during daily standups that they didn't create clear subtasks from this task and criticize them because you have no idea what they are doing. tell them they are having performance issues and suspect them to sit on their lazy asses all day.
- criticize the team in general for bad performance, bad item tracking and never say something nice, to make sure everybody loses even the last bit of intrinsic motivation for the project.
stay tuned to learn how to make yourself a skull throne out of those filthy dev smartasses ^.^7
meeting with PM, 1:1
me: well, to be honest, i think there is also some room for improvement concerning communication in our meetings. the discussion culture in our meetings could be more open.
PM: what do you mean? i don't know what you're talking about.
me: well, i feel sometimes that in meetings, you overly challenge what colleagues suggest. on the other hand, it's really hard to argue against what you are saying. what you say is often like engraved into stone and it is hard to argue against that, but the next day you might have changed your mind again and then things are different, but engraved into stone again.
PM: hmm. can you give me some more concrete example?
me: well... (gives some examples) it's just that it would be nice if you would listen more to what people say in meetings and try to understand what they actually mean or want to say, instead of saying "nah, that's not how we do it" or "no, that's wrong"... just.. well, have more trust in our skills, try to find out what people mean before you discard what you think they said... a bit more of appreciation and openness.
PM: oh, i can tell you, i'm the MOST open manager in this whole company.
PM: but anyway, i will think about it.
me: well... okay. also i see there are some challenges within our team concerning intercultural communication. i mean, communication between Germans and Indians is in general a bit problematic in our company, and maybe it is a good idea to have some workshop together concerning intercultural competences... i think we could benefit from that. (what i actually meant is, these problems exist, but currently i see them more on his side or between him and Indian colleagues, because e.g. he tends to harshly criticize people in daily standups, and if we "direct" Germans already feel affronted by his behavior, how must Indian guys feel about it? in fact, 2 Indian devs already left the project. also communication doesn't really work well, in a way that there's often a great mismatch between his expectations and what Indian devs actually think they have to do)
PM: i can tell you, i really understand our Indian colleagues, i really know how to work with them. also, their working style has greatly improved since project start. (which doesn't feel quite right after he totally ripped apart the work of one guy in the last sprint review meeting)
of course, that's not the whole conversation, but it's kind of a symptomatic example for the whole situation...11
Phone call with random guy:
"Hi I have an awesome idea for a mobile app that's going to change the world. I just don't know how to program it."
Me: "cool, let's set up a meeting to hash out the details and discuss the project & costs"
Guy: "I was hoping you would be able to do it for 10% equity, it's gonna make millions!"
I don't know if I'm being pranked or not, but I work with my boss and he has the strangest way of doing things.
- Only use PHP
- Keep error_reporting off (for development), Site cannot function if they are on.
- 20,000 lines of functions in a single file, 50% of which was unused, mostly repeated code that could have been reduced massively.
- Zero Code Comments
- Inconsistent variable names, function names, file names -- I was literally project searching for months to find things.
- There is nothing close to a normalized SQL Database, column ID names can't even stay consistent.
- Every query is done with a mysqli wrapper to use legacy mysql functions.
- Most used function is to escape stirngs
- Type-hinting is too strict for the code.
- Do not use a package manger composer because he doesn't have it installed.. Though I told him it's easy on any platform and I'll explain it.
- He downloads a few composer packages he likes and drag/drop them into random folder.
- Uses $_GET to set values and pass them around like a message contianer.
- One file is 6000 lines which is a giant if statement with somewhere close to 7 levels deep of recursion.
- Never removes his old code that bloats things.
- Has functions from a decade ago he would like to save to use some day. Just regular, plain old, PHP functions.
- Always wants to build things from scratch, and re-using a lot of his code that is honestly a weird way of doing almost everything.
- Using CodeIntel, Mess Detectors, Error Detectors is not good or useful.
- Would not deploy to production through any tool I setup, though I was told to. Instead he wrote bash scripts that still make me nervous.
- Often tells me to make something modern/great (reinventing a wheel) and then ends up saying, "I think I'd do it this way... Referes to his code 5 years ago".
- Using isset() breaks things.
- Tens of thousands of undefined variables exist because arrays are creates like $this = 5;
- Understanding the naming of functions required me to write several documents.
- I had to use #region tags to find places in the code quicker since a router was about 2000 lines of if else statements.
- I used Todo Bookmark extensions in VSCode to mark and flag everything that's a bug.
- Gets upset if I add anything to .gitignore; I tried to tell him it ignores files we don't want, he is though it deleted them for a while.
- He would rather explain every line of code in a mammoth project that follows no human known patterns, includes files that overwrite global scope variables and wants has me do the documentation.
- Open to ideas but when I bring them up such as - This is what most standards suggest, here's a literal example of exactly what you want but easier - He will passively decide against it and end up working on tedious things not very necessary for project release dates.
- On another project I try to write code but he wants to go over every single nook and cranny and stay on the phone the entire day as I watch his screen and Im trying to code.
I would like us all to do well but I do not consider him a programmer but a script-whippersnapper. I find myself trying to to debate the most basic of things (you shouldnt 777 every file), and I need all kinds of evidence before he will do something about it. We need "security" and all kinds of buzz words but I'm scared to death of this code. After several months its a nice place to work but I am convinced I'm being pranked or my boss has very little idea what he's doing. I've worked in a lot of disasters but nothing like this.
We are building an API, I could use something open source to help with anything from validations, routing, ACL but he ends up reinventing the wheel. I have never worked so slow, hindered and baffled at how I am supposed to build anything - nothing is stable, tested, and rarely logical. I suggested many things but he would rather have small talk and reason his way into using things he made.
I could fhave this project 50% done i a Node API i two weeks, pretty fast in a PHP or Python one, but we for reasons I have no idea would rather go slow and literally "build a framework". Two knuckleheads are going to build a PHP REST framework and compete with tested, tried and true open source tools by tens of millions?
I just wanted to rant because this drives me crazy. I have so much stress my neck and shoulder seems like a nerve is pinched. I don't understand what any of this means. I've never met someone who was wrong about so many things but believed they were right. I just don't know what to say so often on call I just say, 'uhh..'. It's like nothing anyone or any authority says matters, I don't know why he asks anything he's going to do things one way, a hard way, only that he can decipher. He's an owner, he's not worried about job security.13
Stakeholder: Users are connecting invalid memberships to their web accounts. They shouldn’t be able to do that.
Me: Their memberships were valid when they set up the account. Your team’s record de-duping project is the issue here. You decided to mark those memberships as invalid.
I’m real tired of this stakeholder acting like this is a website issue or user error. Plus, this chaos could have been avoided if they and other involved stakeholders had just cc’d me on this de-duping project. I would have said their approach was not a good idea. But they didn’t because they want to do what’s convenient for them. If they want to be a reliable source of truth for our data, then they need to be responsible with how they’re handling that data.2
me: i looked into the customer dev's project and even though it's C#, i can use it as a source of inspiration for my own C++ library.
PM: okay, maybe we can even still use it, so that you use a C# dll with your C++ code.
other colleague: that's a bad idea. it can already be a challenge to use unmanaged c++ in dotnet, but the other way round it's even more difficult. C# and C++ are languages that behave quite differently and it will be hard to implement a correctly working interface.
PM: okay. well... then please analyze this project's complexity in terms of LOC and create a class diagram, so we get an idea of how complex it is.
PM: hmm... maybe we should split this topic. since dev x will also rely on your library, analyze this project together with him, each of you look at another part of the classes.
me: that's.... i think that's a bad idea. implementing this functionality in this library is my job, not of dev X. he won't be involved in implementing any of the funcionalities and for him, it shouldn't matter how this works.
PM: yeah, but since we are prototyping, maybe we should just violate the "separation of concerns" rule.
me (internally): (ノಠ益ಠ)ノ彡┻━┻
in the end i could convince him to do it my way, but for fuck's sake... when was the last time he actually succesfully implemented something? 🤦♀️
In only I were 1.15 times faster or had better planning (why didn’t I use the Saturday Sunday at the end of the first week 🤦🏼♂️), things would’ve happened differently. I think I’m becoming stupid and my tolerance levels are going down too.
So this happened a while back ..
I was given a code base which didn’t have any changes in the last two years and I was asked to add a feature to this. This was my first task in this new group I was part of. I had two weeks to do this starting on a Monday.
Partway through implementation I realised that the code base is a pile of shit and I wasn’t doing myself or anyone else any favours by shitting on it.
It’s Wednesday. I’ve dealt with many other codebases before but the urge to rewrite this particular one was just unlike anything else. And so I started changing code and before I realised, I modified almost all the important files.
I got sick of this mixed up code and started a rewrite from scratch. It was Friday and I finally had just the basic mechanics of the whole thing working. Now I needed to add all the functionalities and also my new feature.
It should be noted that at no point did I tell any of the superiors I was doing this fearing what they might say and also fearing going back to adding shit to shit.
By the end of the second week, the rewrite was complete and I only had the new feature to add. The rewrite was significantly smaller, compartmentalised and well commented because I did the bloody commenting (where it was not obvious from the code). So on Friday, I was asked about the progress and I told them that it needed some more work and that I need a couple more days. And I got shit for it. I was told it was a mistake giving this task to me and that I am not competent enough. One of the superiors told the other superior about perhaps giving me something more suited to my level. To be fair to them, they were expecting the work in the two weeks to be for the new feature.
And in two days’ time, on Monday (I worked on Saturday and half of Sunday), I finished the whole thing and gave it to them. New feature was working. And I still did not tell them what I did. The tool worked fine so they had no idea what happened because this project had no version control and I pointed them to a new directory with the new code with a first commit.3
Me: I've not done this before, so any guess would be pure assumption.
Client: Okay, but still, you would have some idea, right?
Me: It might get done in 3 days or may take even 30.
After 3 days:
Client: But you said that it will be done in 3 days. Now you are saying there MVP is not ready. Do you even know, your part is the most critical one in the project. We believed in you. We trusted you. This is insane. It was a wrong decision to choose you.
Me (in my head): Didn't I say, this is the first time I am trying to scrape Coles? It might take time?
Me (in actual): I understand, it is getting delayed. Am trying to get this up ASAP....
Anyone else experienced toxic clients but still didn't lose their cool?14
When I was in college OOP was emerging. A lot of the professors were against teaching it as the core. Some younger professors were adamant about it, and also Java fanatics. So after the bell rang, they'd sometimes teach people that wanted to learn it. I stayed after and the professor said that object oriented programming treated things like reality.
My first thought to this was hold up, modeling reality is hard and complicated, why would you want to add that to your programming that's utter madness.
Then he started with a ball example and how some balls in reality are blue, and they can have a bounce action we can express with a method.
My first thought was that this seems a very niche example. It has very little to do with any problems I have yet solved and I felt thinking about it this way would complicate my programs rather than make them simpler.
I looked around the at remnants of my classmates and saw several sitting forward, their eyes lit up and I felt like I was in a cult meeting where the head is trying to make everyone enamored of their personality. Except he wasn't selling himself, he was selling an idea.
I patiently waited it out, wanting there to be something of value in the after the bell lesson. Something I could use to better my own programming ability. It never came.
This same professor would tell us all to read and buy gang of four it would change our lives. It was an expensive hard cover book with a ribbon attached for a bookmark. It was made to look important. I didn't have much money in college but I gave it a shot I bought the book. I remember wrinkling my nose often, reading at it. Feeling like I was still being sold something. But where was the proof. It was all an argument from authority and I didn't think the argument was very good.
I left college thinking the whole thing was silly and would surely go away with time. And then it grew, and grew. It started to be impossible to avoid it. So I'd just use it when I had to and that became more and more often.
I began to doubt myself. Perhaps I was wrong, surely all these people using and loving this paradigm could not be wrong. I took on a 3 year project to dive deep into OOP later in my career. I was already intimately aware of OOP having to have done so much of it. But I caught up on all the latest ideas and practiced them for a the first year. I thought if OOP is so good I should be able to be more productive in years 2 and 3.
It was the most miserable I had ever been as a programmer. Everything took forever to do. There was boilerplate code everywhere. You didn't so much solve problems as stuff abstract ideas that had nothing to do with the problem everywhere and THEN code the actual part of the code that does a task. Even though I was working with an interpreted language they had added a need to compile, for dependency injection. What's next taking the benefit of dynamic typing and forcing typing into it? Oh I see they managed to do that too. At this point why not just use C or C++. It's going to do everything you wanted if you add compiling and typing and do it way faster at run time.
I talked to the client extensively about everything. We both agreed the project was untenable. We moved everything over another 3 years. His business is doing better than ever before now by several metrics. And I can be productive again. My self doubt was over. OOP is a complicated mess that drags down the software industry, little better than snake oil and full of empty promises. Unfortunately it is all some people know.
Now there is a functional movement, a data oriented movement, and things are looking a little brighter. However, no one seems to care for procedural. Functional and procedural are not that different. Functional just tries to put more constraints on the developer. Data oriented is also a lot more sensible, and again pretty close to procedural a lot of the time. It's just odd to me this need to separate from procedural at all. Procedural was very honest. If you're a bad programmer you make bad code. If you're a good programmer you make good code. It seems a lot of this was meant to enforce bad programmers to make good code. I'll tell you what I think though. I think that has never worked. It's just hidden it away in some abstraction and made identifying it harder. Much like the code methodologies themselves do to the code.
Now I'm left with a choice, keep my own business going to work on what I love, shift gears and do what I hate for more money, or pivot careers entirely. I decided after all this to go into data science because what you all are doing to the software industry sickens me. And that's my story. It's one that makes a lot of people defensive or even passive aggressive, to those people I say, try more things. At least then you can be less defensive about your opinion.53
After reading some rants abut stupid project managers I remembered this situation that happened to me a decade ago.
One of the tasks was to move some html component to different place on the page. The whole page was a mix trs and tds and to achieve that I had to rewrite the whole page structure. I estimated around half a day to complete that task. It was my first job and I was not great back then, but still it was reasonable amount for this task.
Now lets introduce my PM : the guy was a complete tool. He was a former hardware store manager ( ͡° ͜ʖ ͡°) and had no idea what we were doing.
He started ranting how on earth such simple task can takes so much time. I started explaining myself, but he wasn't listening. Instead he started sharing his screen, he made a screenshot of the page, pasted it to the ms paint, cut the component, and moved it to desired place. Then he said : It took me like 10 sec to complete the task and I have no experience, maybe I will replace you?
I was speechless. I had no words and I just kept silence.
Then he said he would reassign this task to X, because he is competent.
X spend more then 4 hours and I heard no apologies.6
Things I didn't say to this project advisor, which I wish I could have:
1. Tales of your incompetence do not interest me.
2. You cannot just say something is bad and have absolutely zero direction of how it could be improved. You cannot criticize and then in response to "how do you want it changed?" say "idk".
3. You're incompetent, and I have zero clue as to whose ass have you kissed to get to where you are.
4. I hope you suffer, more than you make people who work with you suffer.
5. Now I know why the other guy resigned.
6. I'm glad that this project is over by the end of this week. I'm just afraid that you may drag it out for longer, so my fears don't let me enjoy the idea of not seeing you ever again.2
Visual Studio 2022 compiles our internal c++ cmake project as a mix of x86 and x86_64 binaries, then fails to link.
VS 2019 correctly compiles everything as x86_64.
No idea why. And, obviously, it's not a documented problem.6
Back from the dead with more vaguely-obscure technical bullshit
Working on a chatbot for my BS-CS. Almost done with college, so the assignment is to make a bot that recommends you a CS career. Cool.
I get through making a joint personality and skill-interest quiz that gives you number grades on different spectra. So far, so good. But this project has to be done entirely in pandorabots' online editor. So no scripting. Zero scripting. 100% markup language. That means to even do math, you need to copy a standard library off GitHub.
I mean, that's fine and all, but the syntax is just atrocious, because everything in AIML is input->response. If you ask the bot "what is 5+5?" you must have it go:
- recognize pattern WHAT IS * + *
-> redirect -> XADD * XS *
-> do math -> recurse result
uncomfy. Plus, variables can only be accessed through <get> and <set> tags. But mangeable.
So here's where the story becomes a rant.
In the standard docs, there's all these math functions, and they work. There's also logic.
And then there's this fucker
XIF [ * ] XS [ * ]
Which has no documentation and just doesn't work. No idea what the brackets mean. Tried putting in TRUE, tried putting in true math statements (5 XEQ 5), tried putting in recursion tags to trick it, tried everything. It just ignores it.
There is not a single comment, stackOverflow post, or youtube video that even acknowledges the existence of this thing.
So unless I want to convert the entire logic of my program into nested SWITCH statements with the <condition> tag, I'm just fucked.
The icing on the cake is, I go to tech support on Pandorabots to ask for help with this. What do they have except a chatbot to cheerfully tell me that no humans are around to help me right now?
gonna have to build an entire fuckin turing machine in markup tags to calculate whether x = 3
Colleague: implements stuff and it works.
Boss: i have a good idea how to make it different and better.
Me: idea sounds neat but what colleague did works 100% fine. We shouldn't waste time for changing a running system.
Other_collegue: i have implented it like boss said in project 2.
Boss: they shouldn't be different.
Me (being the one to decide here) : come on okay then, let's do it like they say.
colleague: implements it like they said.
Months: pass by.
Today I have realized that the former solution is way better. I am so sorry, colleague, that i didn't stood up more for your solution.4
This is the strangest thing that has happened to me:
I once worked as a intern at a consultancy company. Me and another junior got a brand new customer project assigned to us (bad idea I know) we spent 2 months working on that project, building a website from scratch. The customer paid 10 000€ for it. The website sucked and didn't work properly in the end.
I ended up leaving the company for unrelated reasons and left the project. A couple of months later I asked the other junior whatever happened to that project and he said that the customer seemed to have forgotten about the project and no one was working on it anymore
Like what? How do you just forget about something you paid 10 000€ for? I mean I'm happy they did as it was the worst project I've built4
So, I've had a personal project going for a couple of years now. It's one of those "I think this could be the billion-dollar idea" things. But I suffer from the typical "it's not PERFECT, so let's start again!" mentality, and the "hmm, I'm not sure I like that technology choice, so let's start again!" mentality.
Or, at least, I DID until 3-4 months ago.
I made the decision that I was going to charge ahead with it even if I started having second thoughts along the way. But, at the same time, I made the decision that I was going to rely on as little external technology as possible. Simplicity was going to be the key guiding light and if I couldn't truly justify bringing a given technology into the mix, it'd stay out.
That means that when I built the front end, I would go with plain HTML/CSS/JS... you know, just like I did 20+ years ago... and when I built the back end, I'd minimize the libraries I used as much as possible (though I allowed myself a bit more flexibility on the back end because that seems to be where there's less issues generally). Similarly, any choice I made I wanted to have little to no additional tooling required.
So, given this is a webapp with a Node back-end, I had some decisions to make.
On the back end, I decided to go with Express. Previously, I had written all the server code myself from "first principles", so I effectively built my own version of Express in other words. And you know what? It worked fine! It wasn't particularly hard, the code wasn't especially bad, and it worked. So, I considered re-using that code from the previous iteration, but I ultimately decided that Express brings enough value - more specifically all the middleware available for it - to justify going with it. I also stuck with NeDB for my data storage needs since that was aces all along (though I did switch to nedb-promises instead of writing my own async/await wrapper around it as I had previously done).
What I DIDN'T do though is go with TypeScript. In previous versions, I had. And, hey, it worked fine. TS of course brings some value, but having to have a compile step in it goes against my "as little additional tooling as possible" mantra, and the value it brings I find to be dubious when there's just one developer. As it stands, my "tooling" amounts to a few very simple JS scripts run with NPM. It's very simple, and that was my big goal: simplicity.
On the front end, I of course had to choose a framework first. React is fine, Angular is horrid, Vue, Svelte, others are okay. But I didn't want to bother with any of that because I dislike the level of abstraction they bring. But I also didn't want to be building my own widget library. I've done that before and it takes a lot of time and effort to do it well. So, after looking at many different options, I settled on Webix. I'm a fan of that library because it has a JS-centric approach. There's no JSX-like intermediate format, no build step involved, it's just straight, simple JS, and it's powerful and looks pretty good. Perfect for my needs. For one specific capability I did allow myself to bring in AnimeJS and ThreeJS. That's it though, no other dependencies (well, at first, I was using Axios because it was comfortable, but I've since migrated to plain old fetch). And no Webpack, no bundling at all, in fact. I dynamically load resources, which effectively is code-splitting, and I have some NPM scripts to do minification for a production build, but otherwise the code that runs in the browser is what I actually wrote, unlike using a framework.
So, what's the point of this whole rant?
The point is that I've made more progress in these last few months than I did the previous several years, and the experience has been SO much better!
All the tools and dependencies we tend to use these days, by and large, I think get in the way. Oh, to be sure, they have their own benefits, I'm not denying that... but I'm not at all convinced those benefits outweighs the time lost configuring this tool or that, fixing breakages caused by dependency updates, dealing with obtuse errors spit out by code I didn't write, going from the code in the browser to the actual source code to get anywhere when debugging, parsing crappy documentation, and just generally having the project be so much more complex and difficult to reason about. It's cognitive overload.
I've been doing this professionaly for a LONG time, I've seen so many fads come and go. The one thing I think we've lost along the way is the idea that simplicity leads to the best outcomes, and simplicity doesn't automatically mean you write less code, doesn't mean you cede responsibility for various things to third parties. Those things aren't automatically bad, but they CAN be, and I think more than we realize. We get wrapped up in "what everyone else is doing", we don't stop to question the "best practices", we just blindly follow.
I'm done with that, and my project is better for it!
Project idea: make a fucking neural network visualizer, that gets my fucking model and gives me a proper fancy fucking visualisation in jpeg. 😐
I'm angry cuz I have to make that shit manually rn, and shit ain't playing nice.6
Why are banks so absolutely archaic and stupid when it comes to tech? I work in a Services based company and currently engaged with a very famous bank to build accounting software for Mutual Funds. The day to day stupidity of this client is driving me absolutely crazy.
They couldn't give us proper requirements, and my company was stupid enough to kickoff the project without official sign off. Not only did they change the requirements, but they added a shit ton MORE features, and essentially bullied us into completing it all in the same timeline. Their attitude is pathetic, they shit talk our dev team, they make us build the worst possible UX, and then complain that it's not looking good and not working well. They have absolutely no idea about any of the technical stuff and think that software is a magic box that will give them what they want.
I swear I have a lot of examples but I'm so angry right now that my words are fumbling and I can't think straight. Stand up is in 45 minutes and I'm just dreading it. Idk how to tell everything, it's just... AAAAAAAAAAAAAAAAAAAA5
...another (probably about fourth) completely futile attempt at making MASM compiling pipeline work...
...what the fuck... seriously, i've spent together about two weeks of time trying to make a fucking default hello world compile... ml64 problems, then rc.exe problems, apparently i was missing some dumb CommonService.dll which not only doesn't exist anywhere on my computer, but it doesn't even seem to exist at all in this fucking dimension. After several hours I had the bright idea of "fuck MS rc, let's just grab any other random resource compiler that I can find, and see if that one works".
Funnily enough, it does. Except Visual MASM can't run it from it's build process because it fucks up the commandline call, so I need to run it manually, and then when I run the build from V-MASM, the rc call still fails, but then it checks for the resulting .res file and finds it, so it happily continues with success...
...and now fuckin... what even is it? *goes to check*
oh yeah, now linker is shitting itself:
LINK : fatal error LNK1104: cannot open file 'user32.lib'
And I'm just completely defeated, just searching system-wide for the lib intending to copy it into the linker folder because fuck this fucking bullshit, I've had enough of drowning in MS BuildTools versions and installations and uninstallations and fixes and modifys and repairs and all that FUCKING BULLSHIT.
HOW. THE. FUCK. is this in any way usable for anyone. I suspect nobody ever actually tried to build an assembler project in the last 30 years, so nobody noticed it DOESN'T. FUCKING. WORK.
THIS is why I hate anything that's not a proper IDE where I install ONE thing, and do everything in that ONE IDE and let IT figure out all this linuxy-soft-coupled bullshit of twentyfuckingthousand fucking useless commandline apps threwn around the whole fucking system where I'm fucking supposed to know where the fuck what is and which version and GO FUCK YOURSELF.
GIMME. FUCKIN. ONE: IDE. WHICH. WILL. INSTALL. ALL. THAT. IT. NEEDS. TO. BE. FUCKING. ABLE. TO. FUCKING. WORK. AND. COMPILE. SHIT!!!
So today is my last day working in [censored] company. Even though today is the last day and they have my replacement, they still expect me to complete the project 'NOW'. So I decided to make it quick the way it supposedly was. He wanted me to do tonnes of adjustments.
To prevent me from getting more stressed over satisfying my boss' requirements or meeting my boss' expectations, I made the app return the screenshot of the design. So I screenshot the design and render it to the app. So far that's the fastest route I can think of.
I really do not want to do this. But he left me no choice due to his impatient and adamant behaviour. That's why I decided to haste the project by returning the screenshot. (To be honest, this is unprofessional and dishonest, but he left me no other choice to violate my principles).
We argued about the negotiation with regard of the timeline for the deliverance of the project, I proposed 6 months countless times. He constantly denied that I did not negotiate with him. Unfortunately, the 'negotiation' defined by his action is merely a projection of an illusion of negotiating, but whatever is discussed on the table will deliberately fall into his idea and unrealistic high expectations.
Working in this company caused me damages beyond repair. My 4 weeks in this company were my worst nightmare. I don't get enough sleep due to the constant stress from the employer to complete the project in the 'immediately' phase. I brought these issues afore the table for the discussion. He simply deny it and blame it all on me, saying 'that it was my own negligence, to the company. I do not subscribe to his methodology of handling stress, by working more and contributing more to the company as passionate as possible. I am passionate about what I do and my position, what I do not passionate about is being unreasonable, ignorant, delusional and inhumane.
I learnt my lesson now. I vow to myself that In the future if I have the opportunity to be a team leader, my former employer is not and never be someone who can be my role model as a leader.
Any night, 1:30am, bedtime: "Yes! I can't WAIT for tomorrow to begin! I'm gonna make SO much progress on that personal project that I just KNOW is gonna change the world and make me a billionaire! My time is now!"
Next day, 9am, first call of the day: "Ugh, waking up SUUUUUCKS! But, fine, just gotta get through the workday, then it's beast mode time!"
5pm: "Ugh, that day SUCKED... meeting after meeting, constant interruptions for the few minutes I got to hack code, SO many emails, and hey, good day, only five new things pushed down from corporate to bang my head against! Feelings pretty mentally exhausted, but it's all good, I fortunately love this programming stuff, so first dinner, then a little exercise, spend some time with the family, and then it's time to COOOODE!"
10pm: "Ok, house is FINALLY quiet (fucking dog), just a little noise from my daughter staying up way too late again... kinda spent, but this project still excites me, and I may not get as much done as I was hoping, but fine, I can still make some tangible progress and that's what matters. Maybe just one last quick check of email, Reddit, make sure there's no new Hot Ones or Honest Trailers I gotta watch, update IDEA plugins and see what's new, then it's work time! Nothing can stop me now!"
Any night, 1:30am, bedtime: "SHIT! I GOT FUCK ALL DONE AGAIN! GO DAAAAAAAMN IIIIIT!!!!"3
- I built a good automation mechanism with a decent UI [slackbot]
- used as few frameworks and ext libs as I could. Mostly based on bare java
- client wanted to migrate it to Spring
- got 3 peeps assigned for the migration
- 2 months later their effort failed.
- win: my project has not been molested with Spring
- i had an idea to develop smth on top of jmeter, using jmeter as a lib
- I downloaded and imported jmeter's src code
- static contexts, singletons, jmx/rmi everywhere [java is deprecating rmi support]
- not gonna happen... Not gonna build a new project on top of a legacy codebase.5
The universe has taken a cactus.
It proceeded to gift the cactus with a toxin that greatly enhances the stimulus of pain.
After the universe watched it's miraculous creation it decided to shove it up so far my arse that my gag reflex turned on and I puked a lot of cactus.
Didn't sleep well, weekend hardware migration finish, today an old server got moved.
Some part, most likely the redundant PSU, had a short circuit - decided to take the switches out... Which are the only non redundant hardware...
There was only one critical system in the whole rack, that was one redundant firewall.
Guess what happened..... Naaaa?
For whatever reason, the second firewall didn't kick in, so large part of internal network unreachable as VPN was on the firewall.
That's not cactus level yet.
Spontaneously a large part of the work at home crew decided to call, cause getting an email wasn't enough.
So while all the phones were ringing and we had the joyful fun to carefully take apart a whole rack to check for possible faulty wiring / electric burns / hardware damage and getting firewall up and running again...
Some dev decided to run a deployment (doable as one of the few working at the company at the moment -.-).
I work from home, but we had a conference phone call running the whole time so I could "deescalate" and keep others up-to-date. So me on headphone with conference call, regular phone for calls, while typing mails / sms for de-escalation.
Now we're reaching cactus level, cause being tortured by being annoyed out of hell by all telephone ringing, the beeping of UPS (uninterruptible power supplies), the screaming of admins from the server room and the roaring of air coolers…
Suddenly said dev must have stood in the midst of the chaos… and asked for help cause "the deployment broke, project XY is offline"...
I think it was the first time since years that I screamed at the top of my lungs.
Bad idea (health issues)… but oh boy was it a pleasure to hear my own voice echo through the conference speaker and creating an echoic sound effect.
It was definitely worth coughing out my loungs for the next hour and I think it was the best emotional outburst ever.
I feel a bit sorry for the dev, but only a tiny bit.
After the whole rack thing, the broken deployment fixing and the "my ears are bleeding and I think I will never be able to talk again" action...
We had to roll out several emergency deployments to fix CVEs (eg libexpat).
This day was a marvelous shit show.
I will now cry myself to sleep with some codein.1
Seriously guys, how do you deal when remotely collaborating with lets say not the most motivated and competent devs?
Our scrum team got formed about 6 months ago from leftover devs of other teams, choosing a couple competent devs at the core and other devs who were kinda gotten rid of by their old teams, and after 6 months of working together I can see why.
Situation is that we are 7 devs in our team and 4 of devs are not pulling their weight. They are seniors on paper, but in reality not really.
They rarely take something complex to work on and even if they do, they make sure they take as much time as possible. Two of them are contractors who I imagine decided to treat the job as a paycheck and nothing more. There is no initiative, no push to make things better and in general attitude is to do bare minimum: only what is being asked and then delaying the hell out of tasks.
Im not exaggareting: Im talking about every possible way of dragging out the tasks: delaying communication, sitting around for a few days while not asking for new tasks to work on if they are blocked, also avoiding standups. Working for days on very basic comments in their MR's. Getting "sick" for a couple days on deadline when things get tough, so that someone else would come in, refactor and save the day. Once or twice it could be a coincidence, but nowadays I can already guess ahead of time what kind of trick they will pull now.
Our project is an android app where we have to support few different tablets, so the most recent new trick that I witnessed is devs avoiding hardware delivers, sometimes for months. Idea seems to be if you dont ping your team that you dont have hardware, then you can avoid working on related tasks with that hardware.
Worst part is that they get away with it. Our teamlead is a senior dev who is first time teamlead, doesnt code anymore and doesnt want to rock the boat. He is the type of teamlead who sets arbitrary deadlines, makes it sound that they are urgent and takes a few days off in the middle of chaos just before deadline. Restrospectives don't help at all and if I try to bring up stuff directly to him he tells me to bring it up during retrospectives. We discuss issues, rant a bit ant then continue carying on like nothing happened and nothing changes.
So little by little in the past 6 months we came to this point where 2-3 devs are carrying the weight of the team and are in a constant crunch mode, while others are allowed to slack. Its becoming ridiculous.
Problem is that this is starting to affect our morale. Only way that is left to keep my sanity right now is to pull away sometimes and also slack. Then I come back at full capacity, give my best for a couple weeks until I have to go and fix some basic leftover task that has been purposefully dragged out for 2 months and left unfinished, then I just want to scream and I know that its time to disconnect again.9
I did not think that making a serverless Discord bot would be such a learning experience. The code itself was easy. The hard part was the infrastructure, because I decided to automate it all with Terraform and deploy it on AWS.
Before this project, I had no idea how API Gateways worked. Now I still have very little idea how they work but I managed to build one anyway. Eventually. And then I had to figure out how to automate the deployment of a lambda layer and function that would both still be managed in the Terraform state, with any code changes triggering a rebuild and update for the resource.
And then I had to untangle a dependency mess because API Gateways have some weird issues where two resources that have no explicit dependencies on each other will throw an error if they don't deploy in the right order.
And then I went the wrong way with Github actions trying to conditionally chain multiple workflows together before I realized I could just put multiple jobs with conditions in a single workflow.
And now after all that work over the course of 2 days, I have a bot that does this:2
Why the fuck is gradle so horrible.
I literally have no idea why anyone would ever use this thing (other than being forced too because somehow the rest of the world is using it).
Every plugin has an arbitrary DSL that you have to magically know by piecing together enough snippets. At that point, no one is actually intuiting anything based on the beauty of the DSL, every build is a frankenstein of different snippets that were pasted from different versions of gradle blog posts or SO posts.
And if you do get it o work then the DSL changes, or it isn't compatible with another plugin.
I just want to write a fucking integration test in Kotlin. Can I just add an `integrationTest` task in `tasks` right next to `tasks.test`? No, obviously it goes in the `kotlin jvm() compilations` section, DUH.
The first thing anyone in the universe should have asked is "how is this better than literally hand writing a makefile"? At least then I would be able to see the commands that it ran.
Now I'm googling how to make the new jvm-test-suite plugin work when you're using the Kotlin plugin but every single result on Google for `jvm-test-suite kotlin` just returns the docs for jvm-test-suite (whose snippets obviously didn't work in my project) because those doc pages have "Kotlin" written above each of the gradle snippets.
Please just end this.
Oh and dev rant sucks too. It thinks anything separated by dots in a url.2
When freelancing, do you charge for estimations?
Situation is that I'm a sole android developer (4 years experience) and each time I encounter some agency or a client I feel like I'm between a rock and hard place.
Some of the clients come with ready with list of requirements and ready backend/design sketch and they want me to give them a rough estimate.
It's as if they expect me to take only 2-3 hours for estimation and that's it. But actually this was the second time where I had to spend around 10 hours investigating everything so I would be able to give a half decent estimation at least.
This particular client's project turned out to be a mess and I had to spend 10+ hours to estimate only 70% of his project. I asked him if he would be able to pay under a reduced tarrif and the client was shocked, started doubting my competence level and so on.
In the end I gave him a rough 400 hours estimate and he started complaining that others estimated only 200 hours for his project. So in the end I just wasted my time.
Now it's my bad that I voluntarely invested too much time in this estimate without notifying client prior that I might ask to pay for estimation, next time I will try to do this ahead of time.
It feels like only big agencies who have free resources have a competetive edge against sole freelancers, it really sucks wasting so much time to estimate half baked requirements and assets. Also most of these clients and agencies are purely lazy and most of the time they don't even plan signing, all they need is someone to estimate their work for them.
I'm thinking of starting to charge for estimations and communications in a form of consultations. Is that a good idea?8
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
(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
Alright, my very first post here was about this project and I am thinking it out loud again.
I see a problem and I am struggling to find a solution.
Now what I am thinking of is to articulate the problem well and state WHY I believe it needs to be solved. There are some reasons which must be presented in a capitalist way.
Furthermore, I am thinking of doing a market research to understand various demographics, validate the idea, and figure out the product-market fit.
Now, this qualitative research and quantitative data will help me decide whether it is worth putting in the efforts to solve the problem or not.
And since, we have an MVP already (funnily yes, we built it before all of the above), that will help me validate the tangible solution.
Once we get a confidence boost, then it will be time to get that single transaction which has net positive cash flow.
Start scaling to 'next billion users', so a billion transaction with net positive cash flow.
I won't be branching out into multiple verticals before be able to sustainably scale the core USP.
And while the second half sounds like, 'I have a million dollar idea', I am trying to be more and more realistic and rationale instead of falling in love with my idea.
I don't even have an idea (read solution) to fall in love with. Rather I have a problem that is bothering me.
So, yes, I am continuing this journey to solve the problem which started in second year of my hostel room and has evolved over 10 years.
How I approach the project: got an idea run at super speed thinks something important on my way there and return with the same speed. 🤔🤔🤔😐
What the shitbiscuit is happening with trying to build a single window, 200 line node project? Who thought it is a good idea to use ShitScript to write desktop applications?15
As a tech lead i sometimes find it very hard to defend developers for no fault of theirs.
Management is completely incapable of noticing hard data like git logs or action items updated on an excel and seems to have an idea that the devs are incompetent , but the ba that sets impossible goals and crap business documentation is competent.
Should i just let the project and juniors burn.3
are you able to give 1/+ hour to any hobby project/self learning (technical, that could help you in infuture switch) ? if yes, HOW??
I want to create this website , but i keep on delaying that. i just have a faint idea of how the assoc technologies would be used , but putting even 1 hour aside becomes difficult once i come back from the gym in the evening. plus the effort to open laptop, refocus self and do something only to close laptop after an hour feels very less rewarding. I can't achieve anything in 1 hour, i need a continuous slot of 6+ hours to achieve something and plan for the next day.
do share any better mind makeup9
I feel super discouraged. I just got a new job from being let go from my previous one, and I’m already thinking about quitting.
They really threw me into the weeds with a couple of complex tasks that require a lot of BE work and all I really do is FE. I’m still just trying to learn how the framework actually works. I think they expect me to become full stack. Now I find myself just starting at the computer screen most of the day because I have no fucking idea how to start working. The codebase and local environment is also fucked up super bad and barely runs on my machine.
Also, whenever I reach out these people they give the most minimal answers and have swollen egos. The frameworks they use have a really shitty community and bad documentation, so googling anything is really pointless. Working on this project, it has made me consider giving up development.
I am wondering if this is just a me thing though. Should I quit or stick with it for a bit?13
Can PMs still reasonably require web apps to be compatible with Internet Explorer? Does the "you gotta to tailor to everyone’s needs" argument still stand nowadays? I ask this because I’ve been working on a client project for about two years now and last time they asked for IE compatibility was about a year ago. I’m preparing for the next time it absolutely stops functioning with IE to debunk their desire to remain stuck in the year 2003.
I know Microsoft simply isn’t supporting it anymore and are discouraging anyone from using it. I feel like it should be enough of an argument. However, often times enough isn’t enough. Anybody have any arguments or examples of why it’s a terrible idea to stick with it?12
I wonder how many github issues have been closed by asking the author to implement the feature they've requested for. In the past, I was confident my issue will be resolved by opening a new one when there's no answer in earlier questions. I can't tell whether the nature of my questions advanced or whether it's a new trend. But I've opened maybe 4/5 issues in recent memory, and each time, the collaborators suggest the feature is one I should contribute to their project by implementing. Isn't this their job as maintainers? I'm already working on something that barely gives me breathing space. I encountered a challenge using your library, and your idea of helping is that I dissent from my own trajectory, acquaint with your project /how to implement what I want, wait for it to get merged etc, before continue what I originally intended. Do they think that's worth it?
Is it just me or is this a common occurrence, lately?22
I got contacted by an other company and I am so unsure whether to accept their offer or stay at my current job.
For now I spend 2 years at my current company. The culture is great and everyone gets treated very well.
The bad part is, that it is located in a part of Germany I really can't stand and to this day fully remote is not an option.
Additionally lots of stuff is really frustrating in my daily work, e.g. colleagues that experiment with critical parts if our infrastructure, resulting in every developer who made the mistake to update the local development stack being unable to work for half a day or so.
Company number two seems to work with a wide variety of technologies for very different projects (it's a consulting compan), would pay me ~28% more than my currently raised pay and allows for full remote.
When I try to look objectively on the facts everything points to accepting their offer, but on the other hand there is this weird feeling of this being a joice that would come to soon...
How do you make such decisions? I already talked to a great colleague of mine, who thinks it might not be a bad idea to stay at the company for an additional year or 2, because I haven't yet reached the point where there is not enough to learn here anymore, which I agree on, but this company seems to offer everything I want.
I feel overwhelmed with this situation :D that's why I would like to know how you people try to tackle such a situation8
Having too many projects in my team and managed to convince my boss that we need more people and even other teams to help on some really critical tasks. It was fine until today the technical project planner decided to scold me for not assigning tasks to developers in other teams for one specific of project of ours.
I tried to explain that its not the best idea external people working on a really spaghetti code project that we will be left to maintain. Its the same problem that led to the current problem.
And the PP response was "they are machines and have worked on many othe team projects".
So the help was delivered as a scolding and my team sucks in their eyes. Without any word from my boss that i havent talked for 6 months except on 2 accessions where someone else demanded of us to focus only on their project. Beautiful ❤️6
Aka... How NOT to design a build system.
I must say that the winning award in that category goes without any question to SBT.
SBT is like trying to use a claymore mine to put some nails in a wall. It most likely will work somehow, but the collateral damage is extensive.
If you ask what build tool would possibly do this... It was probably SBT. Rant applies in general, but my arch nemesis is definitely SBT.
Let's start with the simplest thing: The data format you use to store.
Well. Data format. So use sth that can represent data or settings. Do *not* use a programming language, as this can neither be parsed / modified without an foreign interface or using the programming language itself...
Which is painful as fuck for automatisation, scripting and thus CI/CD.
Most important regarding the data format - keep it simple and stupid, yet precise and clean. Do not try to e.g. implement complex types - pain without gain. Plain old objects / structs, arrays, primitive types, simple as that.
No (severely) nested types, no lazy evaluation, just keep it as simple as possible. Build tools are complex enough, no need to feed the nightmare.
Data formats *must* have btw a proper encoding, looking at you Mr. XML. It should be standardized, so no crazy mfucking shit eating dev gets the idea to use whatever encoding they like.
Workflows. You know, things like
- update dependency
- compile stuff
- test run
Keep. Them. Simple.
Especially regarding settings and multiprojects.
If you want to know how to absolutely never ever do it.
Again - keep. it. simple.
Make stuff configurable, allow the CLI tool used for building to pass this configuration in / allow setting of env variables. As simple as that.
Allow project settings - e.g. like repositories - to be set globally vs project wide.
Not simple are those tools who have...
- more knobs than documentation
- more layers than a wedding cake
- inheritance / merging of settings :(
- CLI and ENV have different names.
- CLI and ENV use different quoting
Which brings me to the CLI.
If your build tool has no CLI, it sucks. It just sucks. No discussion. It sucks, hmkay?
If your build tool has a CLI, but...
- it uses undocumented exit codes
- requires absurd or non-quoting (e.g. cannot parse quoted string)
- has unconfigurable logging
- output doesn't allow parsing
- CLI cannot be used for automatisation
It sucks, too... Again, no discussion.
Last point: Plugins and versioning.
I love plugins. And versioning.
Plugins can be a good choice to extend stuff, to scratch some specific itches.
Plugins are NOT an excuse to say: hey, we don't integrate any features or offer plugins by ourselves, go implement your own plugins for that.
That's just absurd.
(precondition: feature makes sense, like e.g. listing dependencies, checking for updates, etc - stuff that most likely anyone wants)
Versioning. Well. Here goes number one award to Node with it's broken concept of just installing multiple versions for the fuck of it.
Another award goes to tools without a locking file.
Another award goes to tools who do not support version ranges.
Yet another award goes to tools who do not support private repositories / mirrors via global configuration - makes fun bombing public mirrors to check for new versions available and getting rate limited to death.
In case someone has read so far and wonders why this rant came to be...
I've implemented a sort of on premise bot for updating dependencies for multiple build tools.
Won't be open sourced, as it is company property - but let me tell ya... Pain and pain are two different things. That was beyond pain.
That was getting your skin peeled off while being set on fire pain.
I have an idea of starting my own business and I need your feedback guys. Literally appreciate any kind of feedback.
So Im an android dev who has 3 years experience under his belt. I am working fulltime and I think its time to scale. I want to open my own agency where I would take on big clients and build apps for them. I personally am able to manage/see through the whole project, handle all communication and also work on the android side if necessary. I would start from smaller projects worth of 30-40k for startups, basically create MVP for them and charge for support after that.
Problem is that as far as I understand if you want to "open your own kitchen" you need to be well connected. I dont know any big clients who would trust and purchase my services, because after all who I am? Im nobody just a dev at this moment. So I need a strategy to build some relationships with businesses.
So Im thinking long game. What if I would first open a recruitment/hiring agency? I would focus in specifically mobile dev recruitment. I have the soft skills and I already participated in dozens of recruitment processes. I also have the tech skills, I would be a competent recruiter. Maybe I could do that for a year, just communicate between devs and clients and place devs. My thinking is that in around one year I would be able to build a massive network of clients and devs.
And then, I could try opening my own dev agency. Using my gathered contacts hopefully I could land some decent projects for start and build my team or outsource from that point on.
Ofcourse Im not sure if I could pull this off alone, I would need a detailed strategy and some mentoring. But what do you think is this a viable plan?2
Triaging this project that's running on IIS makes me feel like my skillset is wasted on such banal garbage - while at the same time hoping nobody realizes what a mistake it was to put me on it because I have no idea how to troubleshoot or fix it.
I try not to be that guy who blames every issue on their tools but I can't believe some of these issues and respective fixes. Our QA was down for 2 months because I hadn't uninstalled a default module which prevents POST requests.
It feels like having awful group project experiences in college is a rite of passage.
I once worked with two other students that had no idea what git was, and outright refused to learn/use it when they could just "email the code." I begrudgingly worked with this, and the night before the assignment was due they both emailed me their work.
One of them had the AUDACITY to send me a PHOTO OF THEIR CODE. As if I was going to take the time to re-type everything myself. Not to mention it was all clearly copy and pasted code anyway.. what a nightmare.5
So I got a new project idea , an app that takes your image and fits it in a mac window like a border .
Basically when I make a new website or app and I want to post screenshots of it , just the plain screenshot of the app looks bland but if I have a nice aesthetic ✨ mac OS window around it with rounder corners and stuff , it would look very cool . I bet everybody here has seen something like this once or twice. Is there an app that does this already ? takes an image from the user and puts a window around it , with the minimize ,maximize and close buttons and let's the user download the final image . Not necessarily a mac window with there could be option for different types of windows . Even VS code repo on Github has a mac window around it lol . So I would like to make an app that makes this whole process easier instead of requiring you to edit images of your app (in case u don't have windows or a mac for screenshot)
What tools (tech stack )would I require to make a web app for this purpose ?5
"my greatest fear in life is my best not being good enough."
Currently, I am building my second business around blockchain.
I am stacking on using the popularity of cryptocurrency and it's novelty to push the product universal.
My limitation (what I think):
1. My environment - unfortunately I live in a third world country
2. Naivety: I have never scaled a business, failed in my first attempt(this is my second).
3. Lack of fund: my budget is pretty low, and no I dont have a family support to raise any for marekting and promoting the business, so I am let with option of scaling it organically ( what "organically" means is spamming social media, forum's comments section to grow customers
4. Really the only option present: most folks here wont know what it means to be in a state of "survival", failing will cause you suffering.
5. Poor network: My friends, or the people around dont understand, cant comprehen what this means.
1. I get to know what it means to carry your idea to the world again, this I hope will improve my knowledge base on business and make me less naive.
2. Portfolio boost: "wow!" that should be people's reaction when I tell them about the project.
3. If I succed, I hope the incentive will take me out of this shit hole.
4. I really want to get out of this shit hole - this should work!2
okay so I'm working on a personal project
a medical and healthcare system
thinking maybe I can kick start a start-up based on this thing...
so been 3 days now trying to find a platform to deploy this thing for free of course just for presentation and demonstration.... and its been a pain
Finally settled for pythonanywhere.com managed to deploy but the deployment can easily drive you crazy if you dont know what you are doing which i had no idea what i was doing (lol) but its an easy think if your project is up on github found that out when i was researching how to deploy
was excited coz pythonanywhere offers a free MySQL server if your application needs a db on the backend
set that up and guess what what...... it doest even connect (lol)
was getting frustrated now and jumped on the search engine and searched for free mysql online db hosts and found this great platform
managed to grate an account, created a db and integrated with my application
then used this online phpmyadmin to check if the application was able to create the db structure on the remote server https://www.phpmyadmin.co/
and the structure was there :)
thot i should share maybe some1 might be wondering how to host their db backed application for free5
I hate group project so much.
I yet again successfully stirred up a big drama in my project group. For project, I proposed a CDN cache system for a post only database server. Super simple. I wanted to see what ideas other people come up with. So I said I am not good at the content and the idea is dumb. Oh man, what a horrible mistake. One group member wants to build a chat app with distributed storage. We implemented get/put for a terribly designed key value store and now they want to build a freaking chat app on top of a more stupid kV store using golang standard lib. I don't think any of those fools understand the challenges that comes with the distributed storage.
I sent a video explaining part of crdt. "That's way too complicated. Why are you making everything complicated."
Those fools leave too much details for course stuff's interpretation and says
"course stuff will only grade the project according to the proposal. It's in the project description".
I asked why don't they just take baby steps and just go with their underlying terribly designed kV store.
"Messaging app is more interesting and designing kV store with generic API is just as difficult"
😂 Fucking egos
Then I successfully pissed off all group members with relatively respectful words then pissed off myself and joined another group.1
now... Im just tired and bored of what i do. i had a very hectic year rewriting a core functionality in my company, it was full of optimizations, logic improvements and learning new things.
I took 10 days off hoping id come hating my job less. I learned kotlin and worked on a personal server side project with it during the vacation and honestly i loved it. I missed learning new languages and concepts.
so i thought, well if i enjoyed coding during the vacation then my burnout is cured right ? well once i went back to work today I felt like shit and couldn't do a thing. disgusted of the idea coding for my employer. Too tired to continue my personal project after 8 hours of my job
I guess im back to square one2
Do you use rust for production apps? if yes:
1. which framework do you use to build the server?
2. how do you work with mongodb?
3. how do you handle authorizations?
4. any beginner friendly project idea?1
I'm having a weird time with my current project.There are many companies involved and we are several teams coordinating with each other. My team was initially very large, for various reasons we were divided into smaller groups and I must say that the transition has been catastrophic.
We are doing SCRUM…sort of. The customer assigns the tasks to be completed at the end of the sprint, the story points are given without full understanding of the implementation and the deadlines are tights. I always find myself rushing to the release day with code that isn't production-ready but since the customer requests it and there's no objection among my superiors (please note, i tell them the deadline is tight) I gotta rush to deliver.
The customer doesn't know what he wants, but if he does know the deadline is unreasonable, or if he has just an idea of what he wants he still demands it... somehow without specifying what kind of implementations is expecting.
The current senior project developer takes everything (any task) as an emergency, it's never possible to defer to the next sprint, it's quite demeaning.
And I'm here wondering if maybe I've missed something, if the project simply lacks method and coordination, if I have more responsibility than I think, if my project leadership is too absent but I know one thing, at the moment I'm in anxiety about the current sprint due date because there is a task that will take longer than expected.
I made a full html5 game that was an anonymous survey collection platform, it was meant as a solution for 2 problems: toxic work environments and gamifying boring processes the whole project was a gamification of business process to make it more engaging and add context, might not seem cutting edge but the devil is in the details i had to do lots of libraries and tools to make sure it is not exploited.
As for the startup the ceo fucked us all up and we ended disbanding, my only regret is that we actually had a revolutionary idea going on.
I really liked the idea with the new Firefox page, but the execution made me angry so I fixed it
- Removed the paddings and margins that took up space from information and actions
- Removed the four sentences that contained the same explanatory text I already understood in the initial popup
- Removed the fucking sidebar ad for Colorways
- I really like the Firefox logo so it can stay
Here's my userchrome repo if you want it, I reserve the right to discard the project and stop updating the repo at any point. It's best used as inspiration:
The project needs to make bigger changes to a module. A guy starts doing the changes. It turns out that the task is bigger than we though originally. Team lead has a brilliant idea: you need help. So he'll assign couple of more guys to do the same change.
What's the catch? The catch is that we are now all changing the same files. The code is a mess and tweaks and hacks are needed all over the place. So basically one guy changes the files and others just watch YouTube and wait for him to commit. The it's your turn to change the files and the first guy watches PornHub.
You could all just try to edit the same files at the same time, but we all know how GIT feels about that. You change random lines, he changes random lines, someone else changes random lines, all merges go to shit, nothing works and we spend 2x more time on just trying to get it compiling again.2
So I believe in replicated effort.
I like the idea of multiple groups of people creating or engaging in the very same endeavor at any moment as long as intermediaries between these people visit on each project and determine its merits.
Examples could be data gathering, or development or research.
Example maybe being multiple people operating methods of altitude heightmap gathers or canvas imaging and publishing the data.
Or canvassing neighborhoods for new construction.
Or as in my case creating a nice handy dandy file types database for use as lookup table values in my application.
You know what I hate however ?
HAVING TO DO IT ALL THE HELL OVER AGAIN NO MATTER HOW QUICK OF A TASK ONCE I'VE DONE THE TASK ITS LIKELY NOT GOING TO GET MUCH BETTER THE SECOND OR THIRD GODDAMN TIME AROUND !!!!4
I am working on a java project and I want to know where are compilers and interpreter stores machine code? According to this post https://interviewbit.com/blog/... Compilers store machine code in the disk storage but not an idea about the interpreter. Any suggestion5
I just submitted "a lower price found" on GrubHub for an order I just made. Haven't gotten back to me yet but apparently if they agree, they'll give a $15 credit.
I think other services have this gaurantee too... So wondering...
How hard is it to write an app coloring menu prices between all these services...
Could get a lot of credits... And why haven't they done it themselves.
I'm not really up for the task at the moment but basically you just generate a table with all the prices from each service and highlight the ones that are different...
Why the fuck would Google promote Jetpack Compose as a stable toolset when it doesn't even support a basic feature such as a scrollbar.
A. Fucking. Scrollbar.
LazyColumn can't even come close to being as powerful as Recyclerview.
Here's an idea, before launching something and touting it as something usable, and encouraging people to drop the old, battle tested tool for the new shiny one, how about you make sure the new doesn't lack features present in the old one?
Seems logical, right?
Methinks somebody was just looking for a promotion because, clearly, Jetpack Compose is a half-baked product.
Now, developers will have to suffer because project managers will read about the new framework and ask devs to use it, then wonder why the app is suffering.3
Way to go ruin a collaboration. I wanted to have fun some making a game with one of my friends, but turns out being friends doesn't correlate to making a good team. Some of you probably know this, but I've never had such an experience, not even to almost strangers
Some tips on how to kill off any motivation to work with you:
* Casually insult other peoples ideas
* Don't consider other people's point of view
* Try to talk people out of prototyping/experimenting with their OWN ideas on their OWN time
* Completely undermine their skill even though you have no basis to go on
* Never worked with this person before
* less experienced
* don't have to give estimates on a daily basis
* don't consider the fact that there are libraries that can be used to speed up things)
* Victimize yourself, because someone is "forcing you" to become the bad guy
I don't know if that person is on here and I don't care if they happen to read this. I tried to treat you with the most respect, but if you don't do the same then just fuck off.
Anyways, there goes the idea of a "no stress, no problems" game dev project, because I wanted to see if isometric view would work better than top down.
My idea to have another person to work on a project with, to keep the motivation up backfired a by lot.
Someone within european timezones up for some hobby game dev?3
I need nextjs tips
Im coding in nextjs for the first time because the framework i need to use only supports nextjs/vite/react. I have no idea how this framework works and im literally googling for almost every single bit. Also using chatgpt as copilot. Heck im googling even how to do routing here. The code is probably gonna be total shit.
Anyone can give me some tips in nextjs on how to keep the code clean? How is a project supposed to be structured?6
#Suphle Rant 7: transphporm failure
In this issue, I'll be sharing observations about 3 topics.
First and most significant is that the brilliant SSR templating library I've eyed for so many years, even integrated as Suphle's presentation layer adapter, is virtually not functional. It only works for the trivial use case of outputting the value of a property in the dataset. For instance, when validation fails, preventing execution from reaching the controller, parsing fails without signifying what ordinance was being violated. I trim the stylesheet and it only works when outputting one of the values added by the validation handler. Meaning the missing keys it can't find from controller result is the culprit.
Even when I trimmed everything else for it to pass, the closing `</li>` tag seems to have been abducted.
I mail project owner explaining what I need his library for, no response. Chat one of the maintainers on Twitter, nothing. Since they have no forum, I find their Gitter chatroom, tag them and post my questions. Nothing. The only semblance of a documentation they have is the Github wiki. So, support is practically dead. Project last commit: 2020. It's disappointing that this is how my journey with them ends. There isn't even an alternative that shares the same philosophy. It's so sad to see how everybody is comfortable with PHP templating syntax and back end logic entagled within their markup.
Among all other templating libraries, Blade (which influenced my strong distaste for interspersing markup and PHP), seems to be the most popular. First admission: We're headed back to the Blade trenches, sadly.
2nd Topic: While writing tests yesterday, I had this weird feeling about something being off. I guess that's what code smell is. I was uncomfortable with the excessive amount of mocking wrappers I had to layer upon SUT before I can observe whether the HTML adapter receives expected markup file, when I can simply put a `var_dump` there. There's a black-box test for verifying the output but since the Transphporm headaches were causing it to fail, I tried going white-box. The mocking fixture was such a monstrosity, I imagined Sebastian Bergmann's ghost looking down in abhorrence over how much this Degenerate is perverting and butchering his creation.
I ultimately deleted the test travesty but it gave rise to the question of how properly designed system really is. Or, are certain things beyond testing white box? Are there still gaps in the testing knowledge of a supposed testing connoisseur? 2nd admission.
Lastly, randomly wanted to tweet an idea at Tomas Votruba. Visited his profile, only to see this https://twitter.com/PovilasKorop/.... Apparently, Laravel have implemented yet another feature previously only existing in Suphle (or at the libraries Arkitekt and Deptrac). I laughed mirthlessly as I watch them gain feature-parity under my nose, when Suphle is yet to be launched. I refuse to believe they're actually stalking Suphle2