Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "long-time-no-see"
-
As a long-time iPhone user, I am really sorry to say it but I think Apple has completed their transition to being a company that is incompetent when it comes to software development and software development processes.
I’ve grown tired of hearing some developers tell me about Apple’s scale and how software development is hard and how bugs should be expected. All of those are true, but like most rules of law, incompetence and gross negligence trumps all of that.
I’m writing this because of the telugu “bug”/massive, massive security issue in iOS 11.2.5. I personally think it’s one of the worst security issues in the history of modern devices/software in terms of its ease of exploitation, vast reach, and devastating impact if used strategically. But, as a software developer, I would have been able to see past all of that, but Apple has shown their true incompetence on this issue and this isn’t about a bug.
It’s about a company that has a catastrophic bug in their desktop and mobile platforms and haven’t been able to, or cared to, patch it in the 3 or so days it’s been known about. It’s about a company, who as of a view days ago, hasn’t followed the basic software development process of removing an update (11.2.5) that was found to be flawed and broken. Bugs happen, but that kind of incompetence is cultural and isn’t a mistake and it certainly isn’t something that people should try to justify.
This has also shown Apple’s gross incompetence in terms of software QA. This isn’t the first time a non-standard character has crashed iOS. Why would a competent software company implement a step in their QA, after the previous incident(s), to specifically test for issues like this? While Android has its issues too and I know some here don’t like Google, no one can deny that Google at least has a solid and far superior QA process compared to Apple.
Why am I writing this? Because I’m fed up. Apple has completely lost its way. devRant was inaccessible to iOS users a couple of times because of this bug and I know many, many other apps and websites that feature user-generated content experienced the same thing. It’s catastrophic. Many times we get sidetracked and really into security issues, like meltdown/spectre that are exponentially harder to take advantage of than this one. This issue can be exploited by a 3 year old. I bet no one can produce a case where a security issue was this exploitable yet this ignored on a whole.
Alas, here we are, days later, and the incompetent leadership at Apple has still not patched one of the worst security bugs the world has ever seen.81 -
Long but worth it...
So I was cleaning out my Google Drive last night, and deleted some old (2 years and up) files. I also deleted my old work folder, it was for an ISP I worked for over 2 years ago. After deleting the files I had a little twinge of "Man I hope they're not still using those". But seriously, it'd be a pretty big security risk if I was still the owner of those files... right? Surely they copied them and deleted all the info from the originals. IP addresses, Cisco configs, username and passwords for various devices, pretty much everything but customer info.
Guess who I get a call from this morning... "Hi this is Debbie from 'ISP'. I was trying to access the IP Master List and I can't anymore. I was just told to call you and see if there's any way to get access to it again" (Not her real name...)
I had to put her on hold so I could almost die of laughter...
Me: "Sorry about that Debbie, I haven't worked for that company for over 2 years. Your telling me in all that time no one thought to save them locally? No one made a copy? I still had the original documents?!"
Long pause
D: "Uh... Apparently not..."
Another long pause
D: "So is there any way you can give me access to them again?"
Me: "They're gone Debbie. I deleted them all last night."
D: Very worried voice "Can... Can you check?"
This kids is why you never assume you'll always have access to a cloud stored file, make local copies!!
A little bit of background on this company, the owner's wife fired me on trumped up "time card discrepancy" issues so she could hire her freshly graduated business major son. The environment over there was pretty toxic anyway...
I feel bad for "Debbie" and the other staff there, it's going to be a very bad week for them. I also hope it doesn't impact any customers. But... It is funny as hell, especially since I warned the owner as I was clearing out my desk to save copies, and plan on them being gone soon. Apparently he never listened.
This is why you should have a plan in place... And not just wing it...
PS. First Post!25 -
Good Morning!, its time for practiseSafeHex's most incompetent co-worker!
Todays contestant is a very special one.
*sitcom audience: WHY?*
Glad you asked, you see if you were to look at his linkedin profile, you would see a job title unlike any you've seen before.
*sitcom audience oooooooohhhhhh*
were not talking software developer, engineer, tech lead, designer, CTO, CEO or anything like that, No No our new entrant "G" surpasses all of those with the title ..... "Software extraordinaire".
*sitcom audience laughs hysterically*
I KNOW!, wtf does that even mean! as a previous dev-ranter pointed out does this mean he IS quality code? I'd say he's more like a trash can ... where his code belongs
*ba dum tsssss*
Ok ok, lets get on with the show, heres some reasons why "G" is on the show:
One of G's tasks was to build an analytics gathering library for iOS, similar to google analytics where you track pages and events (we couldn't use google's). G was SO good at this job he implemented 2 features we didn't even ask for:
- If the library was unable to load its config file (for any reason) it would throw an uncatchable system integrity error, crashing the app.
- If anything was passed into any of the functions that wasn't expected (null, empty array etc.) it would crash the app as it was "more efficient" to not do any sanity checks inside the library.
This caused a lot of issues as some of the data needed to come from the clients server. The day we launched the app, within the first 3 hours we had over 40k crash logs and a VERY angry client.
Now, what makes this story important is not the bugs themselves, come on how many times have we all done something stupid? No the issue here was G defended all of this as the right thing to do!
.. and no he wasn't stoned or drunk!
G claimed if he couldn't get the right settings / params he wouldn't be able to track the event and then our CEO wouldn't have our usage data. To which I replied:
"So your solution was to not give the client an app instead? ... which also doesn't give the CEO his data".
He got very angry and asked me "what would you do then?". I offered a solution something like why not have a default tag for "error" or "unknown" where if theres an issue, we send up whatever we have, plus the file name and store it somewhere else. I was told I was being ridiculous as it wasn't built to track anything like that and that would never work ... his solution? ... pull the library out of the app and forget it.
... once again giving everyone no data.
G later moved onto another cross-platform style project. Backend team were particularly unhappy as they got no spec of what needed to be done. All they knew was it was a single endpoint dealing with very complex model. There was no Java classes, super classes, abstract classes or even interfaces, just this huge chunk of mocked data. So myself and the lead sat down with him, and asked where the interfaces for the backend where, or designs / architecture for them etc.
His response, to this day frightens me ... not makes me angry, not bewilders me ... scares the living shit out of me that people like this exist in the world and have successful careers.
G: "hhhmmm, I know how to build an interface, but i've never understood them ... Like lets say I have an interface, what now? how does that help me in any way? I can't physically use it, does it not just use up time building it for no reason?"
us: "... ... how are the backend team suppose to understand the model, its types, integrate it into the other systems?"
G: "Can I not just tell them and they can write it down?"
**
I'll just pause here for a moment, as you'll likely need to read that again out of sheer disbelief
**
I've never seen someone die inside the way the lead did. He started a syllable and his face just dropped, eyes glazed over and he instantly lost all the will to live. He replied:
" wel ............... it doesn't matter ... its not important ... I have to go, good luck with the project"
*killed the screen share and left the room*
now I know you are all dying in suspense to know what happened to that project, I can drop the shocking bombshell that it was in fact cancelled. Thankfully only ~350 man hours were spent on it
... yep, not a typo.
G's crowning achievement however will go down in history. VERY long story short, backend got deployed to the server and EVERYTHING broke. Lead investigated, found mistakes and config issues on every second line, load balancer wasn't even starting up. When asked had this been tested before it was deployed:
G: "Yeah I tested it on my machine, it worked fine"
lead: "... and on the server?"
G: "no, my machine will do the same thing"
lead: "do you have a load balancer and multiple VM's?"
G: "no, but Java is Java"
... and with that its time to end todays episode. Will G be our most incompetent? ... maybe.
Tune in later for more practiceSafeHex's most incompetent co-worker!!!31 -
Long rant ahead, but it's worth it.
I used to work with a professor (let's call him Dr. X) and developed a backend + acted as sysadmin for our team's research project. Two semesters ago, they wanted to revamp the front end + do some data visualization, so a girl (let's call her W) joined the team and did all that. We wanted to merge the two sites and host on azure, but due to issues and impeding conferences that require our data to be online, we kept postponing. I graduate this semester and haven't worked with the team for a while, so they have a new guy in charge of the azure server (let's call him H), and yesterday my professor sends me (let's call me M), H and W an email telling us to coordinate to have the merge up on azure in 2-3 days, max. The following convo was what I had with H:
M: Hi, if you just give me access to azure I'll be able to set everything up myself, also I'll need a db set up, and just send me the connection string.
H: Hi, we won't have dbs because that is extra costs involved since we don't have dynamic content. Also I can't give you access, instead push everything on git and set up the site on a test azure server and I will take it from there.
M: There is proprietary data on the site...
H: Oh really? I don't know what's on it.
<and yet he knows we have no dynamic data>
M: Fine, I'll load the data some other way, but I have access to all the data anyway, just talk to Dr. X and you'll see you can give me access. Delete my access after if you want.
H: No, just do what I said: git then upload to test azure account.
Fine, he's a complete tool, but I like Dr. X, so I message W and tell her we have to merge, she tells me that it's not that easy to set it up on github as she's using wordpress. She sends me instructions on what to do, and, lo and behold, there's a db in her solution. Ok, I go back to talking to H:
M: W is using a db. Talk to her so we can figure out whether we need a database or not.
H: We can't use a database because we want to decrease costs.
M: Yes I know that, so talk to her because that probably means she has to re-do some stuff, which might take some time. Also there might be dynamic content in what she's doing.
H: This is your project, you talk to her.
<I'm starting to get mad right now>
M: I don't know what they had her do apart from how it interfaces with what I've done.
H: We still can't have databases.
M: Listen, I don't do wordpress, and I'm not gonna mess with it, you talk to her
H: I won't do any development
<So you won't do any dev, but you won't give me access to do it either?>
M: Man, the bottleneck isn't the merging right now, it's the fact that W needs a db
H: I know, so talk to her
M: THE RESTRICTION TO NOT HAVE DATABASES IS NOT MINE, IT'S YOURS, YOU TALK TO HER. I can't evaluate whether it's a reasonable enough reason or not since I don't know the requirements or what they're willing to spend.
H: It's your project.
M: Then give me fucking access to azure and I'll handle it, you know you'll have to set up wordpress again regardless whether we set it up the first time.
H: Man just do your job.
At this point I lost it. WHAT A FUCKING TOOL. He doesn't wanna do dev work, wants me to go through the trouble of setting up on a test subscription first, and doesn't want to give me access to azure. What's more, he did shit all and doesn't want to anything else. Well fuck you. I googled him, to see if he's anyone important, if he's done anything notable which is why he's being so God damn condescending. MY INTERNSHIP ALONE ECLIPSES HIS ENTIRE CV. Then what the fuck?
There's also this that happened sometime during our talk:
M: You'll have to take to Dr. Y so he'll change the DNS to point to the azure subscription instead of my server.
H: Yea don't worry, too early for that.
M: DNS propagation takes 24 hours...
H: Yea don't worry.
DNS propagation allows the entire web to know that your website is hosted on a different server so it can change where it's pointing to. We have to do this in 2-3 days. Why do work in parallel? Nah let's wait.
I went over his head and talked to the professor directly, and despite wanting to tell him that he was both drunk and high the day he hired that guy, I kept it professional. He hasn't replied yet, but this fucker's pompous attitude is just too much for me alone, so I had to share.
PS: I named his contact as Annoying Prick 4 minutes into our chat. Gonna rename him cz that seems tooooooo soft a name right now.undefined tools i have access and you don't haha retards why the fuck would you hire that guy? i don't do development46 -
Me: "Hey, I see you've started your class name with a lowercase letter, It's common practice to start it with a capital letter"
Co-worker that started two weeks ago with almost no experience in c++: "Oh, right. You women and your rules, you must know it then"
Me: *Awkward laugh* *Thinking as long as he changes it i'll let that one slip* *Sends him coding standard guide just in case he doesn't believe me*
-- Two days later --
He still didn't fucking change it. It pains my eyes to look at it each time he asks me for help. Oh and stop calling me "miss", I have a name.46 -
Another day, another hit piece against gaming.
So, a 15-year old boy hanged himself and the media goes all „This was caused by this game“, even though NO FUCKING TRACES OF THE GAME WERE FOUND ON THE LAPTOP OF THE DECEASED!!!
And then of course my freaking parents go all lecturing me about how the internet twists the brain into not being adequate towards reality etc.
First off, CAN THE FUCKING COLLECTION OF COCKSUCKERS that is the fucking media just fucking get a grip on reality? It was literally said in the same sentence that the supposed game that caused that was not found in any form on the person's laptop. You would think an online game that you take months to play through would need at least some fucking download to run, right? Unless it was a freaking video chat bullshit that they call a „game“ just for the fucking spite of gamers.
Second, HOW FUCKING LONG WILL IT FUCKING TAKE FOR PEOPLE TO FUCKING ACCEPT THAT IT'S NOT THE TECH THAT MAKES PEOPLE KILL THEMSELVES? How hard is it to fucking understand?
Third... How do people in their 60s freaking think they understand anything about modern gaming when they have no freaking way of interacting with it other than these hit pieces? They certainly give more fucks about what a hired bitch of a lying „journalist“, that cannot even talk properly, says. Oh, they care so much about the children. Have they never thought that people are killing themselves exactly because they feel nobody cares about them?
Fourth. How fucking long do parents like mine deny the reality that just as long as they see me as an incomplete copy of my sisters I will be suicidal? Let me guess... It's video games causing me to be oh, so inadequate when I've not played any of them for quite some time...
Fifth... How am I out of touch with reality when these people have never known how I „work“, so to speak, as a person, and they've been the ones basically dictating all my life? Let me see why I'm unhappy...
I know I complain a lot. Sorry for that. But I just cannot stand people like them. People that lie all the time and project that on you while depriving you of any means of defending yourself in a debate...43 -
Frack he did it again.
In a meeting with the department mgr and going over a request feature *we already discussed ad nauseam* that wasn’t technically feasible (do-able, just not worth the effort)
DeptMgr: “I want to see the contents of web site A embedded in web site B”
Me: “I researched that and it’s not possible. I added links to the target APM dashboard instead.”
Dev: “Yes, it’s possible. Just use an IFrame.”
DeptMgr: “I thought so. Next sprint item …what’s wrong?…you look frustrated”
Me: “Um..no…well, I said it’s not possible. I tried it and it doesn’t work”
Dev: “It’s just an IFrame. They are made to display content from another site.”
Me: “Well, yes, from a standard HTML tag, but what you are seeing is rendered HTML from the content manager’s XML. It implemented its own IFrame under the hood. We already talked about it, remember?”
Dev: “Oh, that’s right.”
DeptMgr: “So it’s possible?”
Dev: “Yea, we’ll figure it out.”
Me: “No…wait…figure what out? It doesn’t work.”
Dev: “We can use a powershell script to extract the data from A and port it to B.”
DeptMgr: “Powershell, good…Next sprint item…”
Me: “Powershell what? We discussed not using powershell, remember?”
Dev: “It’s just a script. Not a big deal.”
DeptMgr: “Powershell sounds like a right solution. Can we move on? Next sprint item….are you OK? You look upset”
Me: “No, I don’t particularly care, we already discussed executing a powershell script that would have to cross two network DMZs. Bill from networking already raised his concern about opening another port and didn’t understand why we couldn’t click a link. Then Mike from infrastructure griped about another random powershell script running on his servers just for reporting. He too raised his concern about all this work to save one person one click. Am I the only one who remembers this meeting? I mean, I don’t care, I’ll do whatever you want, but we’ll have to open up the same conversations with Networking again.”
Dev: “That meeting was a long time ago, they might be OK with running powershell scripts”
Me: “A long time ago? It was only two weeks.”
Dev: “Oh yea. Anyway, lets update the board. You’ll implement the powershell script and I’ll …”
Me: “Whoa..no…I’m not implementing anything. We haven’t discussed what this mysterious powershell script is supposed to do and we have to get Mike and Bill involved. Their whole team is involved in the migration project right now, so we won’t see them come out into the daylight until next week.”
DevMgr: “What if you talk to Eric? He knows powershell. OK…next sprint item..”
Me: “Eric is the one who organized the meeting two weeks ago, remember? He didn’t want powershell scripts hitting his APM servers. Am I the only one who remembers any of this?”
Dev: “I’m pretty good with powershell, I’ll figure it out.”
DevMgr: “Good…now can we move on?”
GAAAHH! I WANT A FLAMETHROWER!!!
Ok…feel better, thanks DevRant.11 -
After listening to two of our senior devs play ping pong with a new member of our team for TWO DAYS!
DevA: "Try this.."
Junior: "Didn't work"
DevB: "Try that .."
Junior: "Still not working"
I ask..
Me:"What is the problem?"
Few ums...uhs..awkward seconds of silence
Junior: "App is really slow. Takes several seconds to launch and searching either crashes or takes a really long time."
DevA: "We've isolated the issue with Entity Framework. That application was written back when we used VS2010. Since that application isn't used very often, no one has had to update it since."
DevB: "Weird part is the app takes up over 3 gigs of ram. Its obviously a caching issue. We might have to open up a ticket with Microsoft."
Me: "Or remove EF and use ADO."
DevB: "That would be way too much work. The app is supposed to be fully deprecated and replaced this year."
Me: "Three of you for the past two days seems like a lot of work. If EF is the problem, you remove EF."
DevA: "The solution is way too complicated for that. There are 5 projects and 3 of those have circular dependencies. Its a mess."
DevB: "No fracking kidding...if it were written correctly the first time. There aren't even any fracking tests."
Me:"Pretty sure there are only two tables involved, maybe 3 stored procedures. A simple CRUD app like this should be fairly straight forward."
DevB: "Can't re-write the application, company won't allow it. A redesign of this magnitute could take months. If we can't fix the LINQ query, we'll going to have the DBAs change the structures to make the application faster. I don't see any other way."
Holy frack...he didn't just say that.
Over my lunch hour, I strip down the WPF application to the basics (too much to write about, but the included projects only had one or two files), and created an integration test for refactoring the data access to use ADO. After all the tests and EF removed, the app starts up instantly and searches are also instant. Didn't click through all the UI, but the basics worked.
Sat with Junior, pointed out my changes (the 'why' behind the 'what') ...and he how he could write unit tests around the ViewModel behavior in the UI (and making any changes to the data access as needed).
Today's standup:
Junior: "Employee app is fixed. Had some help removing Entity Framework and how it starts up fast and and searches are instant. Going to write unit tests today to verify the UI behaivor. I'll be able to deploy the application tomorrow."
DevA: "What?! No way! You did all that yesterday?"
Me: "I removed the Entity Framework over my lunch hour. Like I said, its basic CRUD and mostly in stored procedures. All the data points are covered by integration tests, but didn't have time for the unit tests. It's likely I broke some UI behavior, but the unit tests should catch those."
DevB: "I was going to do that today. I knew taking out Entity Framework wouldn't be a big deal."
Holy fracking frack. You fracking lying SOB. Deeeep breath...ahhh...thanks devRant. Flame thrower event diverted.13 -
I fucking love people like this.
Yesterday I met a 'friend' who I hadn't seen in a very long time. Just a guy I used to know tbh but let's call him Friend anyway. After a while in the conversation this happened...
*Friend doesn't know I have a degree in CS*
Friend: "WHAT?? YOU LIKE PROGRAMMING? NO WAY! ME TOO!"
Me: "THAT'S AWESOME! You've been programming for long?"
Friend: "A little over a year now. I know almost all languages now. C++, C#, Python, Java and HTML. Still a couple left to go. Once you're on the level I achieved programming becomes really, really easy. How long have you been programming?"
Me: "Almost a decade now"
Friend: "Damn dude you must know all languages by now I suppose?"
Me: "I've been mainly doing C++ so not really haha"
Friend: "I can always help when you're struggling with one language. C++ is pretty easy tbh. You should learn others too btw. HTML for example is pretty important because you can program websites with it"
Me: "Yeah... Thanks... So... What project are you working on right now?"
Friend: "I'm making a register page for my very own forum. The only problem I have is that PHP won't save the login details"
Me: "Hahaha I know the feeling. MySQL?"
Friend: "What?"
Me: "What do you use to save your data"
Friend: "Just a txt file. It's easier that way."
Me: "Hahaha true. Who needs safety right? *smiles*"
Friend: "Actually it's 100% safe because only I can see the txt file so other people can not hack other users."
Me: "Yes! That's great! Cya!"
Friend: "I'm working on a mmorpg too btw! I can learn you to make games if you want. Just call me. Here's my number"
Me: "Alright... Thanks... Bye!"
*Arrives at home*
*Deletes number*
I do not make this up.
I can understand that someone who isn't in the CS industry doesn't take it too seriously and gets hyped when their "Hello World" program works.
I'm fine with that.
The thing that really triggers me is big headed ass holes like this. Like how much more like a absolute dickhead could you possibly more act? Fucking hate people like that.32 -
Oh, man, I just realized I haven't ranted one of my best stories on here!
So, here goes!
A few years back the company I work for was contacted by an older client regarding a new project.
The guy was now pitching to build the website for the Parliament of another country (not gonna name it, NDAs and stuff), and was planning on outsourcing the development, as he had no team and he was only aiming on taking care of the client service/project management side of the project.
Out of principle (and also to preserve our mental integrity), we have purposely avoided working with government bodies of any kind, in any country, but he was a friend of our CEO and pleaded until we singed on board.
Now, the project itself was way bigger than we expected, as the wanted more of an internal CRM, centralized document archive, event management, internal planning, multiple interfaced, role based access restricted monster of an administration interface, complete with regular user website, also packed with all kind of features, dashboards and so on.
Long story short, a lot bigger than what we were expecting based on the initial brief.
The development period was hell. New features were coming in on a weekly basis. Already implemented functionality was constantly being changed or redefined. No requests we ever made about clarifications and/or materials or information were ever answered on time.
They also somehow bullied the guy that brought us the project into also including the data migration from the old website into the new one we were building and we somehow ended up having to extract meaningful, formatted, sanitized content parsing static HTML files and connecting them to download-able files (almost every page in the old website had files available to download) we needed to also include in a sane way.
Now, don't think the files were simple URL paths we can trace to a folder/file path, oh no!!! The links were some form of hash combination that had to be exploded and tested against some king of database relationship tables that only had hashed indexes relating to other tables, that also only had hashed indexes relating to some other tables that kept a database of the website pages HTML file naming. So what we had to do is identify the files based on a combination of hashed indexes and re-hashed HTML file names that in the end would give us a filename for a real file that we had to then search for inside a list of over 20 folders not related to one another.
So we did this. Created a script that processed the hell out of over 10000 HTML files, database entries and files and re-indexed and re-named all this shit into a meaningful database of sane data and well organized files.
So, with this we were nearing the finish line for the project, which by now exceeded the estimated time by over to times.
We test everything, retest it all again for good measure, pack everything up for deployment, simulate on a staging environment, give the final client access to the staging version, get them to accept that all requirements are met, finish writing the documentation for the codebase, write detailed deployment procedure, include some automation and testing tools also for good measure, recommend production setup, hardware specs, software versions, server side optimization like caching, load balancing and all that we could think would ever be useful, all with more documentation and instructions.
As the project was built on PHP/MySQL (as requested), we recommended a Linux environment for production. Oh, I forgot to tell you that over the development period they kept asking us to also include steps for Windows procedures along with our regular documentation. Was a bit strange, but we added it in there just so we can finish and close the damn project.
So, we send them all the above and go get drunk as fuck in celebration of getting rid of them once and for all...
Next day: hung over, I get to the office, open my laptop and see on new email. I only had the one new mail, so I open it to see what it's about.
Lo and behold! The fuckers over in the other country that called themselves "IT guys", and were the ones making all the changes and additions to our requirements, were not capable enough to follow step by step instructions in order to deploy the project on their servers!!!
[Continues in the comments]26 -
I'm at my seat during the regular morning routine of checking emails, planning the things I need to complete/study when my phone rings.
HR: Good Morning, can you come over to the conference room please ?
Me: Sure
I enter the conference room and on the other side of the table, I see a group of 3 HR Managers (not a very nice feeling), especially when it was 10 months into my first job as a Trainee Software Developer.
HR: The company hasn't been performing as expected. For this reason, we've been told to cut down our staff. We're sorry but we have to let you go. You've been doing a great job all along. Thank you.
Me: ---- (seriously ?!)
The security-in-chief 'escorts' me out of the premises and I hand over the badge. I'm not allowed to return to my desk.
This happened about 16 years ago. But it stuck with me throughout my programming career.
A couple of Lessons Learnt which may help some of the developers today :
- You're not as important as you think, no matter what you do and how well you do it.
- Working hard is one thing, working smart is another. You'll understand the difference when your appraisals comes around each year.
- Focus on your work but always keep an eye on your company's health.
- Be patient with your Manager; if you're having a rough time, its likely he/she is suffering more.
- Programming solo is great fun. However it takes other skills that are not so interesting, to earn a living.
- You may think the Clients sounds stupid, talks silly and demands the stars; ever wonder what they think about you.
- When faced with a tough problem, try to 'fix' the Client first, then look for a solution.
- If you hate making code changes, don't curse the Client or your Manager - we coders collectively created a world of infinite possibilities. No point blaming them.
- Sharing your ideas matter.
- Software Development is a really long chain of ever-growing links that you may grok rather late in your career. But its still worth all the effort if you enjoy it.
I like to think of programming as a pursuit that combines mathematical precision and artistic randomness to create some pretty amazing stuff.
Thanks for reading.14 -
For this episode of practiseSafeHex's most incompetent co-worker were going to move past developers and go straight to a CEO.
*sitcom audience oooooohhhhhhh*
I know! , always risky, everyone has a bad story, but lets try bring it home. Here we go, Most incompetent co-worker, candidate 2, "R".
R was ... now how do I say this ... R was a special kind of Bastard. A perfect blend of impatient, arrogant, a dickhead and to borrow a phrase from family guy "below the line of mental retardation".
I've actually spoken about him recently here: https://devrant.com/rants/1141873/...
I won't bother duplicating the content here, but its worth a read.
Some of the other highlights of R include:
- Not understanding that my first demo was UI / Frontend only (despite frequent explanations). I didn't slack off for the next 2 weeks, I was busy making all those buttons actually do stuff and connect to the server. Shockingly "Test 1", "Test 2" and "Lorem ipsum" wasn't our content.
- He once asked how long a bunch of tasks was going to take, I told him 2 weeks and he gave me 2 and a half days. He pulled me into a meeting the next week to see where it all was, and I literally sat there saying "I asked for 2 weeks" over and over until he shut up.
- R's favourite phrase was "when I was a developer", typically followed by some sort of insult, forever labelling him "asshole" by everyone who has ever worked for him.
- When apple launched iOS 7 and changed the UI and the methods you could use, he refused to invest the time in upgrading to iOS 7, but demanded the app look like an iOS 7 app. No amount of "There is no method to access the status bar in iOS 6" could make him comprehend the issue at hand.
- The worst was when I was dealing with an issue to do with 64bit being introduced (which I tried to explain ... christ give me strength). When another dev fixed a similar but unrelated issue he stood up in front of the office and said loudly "pfft practiseSafeHex tried to tell me this was something to do with 64bit, which made absolutely no sense, guess he doesn't know what he's talking about"
Thankfully I handed in my notice ... after less than 2 months, making in abundantly clear why. Will R make it to the top of the list of most incompetent?
Tune in later for more practiceSafeHex's most incompetent co-worker!!!12 -
Father bought a PC in 1997. Back then very few had it. I learned doing things like accessing the internet and sending emails, among others. I remember having added age on websites to be allowed to sign up at times :P My sisters used to play games on it sometimes. The first few ones we had were Tomb Raider: The Last Revelation, Tomb Raider Chronicles, American McGee's Alice(Which caused us to upgrade the PC xD)... And some others.
I have a memory of this pseudo-3D-looking game where you move in a maze and try answering questions. I want to remember its name, but I cannot :(
We literally have video evidence of me liking the computer as a child, yet my parents either say I'm addicted or deny I've ever liked it before. Not only that, but continuously limiting my time with the PC hasn't been a literal obstacle in my way of trying to do things in their opinion. Funny how my parents think the last few years I've been my worst when they've hurt me in those years so much that our relationship is guaranteed not working out. There were doubts in my head before, but now it's cemented and there is no way of going back. Father, for example, tells me it's too late to do anything with a PC now(As well as how I've been unable to use the PC. He looks at these pro players' footage in some TV show and he's like, „You've been unable to use your hobbies“, as if they have never ever screamed at me for perceived gaming and not actually cared to check), and I need to look for a „real“ job.
Sorry. I went to bed at 2:00 in the morning. Feel like a zombie because of ongoing weirdly insufficient sleep, even though I sleep kinda more than normal. Even when I took Melatonine for that it didn't help at all.
Childhood was where beating began. I was about 6/7. Right when I entered school. The first school that I attended was a private one and supposedly for „Wunderkinds“, while in reality I haven't seen a SINGLE teacher or psychologist approve of it, their argument being that children were basically drowned in work that wasn't age-appropriate(I don't mean anything bad. Just that teaching about Galaxies and all in first grade isn't the brightest idea). There was always a mountain of homework to do and as opposed to some other countries, we had to do it on a day to day basis. We didn't have a week-long deadline. I was predictably not keeping up with it as I could have, had it been a normal amount, so my parents decided I didn't want to study and began their methods of getting me to „study“. I have yet to see a person able to keep up with that school's tempo, no matter the age.
This place was also where I got bullied. I felt I had nowhere to be: At home, the parents' situation, at school, the bully. I never really went outside to play with other children, so I missed that part of childhood.
After the second year of school I was transferred to an advanced German school, called like that because they taught German and not English there. I also got to learn a bit of Russian before they removed it from school. In that period I used to attend ballet. But for less than a year. And piano, which I remember having attended for quite a long while, some years, if my memory isn't fried. I quit it because of it having been forced on me. Last piece I ever played fully was Beethoven's Marmotte.
In this school I was once again the outcast of the class. I had some people to interact with. All of those interactions lasted a few years at most. Then, because of a part of my class choosing me as a laughing-stock N2 and another girl as the N1, I found my best friend, who I still have today. She's the only friend I have nearby.
Most of the time I hated myself. Even today I struggle with that sometimes.
After that came university. This us where I got something like a friend circle at last. But it still didn't last. I got in a relationship with one of the guys, but I was just attracted. There was another I couldn't dare getting close to. Turns out he also had something for me. Then he disappeared from our lives and a year after, I still cannot forget the person. If I want to, I have to deprive myself of my own personality. Not a thing I'm willing to give up. Then I broke up with the guy I was in a relationship with and completely disappeared from the friendship circle. To be honest, I had reasons to. They refused to even try to look for the guy and they called him a friend for years. Sometimes parents hitting me can occur even today, but if I REALLY piss them off.
Now I'm here and oh, my God, I'm officially am aunt now! My sister gave birth to a daughter this morning... She's in Berlin with mother and both she and the child are doing great. I just hope she manages to be a good mother.20 -
Was lead developer at a small startup, I was hiring and had a budget to add 3 new people to my team to develop a new product for the company.
Some context first and then the rant!
Candidate 1 - Amazing, a dev I worked with before who was under utilized at the previous company. Still a junior, but, she was a quick learner and eager to expand her knowledge, never an issue.
Candidate 2 - Kickass dev with back end skills and extras, he was always eager to work a bit more than what was expected. I use to send him home early to annoy him. haha!
Candidate 3 - Lets call him P.
In the interview he answers every question perfectly, he asks all the right questions and suggests some things I havent even thought of. CTO goes ahead and says we should skip the technical test and just hire the guy, his smart and knows what his talking about, I agree and we hire him. (We where a bit desperate at this stage as well.)
He comes in a week early to pick up his work laptop to get setup before he starts the next week, awesome! This guy is going to be an asset to the company, cant wait to have him join the team - The CTO at this stage is getting ready to leave the company and I will be taking over the division and need someone to take over lead position, he seems like the guys to do it.
The guys starts the next week, he comes in and the laptop we gave him is now a local server for testing and he will be working off his own laptop, no issue, we are small so needed a testing stack, but wasnt really needed since we had procedures in place for this already.
Here is where everything goes wrong!!! First day goes great... Next day he gets in early 6:30am (Nice! NO!), he absolutely smells, no stinks, of weed, not a light smell, the entire fucking office smells of weed! (I have no problem with weed, just dont make it my problem to deal with). I get called by boss and told to sort this out people are complaining! I drive to office and have a meeting with him, he says its all good he understands. (This was Friday).
Monday comes around - Get a call from Boss at 7:30am. Whole office smells like weed, please talk to P again, this cannot happen again. I drive to office again, and he again says it wont happen again, he has some issues with back pain and the weed helps.
Tuesday - Same fucking thing! And now he doesnt want to sign for the laptop("server") that was given to him, and has moved to code in the boardroom, WHERE OUR FUCKING CLIENTS WILL BE VIEWING A DEMO THAT DAY OF THE PRODUCT!! Now that whole room smells like weed, FML!
Wednesday - We send P a formal letter that he is under probation, P calls me to have a meeting. In the meeting he blames me for not understanding "new age" medicine, I ask for his doctors prescription and ask why he didnt tell me this in the interview so I could make arrangements, we dont care if you are stoned, just do good work and be considerate to your co-workers. P cant provide these and keeps ranting, I suggest he takes pain killers, he has none of it only "new age" medicine for him.
Thursday - I ask him to rather "work" from home till we can get this sorted, he comes in for code reviews for 2 weeks. I can clearly see he has no idea how the system works but is trying, I thought I will dive deeper and look at all of his code. Its a mess, nothing makes sense and 50% of it is hard coded (We are building a decentralized API for huge data sets so this makes no sense).
Friday - In code review I confront him about this, he has excuses for everything, I start asking him harder questions about the project and to explain what we are building - he goes quiet and quits on the spot with a shitty apology.
From what I could make out he was really smart when it came to theory but interpreting the theory to actual practice wasnt possible for him, probably would have been easier if he wasnt high all the time.
I hate interview code tests, but learned a valuable lesson that day! Always test for some code knowledge as well even if you hate doing it, ask the right questions and be careful who you hire! You can only bullshit for so long in coding before someone figures out that you are a fraud.16 -
The programmer and the interns part 3.
Many of you asked me to keep posting about the interns that I'm responsible for.
I had the intention but never had the time or the energy. Since the interns only kept doing stupid, unthinkable things and just filtering out the good ones is a task of its own.
Time has passed, some interns left us by their choice, others were fired (for obvious reasons). Some stayed loyal and were given permanent positions. New ones joined. I no longer am directly responsible for their wellbeing, yet, somehow I am still their tech-lead and the developer of their tools.
Without further delay,
Case 0:
New guy get's into the internship, has his LinkedIn title set to ‘HTML Technician’.
Didn’t know about the existence of HTML5.
Been building static web pages in the early 2000s. The kind with embedded, inline CSS.
Claims that he is about to finish an engineering degree (sadly I believe him).
Fails the entry level Linux test. Complains about the similarity of the answer options.
Fails the basic web-standars test because "they change so fast, but the foundation is HTML and it's rock-solid!".
Get's caught taking home onions and milk from the kitchen.
Is spotted eating in a restaurant under our offices in his day off. Thrice. He lives a 30 minute drive away and comes here on a bicycle or by bus.
Apparently didn't know that the scrolling wheel on the mouse is clickable.
Said that his PC experience is mostly from his PlayStation (PC = PlayCtation apparently).
Get's fired, says that he'll go to the press. Never does.
Case 1:
Yet another new intern. He seems very eager to learn and work, capable, even charismatic. Has an impressive CV.
Does nothing.
Learns from the "case 0" guy and spends time with him until he is fired.
Comes to work at 8:00 AM and immediately goes to sleep on an office puff. In front of everyone.
Keeps dining alone, without a notice, at different times, for hours. Sometimes brings food into the office and loudly eats it there.
On his evening shifts keeps disappearing for long periods of time. Apparently drinking in the nearby bars and hitting on girls.
Keeps bragging about his success with getting their numbers and rants about those who reject him.
For over a year he fails his final training test and remains a trainee, without the ability to work on a real case.
Not fired yet.
Case 2:
Company retreat. Beautiful, exotic views, warm sun beams, all inclusive package for everyone on a huge half-island.
Simon (he's still with us, now as a true engineer!) brings his MacBook to the beach in order to work and impress all others.
Everybody get's drunk and start throwing huge inflatable balls at each other. One hits his laptop and it immediately is flattened.
Upset Simon is going in circles and ranting about the situation, looking for a solution.
Loses his phone on the beach.
Takes his broken laptop with him while searching for the phone.
Dips the laptop in the river while drunkenly ducking in order to pick a clam.
Case 3:
Still company retreat.
Drunk intern makes out with an employee's drunk wife.
Huge verbal fight. The husband says that he files for a divorce. Intern get's fired.
Case 4:
Still company retreat.
Three interns each take an inflatable swimming mattress and drift with the current. Get found on the other side of the resort three hours later, with red skin and severely dehydrated.
Case 5:
Still company retreat.
The 'informally fired' intern gets drunk again, climbs through a window into a room and makes out with an employee's drunk wife.
Again, gets caught when the husband returns to find a locked door but can see them though the window.
Case 6:
Still company retreat.
We all get ferociously drunk and wander off to the unknown in search of more booze.
Everybody does something stupid and somebody finds Simon's phone.
Simon is lost.
Frenzied horde of drunks is roaming the half-island in search of ethanol and the lost comrade.
Simon's phone get's permanently lost.
Five people step on sea urchins but find that out only hours later and then are unable to walk.
The mob, now including more drunk people who joined voluntarily, finds the sexually active intern making out with the enraged employee's wife yet again.
Surprisingly Simon is found sleeping in a room nearby.24 -
I absolutely HATE "web developers" who call you in to fix their FooBar'd mess, yet can't stop themselves from dictating what you should and shouldn't do, especially when they have no idea what they're doing.
So I get called in to a job improving the performance of a Magento site (and let's just say I have no love for Magento for a number of reasons) because this "developer" enabled Redis and expected everything to be lightning fast. Maybe he thought "Redis" was the name of a magical sorcerer living in the server. A master conjurer capable of weaving mystical time-altering spells to inexplicably improve the performance. Who knows?
This guy claims he spent "months" trying to figure out why the website couldn't load faster than 7 seconds at best, and his employer is demanding a resolution so he stops losing conversions. I usually try to avoid Magento because of all the headaches that come with it, but I figured "sure, why not?" I mean, he built the website less than a year ago, so how bad can it really be? Well...let's see how fast you all can facepalm:
1.) The website was built brand new on Magento 1.9.2.4...what? I mean, if this were built a few years back, that would be a different story, but building a fresh Magento website in 2017 in 1.x? I asked him why he did that...his answer absolutely floored me: "because PHP 5.5 was the best choice at the time for speed and performance..." What?!
2.) The ONLY optimization done on the website was Redis cache being enabled. No merged CSS/JS, no use of a CDN, no image optimization, no gzip, no expires rules. Just Redis...
3.) Now to say the website was poorly coded was an understatement. This wasn't the worst coding I've seen, but it was far from acceptable. There was no organization whatsoever. Templates and skin assets are being called from across 12 different locations on the server, making tracking down and finding a snippet to fix downright annoying.
But not only that, the home page itself had 83 custom database queries to load the products on the page. He said this was so he could load products from several different categories and custom tables to show on the page. I asked him why he didn't just call a few join queries, and he had no idea what I was talking about.
4.) Almost every image on the website was a .PNG file, 2000x2000 px and lossless. The home page alone was 22MB just from images.
There were several other issues, but those 4 should be enough to paint a good picture. The client wanted this all done in a week for less than $500. We laughed. But we agreed on the price only because of a long relationship and because they have some referrals they got us in the door with. But we told them it would get done on our time, not theirs. So I copied the website to our server as a test bed and got to work.
After numerous hours of bug fixes, recoding queries, disabling Redis and opting for higher innodb cache (more on that later), image optimization, js/css/html combining, render-unblocking and minification, lazyloading images tweaking Magento to work with PHP7, installing OpCache and setting up basic htaccess optimizations, we smash the loading time down to 1.2 seconds total, and most of that time was for external JavaScript plugins deemed "necessary". Time to First Byte went from a staggering 2.2 seconds to about 45ms. Needless to say, we kicked its ass.
So I show their developer the changes and he's stunned. He says he'll tell the hosting provider create a new server set up to migrate the optimized site over and cut over to, because taking the live website down for maintenance for even an hour or two in the middle of the night is "unacceptable".
So trying to be cool about it, I tell him I'd be happy to configure the server to the exact specifications needed. He says "we can't do that". I look at him confused. "What do you mean we 'can't'?" He tells me that even though this is a dedicated server, the provider doesn't allow any access other than a jailed shell account and cPanel access. What?! This is a company averaging 3 million+ per year in revenue. Why don't they have an IT manager overseeing everything? Apparently for them, they're too cheap for that, so they went with a "managed dedicated server", "managed" apparently meaning "you only get to use it like a shared host".
So after countless phone calls arguing with the hosting provider, they agree to make our changes. Then the client's developer starts getting nasty out of nowhere. He says my optimizations are not acceptable because I'm not using Redis cache, and now the client is threatening to walk away without paying us.
So I guess the overall message from this rant is not so much about the situation, but the developer and countless others like him that are clueless, but try to speak from a position of authority.
If we as developers don't stop challenging each other in a measuring contest and learn to let go when we need help, we can get a lot more done and prevent losing clients. </rant>14 -
Long time no see Friend:- "hey dude what do you do for a living"
Me:- "I suffer in silence"
Ltnsf:- " but what exactly do you do"
Me:-"I stare at a rectangular space hoping to find enlightenment" -
Testivus On Test Coverage
Early one morning, a programmer asked the great master:
“I am ready to write some unit tests. What code coverage should I aim for?”
The great master replied:
“Don’t worry about coverage, just write some good tests.”
The programmer smiled, bowed, and left.
...
Later that day, a second programmer asked the same question.
The great master pointed at a pot of boiling water and said:
“How many grains of rice should I put in that pot?”
The programmer, looking puzzled, replied:
“How can I possibly tell you? It depends on how many people you need to feed, how hungry they are, what other food you are serving, how much rice you have available, and so on.”
“Exactly,” said the great master.
The second programmer smiled, bowed, and left.
...
Toward the end of the day, a third programmer came and asked the same question about code coverage.
“Eighty percent and no less!” Replied the master in a stern voice, pounding his fist on the table.
The third programmer smiled, bowed, and left.
...
After this last reply, a young apprentice approached the great master:
“Great master, today I overheard you answer the same question about code coverage with three different answers. Why?”
The great master stood up from his chair:
“Come get some fresh tea with me and let’s talk about it.”
After they filled their cups with smoking hot green tea, the great master began to answer:
“The first programmer is new and just getting started with testing. Right now he has a lot of code and no tests. He has a long way to go; focusing on code coverage at this time would be depressing and quite useless. He’s better off just getting used to writing and running some tests. He can worry about coverage later.”
“The second programmer, on the other hand, is quite experience both at programming and testing. When I replied by asking her how many grains of rice I should put in a pot, I helped her realize that the amount of testing necessary depends on a number of factors, and she knows those factors better than I do – it’s her code after all. There is no single, simple, answer, and she’s smart enough to handle the truth and work with that.”
“I see,” said the young apprentice, “but if there is no single simple answer, then why did you answer the third programmer ‘Eighty percent and no less’?”
The great master laughed so hard and loud that his belly, evidence that he drank more than just green tea, flopped up and down.
“The third programmer wants only simple answers – even when there are no simple answers … and then does not follow them anyway.”
The young apprentice and the grizzled great master finished drinking their tea in contemplative silence.
Found on stack overflow https://stackoverflow.com/questions...8 -
A wild Darwin Award nominee appears.
Background: Admins report that a legacy nightly update process isn't working. Ticket actually states problem is obviously in "the codes."
Scene: Meeting with about 20 people to triage the issue (blamestorming)
"Senior" Admin: "update process not working, the file is not present"
Moi: "which file?"
SAdmin: "file that is in ticket, EPN-1003"
Moi: "..." *grumbles, plans murder, opens ticket*
...
Moi: "The config dotfile is missing?"
SAdmin: "Yes, file no there. Can you fix?"
Moi: "Engineers don't have access to the production system. Please share your screen"
SAdmin: "ok"
*time passes, screen appears*
Moi: "ls the configuration dir"
SAdmin: *fails in bash* > ls
*computer prints*
> ls
_.legacyjobrc
Moi: *sees issues, blood pressure rises* "Please run list all long"
SAdmin: *fails in bash, again* > ls ?
Moi: *shakes* "ls -la"
SAdmin: *shonorable mention* > ls -la
*computer prints*
> ls -la
total 1300
drwxrwxrwx- 18 SAdmin {Today} -- _.legacyjobrc
Moi: "Why did you rename the config file?"
SAdmin: "Nothing changed"
Moi: "... are you sure?"
SAdmin: "No, changed nothing."
Moi: "Is the job running as your account for some reason?"
SAdmin: "No, job is root"
Moi: *shares screenshot of previous ls* This suggests your account was likely used to rename the dotfile, did you share your account with anyone?
SAdmin: "No, I rename file because could not see"
Moi: *heavy seething* so, just to make sure I understand, you renamed a dotfile because you couldn't see it in the terminal with ls?
SAdmin: "No, I rename file because it was not visible, now is visible"
Moi: "and then you filed a ticket because the application stopped working after you renamed the configuration file? You didn't think there might be a correlation between those two things?"
SAdmin: "yes, it no work"
Interjecting Director: "How did no one catch this? Why were there no checks, and why is there no user interface to configure this application? When I was writing applications I cared about quality"
Moi: *heavy seething*
IDjit: "Well? Anyone? How are we going to fix this"
Moi: "The administrative team will need to rename the file back to its original name"
IDjit: "can't the engineering team do this?!"
Moi: "We could, but it's corporate policy that we have no access to those environments"
IDjit: "Ok, what caused this issue in the first place? How did it get this way?!"
TFW you think you've hit the bottom of idiocy barrel, and the director says, "hold my mango lassi."27 -
My most awkward recruiter interaction?
Just graduated college and got 'suckered' by an programming position ad that turned out to be a recruiting company. It was fine since they charge the company for their services and not me.
After a couple of weeks of waiting (they initially promised I would/could have at least 3 interviews a week, which hadn't happened.) I decided to start looking again on my own, found a position, and I was hired.
About two months later I get a phone call:
<skipping the pleasantries>
R: "I see you are working for D, congratulations. I've started the paperwork for our reimbursement."
Me: "Reimburse for what? I found that job on my own."
R: "D is one of the companies we work with and when we submitted your resume, they told us you were already hired."
Me: "And?"
R: "And you signed a contract and now its time to pay. The fees only start at $500"
Me: "Not me. I have the contract, it states, in the second paragraph, I am not responsible for any hiring fees."
<couple of seconds of silence>
R: "Yes, but that is only if we negotiated the contact. Since you went behind our back, we couldn't start the process"
Me: "And?"
R: "And its a breach of contract."
Me: "I'm not a lawyer, I don't understand what you're saying. It says right here on the contract I signed, I don't pay any fees. No where does it say I'm not allowed to look for a job on my own. Right?"
R: "Um..yea..right..right...but you were hired by one of our contracted companies."
Me: "No way I would have known that. Maybe you should have set up an interview long before now."
<R is getting pretty angry at this point>
R: "I'm sure we gave you list of companies we work with. Contacting those companies is a breach of contract. Unless you want our lawyers to get involved, the fee is only $500. Failing to honor your side of the agreement and we'll be forced to contact your employer and begin garnishing your wage until the fee is paid. You don't want that, do you?"
Me: "There was no list and I am allowed to find a job on my own. Again, I'm not responsible for you not setting up an interview so do whatever you think you can do. Have a good night"
<I hang up>
About a week later..
Boss: "Got a phone call from XYZ Recruiting requesting a wage garnishment. Do you know anything about that?"
<I explain the situation>
Boss: "Oh good grief. We've worked with them a couple of times and we contact them on an individual basis for new hires. You're fine"
Me: "You're not going to garnish my paycheck?"
Boss: "No no no, that's not how this works. He was probably trying to scare you into paying their crazy fees."
Me: "What if they get their lawyers involved? I don't want to cause any trouble"
Boss: "Ha ha...XYZ Recruiting is a couple of guys in an office and we have lawyers on the 3rd floor who eat and breath this shit. They know that and you won't hearing from them again."5 -
HR people working in tech companies, let's talk about them...
*phone rings and I pick up*
HR Lady: Hi, this is [name] from [company]. I'm calling you regarding your application you submitted [some date 2 months ago!].
Me: *realizing that I've applied 2 freaking months ago* Hmmm OK....
HR Lady: Yes, well, we asked for your GitHub account, but you seem to have forgotten to provide it.
Me: *open up the email and see that I've sent them my GitLab account* Well, I have the email right here and I did send you a git account. I mean, it's not GitHub specifically but it's a GitLab account, pretty much the same thing, you should be good with that.
HR Lady: OK, let me put you on hold for a minute.
*2-3 minutes passes*
HR Lady: Hi sir, I've asked my colleague [which I suppose is another HR] and he told me that they're not the same thing, we cannot proceed until you give us the right link, you need to send us a link to your GitHub account.
Me: I mean, they aren't the SAME EXACT thing, but both companies provide essentially the same service, it's like Messenger and WhatsApp. Look, I'm pretty sure that if you give this to another programmer they'll be fine.
HR Lady: No, Messenger and WhatsApp aren't the same thing. Sir, please stay polite. We need a GitHub account not a GitLab account.
Me: *mumbling* Oh boy.... M'am, it's OK, I don't need the job anyway, I've found something. Two months is a long time and I needed something quickly. Thank you, have a good day.6 -
I’m kind of pissy, so let’s get into this.
My apologies though: it’s kind of scattered.
Family support?
For @Root? Fucking never.
Maybe if I wanted to be a business major my mother might have cared. Maybe the other one (whom I call Dick because fuck him, and because it’s accurate) would have cared if I suddenly wanted to become a mechanic. But in both cases, I really doubt it. I’d probably just have been berated for not being perfect, or better at their respective fields than they were at 3x my age.
Anyway.
Support being a dev?
Not even a little.
I had hand-me-down computers that were outmoded when they originally bought them: cutting-edge discount resale tech like Win95, 33/66mhz, 404mb hd. It wouldn’t even play an MP3 without stuttering.
(The only time I had a decent one is when I built one for myself while in high school. They couldn’t believe I spent so much money on what they saw as a silly toy.)
Using a computer for anything other than email or “real world” work was bad in their eyes. Whenever I was on the computer, they accused me of playing games, and constantly yelled at me for wasting my time, for rotting in my room, etc. We moved so often I never had any friends, and they were simply awful to be around, so what was my alternative? I also got into trouble for reading too much (seriously), and with computers I could at least make things.
If they got mad at me for any (real or imagined) reason (which happened almost every other day) they would steal my things, throw them out, or get mad and destroy them. Desk, books, decorations, posters, jewelry, perfume, containers, my chair, etc. Sometimes they would just steal my power cables or network cables. If they left the house, they would sometimes unplug the internet altogether, and claim they didn’t know why it was down. (Stealing/unplugging cables continued until I was 16.) If they found my game CDs, those would disappear, too. They would go through my room, my backpack and its notes/binders/folders/assignments, my closet, my drawers, my journals (of course my journals), and my computer, too. And if they found anything at all they didn’t like, they would confront me about it, and often would bring it up for months telling me how wrong/bad I was. Related: I got all A’s and a B one year in high school, and didn’t hear the end of it for the entire summer vacation.
It got to the point that I invented my own language with its own vocabulary, grammar, and alphabet just so I could have just a little bit of privacy. (I’m still fluent in it.) I would only store everything important from my computer on my only Zip disk so that I could take it to school with me every day and keep it out of their hands. I was terrified of losing all of my work, and carrying a Zip disk around in my backpack (with no backups) was safer than leaving it at home.
I continued to experiment and learn whatever I could about computers and programming, and also started taking CS classes when I reached high school. Amusingly, I didn’t even like computers despite all of this — they were simply an escape.
Around the same time (freshman in high school) I was a decent enough dev to actually write useful software, and made a little bit of money doing that. I also made some for my parents, both for personal use and for their businesses. They never trusted it, and continually trashtalked it. They would only begrudgingly use the business software because the alternatives were many thousands of dollars. And, despite never ever having a problem with any of it, they insisted I accompany them every time, and these were often at 3am. Instead of being thankful, they would be sarcastically amazed when nothing went wrong for the nth time. Two of the larger projects I made for them were: an inventory management system that interfaced with hand scanners (VB), and another inventory management system for government facility audits (Access). Several websites, too. I actually got paid for the Access application thanks to a contract!
To put this into perspective, I was selected to work on a government software project about a year later, while still in high school. That didn’t impress them, either.
They continued to see computers as a useless waste of time, and kept telling me that I would be unemployable, and end up alone.
When they learned I was dating someone long-distance, and that it was a she, they simply took my computer and didn’t let me use it again for six months. Really freaking hard to do senior projects without a computer. They begrudgingly allowed me to use theirs for schoolwork, but it had a fraction of the specs — and some projects required Flash, which the computer could barely run.
Between the constant insults, yelling, abuse (not mentioned here), total lack of privacy, and the theft, destruction, etc. I still managed to teach myself about computers and programming.
In short, I am a dev despite my parents’ best efforts to the contrary.30 -
Things have been a little too quiet on my side here, so its time for an exciting new series:
practiseSafeHex's new life as a manager.
Episode 1: Dealing with the new backend team
It's great to be back folks. Since our last series where we delved into the mind numbing idiocy of former colleagues, a lot has changed. I've moved to a new company and taken a step up as a Dev manager / Tech lead. Now I know what you are all thinking, sounds more dull and boring right? Well it wouldn't be a practiseSafeHex series if we weren't ...
<audience-shouting>
DEALING! ... WITH! ... IDIOTS!
</audience-shouting>
Bingo! so lets jump right in and kick us off with a good one.
So for the past few months i've been on an on-boarding / fact finding / figuring out this shit-storm, mission to understand more about what it is i'm suppose to do and how to do it. Last week, as part of this, I had the esteemed pleasure of meeting face to face with the remote backend team i've been working with. Lets rattle off a few facts to catch us all up:
- 8 hour time difference to me
- No documentation other than a non-maintained swagger doc
- Swagger is reporting errors and several of the input models are just `Type: String`
- The one model that seems accurate, has every property listed as optional, including what must be the primary key
- Properties go missing and get removed at the drop of a hat and we are never told.
- First email I sent them took 27 days to reply, my response to that hasn't been answered so far 31 days later (new record! way to go team, I knew we could do it!!!)
- I deal directly with 2 of them, the manager and the tech lead. Based on how things have gone so far, i've nick named them:
1) Ass
2) Hole
So lets look at some example of their work:
- I was trying to test the new backend, I saw no data in QA. They said it wouldn't show up until mid day their time, which is middle of the night for us. I said we need data in our timezone and I was told: a) "You don't understand how big this system is" (which is their new catch phrase) b) "Your timezone is not my concern"
- The whole org started testing 2 days later. The next day a member from each team was on a call and I was asked to give an update of how the testing was going on the mobile side. I said I was completely blocked because I can't get test data. Backend were asked to respond. They acknowledged they were aware, but that mobile don't understand how big the system is, and that the mobile team need to come up with ideas for the backend team, as to how mobile can test it. I said we can't do anything without test data, they said ... can you guess what? ... correct "you don't understand how big the system is"
- We eventually got something going and I noticed that only 1 of the 5 API changes due on their side was done. Opened tickets. 2 days later asked them for progress and was told that "new findings" always go to the bottom of the backlog, and they are busy with other things. I said these were suppose to be done days ago. They said you can't give us 2 days notice and expect everything done. I said the original ticket was opened a month a go *sends link* ......... *long silence* ...... "ok, but you don't understand how big the system is, this is a lot of work"
- We were on a call. Product was asking the backend manager (aka "Ass") a question about a slight upgrade to the new feature. While trying to talk, the tech lead (aka "Hole") kept cutting everyone off by saying loudly "but thats not in scope". The question was "is this possible in the future" and "how long would it take", coming from management and product development. Hole just kept saying "its not in scope", until he was told to be quiet by several people.
- An API was sending down JSON with a string containing a message for the user with 2 bits of data inside it. We asked for one of those pieces to also come down as a property as the string can change and we needed it client side. We got that. A few days later we found an edge case and asked for the second piece of data to be a property too. Now keep in mind, they clearly already have access to them in order to make the string. We were told "If you keep requesting changes like this, you are going to delay the release of the backend by up to 2 weeks"
Yes folks, there you have it, the most minuscule JSON modifications, can delay your release by up to 2 weeks ........ maybe I should just tell product, that they don't understand how big the app is, and claim we can't build it on our side? Seems to work for them
Thats all the time we have for today,
Tune in for more, where we'll be looking into such topics as:
- If god himself was an iOS developer ... not
- Why automate when you can spend all day doing it by hand
- Its more time-efficient to just give everything a story point of 5
- Why waste time replying to emails ... when you can do nothing instead
See you all next week,
practiseSafeHex14 -
This is kind of a horror story, with a happing ending. It contains a lot of gore images, and some porn. Very long story.
TL;DR Network upgrade
Once upon a time, there were two companies HA and HP, both owned by HC. Many years went by and the two companies worked along side each one another, but sometimes there were trouble, because they weren't sure who was supposed to bill the client for projects HA and HP had worked on together.
At HA there was an IT guy, an imbecile of such. He's very slow at doing his job, doesn't exactly understand what he's doing, nor security principles.
The IT guy at HA also did some IT work for HP from time to time when needed. But he was not in charge of the infrastructure for HP, that was the jobb for one developer who didn't really know what he was doing either.
Whenever a new server was set up at HP, the developer tried many solutions, until he landed on one, but he never removed the other tested solutions, and the config is scattered all around. And no documentation!!
Same goes with network, when something new was added, the old was never removed or reconfigured to something else.
One dark winter, a knight arrived at HP. He had many skills. Networking, server management, development, design and generally a fucking awesome viking.
This genius would often try to cleanse the network and servers, and begged his boss to let him buy new equipment to replace the old, to no prevail.
Whenever he would look in the server room, he would get shivers down his back.
(Image: https://i.bratteng.xyz/Ie9x3YC33C.j...)
One and a half year later, the powerful owners in HA, HP and HC decided it was finally time to merge HA and HP together to HS. The knight thought this was his moment, he should ask CEO if he could be in charge of migrating the network, and do a complete overhault so they could get 1Gb interwebz speeds.
The knight had to come up with a plan and some price estimates, as the IT guy also would do this.
The IT guy proposed his solution, a Sonicwall gateway to 22 000 NOK, and using a 3rd party company to manage it for 3000 NOK/month.
"This is absurd", said the knight to the CEO and CXO, "I can come up with a better solution that is a complete upgrade. And it will be super easy to manage."
The CEO and CXO gave the knight a thumbs up. The race was on. We're moving in 2 months, I got to have the equipment by then, so I need a plan by the end of the week.
He roamed the wide internet, looked at many solutions, and ended up with going for Ubiquiti's Unifi series. Cheap, reliable and pretty nice to look at.
The CXO had mentioned the WiFi at HA was pretty bad, as there was WLAN for each meeting room, and one for the desks, so the phone would constantly jump between networks.
So the knight ended up with this solution:
2x Unifi Securtiy Gateway Pro 4
2x Unifi 48port
1x Unifi 10G 16port
5x Unifi AP-AC-Lite
12x pairs of 10G unifi fibre modules
All with a price tag around the one Sonicwall for 22 000 NOK, not including patch cables, POE injectors and fibre cables.
The knight presented this to the CXO, whom is not very fond of the IT guy, and the CXO thought this was a great solution.
But the IT guy had to have a say at this too, so he was sent the solution and had 2 weeks to dispute the soltion.
Time went by, CXO started to get tired of the waiting, so he called in a meeting with the knight and the IT guy, this was the IT guys chance to dispute the solution.
All he had to say was he was familiar with the Sonicwall solution, and having a 3rd party company managing it is great.
He was given another 2 weeks to dispute the solution, yet nothing happened.
The CXO gave the thumbs up, and the knight orders the equipment.
At this time, the knight asks the IT guy for access to the server room at HA, and a key (which would take 2 months to get sorted, because IT guys is a slow imbecile)
The horrors, Oh the horrors, the knight had never seen anything like this before.
(Image: https://i.bratteng.xyz/HfptwEh9qT.j...)
(Image: https://i.bratteng.xyz/HfptwEh9qT.j...)
(Image: https://i.bratteng.xyz/hmOE2ZuQuE.j...)
(Image: https://i.bratteng.xyz/4Flmkx6slQ.j...)
What are all these for, why is there a fan ductaped to on of the servers.
WHAT IS THIS!
Why are there cables tied in a knot.
WHY!
These are questions we never will know the answers too.
The knight needs access to the servers, and sonicwall to see how this is configured.
After 1.5 month he gains access to the sonicwall and one of the xserve.
What the knight discovers baffles him.
All ports are open, sonicwall is basically in bridge mode and handing out public IPs to every device connected to it.
No VLANs, everything, just open...10 -
My first job: The Mystery of The Powered-Down Server
I paid my way through college by working every-other-semester in the Cooperative-Education Program my school provided. My first job was with a small company (now defunct) which made some of the very first optical-storage robotic storage systems. I honestly forgot what I was "officially" hired for at first, but I quickly moved up into the kernel device-driver team and was quite happy there.
It was primarily a Solaris shop, with a smattering of IBM AIX RS/6000. It was one of these ill-fated RS/6000 machines which (by no fault of its own) plays a major role in this story.
One day, I came to work to find my team-leader in quite a tizzy -- cursing and ranting about our VAR selling us bad equipment; about how IBM just doesn't make good hardware like they did in the good old days; about how back when _he_ was in charge of buying equipment this wouldn't happen, and on and on and on.
Our primary AIX dev server was powered off when he arrived. He booted it up, checked logs and was running self-diagnostics, but absolutely nothing so far indicated why the machine had shut down. We blew a couple of hours trying to figure out what happened, to no avail. Eventually, with other deadlines looming, we just chalked it up be something we'll look into more later.
Several days went by, with the usual day-to-day comings and goings; no surprises.
Then, next week, it happened again.
My team-leader was LIVID. The same server was hard-down again when he came in; no explanation. He opened a ticket with IBM and put in a call to our VAR rep, demanding answers -- how could they sell us bad equipment -- why isn't there any indication of what's failing -- someone must come out here and fix this NOW, and on and on and on.
(As a quick aside, in case it's not clearly coming through between-the-lines, our team leader was always a little bit "over to top" for me. He was the kind of person who "got things done," and as long as you stayed on his good side, you could just watch the fireworks most days - but it became pretty exhausting sometimes).
Back our story -
An IBM CE comes out and does a full on-site hardware diagnostic -- tears the whole server down, runs through everything one part a time. Absolutely. Nothing. Wrong.
I recall, at some point of all this, making the comment "It's almost like someone just pulls the plug on it -- like the power just, poof, goes away."
My team-leader demands the CE replace the power supply, even though it appeared to be operating normally. He does, at our cost, of course.
Another weeks goes by and all is forgotten in the swamp of work we have to do.
Until one day, the next week... Yes, you guessed it... It happens again. The server is down. Heads are exploding (will at least one head we all know by now). With all the screaming going on, the entire office staff should have comped some Advil.
My team-leader demands the facilities team do a full diagnostic on the UPS system and assure we aren't getting drop-outs on the power system. They do the diagnostic. They also review the logs for the power/load distribution to the entire lab and office spaces. Nothing is amiss.
This would also be a good time draw the picture of where this server is -- this particular server is not in the actual server room, it's out in the office area. That's on purpose, since it is connected to a demo robotics cabinet we use for testing and POC work. And customer demos. This will date me, but these were the days when robotic storage was new and VERY exciting to watch...
So, this is basically a couple of big boxes out on the office floor, with power cables running into a special power-drop near the middle of the room. That information might seem superfluous now, but will come into play shortly in our story.
So, we still have no answer to what's causing the server problems, but we all have work to do, so we keep plugging away, hoping for the best.
The team leader is insisting the VAR swap in a new server.
One night, we (the device-driver team) are working late, burning the midnight oil, right there in the office, and we bear witness to something I will never forget.
The cleaning staff came in.
Anxious for a brief distraction from our marathon of debugging, we stopped to watch them set up and start cleaning the office for a bit.
Then, friends, I Am Not Making This Up(tm)... I watched one of the cleaning staff walk right over to that beautiful RS/6000 dev server, dwarfed in shadow beside that huge robotic disc enclosure... and yank the server power cable right out of the dedicated power drop. And plug in their vacuum cleaner. And vacuum the floor.
We each looked at one-another, slowly, in bewilderment... and then went home, after a brief discussion on the way out the door.
You see, our team-leader wasn't with us that night; so before we left, we all agreed to come in late the next day. Very late indeed.9 -
I suddenly remembered this after being gone from my previous company for nearly a year.
So, I worked there as a tech supporter and Linux engineer.
What would often happen was clients calling with an issue regarding software of some sorts and about half the time, instead of LOOKING AT THE GODDAMN ERROR MESSAGE they'd just click it away fast and complain shit wasn't working.
I specifically remember this one case:
*big client mails complained that one of their clients' email isn't working. Screenshots weren't possible apparently so after emailing back and forth for way too long, we decide to do a screen sharing session (which we never do).*
(for the record, already emailing for hours, client very frustrated, me as well because the behavior of the software sounds impossible)
Me: alright, close everything, then open it again so I can see what happens.
Client: *opens mail client, error appears, client clicks error away faster than an arch user being able to mention they use arch*
Me: uhm.... I assume you already know what that message said and that it has nothing to do with the issue?
Client: it has nothing to do with the issue.
Me: okay... But have you at least looked the message?
Client: no but it has nothing to do with the issue.
Me: but, how'd you know if you won't look at it?
Client: it has nothing to do with the issue, okay?
Me: okay.... so, what's happening here?
Client: the user isn't receiving email anymore at this point!
Me: alright, have you checked the settings and everything?
Client: of course, all good
Me: okay but can we at least restart the software again to at least check the error message?
Client: FINE. *restarts client (pun intended, of course)*
Error message: username or password incorrect, can't connect to the server.
Client:..........
Client:............
Client:...............
Client:..................
Client:.....................
Client:..................
Client:...............
Client:............
Client:.........
Client: 😐
Client: 😶
Client: 😅
Client: 😬
Client:..... Right, I changed the password...
Client: *sets correct password*
*poof, error message gone*
Client:..... Thanks 💀
Me: you're welcome 😄
💀3 -
So, I grew up on the US/Mexican border, in a city where saying there's no opportunity is like saying the Titanic suffered a small leak on its maiden voyage. There were two kinds of people in said town: Mexicans trying to find something less shit than juarez and white trash reveling in their own failure. I came from the latter, for whatever that's worth.
I graduated high school when I was almost 16 years old. Parents couldn't really afford to support three kids and pay the rent on the latest in a long line of shit holes we migrated in and out of. If being a serial eviction artist is a thing, my family were savants.
I applied to college and got accepted only to be told by my father that he didn't see the need. Turns out the only reason he'd helped me graduate early was so I could start working and help pay his bills. I said okay, turned around and tossed a bag and my shitty af spare parts computer into the back of the junkyard Vega I generously referred to as a car and moved cross country. Car died on arrival, so I was basically committed.
Pulled shifts at two part times and what kids today call a side hustle to pay for school, couch surfed most of the time. Sleep deprivation was the only constant.
Over the first 4 months I'd tried leveraging some certs and previous experience I'd obtained in high school to get employment, but wasn't having much luck in the bay area. And then I lost my job. The book store having burned down on the same weekend the owner was conveniently looking to buy property in Vegas.
Depression sets in, that wonderful soul crushing variety that comes with what little safety net you had evaporating.
At a certain point, I was basically living out of the campus computer lab, TA friend of mine nice enough to accidentally lock me in on the reg. Got really into online gaming as a means of dealing with my depression. One night, I dropped some code on a UO shard I'd been playing around on. Host was local, saw the code and offered me a job at his firm that paid chump change, but was three times what all my other work did combined and left time for school. Ground there for a few years until I got a position with work study at LBL that conflicted too much for it to remain mutually beneficial. Amicable parting of the ways.
Fucking poverty is what convinced me to code for a living. It's a solid guarantee of never going back to it. And to anyone who preaches the virtues of it and skipping opportunity on grounds of the moral high ground, well, you know.12 -
PM: 2 months? no thats way too long, do it in 1.
Director: I had a chat with someone else who doesn't work on this team, he says that developer you complained about is a good guy and we should keep him on the team.
Business: No, we don't have time for tech debt, lets build these new features as quick as possible and lets see where we are.
everyone: WHAT DO YOU MEAN IT CRASHED AGAIN??? THIS IS UNACCEPTABLE6 -
Was at my sisters place a little ago and somehow we came at the subject of her laptop.
For everyone who thinks I'm posting this solely to hate on windows, I'm not. This really happened and if you don't believe it, well, so be it, I guess.
Also keep in mind that's she's using a stock version without anything except for word and itunes installed.
She got it a couple of years ago and I dual booted it for her (windows + ubuntu). I fully expected her to use windows because of office and outlook etc.
Asked her anyways:
Me: So, you've got dual boot, although I think already know the answer, what system do you use mostly? (I didn't even consider that there was a possibility that the answer would be ubuntu or linux)
Sister: Ubuntu!
Me:
Me:
Me:
Me:
Me:
Me:
Me:
Me: 😵
Me: Sorry, what? You're not using windows as primary system?!
Sister: No. It at first takes that motherfucking system about 5 minutes to reach the FUCKING LOGIN SCREEN.
Me: Ow, that's bad :/
Me: *turns laptop on and indeed, it takes a fuckton of time*
Me: Is the password still the same as when I set it up for you?
Sister: Yesss.
Me: *types the password, it's working, loading screen appears*
Sister: Would you like a coffee?
Me: Uhm.... sure? But that would take you about 10-15 minutes to make.......?
Sister: Yes. And that's exactly how long it takes before that fucking piece of shit called windows has finally loaded the FUCKING DESKTOP.
Me: 😅
Me: Okay but it can't be that bad, right? I mean, I hate windows but you mostly need it for studies and such and as you know I'm not judging you for tha......
Sister: YES IT IS THAT FUCKING BAD. WHEN I'M IN CLASS, IT TAKES HALF THE FUCKING CLASS TO LOAD BEFORE I CAN OPEN WORD OR WHAT-THE-FUCK EVER.
THAT'S WHY I USE UBUNTU PRIMARILY, BECAUSE, ALTOUGH IT'S NOT MY FAVOURITE SYSTEM, IT. JUST. FUCKING. WORKS.
Well, I did definitely NOT see that one coming!
There is some bloatware on there but definitely as bad as what would cause this. Virus scan turned up empty. No. Fucking. Clue.
It's not a gaming laptop or anything but come on, it should run either windows or linux very well.51 -
[This makes me sound really bad at first, please read the whole thing]
Back when I first started freelancing I worked for a client who ran a game server hosting company. My job was to improve their system for updating game servers. This was one of my first clients and I didn't dare to question the fact that he was getting me to work on the production environment as they didn't have a development one setup. I came to regret that decision when out of no where during the first test, files just start deleting. I panicked as one would and tried to stop the webserver it was running on but oh no, he hasn't given me access to any of that. I thought well shit, I might as well see where I fucked up since it was midnight for him and I wasn't able to get a hold of him. I looked at every single line hundreds of times trying to see why it would have started deleting files. I found no cause. Exhausted, (This was 6am by this point) I pretty much passed out. I woke up around 5 hours later with my face on my keyboard (I know you've all done that) only to see a good 30 messages from the client screaming at me. It turns out that during that time every single client's game server had been deleted. Before responding and begging for forgiveness, I decided to take another crack at finding the root of the problem. It wasn't my fault. I had found the cause! It turns out a previous programmer had a script that would run "rm -rf" + (insert file name here) on the old server files, only he had fucked up the line and it would run "rm -rf /". I have never felt more relieved in my life. This script had been disabled by the original programmer but the client had set it to run again so that I could remake the system. Now, I was never told about this specific script as it was for a game they didn't host anymore.
I realise this is getting very long so I'll speed it up a bit.
He didn't want to take the blame and said I added the code and it was all my fault. He told me I could be on live chat support for 3 months at his company or pay $10,000. Out of all of this I had at least made sure to document what I was doing and backup every single file before I touched them which managed to save my ass when it came to him threatening legal action. I showed him my proof which resulted in him trying to guilt trip me to work for him for free as he had lost about 80% of his clients. By this point I had been abused constantly for 4 weeks by this son of a bitch. As I was underage he had said that if we went to court he'd take my parents house and make them live on the street. So how does one respond? A simple "Fuck off you cunt" and a block.
That was over 8 years ago and I haven't heard from him since.
If you've made it this far, congrats, you deserve a cookie!6 -
Well, here's the OS rant I promised. Also apologies for no blog posts the past few weeks, working on one but I want to have all the information correct and time isn't my best friend right now :/
Anyways, let's talk about operating systems. They serve a purpose which is the goal which the user has.
So, as everyone says (or, loads of people), every system is good for a purpose and you can't call the mainstream systems shit because they all have their use.
Last part is true (that they all have their use) but defining a good system is up to an individual. So, a system which I'd be able to call good, had at least the following 'features':
- it gives the user freedom. If someone just wants to use it for emailing and webbrowsing, fair enough. If someone wants to produce music on it, fair enough. If someone wants to rebuild the entire system to suit their needs, fair enough. If someone wants to check the source code to see what's actually running on their hardware, fair enough. It should be up to the user to decide what they want to/can do and not up to the maker of that system.
- it tries it's best to keep the security/privacy of its users protected. Meaning, by default, no calling home, no integrating users within mass surveillance programs and no unnecessary data collection.
- Open. Especially in an age of mass surveillance, it's very important that one has the option to check the underlying code for vulnerabilities/backdoors. Can everyone do that, nope. But that doesn't mean that the option shouldn't be there because it's also about transparency so you don't HAVE to trust a software vendor on their blue eyes.
- stability. A system should be stable enough for home users to use. For people who like to tweak around? Also, but tweaking *can* lead to instability and crashes, that's not the systems' responsibility.
Especially the security and privacy AND open parts are why I wouldn't ever voluntarily (if my job would depend on it, sure, I kinda need money to stay alive so I'll take that) use windows or macos. Sure, apple seems to care about user privacy way more than other vendors but as long as nobody can verify that through source code, no offense, I won't believe a thing they say about that because no one can technically verify it anyways.
Some people have told me that Linux is hard to use for new/(highly) a-technical people but looking at my own family and friends who adapted fast as hell and don't want to go back to windows now (and mac, for that matter), I highly doubt that. Sure, they'll have to learn something new. But that was also the case when they started to use any other system for the first time. Possibly try a different distro if one doesn't fit?
Problems - sometimes hard to solve on Linux, no doubt about that. But, at least its open. Meaning that someone can dive in as deep as possible/necessary to solve the problem. That's something which is very difficult with closed systems.
The best example in this case for me (don't remember how I did it by the way) was when I mounted a network drive at boot on windows and Linux (two systems using the same webDav drive). I changed the authentication and both systems weren't in for booting anymore. Hours of searching how to unfuck this on windows - I ended up reinstalling it because I just couldn't find a solution.
On linux, i found some article quite quickly telling to remove the entry for the webdav thingy from fstab. Booted into a root recovery shell, chrooted to the harddrive, removed the entry in fstab and rebooted. BAM. Everything worked again.
So yeah, that's my view on this, I guess ;P31 -
Reviewing coworker's code:
Me: I see you're doing a convoluted sort for every element twice to get your two lists in sync... 😐
CoWorker: Yeah. *straight face, no regrets* That's the only way to do this.
Me:... Uh... No? You can just manage one list with a simple struct and then use the the standard sort.
Coworker: Yeah sure I know. But it'll take time. We don't have time.
Me: *aghast* This is embarrassingly bad code!
Coworker: Don't worry, later on I'll use a hashmap for it. But this needs to be pushed now.
Me: *to myself, no you don't need a hashmap*
Okay, you do you but I can't back you on this. It isn't going to take a lot of time to correct it.
Next day.
Coworker: Hey can you review my code again?
Me: You've made the changes already? *in a bored tone, knowing that they wouldn't have changed shit*
Coworker: No this is a different file. Our manager agrees that we can worry about performance later.
Me: Sure. *😀🔨🔨*
Few weeks pass by:
QA: The operation takes absurdly long time to complete even with the smallest data. Ten minutes for X is unacceptable.
Me: Who would've known? ☺️21 -
Haven’t been on here for ages, but I felt like I needed to post this:
Warning:
This is long, and it might make you cry.
Backstory:
A couple of months back I worked for a completely clueless dude who had somehow landed a contract for a new website for a huge company. After a while he realised that he was incapable of completing the assignment. He then hired me as a subcontractor and I deleted literally everything he had done and started from scratch. He had over promised and under explained what needed to be done to me. It took many sleepless nights to get this finished with all the amendments and I had to double my pricing because he kept changing the brief.
Even after doubling my prices I still put in way too many hours of work. At one point I had enough and just ghosted the guy as I had done what he asked, and when he submitted it to them they wanted changes. He couldn’t make the changes, so I had to. He wouldn’t pay me extra though. I decided it wasn’t worth my time.
A couple of days ago I heard from him again. He had found another subcontractor to finish the changes. He still needed a few things though, so he promised me that I would get paid after fixing those things. I looked at the few things he had listed in our KANBAN and thought it was a few easy tasks.. until I opened the project..
I had my computer set up to sync with his server because he wanted everything done live and in production. So I naturally thought I would just “sync down” everything that the other subcontractor had done.
Here is where the magic started to happen.. I started the sync and went to grab a glass of water, and it was still running when I came back. I looked at the log and saw a bunch of “node_module” files syncing - around 900 folders. Funny thing is; neither the site nor server has anything to do with node..
I disregarded this and downloaded the files in a more manual fashion to a new folder. Interestingly I could see that my SCSS folders had not been touched since I stopped working on the project.. interesting, I thought to myself..
Turns out, the other subcontractor had taken my rendered and minimised CSS file, prettified it and worked from there. This meant that the around ~1500 lines of SCSS neatly organised in around 20 files was suddenly turned into a monster of a single CSS file of no less than 17300 lines.
I tried to explain to the guy that the other subcontractor had fucked up, but he said that I should be able to fix it since I was the one that made it initially. I haven’t replied. My life is too short for this.8 -
Ahhhhh devrant... long time no see.
I just need to get something off my heart. The past two years, I worked for the same ISP in Germany, but now as a devops engineer. Well, popo hit the fan really quick lately..
First a good friend, team lead for one of five areas in Germany, quit his job. He was one of the nicest persons I knew, and he believed that all that five areas should work together and share dev resources. Thats why I work mostly in other areas as developer.
Shortly after, his deputy quit as well. I heard that this specific area, the management were a bunch of dicks, but wow!
A short while later, I learnd the hard truth, why those two good friends quit, and that brings me to this story. In a meeting I readied myself up to present my new plattform - a social room - to management. I got a lot of positive feedback from others and we thaught managment would approve of the project. But nope. "We can buy from external, we dont need to program ourselfs. In fact lets stop spending money on internal programming, we should outsource everything!"
I was baffeld... Wtf did i just witness? My team lead didn't say anything, and afterwards I didn't dare to question it, but I told most of my close dev friends and we all realizied, that the rumors were true... We will be shifting into project managment.
At this point, I realized that I wasnt having it, and made a linkedIn account, not because I wanted to switch jobs, but because, meh you never know.
One week ago, one of my bestest buddies said he will quit and join his team lead that left eariler this year, I was heartbroken. Me and our other buddy are devestated, because now we have to do everything he had done. Management didn't listen as we told them that nobody can maintain his code. I have so many projects, I can bearly keep up with them. Now I got a lead role for creating the server infrastucture for a huge project my buddy was working on. Only as specialist and not PM, but his Team Lead thinks I am replacing him!
Last week I got a message on LinkedIn, a consulting firm reached out to me to aquire me as a new consultant or devops engineer. They look great, only less vacation (26 instead of 30 days), 40h shifts instead of 38h and only slightly more base payment. I currently receive about 53.000€ a year, the new firm only grants up to 60.000€ a year for anyone. Otherwise, they look great.
With all my buddies quitting around me, work getting more while time developing decreasing, I don't know what the right thing to do is... There is no way I can get a payment increase in my current position. I always say "my workplace is save, but my work isnt". I don't want to do project managment.
Today I have a meeting with my team lead, she is really nice btw. This is an annual meeting where we discuss my future in the company etc. Shortly after, I have a meeting with the new firm to discuss a bunch of questions I have.
I dont know what to do...
Edit: I missed you, devrant6 -
Manual Data Entry: Most boring job
This reminds me of one conversation with one of my faculty..
Faculty: Why not try some Machine Learning Project?
Me: Cool. Any ideas you have already thought
Faculty: Comes up with a really noble idea
Me: Awesome idea. But we need data
Faculty: Don't worry. I will get it. Just help me setup Hadoop (see the irony.. no data yet, and he wants big data setup)
Me: But we don't have data. Let's focus of data collection, Sir
Faculty: I will get it. Don't worry. Trust me.
( I did setup for him twice coz he formatted the system on which I did the setup first time)
After 6 months,
Me: (same question) Sir, Data??
Faculty: I got it.
Me: Great. Give me, I can start looking into it from today.
Faculty: Actually, it's in a register written manually in a different language (which even I can't understand) I will hire data entry guys to convert it into English digital contents.
Me: *facepalm*
Road to Manual data entry to Big Data
Dedicating this pencil to the individuals keeping the register up to date and Sir in hopes of converting it into big data..
Long way to go..4 -
So, in the printing industry, FTP has a long and storied history as the standard method of sending art assets. But as time has gone on, more and more people are utterly incapable of handling FTP.
Customer: "I sent you the file. It's called xyz.zip"
PM: "I don't see the file."
Customer: "I know I sent it."
PM: "Let me check with IT."
I check the logs. No such file was uploaded.
PM: "What program did you use to send the file?"
Customer: "Firefox"
Every. Fucking. Time.
It turns out the Germans actually have a word for this:20 -
My code review nightmare part 3
Performed a review on/against a workplace 'nemesis'. I didn't follow the department standards document (cause I could care less about spacing, sorted usings, etc) and identified over 80 bugs, logic errors, n+1 patterns, memory leaks (yes, even in .net devs can cause em'), and general bad behavior (ex.'eating' exceptions that should be handled or at least logged)
Because 'Jeff' was considered a golden child (that's another long TL;DR), his boss and others took a major offense and demanded I justify my review, item by item.
About 2 hours into the meeting, our department mgr realized embarrassing Jeff any further wasn't doing anyone any good and decided to take matters into his own hands. Thinking 'well, its about time he did his job', I go back to my desk. About an hour later..
Mgr: "I need you in the conference room, RIGHT NOW!"
<oh crap>
Mgr: "I spoke to Jeff and I think I know what the problem is. Did you ever train him on any of the problems you identified in the review?"
Me: "Um, no. Why would I?"
Mgr: "Ha!..I was right. So lets agree the problems are partially your fault, OK?"
Me: "Finding the bugs in his code is somehow my fault?"
Mgr: "Yes! For example, the n+1 problem in using the WCF service, you never trained him on how to use the service. You wrote the service, correct?"
Me: "Yes, but it's not my job to teach him how to write C#. I documented the process and have examples in the document to avoid n+1. All he had to do was copy/paste."
Mgr: "But you never sat with Jeff and talked to him like a human being? You sit over there in your silo and are oblivious to the problems you cause. This ends today!"
Me: "What the...I have no idea what you are talking about. What in the world did Jeff tell you?"
Mgr: "He told me enough and I'm putting an end to it. I want a compressive training class developed on how to use your service. I'll give you a month to get your act together and properly train these developers."
3 days later, I submit the power-point presentation and accompanying docs. It was only one WCF with a handful of methods. Mgr approved the training, etc..etc. execute the 'training', and Jeff submits a code review a couple of weeks later. From over 80 issues to around 50. The poop hits the fan again.
Mgr: "What's your problem? When are you going to take your responsibility seriously?"
Me: "Its pretty clear I don't have the problem. All the review items were also verified by other devs. Its not me trying to be an asshole."
Mgr: "Enough with the excuses. If you think you can do a better job *you* make the code changes and submit them for Jeff for review. No More Excuses!"
Couple of days later, I make the changes, submit them for review, and Jeff really couldn't say too much other than "I don't see this as an improvement"
TL;DR, I had been tracking the errors generated by the site due to the bugs prior to my changes. After deployment, # of errors went from thousands per hour to maybe hundreds per day (that's another story) and the site saw significant performance increases, fewer customer complaints, etc..etc.
At a company event, the department VP hands out special recognition awards:
VP: "This award is especially well earned. Not only does this individual exemplify the company's focus on teamwork, he also went above and beyond the call of duty to serve our customers. Jeff, come on up and get this well deserved award."19 -
Here's the time an Amazon recruiter scheduled a call with me just to tell me I wouldn't be getting the job.
A few years ago, I left Uber after the seemingly non-stop public snafus they were getting themselves into (I have a lot of rants about Uber if anyone is interested, some of them mind-melting). I decided to take a two month break given that my financials looked decent for once and I was tired of 100 hour weeks.
During that time, I of course started perusing the typical job-seeking sites I had remembered from before. Somehow, from one of the profiles I set up, I caught the eye of an Amazon recruiter. They emailed me and I agreed to set up a date and time for an introductory chat.
They already had my CV. They already had my StackOverflow/Github information. This wasn't a technical interview, and the recruiter wasn't part of any of the tech teams. This is important information moving forward.
A few days later, I got the call from the recruiter. He introduced himself as the person from the emails, thanking my for my time, etc.. Things started out pleasant with the smalltalk and whatnot, but then the recruiter said "so I have some concerns about your resume".
Under one of the sections I had a list of things I was skilled with - one of which, regrettably, is PHP. Completely ignoring Java, Javascript, C# and C++ knowledge and all of the other achievements I have with those technologies, the recruiter really wanted to drill me about the PHP.
"Do you work a lot with PHP?"
"No, not anymore - from time to time I have to do something with it but it's not my main language anymore. I know it quite well, though."
"Oh okay well we aren't looking for any PHP roles right now, unfortunately."
"Okay, no problem."
Perhaps I could have said more, but from my end of things, I meant "I don't see a problem here, I don't write a lot of PHP and you don't need a lot of PHP".
After a pause that felt like an hour, the recruiter broke the silence and said "Okay well thanks for your time today, I'm sorry things didn't work out."
Bewildered, I asked which technology stack they were using on the team.
"Not PHP, unfortunately. Thank you for your time." and then an abrupt click.
The recruiter found me himself, looked at my resume (assumably), sought out to contact me, arranged a time for a call, and then called me, just to tell me I wouldn't get the position due to knowing PHP at some point in my career.
Years later, the whole interaction still shocks me. Somewhere in my drafts I have a long letter to the recruiter basically going over my entire career history explaining why his call was incredibly... well, fucking weird. Towards the end of writing it I realized it was more therapeutic for me to deal with whatever it was that just took place and that it probably wouldn't change my odds of working at Amazon.
So yeah. That's the story of the time Amazon set up a recruiting call just to tell me I wouldn't be working for them.9 -
3 rants for the price of 1, isn't that a great deal!
1. HP, you braindead fucking morons!!!
So recently I disassembled this HP laptop of mine to unfuck it at the hardware level. Some issues with the hinge that I had to solve. So I had to disassemble not only the bottom of the laptop but also the display panel itself. Turns out that HP - being the certified enganeers they are - made the following fuckups, with probably many more that I didn't even notice yet.
- They used fucking glue to ensure that the bottom of the display frame stays connected to the panel. Cheap solution to what should've been "MAKE A FUCKING DECENT FRAME?!" but a royal pain in the ass to disassemble. Luckily I was careful and didn't damage the panel, but the chance of that happening was most certainly nonzero.
- They connected the ribbon cables for the keyboard in such a way that you have to reach all the way into the spacing between the keyboard and the motherboard to connect the bloody things. And some extra spacing on the ribbon cables to enable servicing with some room for actually connecting the bloody things easily.. as Carlos Mantos would say it - M-m-M, nonoNO!!!
- Oh and let's not forget an old flaw that I noticed ages ago in this turd. The CPU goes straight to 70°C during boot-up but turning on the fan.. again, M-m-M, nonoNO!!! Let's just get the bloody thing to overheat, freeze completely and force the user to power cycle the machine, right? That's gonna be a great way to make them satisfied, RIGHT?! NO MOTHERFUCKERS, AND I WILL DISCONNECT THE DATA LINES OF THIS FUCKING THING TO MAKE IT SPIN ALL THE TIME, AS IT SHOULD!!! Certified fucking braindead abominations of engineers!!!
Oh and not only that, this laptop is outperformed by a Raspberry Pi 3B in performance, thermals, price and product quality.. A FUCKING SINGLE BOARD COMPUTER!!! Isn't that a great joke. Someone here mentioned earlier that HP and Acer seem to have been competing for a long time to make the shittiest products possible, and boy they fucking do. If there's anything that makes both of those shitcompanies remarkable, that'd be it.
2. If I want to conduct a pentest, I don't want to have to relearn the bloody tool!
Recently I did a Burp Suite test to see how the devRant web app logs in, but due to my Burp Suite being the community edition, I couldn't save it. Fucking amazing, thanks PortSwigger! And I couldn't recreate the results anymore due to what I think is a change in the web app. But I'll get back to that later.
So I fired up bettercap (which works at lower network layers and can conduct ARP poisoning and DNS cache poisoning) with the intent to ARP poison my phone and get the results straight from the devRant Android app. I haven't used this tool since around 2017 due to the fact that I kinda lost interest in offensive security. When I fired it up again a few days ago in my PTbox (which is a VM somewhere else on the network) and today again in my newly recovered HP laptop, I noticed that both hosts now have an updated version of bettercap, in which the options completely changed. It's now got different command-line switches and some interactive mode. Needless to say, I have no idea how to use this bloody thing anymore and don't feel like learning it all over again for a single test. Maybe this is why users often dislike changes to the UI, and why some sysadmins refrain from updating their servers? When you have users of any kind, you should at all times honor their installations, give them time to change their individual configurations - tell them that they should! - in other words give them a grace time, and allow for backwards compatibility for as long as feasible.
3. devRant web app!!
As mentioned earlier I tried to scrape the web app's login flow with Burp Suite but every time that I try to log in with its proxy enabled, it doesn't open the login form but instead just makes a GET request to /feed/top/month?login=1 without ever allowing me to actually log in. This happens in both Chromium and Firefox, in Windows and Arch Linux. Clearly this is a change to the web app, and a very undesirable one. Especially considering that the login flow for the API isn't documented anywhere as far as I know.
So, can this update to the web app be rolled back, merged back to an older version of that login flow or can I at least know how I'm supposed to log in to this API in order to be able to start developing my own client?6 -
To those that think they can't make it.
To those that are put down by those that don't understand you.
And to those that have never had a dream come true.
Not a rant, but the story of how I got into programming
I've always been into tech/electronics. I remember being told once that when I was 3, I used to take plug sockets to pieces. When I was 7, I built a computer with my dad.
There isn't a thing in my room that hasn't been dismantled and put back together again. Except for the things that weren't put back together again ;)
When I was 15, I got a phone for Christmas. It was a pretty crappy phone, the LG P350 (optimus ME). But I loved it all the same.
However I knew it could do a lot more. It ran a bloated, slow version of Android 2.2.
So I went searching, how can I make it faster, how to make it do more. And I found a huge community around Android ROMs. Obviously the first thing I did was flashed this ROM. Sure, there were bugs, but I was instantly in love with it. My phone was freed.
From there I went on to exploring what else can be done.
I wanted to learn how to script, so over the weekend I wrote a 1000 line batch (Windows cmd) script that would root the phone and flash a recovery environment onto it. Pretty basic. Lots of switch statements, but I was proud of it. I'd achieved something. It wasn't new to the world, but it was my first experience at programming.
But it wasn't enough, I needed more.
So I set out to actually building the roms. I installed Linux. I wanted to learn how to utilise Linux better, so I rewrote my script in bash.
By this time, I'd joined a team for developing on similar spec'd phones. Without the funds to by new devices, we began working on more radical projects.
Between us, we ported newer kernels to our devices. We rebased much of the chipset drivers onto newer equivalents to add new features.
And then..
Well, it was exam season. I was suffering from personal issues (which I will not detail), and that, with the work on Android, I ended up failing the exams.
I still passed, but not to the level I expected.
So I gave up on school, and went head first into a new kind of development. "continue doing what you love. You'll make it" is what I told myself.
I found python by contributing to an IRC bot. I learnt it by reading the codebase. Anything I didn't understand, I researched. Anything I wanted to do, google was there to help me through it.
Then it was exam season again. Even though I'd given up on school, I was still going. It was easier to stay in than do anything about it.
A few weeks before the exams, I had a panic attack. I was behind on coursework, and I knew I would do poorly on exams.
So I dropped out.
I was disappointed, my family was disappointed.
So I did the only thing I felt I could do. I set out to get a job as a developer.
At this stage, I'd not done anything special. So I started aiming bigger. Contributing to projects maintained by Sony and Google, learning from them. Building my own projects to assist with my old Android friends.
I managed to land a contract, however due to the stresses at home, I had to drop it after a month.
Everything was going well, I felt ready to get a full time job as a developer, after 2 years of experience in the community.
Then I had to wake up.
Unfortunately, my advisors (I was a job seeker at the time) didn't understand the potential of learning to be a developer. With them, it's "university for a skilled job".
They see the word "computer" on a CV, they instantly say "tech support".
I played ball, I did what I could for them. But they'd always put me down, saying I wasn't good enough, that I'd never get a job.
I hated them. I'd row with them every other day.
By God, I would prove them wrong.
And then I found them. Or, to be more precise, they found me. A startup in London got in contact with me. They seemed like decent people. I spoke with their developers, and they knew their stuff, these were people that I can learn from.
I travelled 4 hours to go for an interview, then 4 hours back.
When I got the email saying they'd move me to London, I was over the moon.
I did exactly what everyone was telling me I couldn't do.
1.5 years later, I'm still working with them. We all respect each other, and we all learn from each other.
I'm ever grateful to them for taking a shot with me. I had no professional experience, and I was by no means the most skilled individual they interviewed.
Many people have a dream. I won't lie, I once dreamed of working at Google. But after the journey I've been through, I wouldn't have where I am now any other way. Though, in time, I wish to share this dream with another.
I hope that all of you reach your dreams too.
Sorry for the long post. The details are brief, but there are only 5k characters ;)23 -
You can believe or not but it’s just one of those stories. It’s long and crazy and it probably happened.
A few years ago I was interviewed by this big insurance company. They asked me on linkedin and were interested. They didn’t specify who they were so I didn’t specify who I am either.
After they revealed who they are I was just curious how they fuck they want to spend those billions of dollars they claimed in their press notes about this fucking digital transformation everyone is talking about. The numbers were big.
I got into 3 or 4 phone/skype interviews without technical questions and I was invited to see them by person.
I know that it would be funny because they didn’t asked me for CV so they didn’t know anything about me and I was just more curious how far I can get without revealing myself.
They canceled interview at midnight and I was in the middle of Louis de Funès comedies marathon so I didn’t sleep whole night. I assumed they would just reschedule but then they phoned me at 8 am if I can come because they made mistake.
So at first talk I was just interviewed by some manager I knowed after 5 minutes he would be shitty as fuck and demand stupid things in no time because he is not technical. He was trying to explain me that they got so great people and they do everything so fast.
From my experience speed and programming are not the things that match. ( for reference of my thought see three virtues of a GREAT programmer )
So I just pissed them off by asking what they would do with me when I finish this transformation thingy next year. ( Probably get rid off and fire at some point were my thoughts )
Then I got this technical interview on newest gold color MacBook pro - pair programming ( they were showing off how much money they have all the time ).
The person asked me to transform json and get some data in javascript .
Really that was the thing and I was so bored and tired that I just asked in what ES standard I can code.
The problem was despite he told me I can do anything and they are using newest standards ( yeah right ) the “for of” loop didn’t worked and he even didn’t know that syntax existed. So I explained him it’s the newest syntax pointing mozilla page and that he need to adjust his configuration. Because we didn’t have time for that I just did it using var an function by writing bunch of code.
When he was asking me if I want to write some tests probably because my code looked ugly as fuck ( I didn’t sleep for more then 24 hours at that point and wanted to live the building as fast as I can) I told I finished and there is no time for tests because it’s so simple and dumb task. The code worked.
After showing me how awesome their office is ( yeah please I work from home so I don’t care ) I got into the talk with VP of engineering and he was the only person who asked me where is my CV because he didn’t know what to talk about. I just laughed at him and told him that I got here just by talking how awesome I am so we can talk about whatever he wants.
After quick talk about 4 different problems where I introduced 4 different languages and bunch of libraries just because I can and I worked with those he was mine.
He told me about this awesome stack they’re building with kubernetes and micro services and the shitty future where they want to put IOT into peoples ass to sell them insurance and suddenly I got awake and started to want that job but behind that all awesomeness there was just .NET bridge with stack of mainframes running COBOL that they want to get rid off and move company to the cloud.
They needed mostly people who would dump code to different technology stack and get rid of old stack ( and probably those old people ) and I was bored again because I work more in r&d field where you sometimes need to think about something that don’t exist and be creative.
I asked him why it would take so much time so he explained me how they would do the transformation by consolidating bunch of companies and how much money they would make by probably firing people that don’t know about it to this day.
I didn’t met any person working permanently there but only consultants from corporations and people hired in some 3rd party company created by this mother company.
They didn’t responded with any decision after me wasting so much time and they asked me for interview for another position year after.
I just explained HR person how they treat people and I don’t want to work there for any money.
If You reached this point it is the end and if it was entertaining thank YOU I did my best.
Have a nice day.5 -
This story starts over two years ago... I think I'm doomed to repeat myself till the end of time...
Feb 2014
[I'm thrust into the world of Microsoft Exchange and get to learn PowerShell]
Me: I've been looking at email growth and at this rate you're gonna run out of disk space by August 2014. You really must put in quotas and provide some form of single-instance archiving.
Management: When we upgrade to the next version we'll allocate more disk, just balance the databases so that they don't overload in the meantime.
[I write custom scripts to estimate mailbox size patterns and move mailboxes around to avoid uneven growth]
Nov 2014
Me: We really need to start migration to avoid storage issues. Will the new version have Quotas and have we sorted out our retention issues?
Management: We can't implement quotas, it's too political and the vendor we had is on the nose right now so we can't make a decision about archiving. You can start the migration now though, right?
Me: Of course.
May 2015
Me: At this rate, you're going to run out of space again by January 2016.
Management: That's alright, we should be on track to upgrade to the next version by November so that won't be an issue 'cos we'll just give it more disk then.
[As time passes, I improve the custom script I use to keep everything balanced]
Nov 2015
Me: We will run out of space around Christmas if nothing is done.
Management: How much space do you need?
Me: The question is not how much space... it's when do you want the existing storage to last?
Management: October 2016... we'll have the new build by July and start migration soon after.
Me: In that case, you need this many hundreds of TB
Storage: It's a stretch but yes, we can accommodate that.
[I don't trust their estimate so I tell them it will last till November with the added storage but it will actually last till February... I don't want to have this come up during Xmas again. Meanwhile my script is made even more self-sufficient and I'm proud of the balance I can achieve across databases.]
Oct 2016 (last week)
Me: I note there is no build and the migration is unlikely since it is already October. Please be advised that we will run out of space by February 2017.
Management: How much space do you need?
Me: Like last time, how long do you want it to last?
Management: We should have a build by July 2017... so, August 2017!
Me: OK, in that case we need hundreds more TB.
Storage: This is the last time. There's no more storage after August... you already take more than a PB.
Management: It's OK, the build will be here by July 2017 and we should have the political issues sorted.
Sigh... No doubt I'll be having this conversation again in July next year.
On the up-shot, I've decided to rewrite my script to make it even more efficient because I've learnt a lot since the script's inception over two years ago... it is soooo close to being fully automated and one of these days I will see the database growth graphs produce a single perfect line showing a balance in both size and growth. I live for that Nirvana.6 -
I'm going for longest rant. TL:DR; version here:
http://pastebin.com/0Bp4jX9y
then:
http://pastebin.com/FfUiTzsh
Twat Client,
As per our conversation, here is an invoice for the work you requested on behalf of U.S. Bloom. I realize that you ended up going with another designer, but you did request samples of what my take on the logo design would be. The following line item is indicative of 1 hour of graphic design consultation as per your request via Skype.
As I recall, you mentioned that this is not how Upwork "works" but considering it was you who requested that I converse with you via Skype instead of via the Upwork messenger, and since there were no clear instructions on how to proceed with Upwork after our initial consultation, It is assumed that you were foregoing Upwork altogether to work with me directly, thus the invoice from me directly for my time involved in the project. I would have reached out to you via Skype, but it seems that you may have severed our connection there.
After spending a little time researching your company, I could not find current information for Basic Media Marketing, but I was able to reach out to your former partner Not A. Twat, who was more than helpful and suggested that he would encourage you to pay for the services rendered.
It is discouraging that you asked for my help and I delivered, but when I ask for compensation in return for my skills, you refused to pay and have now taken your site offline and removed me as a contact from Skype.
{[CLIENT of CLIENT]},
I am sorry that I have bothered you with this email. I copied you on it merely for transparency's sake. I am sure that your logo is great and I am sure whatever decision was made is awesome for your decision. I just wanted to make sure that you weren't getting "samples" of other people's work passed off as original work by Twat Media Marketing.
I can't speak for any of the other candidates, but since Twat asked me to conduct work with him via Skype rather than through Upwork, and since he's pretty much a ghost online now, (Site Offline, LinkedIn Removed or Blocked, and now Skype blocked as well) one has to think this was a hit and run to either crowdsource your logo inexpensively or pass off other artist's work as his own. That may not be the case, but from my perspective all signs are pointing to that scenario.
Here is a transcript. Some of his messages have been redacted.
As you can clearly see, requests and edits to the logo were being made from Jon to me, but he thinks it's a joke when I ask about invoicing and tries to pass it off as an interview. Do you see any interview questions in there? There were no questions about how long I have been designing, what are my rates, who have I done work for in the past, or examples of my previous work. There were none because he didn't need them at this point.
He'd already seen my proposal and my Behance.net portfolio as well as my rates on Upwork.com. This was a cut to the chase request for my ideas for your logo. It was not just ideas, but mock designs with criticism and approval awaiting. Not only that, but I only asked for an hour of compensation. After looking at the timestamps on our conversation, you can clearly see that I spent at least 3 hours corresponding with Twat on this project. That's three hours of work I could have spent on an honest paying customer.
I trust that TWATCLIENT will do the right thing. I just wanted you guys to know that I was in it to do the best design I could for you. I didn't know I was in it to waste three hours of my life in an "interview" I wasn't aware I was participating in.
Reply from ClientClient:
Hello Sir,
This message is very confusing?
We do not owe your company any money and have never worked with you before.
Therefore, I am going to disregard that invoice.
Reply from TWATCLIENT's boss via phone:
I have two problems with this. One I don't think your business practices are ethical, especially calling MY client directly and sending them an invoice.
Two why didn't you call or email Jon before copying my client on the email invoice?
Me: Probably because he's purposely avoiding me and I had no way to find him. I only got his email address today and that was from a WHOIS lookup.
Really, you don't think my business practices are ethical? What about slavery? Is that ethical? Is it ethical to pass of my designs to your client for critique, but not pay me for doing them?
... I'LL HAVE TO CALL YOU BACK!
My email follow up:
http://pastebin.com/hMYPGtxV
I got paid. The power of CCing the right combination of people is greater than most things on Earth.14 -
Been reading devrant posts for a month or so, this is my first actual post. I'm hoping it will be therapeutic. ☺️ I need something to keep me from killing my boss when I see him again tomorrow..
Some backstory: Currently working in HR for the last 7 or so years with complete shit for brains boss, even worse when it comes to anything related to technology. For almost two years I've been working to get another bachelor's degree. This time in computer sciences, to make a career switch to systems and software engineer. Last week I roughly had the following wonderful conversation:
Boss: we've needed new Recruitment software for a while now. Can't you make us one as a school project?
Me: 'Make us one?' It's not really that simple.. I'm barely halfway through my education, maybe I could do it, but it would take me quite a long time even if I could work on it fulltime.. Combining a halftime job with a fulltime education is taking up enough of my time as it is and I have more than enough school projects btw..
Boss: it would be a win-win. Work a little harder in your spare time and when you graduate you have a real-life project on your resume.
Me: I'm sorry, i'm failing to see the 'win' for me here.. I work 10 hours a day, 7 days a week on average, trying to combine work and studies. I'm pretty much maxed out..
Boss: Your coworker(also extreme dumbass) told me you wrote some quick code the other day that helped him out. Don't underestimate yourself, I'm sure you can do this.
Me(in complete disbelief by now): I wrote him an Excel-macro! They don't even teach me that at school. It's a very very very long way from actual software development! I'm sorry, it just can't be done.
Boss: Thats too bad. I expected you to welcome an opportunity like this and be more motivated towards this company..
Me: ***more disbelief and silence, just staring at him***
I'm sorry you feel that way.
***walked away***
WTF, I work my ass off for 7 years for this fucking shithead.. Even before I started this bachelors degree I had at least some understanding of the work developers put in their software. It blows my mind, no, it fucking angers me how people think making software is so simple.. Why do you think it's a 3-year education you fucking cunt?
Please, someone tell me how I can keep myself from ramming his fucking head through a wall tomorrow...6 -
!!office drama
I haven't been around much in recent weeks. Due to family illness, christmas shopping, dealing with estranged parents, and brooding over the foregoing, I haven't had a lot of time or energy left to myself.
tl;dr: The CTO ("API Guy") is ostensibly getting fired, and I might be taking over his job. I don't know if I should accept, try to stave this off, or simply flee.
------
Anyone who has been following my recent rants knows that API Guy is my boss, and he often writes terrible code. It's solid and unbreakable, but reading it is a *nightmare.* One of our applications is half the length of Leo Tolstoy's War and Peace, and it's difficult to tell what code is live and what amounts to ancient, still-active landmines. This is one application; we have several, most of which I've never even looked at.
Ostensibly the code is so terrible because the company grew extremely quickly, and API Guy needed to cram in lots of unexpected / planned-against features. From what I can see, that seems about right, but I haven't checked timeframes [because that's a lot of work!].
Here's a brief rundown of the situation.
- API Guy co-founded the company with the CEO.
- CEO and API Guy have been friends for a long time.
- CEO belives the company will fail with API Guy as head of tech.
- They could just be testing me; I have zero way of knowing. API Guy seems totally oblivious, and CEO seems sincere, so this feels pretty doubtful.
- CEO likes pushing people around. CEO believes he can push me around. API Guy doesn't budge. (I probably won't, either, except to change task priorities.)
- API Guy's code is huge and awful, but functional.
- API Guy is trying to clean up the mess; CEO doesn't understand (maybe doesn't care).
- Literally nobody else knows how the code works.
- Apart from API Guy and myself, the entire company is extroverted sales people.
- None of these sales people particularly like me.
- Sales people sell and sell and sell without asking development if they can pull enough magic features out of their hat to meet the arbitrary saleslines. (because the answer is usually no)
- If I accept, I would be the sole developer (at first) and responsible for someone else's mountain of nightmarish code, and still responsible for layering on new features at the same pace as he. Pay raise likely, but not guaranteed.
- My getting the position is contingent upon the CEO and the investors, meaning it's by no means guaranteed.
- If I don't accept, likely API Guy will be replaced with someone else of unknown ability, who doesn't know the code, and whom I must answer to regardless. Potentially OK, potentially a monumental disaster.
Honestly, it feels like I'm going to be screwed no matter what course I choose.
Perhaps accepting is slightly better?
The best would be to assume the position of CTO and keep API Guy around -- but that would feel like an insult to him. I doubt he'd be okay with it. But maybe. Who knows? I doubt the CEO would seriously consider that anyway.
I feel like a lamb between a dim, angry rhino, and an oblivious one.23 -
The bossman asked if our signup service sends an automated email after we successfully process someone's payment or when we promote them to full customer.
That sounds like a simple query, yeah?
Well.
Here's some background:
We have four applications; one in React, three in Rails. I'll replace their names to retain some anonymity.
1) "IceSkate" is the React app, and it's a glorified signup form. (I wrote this one.)
2) "Bogan" is the main application, and is API-only; its frontend has been long since deprecated by the following two:
3) "Bum" is a fork of "Bogan" that has long since diverged. It now contains admin-only tools.
4) "Kulkuri" is also a fork of "Bogan" that has long since diverged. It now contains tools specifically for customers, which they can access.
All but IceSkate (obv) share a database.
Here's how signups happen:
Signups come in from IceSkate, which hits a backend API on Bogan. Bogan writes the data to the database, charges the card immediately, and leaves the signup for moderation.
And here's how promotion from signup to customer happens:
Bum has a view allowing admins to validate, modify, and "promote" a signup to a full customer. Upon successful promotion, Bum calls "ServerWrap", a module which calls actions on the other applications; in this case: Bogan.
Bogan routes execution through three separate models before calling "ServerWrap" again, this time calling KulKuri.
Finally, KulKuri actually creates the customer!
After KulKuri finishes creating the customer, execution resumes on Bogan, which then returns, causing execution to resume on Bum. Bum then runs through several other models, references the newly-created customer object (as all three share a database), and ... updates the customer with its current data, and then updates the signup object. After all of this, it finally shows the admin the "new customer" view.
It took me 25 minutes to follow the chain of calls, and I still don't know quite what's going on. I have no idea if any of it sends an email or not -- I didn't see any signs of this, but I very easily could have overlooked something.
So, to answer bossman's question... I asked the accounting people if they send the email manually. If they don't, it's automatic, which means I missed something and get to burrow through that mess all over again!
I really hope I missed something; otherwise I need to figure out how and where (and when!) to send the email...
just...
errrrgghh9 -
I have been gone a while. Sorry. Workplace no longer allows phones on the lab and I work exclusively in the lab. Anyway here is a thing that pissed me off:
Systems Engineer (SE) 1 : 😐 So we have this file from the customer.
Me: 😑 Neat.
SE1: 😐 It passes on our system.
Me: 😑 *see prior*
Inner Me (IM): 🙄 is it taught in systems engineer school to talk one sentence at a time? It sounds exhausting.
SE1: but when we test it on your system, it fails. And we share the same algorithms.
Me: 😮 neat.
IM: 😮neat, 😥 wait what the fuck?
Me: 😎 I will totally look into that . . .
IM: 😨 . . . Thing that is absolutely not supposed to happen.
*Le me tracking down the thing and fixing it. Total work time 30 hours*
Me: 😃 So I found the problem and fixed it. All that needs to happen is for review board to approve the issue ticket.
SE1: 😀 cool. What was the problem?
Me: 😌 simple. See, if the user kicked off a rerun of the algorithm, we took your inputs, processed them, and put them in the algorithm. However, we erroneously subtracted 1 twice, where you only subtract 1 once.
SE1: 🙂 makes sense to me, since an erroneous minus 1 only effects 0.0001% of cases.
*le into review board*
Me: 😐 . . . so in conclusion this only happens in 0.0001% of cases. It has never affected a field test and if this user had followed the user training this would never have been revealed.
SE2: 🤨 So you're saying this has been in the software for how long?
Me: 😐 6 years. Literally the lifespan of this product.
SE2: 🤨 How do you know it's not fielded?
Me: 😐 It is fielded.
SE2: 🤨 how do you know that this problem hasn't been seen in the field?
Me: 😐 it hasn't been seen in 6 years?
IM: 😡 see literally all of the goddamn words I have said this entire fucking meeting!!!
SE2: 😐 I would like to see an analysis of this to see if it is getting sent to the final files.
Me: 🙄 it is if they rerun the algorithm from our product. It's a total rerun, output included. It's just never been a problem til this one super edge case that should have been thrown out anyway.
SE2: 🤨 I would still like to have SE3 run an analysis.
Me: 🙄 k.
IM: 😡 FUUUUUUUUUCK YOOOOOU
*SE3 run analysis*
SE3: 😐 getting the same results that Me is seeing.
Me: 😒 see? I do my due diligence.
SE2: 😐 Can you run that analysis on this file again that is somehow different, plus these 5 unrelated files?
SE3: 😎 sure. What's your program's account so I can bill it?
IM: 😍 did you ever knooooow that your my heeeerooooooo.
*SE3 runs analysis*
SE3: 😐 only the case that was broken is breaking.
SE2: 😐 Good.
IM: 🤬🤬🤬🤐 . . . 🤯WHY!?!?
Me: 😠 Why?
SE2: 😑 Because it confirms my thoughts. Me, I am inviting you to this algorithm meeting we have.
Me/IM: 😑/😡 what . . . the fuck?
*in algorithm meeting*
Me: 😑 *recaps all of the above* we subtract 1 one too many times from a number that spans from 10000 to -10000.
Software people/my boss/SE1/SE3: 🤔 makes sense.
SE2:🤨 I have slides that have an analysis of what Me just said. They will only take an hour to get through.
Me: 😑 that's cool but you need to give me your program's account number, because this has been fixed in our baseline for a week and at this point you're the only program that still cares. Actually I need the account to charge for the last couple times you interrupted me for some bullshit.
*we are let go.*
And this is how I spent 40+ useless hours against a program that is currently overrunning for no reason 🤣🤣🤣
Moral: never involve math guys in arithmetic situations. And if you ever feel like you're wasting your time, at least waste someone else's money.10 -
Story Time. Inspired by another rant.
Context: I'm In a coding camp years ago, it's the first day.
We're doing introductions (name, why you're here, etc). Always fun to do that....
The folks running the camp are excited to introduce a student who also at one point was a teacher for some sort of girl power coding organization. So this raises questions, why would someone who teaches be a student in this camp?? And even a bigger question is raised when this person introduces themselves for a long time, and as an aside puts down the girls she taught in this program they taught ... like who does that?
horribleLady does that ...
A few hours later horribleLady asks her 12th question of the day (we haven't even started talking about code). Before she asks her question actually says:
“I know, I’m going to be a problem.” -laugh-
🚨🚨🚨 ヽ ( ꒪д꒪ )ノ 🚨🚨🚨
Fast forward to group projects and she's this sort of emotional storm, tears, and a sort of angry shouting that isn't angry enough for some folks to say she's yelling at people ... but she is. Fortunately I'm not in the first group project with her, but because we're all working in the same room we all get to see the train-wreck unfold.
The moment she doesn't get something (all the time) everyone in her group has to STOP and figure out what they're going to do about it, then again STOP because she thinks someone is doing something different than what was planned. STOP STOP STOP STOP STOP.
In a way, everything had to go through her, she didn’t declare it that way, she didn't present herself as any sort of authority, she would just stop everyone the moment she thought anything was wrong, or she didn't understand it (all the time), and either inject herself or demand help from her team. Everyone around her had to be drawn into whatever problem she had. It was horrific to watch.
Private slack channels would light up like crazy with "OMG", "WTF", "I DON'T UNDERSTAND HER", "FUCK" and "SHE"S HOW OLD!?!?"
So finally it happens to me and guyWhoDoesPotConstantly (capable guy, nice dude, pretty sure he was high all the time).... we're teamed up to work with horribleLady. Thankfully for just one day. I accept this because I figure one day with her is enough penance to try to avoid any further contact later on.
My approach is straight stone face. I refuse to respond to her sulking, or sighing, or general emotional bait she throws out constantly. I saw other students unwittingly take her bait (they were trying to be helpful) only to have her crap all over them with her frustrations or whatever it is is going on.
Still we're teamed up with her her for the day so I'm going to be a good team member and I explain what guyWhoDoesPotConstantly and I are doing / trying.... and so forth. But she's just too upset that she's even assigned to work with us, and tells me I'm just not doing it right, and her explanations about how we're not doing it right makes less than 0 sense. I ask her to show me what she means but she won't type anything on her keyboard, she'd just talk about how she’s thinking conceptually in circles and sulk about it rather than listen. I don't respond to any of her shit and say "I'm going to try this." and guyWhoDoesPotConstantly and I just keep working.
She would later call the instructor over and complain to him for a while and say: "These guys just get it, they're not helping me, I want to be assigned to another group." She doesn't get her way so she just moves to another table in front of us.
After that day I figured it was a great time to ask .... to NEVER be assigned to anything with her because "If I told her what I thought it would just get a lot worse." I got my way ;)
Other students weren't so lucky. Tears, sulking, her special way of yelling at people that somehow never got her in trouble (she should have been kicked out of the program) just kept going on. She refused to even present one group project she deemed not good enough despite the fact that she contributed nothing functional to the project that the TA's didn't write for her...
Amidst the stories she would tell to students was one of how she sued her totally sexist/racist/evil former employer. She never said what came of it, but that combined with her inability to do things reminded me of a rant I read on here.
I sometimes fear being hired someplace and walking in my first day to find I'm assigned to work with .... horribleLady. In this scenario she managed to get hired and they're too afraid to fire her so they assign the new guy to work with horribleLady...
I've no idea what happened to her after the camp.
(I rewrote this rant a few times because it kept circling back to a larger story about the coding camp I wrote about a few years ago, so if this seemed sort of broken up and wonky, yeah it was / is / yeah)4 -
ARGH. I wrote a long rant containing a bunch of gems from the codebase at @work, and lost it.
I'll summarize the few I remember.
First, the cliche:
if (x == true) { return true; } else { return false; };
Seriously written (more than once) by the "legendary" devs themselves.
Then, lots of typos in constants (and methods, and comments, and ...) like:
SMD_AGENT_SHCEDULE_XYZ = '5-year-old-typo'
and gems like:
def hot_garbage
magic = [nil, '']
magic = [0, nil] if something_something
success = other_method_that_returns_nothing(magic)
if success == true
return true # signal success
end
end
^ That one is from our glorious self-proclaimed leader / "engineering director" / the junior dev thundercunt on a power trip. Good stuff.
Next up are a few of my personal favorites:
Report.run_every 4.hours # Every 6 hours
Daemon.run_at_hour 6 # Daily at 8am
LANG_ENGLISH = :en
LANG_SPANISH = :sp # because fuck standards, right?
And for design decisions...
The code was supposed to support multiple currencies, but just disregards them and sets a hardcoded 'usd' instead -- and the system stores that string on literally hundreds of millions of records, often multiple times too (e.g. for payment, display fees, etc). and! AND! IT'S ALWAYS A FUCKING VARCHAR(255)! So a single payment record uses 768 bytes to store 'usd' 'usd' 'usd'
I'd mention the design decisions that led to the 35 second minimum pay API response time (often 55 sec), but i don't remember the details well enough.
Also:
The senior devs can get pretty much anything through code review. So can the dev accountants. and ... well, pretty much everyone else. Seriously, i have absolutely no idea how all of this shit managed to get published.
But speaking of code reviews: Some security holes are allowed through because (and i quote) "they already exist elsewhere in the codebase." You can't make this up.
Oh, and another!
In a feature that merges two user objects and all their data, there's a method to generate a unique ID. It concatenates 12 random numbers (one at a time, ofc) then checks the database to see if that id already exists. It tries this 20 times, and uses the first unique one... or falls through and uses its last attempt. This ofc leads to collisions, and those collisions are messy and require a db rollback to fix. gg. This was written by the "legendary" dev himself, replete with his signature single-letter variable names. I brought it up and he laughed it off, saying the collisions have been rare enough it doesn't really matter so he won't fix it.
Yep, it's garbage all the way down.16 -
Namecheap: *cricket noises for over a year*
Today: "hEy ThErE cOnDoR, yOuR dOmAiN WiL eXPirE iN 24 hOuRs!1! rEnEw NoW, yOU rEadY?"
Me: "No you motherfucking bastards, a bank transfer takes 3 days at least. Oh wait you don't even accept bank transfer, how convenient!"
And what if I didn't see that email right after your fucking craptacular automated notification system sent it to me, hmm? Don't you Namecheap of all companies know how fucking *vile* domain squatting on the .com is?!!
MOTHERFUCKING CUNTS!!! Jeopardize my domains like that *one more fucking time*, and guess who will be taking his assets to the sexist bastards that I tried avoiding for so long, GoDaddy! FUCKERS!!!21 -
Sorry for being late, stuffs came inbetween!
I have done a few privacy rants/posts before but why not another one. @tahnik did one a few days ago so I thought I'd do a new one myself based on his rant.
So, online privacy. Some people say it's entirely dead, that's bullshit. It's up to an individual, though, how far they want to go as for protecting it.
I personally want to retain as much control over my data as possible (this seems to be a weird thing these days for unknown reasons...). That's why I spend quite some time/effort to take precautions, read myself into how to protect my data more and so on.
'Everyone should have the choice of what services they use' - fully agreed, no doubt about that.
I just find one thing problematic. Some services/companies handle data in a way or have certain business models which takes the control which some people want/have over their data away when you communicate with someone using that service.
Some people (like me) don't want anything to do with google but even when I want to email my best fucking friend, I lose the control over that email data since he uses gmail.
So, when someone chooses to use gmail and I *HAVE* to email them, my choice is gone.
TO BE VERY CLEAR: I'm not blaming that on the users, I'm blaming that on the company/service.
Then for example, google analytics. It's a very good/powerful when you're solely looking at its functions.
I just don't want to be part of their data collection as I don't want to get any data into the google engine.
There's a solution for that: installing an addon in order to opt out.
I'm sorry, WHAT?! --> I <-- have to install an addon in order to opt out of something that is happening on my own motherfucking computer?! What the actual fuck, I don't call that a fucking solution. I'll use Privacy Badger + hosts files to block that instead.
Google vs 'privacy' friendly search engines - I don't trust DDG completely because their backend is closed/not available to the public but I'd rather use them then a search engine which is known to be integrated into PRISM/other surveillance engines by default.
I don't mind the existence of certain services, as long as they don't integrated you with data hungry companies/mass surveillance without you even using their services.
Now lets see how fast the comment section explodes!28 -
#¤%@ kid!!! My 5yo son has obviously been playing with his mom's mobile phone. At first, I thought it was a little cute, when I received incoherent texts about Roblox, one of his favourite games.
But then, I suddenly heard from my sister who was really upset and worried. She was wondering if my gf really wants to see her dead, after receiving a facebook pm in English, saying "oh die :-)".
No need for auntie to take it personally though; turned out she was not the only one getting the same message :-O
A little boy is facing a mobile ban for a very long time...8 -
hey there, long time no rant.
remember that manipulative, sociopathic angry manchild turdface PM, the kind that gives you a never ending rant inspiration? the one that got immortalized in like 90% of my rants?
well... it's time for the final update.
i decided to leave the team some months ago. my boss reacted very cool and supportive and suggested topics i could work on instead. when i told my colleague, he decided to leave the team at the same day. we both also complained at HR and added some papertrails about PM's shenanigans.
shortly after, another guy from the team quit and left the company, and i know that it was 100% because of this PM.
so, there were 2 devs left from originally 6 in PM's team.
some other people in the environment of this PM quit, one of his subordinates and someone from a greater project in which the PM's project was embedded.
after some internal investigations and discussions, the PM's team was completely kicked out of this greater project, since after ~ a year, this team was neither able to deliver anything useful nor to define what it actually was what they wanted to provide. instead, they actively blocked the project, solution finding and cooperation between teams. and this is quite very much PM's fault.
the final move came this month when PM got fired. i think, management finally realized that he is a total fraud who has no clue about the whole matter (neither what devices we build nor about software development). or management. or leadership. and that all he can do is produce hot air and bullshit people for some time to make them believe he knows something.
not sure how long he'll still be around, but i'm happy when i don't have to see his face ever again. i'm just sorry for the next company he'll be moving to...4 -
Story time:
Yesterday I wanted to go to the theater with my girlfriend. It was her idea because as a student you can get reduced tickets for the play, but only via the online store exactely two hours before the play starts. We had already tried two weeks before but with no success. So this time I said i want to be on my pc with a proper browser and not a mobile version like last time. So we are sitting at home me in front of their website on one screen and with a clock on the other screen. Two minutes realy i hit refresh and I get a selection for the reduced tickets, nice.
You would think.
After selecting the amount. ERROR: Can not get your tickets. I was like fuck they are already sold out because it's a popular play. But hey let's try again. I got one ticket but not the second one, okay strange lets try again, same ERROR again. WHAT the FUCK, no feedback what so ever. My girlfriend had then the idea that they maybe restricted the amount for reduced tickets to one (does not state this explicitly but hey lets give it a shot). Use second browser select one ticket. ERROR can not get you the amount of seats. Rage level near to a 1000 why did it work two minutes before but not anymore. Trying around for five more minutes finally got the second ticket.
Now the real fun begins.
Proceeding to checkout should not be that hard you would think, but you need to be registered for that. Okay so let's do that. The salutation is not required neither is the address for the tickets but you need to have a company name??!!!!! The fuck?? I am not self employed and neither are a most other people around here so why is this field mandatory? Beeing a little under stress I decided to found the "asdf" company with my girlfriend.
Now one would think checking out is easy. Not so fast.
After accepting the terms of service another ERROR, unable to accept your data. What data? I did not input anything new? Where does this come from? Ok never mind I am going to pay with credid card that must work!
ERROR: Internal paymentservice initialization failure! Sorry what? I thought maybe I was to long idle in this browser and they do not reserve the tickets for so long (which would be no surprise to me at this point). Let's try again. Nope same error.
Now my rage level was really over 9000 but we really wanted to go so I decided to call the customer SUPPORT. Or better to say I had a answering maching telling me for ten minutes how sorry they are that this takes so long, yeah you bet. Then and this is now really great: the support guy asks me: "What error do you see? Internal paymentservice initialization failure?" I was like, okay he knows this so they need to know how to handle it. FUCK NO. "Sorry I can't help you. This is our payment system maybe they (IT) are doing some maintenance I can't halp you. Call the theater directly good day." Sorry what just happened, you fuckers are the vendors for the tickets for nearly all big events around here and the theater explicitly states to call you for tickets but you can not help me? Like hell.
This process took 25 very frustrating minutes and I was really angry and wanted to quit, then I saw that there is also a paypal option which I had not tried. With very little hope i selected everything for the payment, registered with paypal and they told me I already had an account. So reactivated this five year old account payed with all the mobile passwords and tans to finally, after 30 fucking minutes, get a pdf file for a ticket. Repeated the last step for the second ticket and with some time left to get there we were off.2 -
6 months ago:
Boss: We have this idea to improve our onboarding to avoid drop off in the new app. See this section here? Were going to take that out of the onboarding and just let them pass straight through to the app. Then when they get into the app, there will be a banner telling them they should go to settings and set this up. That way they can ignore it for a while and get into the app sooner
Me: Get into the app sooner to do what?
Boss: Explore it
Me: Explore an empty app with no content, as they are a brand new user with nothing setup? While theres a big banner on the screen saying "You have insecure settings" ... basically forcing them to do it straight away anyway?
Boss: Yeah, we can give them some recommendations or something while they click around. It will be good. This is months away anyway, we'll talk again
Yesterday:
Boss: So this weird unexpected thing happened. We showed some beta users our plans to remove this section from onboarding and they felt weird about it. They said they didn't like the idea of the banner telling them they haven't set it up correctly
Me: Thats not weird, I said the same thing 6 months ago
Boss: ......... oh, really?
Me: Yep. Its not an improvement to get them through onboarding quicker, just to tell them they have to now go do it somewhere else
Boss: ... right. Ok maybe we'll build it anyway and see how they feel with it in there hands?
Me: nope
Boss: ... what do you mean?
Me: We are behind, you've asked me 3 times in the last week if we are going to be able to get everything in on time ... and now you want me to build something that everyone, apart from you, says they don't like. So realistically, i'm going to build it, and then remove it next week ... and we'll have a discussion about what has to be dropped because of this
Boss: ........ right .... ok .... hhhmmm
Me: *sits with resting bitch face*
Boss: ... maybe we can hide the banner until later. Not show it to them until they've done something in the app?
Me: ... maybe we can not do any of this?
Boss: right but then the onboarding will ...
Me: *talks louder* ... yes will be the way our users want it to be
Boss: ... hhmm i'm not sure
Me: Ok heres what we'll do, so long as it doesn't delay me getting the designs I need, feel free to have the designer mock up what it would look like using that figma on device preview thing. If users say they like it, i'll build it
Boss: ... right but it won't be real on device app so ...
Me: Its that or we cut feature X
Boss: ... well we need that
Me: ok glad we agree, let me know what feedback the designer gets
Boss: ... ok10 -
So one year ago I was working at this company from the US, me being in Europe, which automatically implies there is several hours of timezone difference.
The eng. manager decided we would have a release tomorrow (decision was made one month earlier), and stuff was being prepped up to make that happen.
In the US the workday was about lunch time and in EU it was one hour before finishing. The manager gets us in a meeting and asks me and another dude to do some testing that would take several hours to do. This testing could have been done several days or weeks earlier.
40 minutes after that meeting I get a private message from the PM asking for the status of the test...
Me: aaa.. well I started it and will continue tomorrow
Manager: wait what? we have launch tomorrow, this testing has to be done by tomorrow
Me: it's the end of the workday here, I got personal errands that I have to attend to
Manager: uhm ok ... I see...
I was just messaging something in the public chat right before calling it a day and the manager writes "thanks for the input, your day is over now", completely out of context to the conversation I was having with whomever.
There was no question of "can you stay extra hours and do this?", there was no "hey, I know your day is over we will pay you premium hours with this amount as according to our contract, could you do this now as we have release tomorrow?" ..no ..just .. "do it!". I automatically assumed that ..hey, maybe he wants to do this during and after the live launch (and yes I do admit my mistake of not asking just to be clear, but I assumed the manager knows that there is a timezone difference ..like it's a no brainer).
I can not tell you the heat sensation I had after that last reply from the manager ... it was completely uncalled for, and unreasonable.
I mean why not make a pre-launch phase where you put stuff on the staging server, and perform all the necessary tests and then when you get all the green lights from testing you then proceed with the actual deploy? ...no ... mention this like right at the end of the day before the launch....
And another thing that scratched my neuronal cortex is, how does he know exactly how long the tests would take?12 -
There was a time I made an update on one of our client's e-commerce website sign-up page. The update caused a bug that allowed new users to create an account without actually creating an account.
The code block meant to save user credentials (i.e email address and password) to the database was commented out for some reasons I still can't remember to this day. After registration new users had their session created just as normal but in reality they have no recorded account on the platform. This shit went on like this for a whole week affecting over 350 new customers before the devil sent me a DM.
I got a call from my boss on that weekend that some users who had made purchases recently can't access their account from a different device and cannot also update their password. Nobody likes duty calls on a weekend, I grudgingly and sluggishly opened up my PC to create a quick fix but when I saw what the problem was I shut down my PC immediately, I ran into the shower like I was being chased by a ghost, I kept screaming "what tha fuck! what tha fuck!!" cus I knew hell was about to break loose.
At that moment everything seemed off as if I could feel everything, I felt the water dripping down my spine, I could hear the tiniest of sound. I thought about the 350 new customers the client just lost, I imagined the raving anger on the face of my boss, I thought about how dumb my colleagues would think I was for such a stupid long running bug.
I wondered through all possible solutions that could save me from this embarrassment.
-- "If this shitty client would have just allowed us verify users email before usage things wouldn't have gotten to this extent"
-- "Should I call the customers to get their email address using their provided telephone?... No they'd think I'm a scammer"
-- "Should I tell my boss the database was hacked? Pffft hack my a**",
-- "Should I create a page for the affected users to re-verify their email address and password? No, some sessions may have expired"
-- "Or maybe this the best time to quit this f*ckn job!"
... Different thoughts from all four corners of the bathroom made it a really long bath. Finally, I decided it was best I told my boss what had happened. So I fixed the code, called my boss the next day and explained the situation on ground to him and yes he was furious. "What a silly mistake..!" he raged and raged. See me in my office by Monday.
That night felt longer than usual, I couldn't sleep properly. I felt pity for the client and I blamed it all on myself... yeah the "silly mistake", I could have been more careful.
Monday came boss wasn't at the office, Tuesday, Wednesday, Thursday, Friday not available. Next week he was around and when we both met the discussion was about a different project. I tried briefing him about last week incident, he seems not to recall and demands we focus on the current project.
However, over three hundred and fifty customers swept under the carpet courtesy of me. I still felt the guilt of that f*ck up till this day.1 -
Warning: long read....
I got a call this morning from a client who was panicking about not being able to login to his web panel.
So I went to the web panel and tried to login and was just redirected back to the login page. No errors or anything (at least visible on the page). Went looking for an error_log file and found it.
It turns out there was an error was showing: Disk quota exceeded.
So I went into the cPanel and checked, he used about 16GB out of 100GB and that got me confused. So I looked around and found out he was using about 510000/500000 inodes.
Went looking trough FTP to see where he has so many files and try and remove some.
Well it turns out that there were about 7 injected websites (warez, online casino, affiliate one etc) and a full hacking web panel on his FTP. After detailed analysis some who actually built the site (I just maintain some parts) made an upload form available to public with any checks on it. Meaning anyone could upload whatever they wanted and the form would allow it.
The worst part is that the client is not allowing us to secure the form with some sort of login or remove it completely (the best option) as it is not really needed but he uses it to upload some pdf catalogs or something.
TL; DR;
Old programmer created an upload form that was accessible to anyone on the web without adding any security or check as to see what kind of files was getting uploaded. Which lead to having maximum number on inodes used on server and client being unable to login.
Side note:
And ofc I had to go and fix the mess behind him again, even though he stopped working a long time ago and I started just recently and have been having nightmares of this project.2 -
WASM was a mistake. I just wanted to learn C++ and have fast code on the web. Everyone praised it. No one mentioned that it would double or quadruple my development time. That it would cause me to curse repeatedly at the screen until I wanted to harm myself.
The problem was never C++, which was a respectable if long-winded language. No no no. The problem was the lack of support for 'objects' or 'arrays' as parameters or return types. Anything of any complexity lives on one giant Float32Array which must surely bring a look of disgust from every programmer on this muddy rock. That is, one single array variable that you re-use for EVERYTHING.
Have a color? Throw it on the array. 10 floats in an object? Push it on the array - and split off the two bools via dependency injection (why do I have 3-4 line function parameter lists?!). Have an image with 1,000,000 floats? Drop it in the array. Want to return an array? Provide a malloc ptr into the code and write to it, then read from that location in JS after running the function, modifying the array as a side effect.
My- hahaha, my web worker has two images it's working with, calculations for all the planets, sun and moon in the solar system, and bunch of other calculations I wanted offloaded from the main thread... they all live in ONE GIANT ARRAY. LMFAO.If I want to find an element? I have to know exactly where to look or else, good luck finding it among the millions of numbers on that thing.
And of course, if you work with these, you put them in loops. Then you can have the joys of off-by-one errors that not only result in bad results in the returned array, but inexplicable errors in which code you haven't even touched suddenly has bad values. I've had entire functions suddenly explode with random errors because I accidentally overwrote the wrong section of that float array. Not like, the variable the function was using was wrong. No. WASM acted like the function didn't even exist and it didn't know why. Because, somehow, the function ALSO lived on that Float32Array.
And because you're using WASM to be fast, you're typically trying to overwrite things that do O(N) operations or more. NO ONE is going to use this return a + b. One off functions just aren't worth programming in WASM. Worst of all, debugging this is often a matter of writing print and console.log statements everywhere, to try and 'eat' the whole array at once to find out what portion got corrupted or is broke. Or comment out your code line by line to see what in forsaken 9 circles of coding hell caused your problem. It's like debugging blind in a strange and overgrown forest of code that you don't even recognize because most of it is there to satisfy the needs of WASM.
And because it takes so long to debug, it takes a massively long time to create things, and by the time you're done, the dependent package you're building for has 'moved on' and find you suddenly need to update a bunch of crap when you're not even finished. All of this, purely because of a horribly designed technology.
And do they have sympathy for you for forcing you to update all this stuff? No. They don't owe you sympathy, and god forbid they give you any. You are a developer and so it is your duty to suffer - for some kind of karma.
I wanted to love WASM, but screw that thing, it's horrible errors and most of all, the WASM heap32.7 -
The website for our biggest client went down and the server went haywire. Though for this client we don’t provide any infrastructure, so we called their it partner to start figuring this out.
They started blaming us, asking is if we had upgraded the website or changed any PHP settings, which all were a firm no from us. So they told us they had competent people working on the matter.
TL;DR their people isn’t competent and I ended up fixing the issue.
Hours go by, nothing happens, client calls us and we call the it partner, nothing, they don’t understand anything. Told us they can’t find any logs etc.
So we setup a conference call with our CXO, me, another dev and a few people from the it partner.
At this point I’m just asking them if they’ve looked at this and this, no good answer, I fetch a long ethernet cable from my desk, pull it to the CXO’s office and hook up my laptop to start looking into things myself.
IT partner still can’t find anything wrong. I tail the httpd error log and see thousands upon thousands of warning messages about mysql being loaded twice, but that’s not the issue here.
Check top and see there’s 257 instances of httpd, whereas 256 is spawned by httpd, mysql is using 600% cpu and whenever I try to connect to mysql through cli it throws me a too many connections error.
I heard the IT partner talking about a ddos attack, so I asked them to pull it off the public network and only give us access through our vpn. They do that, reboot server, same problems.
Finally we get the it partner to rollback the vm to earlier last night. Everything works great, 30 min later, it crashes again. At this point I’m getting tired and frustrated, this isn’t my job, I thought they had competent people working on this.
I noticed that the db had a few corrupted tables, and ask the it partner to get a dba to look at it. No prevail.
5’o’clock is here, we decide to give the vm rollback another try, but first we go home, get some dinner and resume at 6pm. I had told them I wanted to be in on this call, and said let me try this time.
They spend ages doing the rollback, and then for some reason they have to reconfigure the network and shit. Once it booted, I told their tech to stop mysqld and httpd immediately and prevent it from start at boot.
I can now look at the logs that is leading to this issue. I noticed our debug flag was on and had generated a 30gb log file. Tail it and see it’s what I’d expect, warmings and warnings, And all other logs for mysql and apache is huge, so the drive is full. Just gotta delete it.
I quietly start apache and mysql, see the website is working fine, shut it down and just take a copy of the var/lib/mysql directory and etc directory just go have backups.
Starting to connect a few dots, but I wasn’t exactly sure if it was right. Had the full drive caused mysql to corrupt itself? Only one way to find out. Start apache and mysql back up, and just wait and see. Meanwhile I fixed that mysql being loaded twice. Some genius had put load mysql.so at the top and bottom of php ini.
While waiting on the server to crash again, I’m talking to the it support guy, who told me they haven’t updated anything on the server except security patches now and then, and they didn’t have anyone familiar with this setup. No shit, it’s running php 5.3 -.-
Website up and running 1.5 later, mission accomplished.6 -
long && scam && rant?
At my parent's: phone rings..
Me: hi this is XYZ (in German)
He: hi this is ABC from Microsoft tecnical suport (strong Indian accent, sorry toall Indian devs who might feel offended, no intention)
Me: hi... (I'm learning for my exams and don't have a VM with Windows installed currently, so no time to "play")
He: we got some worrying data from your Windows computer. You might have a virus and we need to run a few tests to verfy it. Do you know what that is?
Me: yeah, a scam.
He: sorry, sir I didn't understand you, could you repeat?
Me: yeah, I know what " this" is. It's a scam, and we only deploy Linux here. (lie, we have Windows, Mac and Linux, as well as an iPhone, iPad and Android devices in the house, guess who is "support"...) But good luck with your next call.
He: (kind of friendly) oh. I see. Well have a nice day too.8 -
Worst meeting:
Boss: *calls everyone* URGENT MEETING. If you're on your lunch break, then stop and join the video call. Is it a weird time in your timezone? Wake up. But COME
Omg what happened? Is the server down? Are we getting a huge client? What is so urgent that it needs all of our attention right now?
Boss: I'm afraid that I won't be able to stay long in this meeting.
... then WHY the f did you call this meeting?
Boss: that's why we'll have a meeting next at *such hour*. In the meantime, talk to your respective departments about what you've been doing and what you need from each other. See you!
No comment6 -
Dear Product owners / Company Owners / Whoever requesting a feature:
Devs like to know they are adding value to whatever product they are working on. Every time you request a stupid no value added request, you kick the dev's soul.
After several hits the developer will stop caring about the software and eventually will get the job done, but oh boy, the amount of tech debt/trash code the dev is gonna leave behind will be horrendous.
Then the next developer, not only takes the hit from another stupid request, he/she will see the crappy code the past sad developer left and will take a double hit. Of course all of them start proactive and try to fix previous blood trails but sadness will catch them eventually.
If you want you're apps/products/reports to be good in a long run don't make stupid requests.
BAs, Stop being Expensive Email Forwarders and challenge a request, understand the process and then hand it to the developer.
Us developers are sensible cute ponies. Treat us well or expect poor quality projects8 -
I’m so sick of the programming industry. It’s no longer fun. After 26 years, I’m utterly unable to keep up with all the new BS I’m supposed to know. I’m currently unemployed and every job description I see has a kilometer-long list of dozens of languages and protocols and technologies I’m supposed to have 10 or more years with. Utter bollocks. I’m completely unemployable according to these expectations. Nobody will even consider me for hire. Do these candidates actually exist?
Sure, I could do what everyone suggests and “go back to school”. But with what money? And only to find out that the tech bros have invented 20 new things I should have been learning during my 2-4 years getting on the new stuff. Not to mention all the time I will have lost in not being employed for going to school. And then STILL not having the “10 or more years experience”.
My wife is tapping her foot wondering when we’re gonna be able to stop eating through our savings while I dither around and try to find ways to make money. I’m starting to feel like I’ll never be employed or employable again.21 -
Near the end of a massive (1,000 user bridgeline) conference call today:
[ P = presenter, RCn = random caller n ]
P: ...so, does anyone have any other questions they'd like to---
RC1: Hey! Yeah, I'm still on this STUPID call right now... I dunno, we've been in here for like 30 minutes already - The guy came by the house to talk about it, but I couldn't get off this STUPID call - I think they said it would be around 800 dollars...
[ P, RC1, RC2, RC3, RC4 all overlapping ]
P: Um, we can hear you-
RC2: Dude, mute your phone!
RC3: As the presenter, you can mute that guy from the web UI-
P: Yeah, I can't find him in the attendee list; it's so long-
RC3: -Right-click on his name and select "mute line"-
P: I know how, but I can't find him on the list.
RC3: Find him on the attendance list on the right side-
P: [ louder and louder ] Yes, I know - but I can't find him in the list-
RC4: Should someone call an operator?
RC1: -so I figured we'll probably need to call Jerry and see what he says. I'll call him if I can ever get off this ridiculous, STUPID call - They are all talking at once on there now and no one can understand anything!
[ This went on for about 5 solid minutes, finally ending with... ]
RC1: I'm just going to drop this STUPID call and call Jerry for us. This thing was a total waste of time. [ boop-beep ]
[ long pause ]
P: OK, so now that is over, does anyone have any questions they'd like to discuss?
[ At least 10 people un-mute and overlap questions ]
#ConferenceCallProblems
Above everything else, the funniest part to me was his repeated, over-the-top insistence on how "STUPID" the call was.
#TellUsHowYouReallyFeel1 -
rant, but not an IT kind... okay, maybe not even a rant, more like depressive rambling:
in 3 days, I'll turn 29.
i'm living with my mom, in the apartment where I was born, in the room i've been living since I was born (with the exception of 2 attempts to move out which together lasted 9 months).
my theoretical monthly income should/could be around 4000€, based on my skills and experience.
but I'm a (manic)-depressive, chronically lonely idiot loser (and the manic phases come more and more rarely in recent years), so
my practical average monthly income fluctuates from 0 to about 200.
i am unable to keep a job for more than 4 months, so after being fired from about 20 or so of them since I was 18, it takes immense amounts of mental and emotional energy to even start looking for one now... so I usually don't.
i've been about 12000€ in debt for the past 8 or so years, half of which is just debt collector fees.
it's kinda funny, for years, i've been unable to solve a debt which theoretically amounts to 3 months of my theoretical achievable salary.
my father, who just left without a word of explanation when I was 18, has decided this is not viable anymore, so I'm supposed to move out by 10th of next month, "either to some cheap rooming house, or under the bridge, I don't care", as he put it.
I can't remember how it feels to exist a single hour without feeling existential dread and dreading each next day, not knowing what to do or if i'll even be able to try and do something, because this feeling is so strong that it often blocks me from being able to do anything. i just shiver most of the time that i'm awake, feeling like you feel few minutes before puking and crying at the same time. and that feeling is my "how are you?", "you know... normal".
i can't remember what it feels to feel any other way and can't even imagine it, and can't imagine that I'll ever achieve any less shit feeling.
literally all of my social contact consists of going out once to twice a month with the only 2 friends and 2 aquaintances I have who have the time and will to spend it with me.
oh, and hiding in my room, avoiding talking to my mom, because each time we talk she just reminds me what a piece of shit failure I am, and tells me how it's not that hard to change it, I just have to stop being lazy and start working for it.
she's... kind and caring about it, which somehow maybe makes it even worse.
i have about 10 almost complete game designs, each of them at least 50% more original and interesting (at least to me) than the things that are coming out for the past 10 years, being lauded as "the most original and unique".
I have been trying to make them, ANY of them, since I was 18, but I always lose all the drive and resolve and energy in like 4 months, because it's like trying to build a city on my own on a deserted island. too big for one person, but there was never anyone to help me. closest I ever got was one of my friends telling me "i've been thinking many times that i'd love to work on some project with you, if I had the time".
and second time, when I actually found an artist I was going to pay, and he was awesome, and after two weeks of me telling him how awesome what he does is and how it fits the project and my ideas perfectly, he backed out saying "i'm afraid I can't do the quality you require from me".
never ever in my life did I get actual help with something I actually wanted or tried to do.
i have no idea how it feels to have someone working with me on something I actually consider interesting and meaningful, on any of the things which I wanted to make, which made me learn programming.
I've learned graphics and animation and everything going into game making pipeline on my own because I realized nobody will ever help me, so I'll have to do all of it on my own.
I've tried to make a kickstarter once, but I started crying hysterically in the middle of writing it, because I felt like a begging piece of failure shit, even more than usual, so I deleted it.
most of people treat me like shit failure unworthy and undeserving of living, precisely as I myself know I deserve to be treated, because that's what I am, but when I ask for permission to kill myself, since I see no other solution to stop being a burden, they get angry at me that I'm just emotionally blackmailing them. when I afterwards ask them "so help me in any way to do any of the projects i want/need to do", they respond they've got no time for that.
when I talk about all of this, I get told to stop whining.
happy 29th birthday, me, a piece of shit who should've never survived this long, who should've never been born in the first place.
yay.
also, I know this is not the kind of crap that's supposed to be posted here, but i've got nowhere else. sorry.47 -
So following from this rant:
https://devrant.io/rants/618679/...
Warning long rant ahead
I resigned and my last day is tomorrow, I've released the app updates a week ago, patched a couple bugs for iOS.
My boss and the idiot who can't open an email on his phone go off to use the app as part of some training thing for the company.
I got a call yesterday saying the Android app has issues and I proceeded to ask my boss what type of phone they have:
"Samsung and Huawei"
I thought okay I need more info "what type of phone..." He responds with wouldn't have a clue....
I can't see the phone, didn't get a screenshot or anything like that but I'm expected to just know what the phone is.
My boss goes on to say yeah it's the app (he is literally the most computer illiterate person I could think of aside from guy who can't open emails on phone, how the fuck do you know that?)
Me: "From all the testing I've done the app works"
Look if you want a more robust error free update hire more than one developer I can't test every single fucking use case to determine the app is 100% bug free, I've tested on at least 10 phones before releasing the update just to be absolutely sure I got everything done and okay I missed something.
So I proceed to get my boss to tell the guy who has the issue I'll sign him up to the testing app to find out the cause and hopefully fix the issue, I setup crashlytics send the email and get a call from my boss saying the guy didn't get the email.
Well okay is it my problem that we have two emails for the same person where one of them is a typo? No it's the guy who asked and wrote down the email instead of actually forwarding a blank email from him to be absolutely sure, I sent the email to both just to be on the safe side.
I swear if he is another idiot who can't open emails on his phone well I can't help him, app works on my phone and the phones at work.
I need a phone where it doesn't work so I can get a solution I know works but if I have to deal with these idiots that can't even check an email how the fuck do I do that?
Sorry about the formatting just needed to get this off my chest before I start work.
Oh and I get asked "so who'll fix the bugs when you're gone" well I can't (in reality I'm not working for free, I'm not traveling 1 1/2 commute time to fix one bug for free, go hire someone you think will love to work for minimum wage and let's see if this guy can do what I did)8 -
Crappy day, entirely related to cars and trucks and other wheeled implements of doom and annoyance.
My car died this morning.
It has been slowly dying for weeks in a very unusual way (something electrical; we're not sure what), but today it finally gave up and just wouldn't start anymore.
We replaced the crap battery (it had been a crap freebie from my parents), which fixed the not-starting issue for now, but it still has lots of other problems. Fluid leaks, disintegrating paint, some lights suddenly or randomly not working, super long clutch distance, sporadic grinding sounds, shifter randomly not engaging, pieces literally falling off, bits of the interior breaking (like the driver's side door handle), the wiper sprayers bloody missing the windshield, etc., etc., etc. My poor, poor car. It was super cheap, and I've had it for a long time, so I'm not surprised, but. I love my car, so it makes me really sad. ☹
Anyway, we finally got the car starting again, and I drove to work about four hours late. I had worked super late the previous night (11:45pm), and had let my boss know already, so whatever.
As for the trip, I work ~40 minutes away, and with the poor quality of drivers here there's usually something dumb happening. Today... well. Today was one of the bad days.
Someone was in the fast lane doing 50mph. The usual speed of traffic is 80mph. They got annoyed whenever someone passed them. Minor, but worth including.
Later on, people slowed way down and gawked at... a port-a-potty. Seriously, a port-a-potty. It was on the shoulder where there had been some construction, so it's not surprising or anything. People seriously dropped from 80mph down to 20mph just to stare at this thing, and it wasn't even occupied or anything. It was just a port-a-potty! There was nothing else around! What could possibly be so interesting?!
There was also a random Penske (moving) truck doing 35mph on the freeway holding up traffic like 10 minutes later; no idea why. Traffic usually does ~70mph there. No blinkers or anything, it was just being slow and causing everyone to go around in a pretty traffic-heavy area.
The truck in front of me for ~40% of the trip kept waiting way too long to stop, and would then slam on the breaks. I almost hit him twice because of this, and I couldn't see around him, either. It was some giant pickup staying just in the wrong spot. I ended up driving partially in the shoulder so I could gauge when to stop by the car in front of him. He slammed on the breaks like twelve more times before he finally left. Jerk.
The same thing happened again like 85% of the way to work, but this time it was a different pickup, and there was a semi was behind me, which obviously couldn't stop very quickly. Fortunately for both of us, there was a gap in traffic to my right, so I slipped out of the way before getting squished. ><
Bloody hell.
Today has not been fun.
Nobody flipping me off or was doing their damnedest to prevent me from changing lanes today, though, so I suppose it could have been worse. Also I didn't die, so there's that.2 -
Hi everyone, long time no see.
Today I want to tell you a story about Linux, and its acceptance on the desktop.
Long ago I found myself a girlfriend, a wonderful woman who is an engineer too but who couldn't be further from CS. For those in the know, she absolutely despises architects. She doesn't know the size units of computers, i.e. the multiples of the byte. Breaks cables on the regular, and so on. For all intents and purposes, she's a user. She has written some code for a college project before, but she is by no means a developer.
She has seen me using Linux quite passionately for the last year or so, and a few weeks ago she got so fed up with how Windows refused to work on both her computers (on one of them literally failing to run exe's, go figure), that she allowed me to reinstall both systems, with one of them being dualbooted Windows 10 + Linux.
The computer that runs Linux is not one she uses very often, but for gaming (The Sims) it's her platform to go. On it I installed Debian KDE, for the following reasons:
- It had to be stable as I didn't want another box to maintain.
- It had to be pretty OOTB, as first impressions are crucial.
- It had to be easy to use, given her skill level.
- It had to have a GUI abstraction to apt, the KDE team built Discover which looks gorgeous.
She had the following things to say about Linux, when she went to download The Sims from a torrent (I installed qBittorrent for her iirc).
"Linux is better, there's no need to download anything"
"Still figuring things out, but I'm liking it"
"I'm scared of using Windows again, it's so laggy"
"Linux works fine, I'm becoming a Linux user"
Which you can imagine, it filled me with pride. We've done it boys. We've built a superior system that even regular users can use, if the system is set up to be user-friendly.
There are a few gripes I still have, and pitfalls I want to address. There's still too many options, users can drown in the sheer amount of distro's to choose from. For us that's extremely important but they need to have a guide there. However, don't do remote administration for them! That's even worse than Microsoft's tracking! Whenever you install Linux on someone else's computer, don't be all about efficiency, they are coming from Windows and just want it to be easy to use. I use Mate myself, but it is not the thing I would recommend to others. In other words, put your own preferences aside in favor of objective usability. You're trying to sell people on a product, not to impose your own point of view. Dualboot with Windows is fine, gaming still sucks on Linux for the most part. Lots of people don't have their games on Steam. CAD software and such is still nonexistent (OpenSCAD is very interesting but don't tell me it's user-friendly). People are familiar with Windows. If you were to be swimming for the first time in the deep water, would you go without aids? I don't think so.
So, Linux can be shown and be actually usable by regular people. Just pitch it in the right way.11 -
For almost twenty years I have sheltered in the protective, safe, warm bosom of Debian. For a long time, it had the largest body of available software of all the distros, and by far when Ubuntu rose to prominence. So I used Ubuntu for years for the depth of package availability, and because if something esoteric was released, it would almost certainly come out first on Ubuntu, and sometimes only on Ubuntu. I was happy. Things were good.
But over time, Ubuntu and even Debian started to lean harder and harder on gnome, which I've always hated, along with all desktop environments, as they obscure the system from the user, and introduce graphical layers of abstraction, so the actual job of getting things done becomes a black art, hidden behind gnome-specific tools. This is my preference, and It's been disheartening in recent years to see the direction the desktop appears to be taking.
Then I joined devrant in 2017, and until then, I had heard peripherally about Arch, but never more than that. I had not heard of Manjaro at all. People started posting success stories and happy screenshots, and I was intrigued.
In 2018 I built a windows machine to use for parsec streaming games that wouldn't run on my linux rig. For not a great deal of money, I built a solid machine that's unequivocally better than any machine I've ever used, and installed windows on it. For a while, I was pleased. I had the best of both worlds: a windows box to stream some games from, and a linux desktop for everything else.
But after a couple months, as proton matured, I found fewer and fewer reasons to use my windows machine. My use of it declined to where I was last week: it had been months since I'd even powered it on. It was the most powerful machine I've ever used, and it was just collecting dust behind the TV in the living room. The full realization came to me while I was fighting a battle in the Gnome Takeover War, and I realized: I don't have to do this.
I pulled the newer machine out from behind the TV and installed Manjaro architect edition on it. The flexibility in the install was staggering. I am using nilfs2 for my /boot and / partitions: an option that Ubuntu has never offered. Normally they just default you into the garbage ext4 filesystem, and if you can dig deep enough, you can install with something else, though you have to really want it, in my opinion.
But Manjaro has been a dream-come-true. Pacman is easily the best package manager I have ever used, and pamac's intuitive and easy commands are a great view into AUR. Booting into the virtual console instead of a display manager has been wonderful too. On Ubuntu, I had to disable systemd's version of runlevel 5 to even get it working. But I just popped my xrandr script into my .xinitrc, and X opens with startx in less than a second. On Ubuntu, it takes about 5-10 seconds.
This has nothing to do with Manjaro, but I also switched to Radeon for this install, and I couldn't be happier about that. No more "installing" nvidia's drivers.
No more gnome. No more PPAs. No more settling. I am a Manjaro user now. Full stop. Thank you, devrant, for bringing it to my attention.11 -
I could bitch about XSLT again, as that was certainly painful, but that’s less about learning a skill and more about understanding someone else’s mental diarrhea, so let me pick something else.
My most painful learning experience was probably pointers, but not pointers in the usual sense of `char *ptr` in C and how they’re totally confusing at first. I mean, it was that too, but in addition it was how I had absolutely none of the background needed to understand them, not having any learning material (nor guidance), nor even a typical compiler to tell me what i was doing wrong — and on top of all of that, only being able to run code on a device that would crash/halt/freak out whenever i made a mistake. It was an absolute nightmare.
Here’s the story:
Someone gave me the game RACE for my TI-83 calculator, but it turned out to be an unlocked version, which means I could edit it and see the code. I discovered this later on by accident while trying to play it during class, and when I looked at it, all I saw was incomprehensible garbage. I closed it, and the game no longer worked. Looking back I must have changed something, but then I thought it was just magic. It took me a long time to get curious enough to look at it again.
But in the meantime, I ended up played with these “programs” a little, and made some really simple ones, and later some somewhat complex ones. So the next time I opened RACE again I kind of understood what it was doing.
Moving on, I spent a year learning TI-Basic, and eventually reached the limit of what it could do. Along the way, I learned that all of the really amazing games/utilities that were incredibly fast, had greyscale graphics, lowercase text, no runtime indicator, etc. were written in “Assembly,” so naturally I wanted to use that, too.
I had no idea what it was, but it was the obvious next step for me, so I started teaching myself. It was z80 Assembly, and there was practically no documents, resources, nothing helpful online.
I found the specs, and a few terrible docs and other sources, but with only one year of programming experience, I didn’t really understand what they were telling me. This was before stackoverflow, etc., too, so what little help I found was mostly from forum posts, IRC (mostly got ignored or made fun of), and reading other people’s source when I could find it. And usually that was less than clear.
And here’s where we dive into the specifics. Starting with so little experience, and in TI-Basic of all things, meant I had zero understanding of pointers, memory and addresses, the stack, heap, data structures, interrupts, clocks, etc. I had mastered everything TI-Basic offered, which astoundingly included arrays and matrices (six of each), but it hid everything else except basic logic and flow control. (No, there weren’t even functions; it has labels and goto.) It has 27 numeric variables (A-Z and theta, can store either float or complex numbers), 8 Lists (numeric arrays), 6 matricies (2d numeric arrays), 10 strings, and a few other things like “equations” and literal bitmap pictures.
Soo… I went from knowing only that to learning pointers. And pointer math. And data structures. And pointers to pointers, and the stack, and function calls, and all that goodness. And remember, I was learning and writing all of this in plain Assembly, in notepad (or on paper at school), not in C or C++ with a teacher, a textbook, SO, and an intelligent compiler with its incredibly helpful type checking and warnings. Just raw trial and error. I learned what I could from whatever cryptic sources I could find (and understand) online, and applied it.
But actually using what I learned? If a pointer was wrong, it resulted in unexpected behavior, memory corruption, freezes, etc. I didn’t have a debugger, an emulator, etc. I had notepad, the barebones compiler, and my calculator.
Also, iterating meant changing my code, recompiling, factory resetting my calculator (removing the battery for 30+ sec) because bugs usually froze it or corrupted something, then transferring the new program over, and finally running it. It was soo slowwwww. But I made steady progress.
Painful learning experience? Check.
Pointer hell? Absolutely.4 -
Xpost from /r/sysadmin:
I occasionally see posts from people who seem like they want to spend every waking hour of every waking minute working on home lab stuff and studying for certs.
If you do this, you're missing out on life which you will regret later, but even if you don't care about missing out on life, it actually is hurting your career.
Being well rounded helps you interact with others at work in a number of ways. It makes you less one dimensional as "the computers guy" and it also gives you topics to discuss with people. If you know how to cook, or brew beer, or bake bread you end up using a lot of your technical and troubleshooting skills. Biking long distancing and learning how to fix your bike helps with your troubleshooting skills too. You learn to look at things from other angles.
Reading novels or writing poetry or making art work also helps because it exercises your brain. Woodworking or metal working involve a lot of skills that'd help your IT career including project planning and measuring and budgeting for each project. Working on cars or motorcycles would be similar. You just have to do SOMETHING.
I have a member of my team who literally has nothing going on in his life other than studying for certs. No friends, no hobbies, and he basically eats nothing but McDonalds and frozen dinners because even making a meal takes time away from his studying. He thinks means he's dedicated and will experience great career success.
But instead he has nothing to talk to anyone about, and when I say nothing, I mean literally nothing. It's borderline terrifying. Even if he was into comic books and video games it might help, which might help him relate to SOME of the IT staff even if the rest of the people at the company know nothing about it. But he doesn't even have that.
This isn't a solitary field anymore. Even if you truly are "the best" you still have to interact with other people and stay mentally stable enough to not burn out. Even if you know more than everyone else (or think you do) you have to try to broaden your horizons.10 -
Dev: Hay dude , look this page is broken, how long has it been like this.
Me: No? 🤔, Weren't you working on the Database for this yesterday?
Dev: I didn't change anything yet...
Me: Okay, let's do a git bisect and see where this came from.
...After going back in history and checking out like 3 commits.
Dev: It's fine I'll just search for it
Me: 😕, that's what we are doing the bisect for?
Dev: But we've already looked at so many!?
...After some time of convincing, finds good commit, does the bisect and finds offending piece of code. The database details changed.
Me: okay so while it's still pointing to the old database it's working but switch it to the latest one and it breaks. You sure you didn't change anything?
Dev: I didn't do anything.
Me: okay well it seems to me like it must be a database issue, let me know what you find.
10min later...
Dev: Hay dude, soo I found it, I accidentally renamed a table
In my mind: 😲😲😲
I hate working at a company with bad practices like saving database config into git and not making a copy of the database when you intend to work on it, and not edit the f'ing live instance! Not even close to the luxury of migrations.1 -
Does linux suck? Imho, Yes.
A lot of the people bash windows regarding automatic restarts, updates, bsod etc.
I may be unusually lucky, but the last bsod I saw was in 2014 because of a faulty synaptics driver.
I've really tried to use linux to see what the hype is all about. Quite frankly, it sucked. The first time it wiped out all my data, I realized the value of backups. Hence I do not have a single pic of my school now, thanks to complicated ubuntu mounting.
Next is driver support. When I plug in a device, I expect it to work. I don't want to spend a day googling for drivers.
Why the fuck would I want to use a black terminal which gives me a headache. Am I in 1980? Which sadistic asshole designed vim ?
I have seen linux developers who claim to be linux experts and love linux. They take so long to do simple shit. For god's sake don't tell me there are GUI versions of linux available. I'd rather work in windows 95.
Why in the world would anyone want to use ls to see the contents of a directory! It is seriously so fucking unproductive.
I can't just download a software, click next a couple of times, and be done. No no no. I've to do sudo apt get update. Then try to find the fucking package. And if all goes well, there's always the dependency issue which is going to bite me in the ass. If google and stackoverflow go down, most linux devs will die a cruel death.
Fuck you linux.
I'm not saying windows 10 is the best, but at least I don't have to crawl through shit to use it. If you don't like automatic updates, disable it you moron. It is easier than renaming a damn file in linux.57 -
Long Time No See #Devrant
Been working on this, a new take on a classic game.
Just finishing up, Stay Tuned4 -
So a few days ago I shared about the conflict with my colleague on learning React. Today I was let go. Obviously I asked why they would do that and they said they feel the problem isn't even my React knowledge but the fact I don't grasp the fundamentals of OO programming.
Thing is in these 3 months there has not been a single code review. They are either going of what my lying colleague told them (they claimed he was excluded from giving feedback), or the consultants who were hired to help us. And yes, I got feedback I should improve but at the same time the assurance so long as I show improvement it'd be fine. And I was told they could see improvement. So I'm not sure what changed but suddenly there is no budget to keep me on. In any case it feels like shitty corporate bullshit.
But I can't say they are wrong. I struggle to explain simple concepts I know in words. I've worked a series of bad jobs where nobody cared how you did stuff as long as it got done. I feel I'm so behind now and so affected by bad knowledge it's even harder to fix than to learn the first time. So I'm wondering how to fix this.
I'm really gutted too because I loved this company. I was finally getting a fair wage instead of being underpaid. The people were excellent. I felt I could finally relax and feel safe at work. And now I feel betrayed. Which for someone with self esteem issues is very hard. Can't trust in myself and can't trust in others.
I'm gonna try and pick myself up in the morning, but today I feel totally shit. This wasn't how I'd expected things to go. I thought my manager had intended to talk conflicts over but instead I get the boot. And the advice to stop overselling myself. Real useful that. Like it is on me that they hired me despite my subpar interview because my CV looked good. It's a shitty excuse. In any case they're now stuck with a dev that walks out of work, throws false accusations about colleagues, and another person warned me about to not engage because nothing good ever came from it. He's gonna keep over engineering everything and make up for all the time he wastes outside of work creating a dysfunctional environment for everyone. But yeah, easier to fire the new person who does her best despite the odds. And who cautioned against over engineering because we kept missing deadlines. And who believes in refactoring when it is needed because that's how agile works. Yeah better keep someone who has no sense of work life balance and makes others miserable then claiming he's being driven out by your ignorance. And of course the consultants who throw your own people under the bus. Can't get rid of those now.7 -
Yesterday, my new (Irish) co-worker comes to my desk and asks me a question about an issue in his code.
His commenting all done in Irish.
Him: "If you want me I can translate the comments for you?"
Me: "Ní gá, is féidir liom é a léamh go foirfe." ("No need to, I can read it perfectly fine")
co-worker looking at me like: "wtf just happened?"
After a while, I spotted the issue (I noticed the expected output from one of the functions not being of the correct format - an integer instead of an array).
So I fixed it.
Next day (this morning) I came back at work, looked into my food drawer to see what I would eat for breakfast (yes, I have a drawer specifically for food, and yes, I eat breakfast at work), found a small box containing an Ulster Fry :D
Best breakfast at work in a long time :D6 -
My first job was actually nontechnical - I was 18 years old and sold premium office furniture for a small store in Munich.
I did code in my free time though (PHP/JS mostly, had a litte browsergame back then - those were the days), so when my boss approached me and asked me whether I liked to take over a coding project, I agreed to the idea.
Little did I know at the time: I was supposed to work with a web agency the boss had contracted to build their online shop. Only that he had no plan or anything, he basically told them "build me an online shop like abc(a major competitor of ours at the time)"
He employed another sales lady who was supposed to manage the shop (that didn't exist yet). In the end, I think 80% of her job was to keep me from killing my boss.
As you can imagine, with this huuuuge amout of planning and these exact visions of what was supposed to be, things went south fast and far. So far that I could visit my fellow flightless birds down in the Penguin's republic of Antarctica and still need to go further.
Well... When my boss started suing the web agency, I was... ahem, asked to take over. Dumb as I was, I did - I was a PHP kid and thought that Magento, being written in PHP, would be easy to master. If you know Magento, you know that was maybe the wrongest thing I ever said.
Fast forward 3 very exhausting months, the thing was online. Not all of it worked yet, but it was online and fairly secure.
I did next to everything myself, administrating the CentOS box the shop was running on, its (own) e-mail server, the web server, all the coding required for the shop (can you spell 12 hour day for 8 hour pay?)
3 further months later, my life basically was a wreck, I dragged myself to work, the only thing I looked forward being the motorcycle ride home. The system worked though.
Mind you, I was still, at the time, working with three major customers, doing deskside support and some admin (Win Server 2008R2 at the time) - because, to quote my boss, "We could not afford a full time developer and we don't need one".
I think i stopped coding in my free time, the one hobby I used to love more than anything on the world, somewhere Decemerish 2012. I dropped out of the open source projects I was in, quit working on my browser game and let everything slide.
I didn't even care to renew the domains and servers for it, I just let it die without notice.
The little free time I had, I spent playing video games and getting drunk/high.
December 2013, 1.5 years on the job, I reached my breaking point and just left, called in sick at least a week per month because I just could not see this fucking place anymore.
I looked for another job outside of ALL of what I did before. No more Magento, no more sales, no more PHP. I didn't have to look for long, despite what I thought of my skills.
In February 2014, I told my boss that I quit. It was still seven months until my new job started, but I wanted him to know early so we could migrate and find a replacement.
The search for said replacement started in June 2014. I had considerably less work in the months before, looks like he got the hint.
In August 2014, my replacement arrived and I got him started.
I found a job, which I am still in, and still happy about after almost half a decade, at a local, medium sized ISP as a software dev and IT security guy. Got a proper training with a certificate and everything now.
My replacement lasted two months, he was external and never really did his job - the site, which until I had quit, had a total of 3 days downtime for 3 YEARS (they were the hoster's fault, not mine), was down for an entire month and he could not even tell why.
HIS followup was kicked after taking two weeks to familiarize himself with the project. Well, I think that two weeks is not even barely enough to familiarize yourself with nearly three years of work, but my boss gave him two days.
In 2016, the shop was replaced with another one. Different shop system, different OS, different CI. I don't know why and I can't say I give a damn.
Almost all the people that worked at the company back with me have left for greener pastures, taking their customers (and revenue) with them.
As for my boss' comments, instructions and lines: THAT might not be safe for work. Or kids. Or humans in general. And there wouldn't be much left if you put it through a language filter...
Moral of the story: No, it's not a bad thing to leave a place if you're mistreated there. Don't mistake loyalty with stupidity!
And, to quote one of my favourite Bands: "Nothing matters when the pain is all but gone" (Tragedy + Time by Rise Against).8 -
[long]
When searching for internship via school I found this small startup with this cute project of building a teaching tool for programming. There were back then 2 programmers: the founder and the co-founder.
Then like 1 week before the internship started, the co-founder had a burnout and had to get off the project, while the company was so low on budget the founder, aka my new b0ss, had to work separate jobs to keep the company alive. (quite metal tbh)
It's funny because I'm a junior developer, 100%. I've been coding as a hobby for around 8 years now but I've never worked in a big company before. (No exception to this workplace either)
First project I get: rewrite the compiler. The Python compiler.
"But wait, why not just embed a real compiler from the first case?"
-nanananana it's never simple, as you probably know from your own projects.
The new compiler, as compared to existing embedded compiler solutions out there, needed these prime features:
- Walk through the code (debugger style), but programmatically.
- Show custom exceptions (ex: "A colon is needed at the end of an if-statement" instead of "Syntax error line 3")
- Have a "Did-you-mean this variable?" error for usage of unassigned variables.
- Be able to be embedded in Unity's WebGL build target
All for the use case of being a friendly compiler.
The last dash in the list is actually the biggest bottleneck which excluded all existing open-source projects (i could find). Compliant with WebAssembly I can't use threads among other things, IL2CPP has lots of restrictions, Unity has some as well...
Oh and it should of course be built using test-driven development.
"Good luck!" - said the founder, first day of work as she then traveled to USA for **3 weeks**, leaving me solo with the to-be-made codebase and humongous list of requirements.
---
I just finished the 6th week of internship, boss has been at "HQ" for 3 weeks now, and I just hit the biggest milestone yet for this project.
Yes I've been succeeding! This project has gone so well, and I'm surprising myself how much code I've been pumping out during these weeks.
I'm up now at almost 40'000 lines of source and 30'000 lines of code. ‼
( Biggest project I've ever worked on previously was at 8'000 lines of code )
The milestone (that I finished today) was for loops! As been trying to showcase in the GIF.
---
It's such a giant project and I can honestly say I've done some good work here. Self-five. Over-performing is a thing.
The things that makes me shiver though is that most that use this application will never know the intricates of it's insides, and the brain work put into it.
The project is probably over-engineered. A lot. Having a home-made compiler gives us a lot of flexibility for our product as we're trying to make more of a "pedagogic IDE". But no matter that I reinvented the wheel for the 105Gth time, it's still the most fun I've had with a project to date.
---
Also btw if anyone wants to see source code, please give me good reasons as I'm actively trying to convince my boss to make the compiler open-source.
Cheers!4 -
Man, most memorable has to be the lead devops engineer from the first startup I worked at. My immediate team/friends called him Mr. DW - DW being short for Done and Working.
You see, Mr. DW was a brilliant devops engineer. He came up with excellent solutions to a lot of release, deployment, and data storage problems faced at the company (small genetics firm that ships servers with our analysis software on them). I am still very impressed by some of the solutions he came up with, and wish I had more time to study and learn about them before I left that company.
BUT - despite his brilliance, Mr. DW ALWAYS shipped broken stuff. For some reason this guy thinks that only testing a single happiest of happy path scenarios for whatever he is developing constitutes "everything will work as expected!" As soon as he said it was "done", but golly for him was it "done". By fucking God was that never the truth.
So, let me provide a basic example of how things would go:
my team: "Hey DW, we have a problem with X, can you fix this?"
DW: "Oh, sure. I bet it's a problem with <insert long explanations we don't care about we just want it fixed>"
my team: "....uhh, cool! Looking forward to the fix!"
... however long later...
DW: "OK, it's done. Here you go!"
my team: "Thanks! We'll get the fix into the processing pipelines"
... another short time later...
my team: "DW, this thing is broken. Look at all these failures"
DW: "How can that be? It was done! I tested it and it worked!"
my team: "Well, the failures say otherwise. How did you test?"
DW: "I just did <insert super basic thing>"
my team: "...... you know that's, like, not how things actually work for this part of the pipeline. right?"
DW: "..... But I thought it was XYZ?"
my team: "uhhhh, no, not even close. Can you please fix and let us know when it's done and working?"
DW: "... I'll fix it..."
And rinse and repeat the "it's done.. oh wait, it's broken" a good half dozen times on average. But, anyways, the birth of Mr. Done and Working - very often stuff was done, but rarely did it ever work!
I'm still friends with my team mates, and whenever we're talking and someone says something is done, we just have to ask if it's done AND working. We always get a laugh, sadly at the excuse of Mr. DW, but he dug his own hole in this regard.
Little cherry on top: So, the above happened with one of my friends. Mr. DW created installation media for one of our servers that was deployed in China. He tested it and "it was done!" Well, my friend flies out to China for on-site installation. He plugs the install medium in and goes for the install and it crashes and burns in a fire. Thankfully my friend knew the system well enough to be able to get everything installed and configured correctly minus the broken install media, but definitely the most insane example of "it's done!" but sure as he'll "it doesn't work!" we had from Mr. DW.2 -
I just tried to sign up to Instagram. I made a big mistake.
First up with Facebook related stuff is data. Data, data and more data. Initially when you sign up (with a new account, not login with Facebook) you're asked your real name, email address and phone number. And finally the username you'd like to have on the service. I gave them a phone number that I actually own, that is in my iPhone, my daily driver right now (and yes I have 3 Androids which all run custom ROMs, hold your keyboards). The email address is a usual for me, instagram at my domain. I am a postmaster after all, and my mail server is a catch-all one. For a setup like that, this is perfectly reasonable. And here it's no different, devrant at my domain. On Facebook even, I use fb at my domain. I'm sure you're starting to see a pattern here. And on Facebook the username, real name and email domain are actually the same.
So I signed up, with - as far as I'm aware - perfectly valid data. I submitted the data and was told that someone at Instagram will review the data within 24 hours. That's already pretty dystopian to me. It is now how you block bots. It is not how Facebook does it either, at least since last time I checked. But whatever. You'd imagine that regardless of the result, they'd let you know. Cool, you're in, or sorry, you're rejected and here's why. Nope.
Fast-forward to today when I recalled that I wanted to sign up to Instagram to see my girlfriend's pictures. So I opened Chromium again that I already use only for the rancid Facebook shit.. and it was rejected. Apparently the mere act of signing up is a Terms of Service violation. I have read them. I do not know which section I have violated with the heinous act of signing up. But I do have a hunch.
Many times now have I been told by ignorant organizations that I would be "stealing" their intellectual property, or business assets or whatever, just because I sent them an email from their name on my domain. It is fucking retarded. That is MY domain, not yours. Learn how email works before you go educate a postmaster. Always funny to tell them how that works. But I think that in this case, that is what happened.
So I appealed it, using a random link to something on Instagram's help section from a third-party blog. You know it's good when the third-party random blog is better. But I found the form and filled it in. Same shit all over again for info, prefilling be damned I guess. Minor convenience though, whatever.
I get sent an email in German, because apparently browsing through a VPS in Germany acting as a VPN means you're German. Whatever... After translating it, I found that it asks me to upload a picture of myself, holding a paper in my hands, on which I would have a confirmation code, my username, and my email address.. all hand-written. It must not be too dark, it must be clear, it must be in JPEG.. look, I just wanted to fucking sign up.
I sent them an email back asking them to fix all of this. While I was writing it and this rant, I thought to myself that they can shove that piece of paper up their ass. In fact I would gladly do it for them.
Long story short, do not use Instagram. And one final thing I have gripes with every time. You are not being told all the data you'll have to present from the get-go. You're not being told the process. Initially I thought it'd just be email, phone, username, and real name. Once signed up (instantly, not within 24 hours!) I would start setting up my account and adding a profile picture. The right way to ask for a picture of me! And just do it at my own pace, as I please.
And for God's sake, tackle abuse when it actually happens. You'll find out who's a bot and who isn't by their usage patterns soon enough. Do not do any of this at sign-up. Or hell, use a CAPTCHA or whatever, I don't fucking care. There's so many millions of ways to skin this cat.
Facebook and especially Instagram. Both of them are fucking retarded.6 -
Earlier today I had a old schoolmate of mine PM me.. long time no see, yada yada, don't beat around the bush please... Turns out that he wanted to get a bot for OldSchool RuneScape and found a bot that was paid... And didn't want to shell out 70-odd shekels and wanted me to write a "private script". Looking at the program he linked, it looked like it'd easily take thousands of lines of code and well over half a year to reimplement.
I'm sure that it's a problem we've all had at some point, and with old friends it's especially hard to deal with. Would you give in to something that's obviously gonna be a trainwreck of a project? Tell them that they're an ass for even thinking of something crazy like this? It's not exactly hard to get offended by something like this, as if our time and expertise is worth absolutely nothing.
Honestly, I just told him.. this will take several months to implement. Here's another project I wrote (https://git.ghnou.su/ghnou/cv if you're interested) and looking at the commit log, you can see that I started it half a year ago, and more or less finished the project 3 months later. That project took ~100 lines of code and this project would easily take thousands, and months if not over a year of work. It's easy to see that it's unreasonable. Now he's going to get a project that's behind Patreon instead, after I told him that it's completely reasonable to ask money for a project like this. What's more, when private it would cost a hell of a lot more - my time isn't free.
Long story short, just honestly explain that so and so is why it's unreasonable, and this and that are other more viable solutions because such and so. Non-technical people aren't necessarily unreasonable because they're dicks, most of the time it's just ignorance. Nothing wrong with that, and mistakes happen to the best of us :)3 -
Is it just me who sees this? JS development in a somewhat more complex setting (like vue-storefront) is just a horrible mess.
I have 10+ experience in java, c# and python, and I've never needed more than a a few hours to get into a new codebase, understanding the overall system, being able to guess where to fix a given problem.
But with JS (and also TS for that matter) I'm at my limits. Most of the files look like they don't do anything. There seems to be no structure, both from a file system point of view, nor from a code point of view.
It start with little things like 300 char long lines including various lambdas, closures and ifs with useless variables names, over overly generic and minified method/function names to inconsistent naming of files, classes and basically everything else.
I used to just set a breakpoint somewhere in my code (or in a compiled dependency) wait this it is being hit and go back and forth to learn how the system state changes.
This seems to be highly limited in JS. I didn't find the one way to just being able to debug, everything that is. There are weird things like transpilers, compiler, minifiers, bablers and what not else. There is an error? Go f... yourself ...
And what do I find as the number one tipp all across the internet? Console.log?? are you kidding me, sure just tell me, your kidding me right?
If I would have to describe the JS world in one word, I would use "inconsistency". It's all just a pain in the ass.
I remember when I switcher from VisualStudio/C# to Eclipse/Java I felt like traveling back in time for about 10 years. Everyting seemd so ... old-schoolish, buggy, weird.
When I now switch from java to JS it makes me feel the same way. It's all so highly unproductive, inconsistent, undeterministic, cobbled together.
For one inconveinience the JS communinity seems to like to build huge shitloads of stuff around it, instead of fixing the obvious. And noone seems to see that.
It's like they are all blinded somehow. Currently I'm also trying to implement a small react app based on react-admin. The simplest things to develop and debug are a nightmare. There is so much boilerplate that to write that most people in the internet just keep copying stuff, without even trying to understand what it actually does.
I've always been a guy that tries to understand what the fuck this code actuall does. And for most of the parts I just thing, that the stuff there is useless or could be done in a way more readable way. But instead, all the devs out there just seem to chose the "copy and fix somehow-ish" way.
I'm all in for component-izing stuff. I like encapsulation, I'm a OOP guy by heart. But what react and similar frameworks do is just insane. It's just not right (for some part).
Especially when you have to remember so much stuff that is just mechanics/boilerplate without having any actual "business logical function".
People always say java is so verbose. I don't think it is, there is so few syntax that it almost reads like a prose story. When I look at JS and TS instead, I'm overwhelmed by all the syntax, almost wondering every second line, what the actual fuck this could mean. The boilerplate/logic ration seems way to off ..
So it really makes me wonder, if all you JS devs out there are just so used to that stuff, that you cannot imagine how it could be done better? I still remember my C# days, but I admin that I just got used to java. So I can somehow understand that all. But JS is just another few levels less deeper.
But maybe I'm just lazy and too old ...4 -
I used to do audits for private companies with a team. Most of them where black box audits and we were allowed to physically manipulate certain machines in and around the building, as long as we could get to them unnoticed.
Usually when doing such jobs, you get a contract signed by the CEO or the head of security stating that if you're caught, and your actions were within the scope of the audit, no legal action will be taken against you.
There was this one time a company hired us to test their badge system, and our main objective was to scrape the data on the smartcards with a skimmer on the scanner at the front of the building.
It's easy to get to as it's outside and almost everyone has to scan their card there in order to enter the building. They used ISO 7816 cards so we didn't even really need specified tools or hardware.
Now, we get assigned this task. Seems easy enough. We receive the "Stay-out-of-jail"-contract signed by the CEO for Company xyz. We head to the address stated on the contract, place the skimmer etc etc all good.
One of our team gets caught fetching the data from the skimmer a week later (it had to be physically removed). Turns out: wrong Building, wrong company. This was a kind of "building park" (don't really know how to say it in English) where all the buildings looked very similar. The only difference between them was the streetnumber, painted on them in big. They gave us the wrong address.
I still have nightmares about this from time to time. In the end, because the collected data was never used and we could somewhat justify our actions because we had that contract and we had the calls and mails with the CEO of xyz. It never came to a lawsuit. We were, and still are pretty sure though that the CEO of xyz himself was very interesed in the data of that other company and sent us out to the wrong building on purpose.
I don't really know what his plan after that would have been though. We don't just give the data to anyone. We show them how they can protect it better and then we erase everything. They don't actually get to see the data.
I quit doing audits some time ago. It's very stressful and I felt like I either had no spare time at all (when having an active assignment) or had nothing but spare time (when not on an assignment). The pay also wasn't that great.
But some people just really are polished turds.4 -
First day on my first job ever, the boss asks me what I want to do. I indicated that I had some experience with php and the yii framework (which was at some point very cool xD), so I wanted to start with something like that. And so it goes: after two days of watching laracasts (which is an awesome platform by the way! :O) I got assigned to a project.
Now the company I work at uses some kind of self built system that tracks how many hours are spent on which project, and compares that to how many hours was estimated implementing a feature would take. That's cool, but then I saw that for the project I was working on the time estimated was 5 work days. This was the estimate for both designing the interfaces and implementing both front and backend. I knew in advance that this was probably way to little time for me, but didn't want to come over as the new kid who can't do shit x)
Anyway, I started on the project and was having fun, but the biggest time consuming aspect of the project was not necessarily that I didn't have enough experience: it was that the developer who started this project and made most of the design choices had written some very messy code, without tests or apparently any refactoring. Also, everything was extremly inconsistent and not according to all the best practices I just watched in my laracasts spree.
So fastforward a little: we're way over the estimated hours. Yay. Now suddenly the boss comes by with an almost angry face that the client is becoming angry and we need to finish soon. He makes it entirely our (me and the front end guy) problem and I just decide to say nothing and try to work faster.
Now I'm stuck writing fugly code on top of more fugly code and when I mentioned to my front end guy that I was almost finished with feature but I only needed to finish up the tests, he said something like "oh just don't write tests, that'll take too long"... Is that really the mindset of this company?! No wonder the project I work on was in a very bad state.
Thanks to devrant I see now that I just need to say something if I know that I won't be able to complete something in a certain amount of time and that other people are just like me (thank god). :) I think I'll need to post more rants to vent my frustrations x)5 -
Disclaimer: Long tale of a tech support job. Also the wk29 story is at the bottom.
One time I was working tech support for a website and email hosting firm that was in town. I was hired and worked as the only tech support person there, so all calls came in through me. This also meant that if I was on a call, and another one came through, they would go straight to voice mail. But I couldn't hang up calls either, so, sometimes someone would take up tons of time and I'd have to help them. I was also the "SEO" and "Social Media Marketing" person, as well; managed peoples' social media campaigns. I have tons of stories from this place but a few in particular stick out to me. No particular order to these, I'm just reminiscing as I write this.
I once had to help a man who couldn't find the start button on his computer. When I eventually guided him to allowing me to remote into his computer via Team Viewer, I found he was using Windows XP. I'm not kidding.
I once had to sit on the phone with a man selling Plexus Easy Weight Loss (snake oil, pyramid scheme, but he was a client) and have him yell at me about not getting him more business, simply because we'd built his website. No, I'D not built his website, but his website was fine and it wasn't our job to get him more business. Oh yeah, this is the same guy who said that he didn't want the social media marketing package because he "had people to hide from." Christ.
We had another client who was a conspiracy theorist and wanted the social media marketing package for his blog, all about United States conspiracies. Real nut case. But the best client I've ever had because sometimes he'd come into the office and take up my time talking at me about how Fukushima was the next 911 and that soon it'll spill into the US water supply and everybody was going to die. Hell, better than being on the phone! Doing his social media was great because he wanted me to post clearly fake news stories to his twitter and facebook for him, and I got to look at and manage all the comments calling him out on his bullshit. It was kinda fun. After all, it wasn't _me_ that believed all this. It felt like I was trolling.
[wk29] I was the social media and support techie, not a salesperson. But sometimes I was put in charge _alone_ in front of clients for status meetings about their social media. This one time we had a client who was a custom fashion-type person. I don't really remember. But I was told directly to make them a _new_ facebook page and post to it every day with their hot new deals and stuff. MONTHS pass since I do that and they come in for a face-to-face meeting. Boss is out doing... boss things and that means I have to sit in with her, and for some fucking reason she brought her boyfriend AND HER DAD. Who were both clearly very very angry with me, the company, and probably life. They didn't ever say anything at first, they didn't greet me, they were both just there like British royal guards. It was weird as fuck. I start showing them the page, the progress on their likes goals, etc etc. Marketing shit. They say, "huh, we didn't see any of these posts at home." Turns out they already had a Facebook page, I was working on a completely seperate one, and then the boyfriend finally chimes in with the biggest fucking scowl, "what are you going to do about this?" He was sort of justified, considering this was a payed and semi-expensive service we offered, but holy shit the amount of fire in all three of them. Anyway, it came down to me figuring out how to merge facebook pages, but they eventually left as clients. Is this my fuck up? Is it my company's? Is it theirs? I don't know but that was probably the most awkward meeting ever. Don't know if it comes across through text but the anxiety was pretty real. Fuck.
tl;dr Tech support jobs are a really fun and exciting entry level position I recommend everybody apply for if they're starting out in the tech world! You'll meet tons of cool people and every day is like a new adventure.2 -
Long rant ahead.. 5k characters pretty much completely used. So feel free to have another cup of coffee and have a seat 🙂
So.. a while back this flash drive was stolen from me, right. Well it turns out that other than me, the other guy in that incident also got to the police 😃
Now, let me explain the smiley face. At the time of the incident I was completely at fault. I had no real reason to throw a punch at this guy and my only "excuse" would be that I was drunk as fuck - I've never drank so much as I did that day. Needless to say, not a very good excuse and I don't treat it as such.
But that guy and whoever else it was that he was with, that was the guy (or at least part of the group that did) that stole that flash drive from me.
Context: https://devrant.com/rants/2049733 and https://devrant.com/rants/2088970
So that's great! I thought that I'd lost this flash drive and most importantly the data on it forever. But just this Friday evening as I was meeting with my friend to buy some illicit electronics (high voltage, low frequency arc generators if you catch my drift), a policeman came along and told me about that other guy filing a report as well, with apparently much of the blame now lying on his side due to him having punched me right into the hospital.
So I told the cop, well most of the blame is on me really, I shouldn't have started that fight to begin with, and for that matter not have drunk that much, yada yada yada.. anyway he walked away (good grief, as I was having that friend on visit to purchase those electronics at that exact time!) and he said that this case could just be classified then. Maybe just come along next week to the police office to file a proper explanation but maybe even that won't be needed.
So yeah, great. But for me there's more in it of course - that other guy knows more about that flash drive and the data on it that I care about. So I figured, let's go to the police office and arrange an appointment with this guy. And I got thinking about the technicalities for if I see that drive back and want to recover its data.
So I've got 2 phones, 1 rooted but reliant on the other one that's unrooted for a data connection to my home (because Android Q, and no bootable TWRP available for it yet). And theoretically a laptop that I can put Arch on it no problem but its display backlight is cooked. So if I want to bring that one I'd have to rely on a display from them. Good luck getting that done. No option. And then there's a flash drive that I can bake up with a portable Arch install that I can sideload from one of their machines but on that.. even more so - good luck getting that done. So my phones are my only option.
Just to be clear, the technical challenge is to read that flash drive and get as much data off of it as possible. The drive is 32GB large and has about 16GB used. So I'll need at least that much on whatever I decide to store a copy on, assuming unchanged contents (unlikely). My Nexus 6P with a VPN profile to connect to my home network has 32GB of storage. So theoretically I could use dd and pipe it to gzip to compress the zeroes. That'd give me a resulting file that's close to the actual usage on the flash drive in size. But just in case.. my OnePlus 6T has 256GB of storage but it's got no root access.. so I don't have block access to an attached flash drive from it. Worst case I'd have to open a WiFi hotspot to it and get an sshd going for the Nexus to connect to.
And there we have it! A large storage device, no root access, that nonetheless can make use of something else that doesn't have the storage but satisfies the other requirements.
And then we have things like parted to read out the partition table (and if unchanged, cryptsetup to read out LUKS). Now, I don't know if Termux has these and frankly I don't care. What I need for that is a chroot. But I can't just install Arch x86_64 on a flash drive and plug it into my phone. Linux Deploy to the rescue! 😁
It can make chrooted installations of common distributions on arm64, and it comes extremely close to actual Linux. With some Linux magic I could make that able to read the block device from Android and do all the required sorcery with it. Just a USB-C to 3x USB-A hub required (which I have), with the target flash drive and one to store my chroot on, connected to my Nexus. And fixed!
Let's see if I can get that flash drive back!
P.S.: if you're into electronics and worried about getting stuff like this stolen, customize it. I happen to know one particular property of that flash drive that I can use for verification, although it wasn't explicitly customized. But for instance in that flash drive there was a decorative LED. Those are current limited by a resistor. Factory default can be say 200 ohm - replace it with one with a higher value. That way you can without any doubt verify it to be yours. Along with other extra security additions, this is one of the things I'll be adding to my "keychain v2".11 -
TLDR: crappy api + idiot ex client combo rant // devam si duška
I saw a lot of people bitching about APIs that don't return proper response codes and other stuff..
Well let me tell you a story. I used to work on a project where we had to do something like booking, but better..crossbreed with the Off&Away bidding site (which btw we had to rip off the .js stuff and reverse engineer the whole timer thingy), using free versions of everything..even though money wasn't an issue (what our client said). Same client decided to go with transhotel because it was sooooo gooood... OK? Why did noone heard of them then?
Anyhow, the api was xml based.. we had to send some xml that was validated against a schema, we received another that was supposed to be validated againts another schema.. and so on and so on..
...
...
supposed..
The API docs were nonexistent.. What was there, was broken English or Spanish.. Even had some comments like Add This & that to chapter xy.. Of course that chapter didn't even exist yet. :( And the last documentation they had, was really really old..more than a year, with visible gaps, we got the validation schemas not even listed in the docs, let alone described properly.
Yaaay! And that was not everything.. besides wrong and missing data, the API itself caused the 500 server error whenever you were no longer authenticated.
Of course it didn't tell you that your session was dead.. Just pooof! Unhandled crap everywhere!
And the best part?! We handled that login after inspecting what the hell happened, but sent the notification to the company anyways.. We had a conf call, and sent numerous emails explaining to them what a 'try catch' is and how they should handle the not authenticated error <= BTW they should have had a handled xml response for that, we got the schema for it! But they didn't. Anyhow, after two agonizing days talking back and forth they at least set up the server to be available again after the horrified 500 error. Before, it even stopped responding until reset (don't ask me how they managed to do that).
Oh yeah, did I mention this was a worldwide renown company?! Where everybody spoke/wrote English?! Yup, they have more than 700 people there, of course they speak English! <= another one of my ex clients fabulous statements... making me wanna strangle him with his tie.. I told him I am not talking to them because no-one there understood/spoke English and it would be a waste of my time.. Guess who spent almost 3 hours to talk to someone who sounded like a stereotypical Indian support tech guy with a flue speaking Italian?! // no offence please for the referenced parties!!
So yeah, sadly I don't have SS of the fucked up documentation..and I cannot post more details (not sure if the NDA still holds even though they canceled the project).. Not that I care really.. not after I saw how the client would treat his customers..
Anywayz I found on the interwebz some proof that this shitty api existed..
picture + link: https://programmableweb.com/api/...
SubRant: the client was an idiot! Probably still is, but no longer my client..
Wanted to store the credit card info + cvc and owner info etc.. in our database.. for easier second payment, like on paypal (which he wanted me to totally customize the payment page of paypal, and if that wasn't possible to collect user data on our personalized payment page and then just send it over to paypal api, if possible in plaintext, he just didn't care as long as he got his personalized payment page) or sth.... I told the company owner that they are fucking retards if they think they can pull this off & that they will lose all their (potential) clients if they figure that out.. or god forbid someone hacked us and stole the data.. I think this shit is also against the law..
I think it goes without saying what happened next.. called him ignorant stupid fucktard to his face and told him I ain't doing that since our company didn't even had a certificate to store the last 4 numbers.. They heard my voice over the whole firm.. we had fish-tank like offices, so they could all see me yelling at the director..
Guess who got laid off due to not being needed anymore the next day?! It was the best day of my life..so far!! Never have I been happier to lose my job!!
P.S. all that crap + test + the whole backand for analysis, the whole crm + campaign emails etc.. the client wanted done in 6 months.. O.o
P.P.S. almost shat my pants when devRant notified my I cannot post and wanted to copy the message and then everything disappeard.. thank god I have written this in the n++ xDundefined venting big time issues no documentation idiot xml security api privacy ashole crappy client rant11 -
This is a shit post:
Once upon a time, I went to work.... and decided I can shit at work... it was very nice.. I did that a couple of times... at some point, while siting there.. alone, I thought... 'I am getting paid to do this',
so I started shitting everyday at work as it was very worthy but then...
one day I went back home and I had to take a dump.... and though... 'but why should I, no one is paying me to do so'?!... and I didn't...
With time passing by, My ability to shit at home was deprived, the joy that I had shitting at work became a necessity... and the weekends.... long and stagering, but Mondays made me fill... everything with joy.
Capitalism has manipulated me... into making me love Mondays, making them innevitable for me, Capitalism has brainwashed me into being an obedient slave, we must rise and destroy each and every toilet in the companies in which we work or else...
I don't see how I would be able to go on vacations... for 2-3 weeks...8 -
My last job before going freelance. It started as great startup, but as time passed and the company grew, it all went down the drain and turned into a pretty crappy culture.
Once one of the local "darling" startups, it's now widely known in the local community for low salaries and crazy employee churn.
Management sells this great "startup culture", but reality is wildly different. Not sure if the management believes in what the are selling, or if they know they are selling BS.
- The recurring motto of "Work smarter, not harder" is the biggest BS of them all. Recurring pressure to work unpaid overtime. Not overt, because that's illegal, but you face judgement if you don't comply, and you'll eventually see consequences like lack of raises, or being passed for promotions in favour of less competent people that are willing to comply.
- Expectation management is worse than non-existent. Worse, because they actually feed expectations they have no intention of delivering on. (I.e, career progression, salary bumps and so on)
- Management is (rightfully) proud of hiring talented people, but then treat almost everyone like they're stupid.
- Feedback is consistently ignored.
- Senior people leave. Replace them with cheap juniors. Promote the few juniors that stay for more than 12 months to middle-management positions and wonder where things went wrong.
- People who rock the boat about the bad culture or the shitty stunts that management occasionally pulls get pushed out.
- Get everyone working overtime for a week to setup a venue for a large event, abroad, while you have everyone in bunk rooms at the cheapest hostel you could find and you don't even cover all meal expenses. No staff hired to setup the venue, so this includes heavy lifting of all sorts. Fly them on the cheapest fares, ensuring nobody gets a direct flight and has a good few hours of layover. Fly them on the weekend, to make sure nobody is "wasting time" travelling during work hours. Then call this a team building.
This is a tech recruitment company that makes a big fuss about how tech recruitment is broken and toxic...
Also a company that wants to use ML and AI to match candidates to jobs and build a sophisticated product, and wanted a stronger "Engineering culture" not so long ago. Meanwhile:
- Engineering is shoved into the back seat. Major company and product decisions made without input from anyone on the engineering side of things, including the product roadmaps.
- Product lead is an inexperienced kid with zero tech background -> Promote him to also manage the developers as part of the product team while getting rid of your tech lead.
- Dev team is essentially seen by management as an assembly line for features. Dev salaries are now well below market average, and they wonder why it's hard to recruit good devs. (Again, this is a tech recruitment company)1 -
My life didnt go as smooth as i expected. Everything happened as expected, i knew what going to the uni requires, i knew everything...
But i didnt accounted for my mental health. Since forever i have thought that im lazy or something like that, that i can do everything i just have to do it. Oh how wrong was I. It went from my projects being frozen for a long time due to lack of motivation to neglecting important living activies. Even my health suffered a bit. Everytime i failed, even the simplest task no matter why i always felt even worse. Even the most basic tasks were unimportant for me. Even some minor tasks that i failed gave me huge guilt. Not to mention that my family wont help me with my mental health at all, (they cant see what is realy happening they always think im lazy) (but maybe they could fucking figure out that being sad liteary for years is bad). My contact with friends is limited, im always scared to go or more often scared to ask is they have time to meet because they are ALWAYS busy...
So that was my life, alone, against people who were demanding (and my mother who thought that her hard work was everything i needed, but no. Money, food and clean house isnt everything that human requires to propely function!). Now I have scheduled a meeting with the specialist, i hope the uni has better ones than the other ones i had. I hope he will help me and i will get out that life downwards spiral.5 -
I’m a team lead in the tech team, myself and another team lead manage the on call processes for the department, so when stuff breaks we need to fix it. I assume there is sufficient documentation available for me to fix a process that is not mine.
one of the other managers processes breaks. He’s on annual leave and is away for another week. I attempt to fix the process. No documentation. What do i do?
I go to my manager the next day and tell her the process is broken and I can’t fix it because there’s no documentation and I don’t know what the full impacts are. She agreed we should leave it until he comes back from AL.
He comes back a week later. I tell him the process is broken and it’s been failing since he went on AL.
Him: we had a handover before I went on holiday
Me: no, you showed me where the ‘documentation’ was. Said documentation is not defined enough and is out of date. I didn’t want to break it further by trying to repair it when it’s not completely critical
Him: but it is critical, it has to run every day
Me: so why doesn’t it say that in the documentation?
Him: ............
Me: can you fix it please
Him: no, I’ve got too much to do having just come back from holiday
Me: more critical that a process that has to run EVERY DAY and has been failing for the past 10 DAYS??
Him: I’ll see if I have time
2 hours later...
Him: Lets put in some time for handover so you can understand the process. Is an hour long enough?
Me: I don’t know, you tell me, it’s your process, you know what’s involved and how long it should take to explain
Him: well is an hour long enough?
Me: I don’t know, it takes however long it takes you to explain it
Him: I’m asking you
...........
At this point I’m getting more and more angry, how can you not know how long your process is gonna take to explain when you’re the one that wrote it?! I fully well know that it’s gonna take longer than an hour because it’s an SSIS package that looks like a plate of spaghetti, you spend 15 minutes working out what box flows to where before even looking at any SQL, and he’s still asking me how long it’s gonna take and distracting me from my ACTUAL critical work
Man is a waste of space, so quick to give you work that isn’t his but never takes responsibility for his own... honestly have no clue whatsoever how he became a manager....
This rant doesn’t seem like much reading it back but I swear it’s the last in a looooonnngggg like of his fuck ups that other people have had to deal with 🙄🙄3 -
"four million dollars"
TL;DR. Seriously, It's way too long.
That's all the management really cares about, apparently.
It all started when there were heated, war faced discussions with a major client this weekend (coonts, I tell ye) and it was decided that a stupid, out of context customisation POC had that was hacked together by the "customisation and delivery " (they know to do neither) team needed to be merged with the product (a hot, lumpy cluster fuck, made in a technology so old that even the great creators (namely Goo-fucking-gle) decided that it was their worst mistake ever and stopped supporting it (or even considering its existence at this point)).
Today morning, I my manager calls me and announces that I'm the lucky fuck who gets to do this shit.
Now being the defacto got admin to our team (after the last lead left, I was the only one with adequate experience), I suggested to my manager "boss, here's a light bulb. Why don't we just create a new branch for the fuckers and ask them to merge their shite with our shite and then all we'll have to do it build the mixed up shite to create an even smellier pile of shite and feed it to the customer".
"I agree with you mahaDev (when haven't you said that, coont), but the thing is <insert random manger talk here> so we're the ones who'll have to do it (again, when haven't you said that, coont)"
I said fine. Send me the details. He forwarded me a mail, which contained context not amounting to half a syllable of the word "context". I pinged the guy who developed the hack. He gave me nothing but a link to his code repo. I said give me details. He simply said "I've sent the repo details, what else do you require?"
1st motherfucker.
Dafuq? Dude, gimme some spice. Dafuq you done? Dafuq libraries you used? Dafuq APIs you used? Where Dafuq did you get this old ass checkout on which you've made these changes? AND DAFUQ IS THIS TOOL SUPPOSED TO DO AND HOW DOES IT AFFECT MY PRODUCT?
Anyway, since I didn't get a lot of info, I set about trying to just merge the code blindly and fix all conflicts, assuming that no new libraries/APIs have been used and the code is compatible with our master code base.
Enter delivery head. 2nd motherfucker.
This coont neither has technical knowledge nor the common sense to ask someone who knows his shit to help out with the technical stuff.
I find out that this was the half assed moron who agreed to a 3 day timeline (and our build takes around 13 hours to complete, end to end). Because fuck testing. They validated the their tool, we've tested our product. There's no way it can fail when we make a hybrid cocktail that will make the elephants foot look like a frikkin mojito!
Anywho, he comes by every half-mother fucking-hour and asks whether the build has been triggered.
Bitch. I have no clue what is going on and your people apparently don't have the time to give a fuck. How in the world do you expect me to finish this in 5 minutes?
Anyway, after I compile for the first time after merging, I see enough compilations to last a frikkin life time. I kid you not, I scrolled for a complete minute before reaching the last one.
Again, my assumption was that there are no library or dependency changes, neither did I know the fact that the dude implemented using completely different libraries altogether in some places.
Now I know it's my fault for not checking myself, but I was already having a bad day.
I then proceeded to have a little tantrum. In the middle of the floor, because I DIDN'T HAVE A CLUE WHAT CHANGES WERE MADE AND NOBODY CARED ENOUGH TO GIVE A FUCKING FUCK ABOUT THE DAMN FUCK.
Lo and behold, everyone's at my service now. I get all things clarified, takes around an hour and a half of my time (could have been done in 20 minutes had someone given me the complete info) to find out all I need to know and proceed to remove all compilation problems.
Hurrah. In my frustration, I forgot to push some changes, and because of some weird shit in our build framework, the build failed in Jenkins. Multiple times. Even though the exact same code was working on my local setup (cliche, I know).
In any case, it was sometime during sorting out this mess did I come to know that the reason why the 2nd motherfucker accepted the 3 day deadline was because the total bill being slapped to the customer is four fucking million USD.
Greed. Wow. The fucker just sacrificed everyone's day and night (his team and the next) for 4mil. And my manager and director agreed. Four fucking million dollars. I don't get to see a penny of it, I work for peanut shells, for 15 hours, you'll get bonuses and commissions, the fucking junior Dev earns more than me, but my manager says I'm the MVP of the team, all I get is a thanks and a bad rating for this hike cycle.
4mil usd, I learnt today, is enough to make you lick the smelly, hairy balls of a Neanderthal even though the money isn't truly yours.4 -
sooooooooo for my current graduate class we were to use the MVC pattern to build an IOS application(they preferred it if we did an IOS application) or if you didn't have an Apple computer: an Android application.
The thing is, they specified to use Java, while in their lectures and demos they made a lot of points for other technologies, hybrid technologies, such as React Cordova, all that shit, they even mentioned React Native and more. But not one single mention of Kotlin. Last time I tried my hand at Android development was way before Kotlin, it was actually my first major development job: Mobile development, for which we used Obj C on the IOS part and well, Java on the Android part.
As some of you might now, I rarely have something bad to say about a tech stack(except for VBA which I despise, but I digress) and I love and use Java at work. But the Android API has always seem unnecessarily complex for my taste, because of that, when I was working as a mobile development I dreaded every single minute in which I had to code for Android, Google had a great way to make people despise Java through their Android API. I am not saying it is shit, I am not saying it is bad, I just-dont-like-it.
Kotlin, proves a superior choice in my humble opinion for Android development, and because the language is for retards, it was fairly easy for me to pick it up in about 2 hours. I was already redesigning some of my largest Spring applications using half the code and implemented about 80% of the application's functionality in less than 3 hours(login, fragment manipulation, permissions, bla bla) and by that time I started to wonder if the app built on Kotlin would be ok. And why not? If they specifically mentioned and demonstrated examples using Swift, then surely Kotlin would be fine no? Between Kotlin and Java it is easy to see that kotlin is more similar to Swift than Java. So I sent an email. Their response: "I am sorry, but we would much rather you stick with the official implementations for Android, which in this case is Java for the development of the application"
I was like 0.o wat? So I replied back sending links and documentation where Google touted Kotlin as the new and preferred way to develop Android applications, not as a second class citizen of the platform, but as THE preferred stack. Same response.
Eventually one of the instructors reflected long enough on it to say that it was fine if I developed the application in Kotlin, but they advised me that since they already had grading criteria for the Java program I had to redo it in Java. It did not took me long really, once I was finished with the Kotlin application I basically rewrote only a couple of things into Java.
The end result? I think that for Android I still greatly prefer Kotlin. Even though I am not the biggest fan of Kotlin for anything else, or as my preferred language in the JVM.
I just.......wish....they would have said something along the lines of: "Nah fam please rewrite that shit for Java since we don't have grading criterias in place for Kotlin, sorry bruh, 10/10 gg tho" instead of them getting into an email battle with me concerning Kotlin being or not being the language to use in Android. It made me feel that they effectively had no clue what they were talking about and as such not really capable of taking care of students on a graduate level program.
Made me feel dirty.12 -
Warning: pretty sad thoughts. If you're having a blast of a day, please skip. It's for your own good.
That feeling when you finish watching a piece of art. Be it a film or anime or anything. You're confused why you feel good, but at the same time you're hurt. You smile but the pain is still there when you reflect on the feelings and the experiences you had and you realise that none of it will ever happen again. No art or any of the past will happen again exactly the same way how you felt and experienced.
You think of the best friend you once had. Think of the girl you held hands with and time stopped. The first time you embraced her and knew you loved her more than anything, even if she didn't know your feelings. Think of your first kiss. Your first serious relationship. The last time you saw your parents, your wife, your children, family.
Now look at the perspective of the future and the past you: blissfully ignoring the certain end to all experiences until they all abruptly end reminding you of this and it hurts. Damn it hurts.
I will never be able to see me best friend again, nor will I ever be able to hold hands with her either. First time I kissed is now long gone. It's almost like you wish you were aware of how valuable and important the experience was and to not just throw it away like the last time and the several times before that. But the sad part is, you don't know which experience will make you realise how much you missed it.
But even if you do realise by placing yourself in the place of your future self, and you cherish the experience, you blame yourself because you could have either avoided it's end or did something better.
Like your break up: could it be fixed? Was it worth the little time you have on this plante?
Like your friends argument you had: could you have done better? Could you have stopped it?
Like your parent's death: could you have been a better son to your now overworked dying mum? Could you see how hard they tried even though you thought they were total dicks?
Now you realise that literally anything you do, you will have a problem with somewhere down the line. You're destined to be sad shattered and broken by every day that is tragedy.
But it's similar to art. After all, your life is a piece of art about how you died. Which is why you smile and enjoy the last second of the experience which you just had. That chest warming feeling will only last a little. You smile through pain, yet you realise its not the end.
Then again, its just my thoughts that i need to vent. Take it with a pinch of salt.8 -
Consumers ruined software development and we the developers have little to no chance of changing it.
Recently I read a great blog post by someone called Nikita, the blog post talks mostly about the lack of efficiency and waste of resources modern software has and even tho I agree with the sentiment I don't agree with some things.
First of all the way the author compares software engineering to mechanical, civil and aeroespacial engineering is flawed, why? Because they all directly impact the average consumer more than laggy chrome.
Do you know why car engines have reached such high efficiency numbers? Gas prices keep increasing, why is building a skyscraper better, cheaper and safer than before? Consumers want cheaper and safer buildings, why are airplanes so carefully engineered? Consumers want safer and cheaper flights.
Wanna know what the average software consumer wants? Shiny "beautiful" software that is either dirt ship or free and does what it needs to. The difference between our end product is that average consumers DON'T see the end product, they just experience the light, intuitive experience we are demanded to provide! It's not for nothing that the stereotype of "wizard" still exists, for the average folk magic and electricity makes their devices function and we are to blame, we did our jobs TOO well!
Don't get me wrong, I am about to become a software engineer and efficient, elegant, quality code is the second best eye candy next to a 21yo LA model. BUT dirt cheap software doesn't mean quality software, software developed in a hurry is not quality software and that's what douchebag bosses and consumers demand! They want it cheap, they want it shiny and they wanted it yesterday!
Just look at where the actual effort is going, devs focus on delivering half baked solutions on time just to "harden" the software later and I don't blame them, complete, quality, efficient solutions take time and effort and that costs money, money companies and users don't want to invest most of the time. Who gets to worry about efficiency and ms speed gains? Big ass companies where every second counts because it directly affects their bottom line.
People don't give a shit and it sucks but they forfeit the right to complain the moment they start screaming about the buttons not glaring when hovered upon rather than the 60sec bootup, actual efforts to make quality software are made on people's own time or time critical projects.
You put up a nice example with the python tweet snippet, you have a python script that runs everyday and takes 1.6 seconds, what if I told you I'll pay you 50 cents for you to translate it to Rust and it takes you 6 hours or better what if you do it for free?
The answer to that sort of questions is given every day when "enganeers" across the lake claim to make you an Uber app for 100 bucks in 5 days, people just don't care, we do and that's why developers often end up with the fancy stuff and creating startups from the ground up, they put in the effort and they are compensated for it.
I agree things will get better, things are getting better and we are working to make programs and systems more efficient (specially in the Open Source community or high end Tech companies) but unless consumers and university teachers change their mindset not much can be done about the regular folk.
For now my mother doesn't care if her Android phone takes too much time to turn on as long as it runs Candy Crush just fine. On my part I'll keep programming the best I can, optimizing the best I can for my own projects and others because that's just how I roll, but if I'm hungry I won't hesitate to give you the performance you pay for.
Source:
http://tonsky.me/blog/...13 -
long time ago....
Feature request: We want an android backup solution in Our app!
UI guy has already developed it, you just need to see if his solution is solid!
Ok then - lets look at the UI: Nice progress bars, that turn into green checkmarks. Looks good.
Now lets look at the code: ... Ok. loading some files into memory.... and... dafuq? does not write to a file?
Backup to RAM. With no restore. 🤦♂️.3 -
After long time logged into windows desktop and dared to open internet explorer then I seen option
"What's New in Internet Explorer 8"
So I thought let's see what's new in IE8
When I clicked on that option, suddenly my CPU fan stopped working.
There was no connection between them,
But what a coincidence!
F***U IE:D2 -
Hello, world!
Soo.. I am half way done with Pre-Release 10!
Woohoo!
However.. The update log is already as long as the full update log for the last update.. Which was twice as long as the log for the update before..
I'm Starting to notice a pattern.. XD
This is all good and well, but I feel as if I'm overworking myself. I'm getting stressed out, and I'm not spending near as much time with my girlfriend. 3: But, I'm having fun. I'm genuinely enjoying myself, and I'm making a ton of progress in such a short amount of time. I also have a new team member!
Idk.. I haven't done anything the past two days really. Work nor spending time with my girlfriend. I'm stressed, and I'm not sure what I should do. I'm sooper modivated to keep working, but I feel that my situation will only get worse.
---
Because I'm sure some of you will be interested ('cause my game is very popular in this community <3), here is the update list so-far. Do note that this is not the final list, and things will be added, and may be removed.
As you can see below, this update is mostly focussed around API's. Specifically Modding, and the new FileSystem. On top of this, I will *try* and tinker with the official Patreon API for Java and see if I can't intergrate that into my game. I'll also work on a ModManager, but I'm not sure if either of these will make it into this release. I also have plans for new Apps and Commands for this release, as well as working and polishing up existing Apps and Commands.
---
* Closing the game with X button (and other ways) now also calls preExitTasks()
+ Added AddonLoader. It's literally a Mod-Loader. (Your welcome :3) A tutorial coming soon, but just know that it's standard Java codeing and you simply need to drop the mod.jar into the game's addons/ directory.
++ Added "API" - This is a bunch of methods that are added for the Mods to use. These Methods likely wouldn't of been added othewise.
+ Added in-game FileSystems (Folder, files..)
++ Added FileNavigator API for traversing the in-game FileSystems
* Fixed a major bug with the "debug" command where you could no longer run any commands after enabling debug mode.
+ Added GameSave creation
+ Added System creation
+ New Save + localsystem are generated on startup
++ Added WindowBuilder API for creating Apps. This makes creating Apps much, much simpler, and is intended for not only us, but use in Mods.
* We re-wrote the Console Class from scratch, and turned it into an API for creating custom Terminal Apps. (Commands are now created using the Command Class and are then passed to Console and registered as either a Local or Global command)
++ Added Command API for creating commands. These commands execute Java code, much like a JavaFX Button would, on each call. You also get everything after the first [space] of the command that was passed, as a String.
* Re-wrote ALL previously implimented Apps.
* Re-wrote ALL previously implimented Commands.
+ Added "debugtest" command to test debug mode. (This just prints a totally boring random message, and you shouldn't try it.) [Note: This "command will not exist" when debug mode is false.]
+ Added "cd" command. ("cd ~" "cd .." "cd /home/folder" "cd etc" "cd /")
+ Added "cat" command. ("cat file" "cat /folder/file")
+ Added "mkdir" command.
+ Added "rm" command.
+ Added "dir" command.
If you're new and you have no clue what I'm talking about, here's the info page: https://trello.com/b/0bH2SjQf1 -
my mum just sent me a picture of her and my long time no see cousin from US over WhatsApp. Short time after that, Facebook sent me a friend proposal of a girl from US I don't know - obviously it was my cousins girlfriend because she had a profile picture with him. My cousin doesn't have Facebook.
WTF?!
so what Facebook did must have been some face analysis of the picture my mum sent me over WhatsApp and compared my cousins face with profile pictures from friends of my friends to send me the proposal I got.
this is so fucking scary! I immediately thought of @linuxxx security blog and how my usage of such software affects the privacy of others besides me being transparent as fuck.
Definitely have to rethink my software choices and app/online behaviour!11 -
You may remember a super long time ago I double-buffered the Windows cmd.exe using c++
tl;dr, here it is in c!
Anyways, I was still learning c++ back then. It wasn't my first project in c++ but it was close and I ran into a lot of issues. The thing worked... but only if you didn't touch it.
Here's the same project (With a lot less bells'n'whistles) written in c. I used a different approach this time, and other than my function naming convention (Which, I honestly don't even know if it's bad or not!), I think this is some pretty solid code!
In the image you see the header file (I used as a summary of the code) and then three x's in a terminal. To do this, the code:
-Creates a ConsoleScreenBuffer handle
-Creates two CHAR_INFO buffers for drawing & displaying
-Draws three x's to the draw buffer
-Copies the draw buffer to the display buffer
-Copies the display buffer to the ConsoleScreenBuffer handle
I'm thinking about cutting out the middle man and removing the display buffer (which holds what is currently displayed) but I think it may actually be useful, and I don't know.
Anyways, I have no friends that understand this stuff so that's why it's here. Cheers.3 -
Hi everyone
cozyplanes here
Long time no see
If you remember me, please leave a comment
I miss this place a lot.
I am active on twitter and Instagram with the same name
Hang along with me there if you are interested
Thanks (will have some sleep and will be back tomorrow morning)23 -
Today I'm ranting about Windows. No, it's not "WiNdOwS sUcKs!", it's more like "But why!?"
See, I'm an IT guy for the year, and in my office they use Windows. Now once upon a time, they had Active Directory and all that (well, actually, they still do) but then they got some new computers running Windows 10, and for some reason they just couldn't join them to the domain!
Why can't they, you ask? Well, Microsoft only allows Win 10 Pro and up to join a Domain, and since these computers came with Win 10 Home, that wasn't possible.
Long story short, I now have some 30 computers that need to be upgraded (possibly from 7) to Win 10 Pro, and joined to the Domain.
Thing is, I would like to do that all in one go, so I look into how to automatically setup Windows.
"Ah! Got it, provisioning packages!"
Lest you think they work let me spare you now: they don't. Just like real computers where everything is different, provisioning packages failed to work twice, and after wasting about a week trying to make it work, I gave up.
So now I realized that I need to try a different method, a custom windows image. Issue is, I've got no clue how to make one. See, microsoft decided to go all in on the provisioning packages thing (they do have advantages in certain use cases), and seemed to decide that making custom images was no longer necessary, so they documentation was nearly impossible to find.
But after a lot of searching, I figured out how to do it:
1. Install Windows in a VM.
2. Put it in audit mode.
3. Install your stuff.
4. Create an unattend.xml file with certain customizations.
5. Put the unattend in Windows\System32\Sysprep
6. Generalize the image.
7. Boot WinPE.
8. Open the console.
9. Capture the image.
10. Wait an hour or two.
11. Done!
I'm over simplifying, it was a huge PITA, and yet there were still issues.
Maybe another time I'll talk about those.22 -
I lurk here on occasion. Quite frequently in fact. It's honesty been years and I've grown up with the community. I'm glad to still see old faces here but many of the ones that I used to see are long gone. Man - it's so different.
It's not the same anymore. There's no longer any gangs or clans or anything. It was really fun.
Another thing I specifically miss when @dfox was actually around. Actually replying to people most of the time. Lately, there just hasn't been any trace of him that I've seen. He comments on averages 2-3 times a month lately, and he used to comment a lot more on average years ago. But I don't blame him. I'm the same.
Everything about this feels wrong and off. I used to love this but now i just don't.
I'm going to formally say goodbye to everyone here. And to the OG peeps, I love ya all, you know who you are.
Byes.13 -
Long time no see devRant! Its been a long time since I have been active in this community but I am proud to say in my current job, for the first time, i am being paid to program! A wonderful feeling1
-
So, this is probably somewhat esoteric but...
While studying at university I had a "programming paradigms" module, dunno why they called it that, it was more like "introduction to functional programming".
So, it's kinda mind bending, we'd only really started to get our heads around classical object oriented programming and they throw functional programming at us.
It's worse than that though, for do they use an established language, like lisp/scheme, functional Python, or even given Haskell?
No, of course they didn't. They taught us Oz.
You probably won't have heard of it, but this language is burned into the back of my brain, along with a vague understanding of the n-queens problem we had to solve graphically (using qTk, which I dunno if someone took qt and tk and blended them, I stopped asking questions after a while).
To top it off did this language (at the time) have a stand alone interpreter? Did it buggery! It was coupled to the Mozart programming system, which is just Emacs (which has a bloody lisp built into it,so close, yet so far 😭).
It gets worse, though, oh does it get worse, for pause dear reader and consider, have you ever heard of Mozart/oz before, I'd put money on most of you had not heard of it until today.
For, you see, I believe at the time of writing, one, yes, ONE text book exists on this language. When I was doing my assignment there was merely some published conference notes and language design documents.
That's not all, I was not the only one experiencing difficulties with this language, someone in the class ended up pouring through the mailing lists and found the very tutor teaching the class struggling at first to understand the language.
I had to repeat that year. The functional programming class was one semester.
When I retook that year, it was a whole year long. However, halfway through the year, original tutor was fired and a new tutor was hired to teach the language.
He was, understandably, just as confused as we were.
There was a Starbucks and a pub equidistant from the lecture hall, though in opposite directions. From lecture to lecture we had no idea which one we'd end up in.
I have reason to believe Mozart/Oz it some sort of otherworldly abomination designed to give students the occasional nightmare flashback, long after they've left.
My room had post it notes, sheets of paper, print outs, diagrams, doodles and pens, just stuck to the wall, I looked like a raving lunatic three hours away from being institutionalised. There was string connecting one diagram to the next and images of a chess queen all over. As I attempted to solve the n-queens problem.
Madmans knowledge, I call it. I can never unlearn all that, in fact it seeps into much of the code I write. Such information was not meant for the minds of a simple country bumpkin such as myself...
Mozart/Oz... I wouldn't be the programmer I am today without it, and that's frankly terrifying...10 -
I had spent the last year working on a online store power by woocommerce with over 100k products from various suppliers. This online store utilized a custom API that would take the various formats that suppliers offer their inventory in and made them consistent. Now everything was going swimmingly initially, but then I began adding more and more products using a plug-in called WP all import. I reached around 100k products and the site would take up to an entire minute to load sometimes timing out. I got desperate so I installed several caching plugins, but to no avail this did not help me. The site was originally only supposed to take three to four months but ended up taking an entire year. Then, just yesterday I found out what went wrong and why this woocommerce website with all of these optimizations was still taking anywhere from 60 to 90 seconds to load, or just timing out entirely. I had initially thought that I needed a beefier server so I moved it to a high CPU digitalocean VM. While this did help a little bit, the site was still very slow and now I had very high CPU usage RAM usage and high disk IO. I was seriously stumped the Apache process was using a high amount of CPU and IO along with MYSQL as well. It wasn't until I started digging deeper into the database that I actually found out what the issue was. As I was loading the site I would run 'show process list' in the SQL terminal, I began to notice a very significant load time for one of the tables, so I went to go and check it out. What I did was I ran a select all query on that particular table just to see how full it was and SQL returned a error saying that I had exceeded the maximum packet size. So I was like okay what the fuck...
So I exited my SQL and re-entered it this time with a higher packet size. I ran a query that would count how many rows were in this particular table and the number came out to being in the millions. I was surprised, and what's worse is that this table belong to a plugin that I had attempted to use early in the development process to cache the site. The plugin was deactivated but apparently it had left PHP files within the wp content directory outside of the actual plugin directory, so it's still executing scripts even though the plugin itself was disabled. Basically every time I would change anything on the site, it would recache the whole thing, and it didn't delete any old records. So 100k+ products caching on saves with no garbage collection... You do the math, it's gonna be a heavy ass database. Not only that but it was serialized data, so when it did pull this metric shit ton of spaghetti from the database, PHP then had to deserialize it. Hence the high ass CPU load. I had caching enabled on the MySQL end of things so that ate the ram. I was really desperate to get this thing running.
Honest to God the main reason why this website took so long was because the load times made it miserable to work on. I just thought that the hardware that I had the site on was inadequate. I had initially started the development on a small Linux VM which apparently wasn't enough, which is why I moved it to digitalocean which also seemed to not be enough, so from there I moved to a dedicated server which still didn't seem to be enough. I was probably a few more 60-second wait times or timeouts from recommending a server cluster to my client who I know would not be willing to purchase it. The client who I promised this site to have completed in 3 months and has waited a year. Seriously, I would tell people the struggles that I would go through with this particular site and they would just tell me to just drop the site; just take the money, just take the loss. I refused to, this was really the only thing that was kicking my ass. I present myself as this high-and-mighty developer like I'm just really good at what I do but then I have this WordPress site that's just beating the shit out of me for a year. It was a very big learning experience and it was also very humbling as well, it made me realize that I really don't know as much as I think I might. It was evidence that there is still so much more to learn out there, I did learn a lot from that experience especially about optimizing websites the different types of methods to do that particular lonely on the server side and I'll be able to utilize this knowledge in the future.
I guess the moral of the story is, never really give up. Ultimately things might get so bad that you're running on hopes and dreams. Those experiences are generally the most humbling. Now I can finally present the site that I am basically a year late on to the client who will be so happy that I did not give up on the project entirely. I'll have experienced this feeling of pure euphoria, and help the small business significantly grow their revenue. Helping others is very fulfilling for me, even at my own expense.
Anyways, gonna stop ranting. Running out of characters. If you're still here... Ty for reading :')7 -
And once again, Spotify just leaves me speechless.
I guess I don't actually need to talk about this clusterfuck of a mobile app getting more and more slow and unstable with every update. So let's talk about something else.
When I cracked the first limit, I thought it had to be a joke. 9.999 songs can be downloaded at once. But not all on one device. You can download 3.333 songs each to three separate devices - regardless of the fact that there is more than enough space left on the device and you are not even using any other device.
When I read this one [-> https://goo.gl/43YwKm ], I really got angry:
"If you move, or enter the wrong details, you need to create a new account (make sure you cancel the plan on your old account beforehand, and sign out everywhere) and subscribe to Premium for Family on that new account."
I don't even know how to respond to this except with insane wrath.
So now I cracked the next one. My library is full. The maximum number of songs that can be stored in the library is 10.000 and not one more.
If they wanted more money for the additional ressources, I'd even understand that. Yes, the suggestion calculations become more expensive, I do know that. And I would even pay for that. But there is no such option.
Instead, the company is making the most customer hostile decisions I could imagine.
Even though the competition proves that a multiple of such a limit is not a problem at all (Google Music: 50.000 songs / Apple Music: 100.000 songs).
And you have to create a new account when you move? That's hard to beat for impudence, especially wigh regard of the fact that no migration service is provided, so a person like me would spend a long time transferring all the stored music and playlists.
I'm not even sure it's complying with European law not to be able to see your address online, let alone change it.
And all of that because they know they can afford it anyway, since although the competition is a lot better on that score, they simply can't keep up in the matter of spectrum and algorithms.
And if I can only take 70% of my music with me when I change the service, I can just as well delete 3.000 songs from my library and stay with Spotify.
What a fucking wreck. I really don't get it.8 -
This day I have received the most glorious news in e-pistolary form. For some years, I was suffering in support of a client who was, well, insufferable. My presence there paralleled the divine comedy in both essence and fact.
I opened the missive, expecting another plea to bail them out of whatever clusterfuck they found themselves in. Instead, what I found was something truly magical.
"Hey Human,
I hope this finds you well. I'm not sure if you remember a few years back, we were trying to decide between IBM Cloud and AWS. Well, after years of battling FF*, we're finally moving ahead with AWS. He failed one too many times to deliver anything visibly. After you left, there was no one left he could use to steal credit, ideas, and work.
FF is still pushing to have them use IBM cloud as a "warm backup" in the event "AWS fails." We will see where that goes.
I figured you'd like to know; you were the void in the wilderness for a long time. I don't want to think about how much time we could have saved if we had just listened.
PeeEm**"
This event represents a personal victory, albeit belated, over a few peoples' absurd amount of privilege. Towards the end, I was vicious about my contestation to the insanity of adopting a desperate hedge attempt-as-cloud offering from a failing company. Some examples:
// cloud 'strategy meeting'
Moi: What cloud platform are we looking at using?
FF: We're looking at IBM cloud and AWS as a second.
Moi: Why is that? I understand you're obligated to rep your offering first, but that decision doesn't seem to have the customer's best interest at heart.
FF: IBM cloud is a market leader; AWS isn't as good.
Moi: I see. I mean, that's the tech equivalent of the company's fleet management considering monkeys on tricycles as a strong competitor to service trucks, but I get what you mean.
// steering meeting
Director: Who can we look to as an example? Who is currently using the IBM cloud?
Moi: No one; they account for a single-digit portion of the actual cloud market. Their long game to sell you a "Hybrid Cloud," which means put some front end payload in a CDN, and buy n-frame units of IBM z servers for the DC with IBM gateway appliances acting as connective tissue. So it's not the cloud at all, really.
Director: How does it compare in cost?
Moi: It's generally 40% more expensive than other clouds, and it only goes higher as you option their software.
Director: What about Watson? I hear Watson is good?
Moi: It's a brand name. Most of the "Watson" product is just a facade on top of FOSS products like Spark, Hadoop, Elasticsearch, etc.
Director: Those were words. They sounded good. FF say it's good tho so we'll believe him because we're from the same city.
Moi: *deletes Director from LinkedIn*
Moral of the story: Never trust a vendor that only recommends their products.
*FF = FatFuck - an embarrassingly rotund individual whose girth is roughly equivalent to his height. He shit his way into an IBM architect position in his mid-20s purely due to winning the visa lottery. He had fake hair glued to his head for his wedding to hide his male pattern baldness; his arrange-married wife undoubtedly cries herself to sleep after sex.
**PeeEm - the then project manager, now portfolio manager of some satellite projects. An overall decent human being, capable.9 -
Static HTML pages are better than "web apps".
Static HTML pages are more lightweight and destroy "web apps" in performance, and also have superior compatibility. I see pretty much no benefit in a "web app" over a static HTML page. "Web apps" appear like an overhyped trend that is empty inside.
During my web browsing experience, static HTML pages have consistently loaded faster and more reliably, since the browser is immediately served with content useful for consumption, whereas on JavaScript-based web "apps", the useful content comes in **last**, after the browser has worked its way through a pile of script.
For example, an average-sized Wikipedia article (30 KB wikitext) appears on screen in roughly two seconds, since MediaWiki uses static HTML. Everipedia, in comparison, is a ReactJS app. Guess how long that one needs. Upwards of three times as long!
Making a page JavaScript-based also makes it fragile. If an exception occurs in the JavaScript, the user might end up with a blank page or an endless splash screen, whereas static HTML-based pages still show useful content.
The legacy (2014-2020) HTML-based Twitter.com loaded a user profile in under four seconds. The new react-based web app not only takes twice as long, but sometimes fails to load at all, showing the error "Oops something went wrong! But don't fret – it's not your fault." to be displayed. This could not happen on a static HTML page.
The new JavaScript-based "polymer" YouTube front end that is default since August 2017 also loads slower. While the earlier HTML-based one was already playing the video, the new one has just reached its oh-so-fancy skeleton screen.
It would once have been unthinkable to have a website that does not work at all without JavaScript, but now, pretty much all popular social media sites are JavaScript-dependent. The last time one could view Twitter without JavaScript and tweet from devices with non-sophisticated browsers like Nintendo 3DS was December 2020, when they got rid of the lightweight "M2" mobile website.
Sometimes, web developers break a site in older browser versions by using a JavaScript feature that they do not support, or using a dependency (like Plyr.js) that breaks the site. Static HTML is immune against this failure.
Static HTML pages also let users maximize speed and battery life by deactivating JavaScript. This obviously will disable more sophisticated site features, but the core part, the text, is ready for consumption.
Not to mention, single-page sites and fancy animations can be implemented with JavaScript on top of static HTML, as GitHub.com and the 2018 Reddit redesign do, and Twitter's 2014-2020 desktop front end did.
From the beginning, JavaScript was intended as a tool to complement, not to replace HTML and CSS. It appears to me that the sole "benefit" of having a "web app" is that it appears slightly more "modern" and distinguished from classic web sites due to use of splash screens and lack of the browser's loading animation when navigating, while having oh-so-fancy loading animations and skeleton screens inside the website. Sorry, I prefer seeing content quickly over the app-like appearance of fancy loading screens.
Arguably, another supposed benefit of "web apps" is that there is no blank page when navigating between pages, but in pretty much all major browsers of the last five years, the last page observably remains on screen until the next navigated page is rendered sufficiently for viewing. This is also known as "paint holding".
On any site, whenever I am greeted with content, I feel pleased. Whenever I am greeted with a loading animation, splash screen, or skeleton screen, be it ever so fancy (e.g. fading in an out, moving gradient waves), I think "do they really believe they make me like their site more due to their fancy loading screens?! I am not here for the loading screens!".
To make a page dependent on JavaScript and sacrifice lots of performance for a slight visual benefit does not seem worthed it.
Quote:
> "Yeah, but I'm building a webapp, not a website" - I hear this a lot and it isn't an excuse. I challenge you to define the difference between a webapp and a website that isn't just a vague list of best practices that "apps" are for some reason allowed to disregard. Jeremy Keith makes this point brilliantly.
>
> For example, is Wikipedia an app? What about when I edit an article? What about when I search for an article?
>
> Whether you label your web page as a "site", "app", "microsite", whatever, it doesn't make it exempt from accessibility, performance, browser support and so on.
>
> If you need to excuse yourself from progressive enhancement, you need a better excuse.
– Jake Archibald, 20139 -
At work, my closest relation is with the DBA. Dude is a genius when it comes to proper database management as well as having a very high level of understanding concerning server administration, how he got that good at that I have no clue, he just says that he likes to fuck around with servers, Linux in particular although he also knows a lot about Windows servers.
Thing is, the dude used to work as a dev way back when VB pre VB.NET was all the rage and has been generating different small tools for his team of analysts(I used to be a part of his team) to use with only him maintaining them. He mentioned how he did not like how Microsoft just said fk u to VB6 developers, but that he was happy as long as he could use VB. He relearned how to do most of the GUI stuff he was used to do with VB6 into VB.NEt and all was good with the world. I have seen his code, proper OOP practices and architectural decisions, etc etc. Nothing to complain about his code, seems easy enough to extend, properly documented as well.
Then he got with me in order to figure out how to breach the gap between building GUI applications into web form, so that we could just host those apps in one of our servers and his users go from there, boy was he not prepared to see the amount of fuckery that we do in the web development world. Last time my dude touched web development there was still Classic ASP with JScript and VBScript(we actually had the same employer at one point in the past in which I had to deal with said technology, not bad, but definitely not something I recommend for the current state of web development) and decided that the closest thing to what he was used was either PHP(which he did not enjoy, no problem with that really, he just didn't click with the language) and WebForms using VB.NET, which he also did not like on account of them basically being on support mode since Microsoft is really pushing for people to adopt dotnet core.
After came ASP.NET with MVC, now, he did like it, but still had that lil bug in his head that told him that sticking to core was probably a better idea since he was just starting, why not start with the newest and greatest? Then in hit(both of us actually) that to this day Microsoft still not has command line templates for building web applications in .net core using VB.NET. I thought it was weird, so I decided to look into. Turns out, that without using Razor, you can actually build Web APIs with VB.NET just fine if you just convert a C# template into VB.NET, the process was...err....tricky, and not something we would want to do for other projects, with that in we decided to look into Microsoft's reasons to not have VB.NET. We discovered how Microsoft is not keeping the same language features between both languages, having crown C# as the language of choice for everything Microsoft, to this point, it seems that Microsoft was much more focused in developing features for the excellent F# way more than it ever had for VB.NET at this point and that it was not a major strategy for them to adapt most of the .net core functionality inside of VB, we found articles when the very same Microsoft team stated of how they will be slowly adding the required support for VB and that on version 5 we would definitely have proper support for VB.NET ALTHOUGH they will not be adding any new development into the language.
Past experience with Microsoft seems to point at them getting more and more ready to completely drop the language, it does not matter how many people use it, they would still kill it :P I personally would rather keep it, or open source the language's features so that people can keep adding support to it(if they can of course) because of its historical significance rather than them just completely dropping the language. I prefer using C#, and most of my .net core applications use C#, its very similar to Java on a lot of things(although very much different in others) and I am fine with it being the main language. I just think that it sucks to leave such a large developer pool in the shadows with their preferred tool of choice and force them to use something else just like that.
My boy is currently looking at how I developed a sample api with validation, user management, mediatR and a custom project structure as well as a client side application using React and typescript swappable with another one built using Angular(i wanted to test the differences to see which one I prefer, React with Typescript is beautiful, would not want to use it without it) and he is hating every minute of it on account of how complex frontend development has become :V
Just wanted to vent a little about a non bothersome situation.6 -
Dear router
It was nice having you in my house, but it's come to the point where our ways part. I must go on and you must be recycled. You've served me well all those 7 years, my friend.
It's not me, it's you. You've grown old and unreliable. Your capacitors must have dried out and can no longer serve reliable wifi connections. I keep on getting lost ICMP packets and connection outages altogether. While these things could happen to any router, definitely not every router has a 13-16 second long wifi outage every minute. I cannot have 2 peoples' work depend on a wifi connection where a ping to a LAN IP takes 58204ms. I just.. can't. You've become a liability to my family.
I'm pissed, because I cannot afford video calls with my colleagues.
I'm pissed, because my wife spends good 5 minutes every call asking "can you hear me? how about now?" and repeating herself over and over.
I'm pissed, because I can no longer watch Netflix or listen to YT Music uninterrupted by network outages.
I'm pissed, because my Cinnamon plugins freeze my UI, waiting for network response
But most of all I'm pissed, because I was disconnected from BeatSaber multiplayer server when I scored a Full Combo in Expert "Camellia: Ghost" - right before I got a chance to see my score.
I gave you 2 second chances by factory-resetting you. I admit you got better. And then got back to terrible again.
I can no longer rely on you. It's time to say our goodbies and part our ways.
P.S. as a proof of your unreliability I'm attaching outputs of ping to a LAN IP and pingloss to the same IP (pingloss: https://gitlab.com/-/snippets/...)3 -
Project manager, who i've complained in the past is neglecting critical things that he doesn't want to do, decided today to cancel our weekly planning meeting, to have the below conversation with me 1:1. Its very long, but anyone who has the will to get through it ... please tell me it's not just me. I'm so bewildered and angry.
Side note: His solution to the planning meeting not taking place ... to just not have one and asked everyone to figure it out themselves offline, with no guidance on priorities.
Conversation:
PM: I need to talk to you about some of phrasing you use during collaboration. It's coming across slightly offensive, or angry or something like that.
Me: ok, can you give me an example?
PM: The ticket I opened yesterday, where you closed it with a comment something along the lines of "as discussed several times before, this is an issue with library X, can't be fixed until Y ...".
"As discussed several times" comes across aggressive.
Me: Ok, fair enough, I get quite frustrated when we are under a crunch, working long hours, and I have to keep debugging or responding to the same tickets over and over. I mean, like we do need to solve this problem, I don't think its fair that we just keep ignoring this.
PM: See this is the problem, you never told me.
Me: ... told you what?
PM: That this is a known issue and not to test it.
Me: ..... i'm sorry ..... I did, that was the comment, this is the 4th ticket i've closed about it.
PM: Right but when you sent me this app, you never said "don't test this".
Me: But I told you that, the last 3 times that it won't be in until feature X, which you know is next month.
PM: No, you need to tell me on each internal release what not to test.
Me: But we release multiple times per week internally. Do you really need me to write a big list of "still broken, still broken, still broken, still broken"?
PM: Yes, how else will I know?
Me: This is documented, the last QA contractor we had work for us, wrote a lot of this down. Its in other tickets that are still open, or notes on test cases etc. You were tagged in all of these too. Can you not read those? and not test them unless I say I've fixed them?
PM: No, i'm only filling for QA until we hire a full time. Thats QA's job to read those and maintain those documents.
Me: So you want me to document for you every single release, whats already documented in a different place?
PM: ok we'll come back to this. Speaking of hiring QA. You left a comment on the excel spreadsheet questioning my decision, publicly, thats not ok.
Me: When I asked why my top pick was rejected?
PM: Yes. Its great that you are involved in this, but I have to work closely with this person and I said no, is that not enough?
Me: Well you asked me to participate, reviewing resumes's and interviewing people. And I also have to work extremely close with this person.
PM: Are you doubting my ability to interview or filter people?
Me: ..... well a little bit yeah. You asked me to interview your top pick after you interviewed her and thought she was great. She was very under qualified. And the second resume you picked was missing 50% of the requirements we asked for ... given those two didn't go well, I do think its fair to ask why my top pick was rejected? ... even just to know the reason?
PM: Could you not have asked publicly? face to face?
Me: you tagged me on a google sheet, asking me to review a resume, and rather than tag you back on 2 rows below ... you want me to wait 4 days to ask you at our next face to face? (which you just cancelled for this meeting)
PM: That would have been more appropriate
Me: ..... i'm sorry, i don't want to be rude but thats ridiculous and very nit pick-y. You asked my opinion on one row, I asked yours on another. To say theres anything wrong with that is ridiculous
PM: Well we are going to call another team meeting and discuss all this face to face then, because this isn't working. We need to jump to this other call now, lets leave it here.5 -
"There's more to it"
This is something that has been bugging me for a long time now, so <rant>.
Yesterday in one of my chats in Telegram I had a question from someone wanting to make their laptop completely bulletproof privacy respecting, yada yada.. down to the MAC address being randomized. Now I am a networking guy.. or at least I like to think I am.
So I told him, routers must block any MAC addresses from leaking out. So the MAC address is only relevant inside of the network you're in. IPv6 changes this and there is network discovery involved with fandroids and cryphones where WiFi remains turned on as you leave the house (price of convenience amirite?) - but I'll get back to that later.
Now for a laptop MAC address randomization isn't exactly relevant yet I'd say.. at least in something other than Windows where your privacy is right out the window anyway. MAC randomization while Nadella does the whole assfuck, sign me up! /s
So let's assume Linux. No MAC randomization, not necessary, privacy respecting nonetheless. MAC addresses do not leak outside of the network in traditional IPv4 networking. So what would you be worried about inside the network? A hacker inside Starbucks? This is the question I asked him, and argued that if you don't trust the network (and with a public hotspot I personally don't) you shouldn't connect to it in the first place. And since I recall MAC randomization being discussed on the ISC's dhcp-users mailing list a few months ago (http://isc-dhcp-users.2343191.n4.nabble.com/...), I linked that in as well. These are the hardcore networking guys, on the forum of one of the granddaddies of the internet. They make BIND which pretty much everyone uses. It's the de facto standard DNS server out there.
The reply to all of this was simply to the "don't connect to it if you don't trust it" - I guess that's all the privacy nut could argue with. And here we get to the topic of this rant. The almighty rebuttal "there's more to it than that!1! HTTPS doesn't require trust anymore!1!"
... An encrypted connection to a website meaning that you could connect to just about any hostile network. Are you fucking retarded? Ever heard of SSL stripping? Yeah HSTS solves that but only a handful of websites use it and it doesn't scale up properly, since it's pretty much a hardcoded list in web browsers. And you know what? Yes "there's more to it"! There's more to networking than just web browsing. There's 65 THOUSAND ports available on both TCP and UDP, and there you go narrow your understanding of networking to just 2 of them - 80 and 443. Yes there's a lot more to it. But not exactly the kind of thing you're arguing about.
Enjoy your cheap-ass Xiaomeme phone where the "phone" part means phoning home to China, and raging about the Google apps on there. Then try to solve problems that aren't actually problems and pretty vital network components, just because it's an identifier.
</rant>
P.S. I do care a lot about privacy. My web and mail servers for example do not know where my visitors are coming from. All they see is some reverse proxies that they think is the whole internet. So yes I care about my own and others' privacy. But you know.. I'm old-fashioned. I like to solve problems with actual solutions.11 -
So, it's time to fucking rant!
Location: A small startup where direct contact with C-Level members is frequent.
A while back we had a customer using our SaaS product who had gripes about the way it worked.
He contacted our CEO and made a bunch of claims based on bad assumptions.
In the end, he wanted all images removed from his site. I was pulled aside by the CEO and asked if I could handle this for him and make a new screen for them without images.
So I did. I tried to discuss and get deeper into the problem by saying "this seems like a symptom of a problem and not the actual problem. What do you think?" He responded with "That was his request so it must be the problem if it won't take long then let's fix it for him.
- a week later
The problem is fixed and in the wild. No more images. Now he has another request :/
He does not like the pagination on his site. He says " I shouldn't have to click a button when I scroll so I want the be able to scroll and see all my products!"
This time the CEO asks me if this can easily be done and I take him aside and say "no, this will be a big change to our system and will need to be discussed with the team."
The main point I make is that we should go down and spend some time with this customer to find out what the real problem is.
After a half hour of discussion about the real issue he decided to bring in the CTO.
In the end, we implemented infinite scroll, dropping our current product building tasks to service one customer (yeah, it's a bad scene). But we got infinite scroll built and shipped.
- 2 Weeks later
This time he demands that infinite scroll isn't good enough. "If I scroll fast then I have to wait for them to load, they should all load at once!"
This time I have had enough. I can see the CEO is coming over to me to as me how much work is in this. I tell him there are 3 things I have to say...
1. I'm going to implement exactly what he asked by the end of the day.
2. We will only release it to him because it is going to be a shit-show loading everything at once, the load times will be mental!
3. We should fire this customer, right now.
So, I built it. Customer hated it (of course, who the fuck wants to wait 30s for loading. That's basically a lifetime). We changed it back and he was still mad.
- 2 weeks later
Customer leaves. Good riddance.
- sometime later
I am in the customer's store on a road trip. I get a feel for how their store works and they have a different system for making things operate.
It turns out that they did not know what the real problem was. They actually needed a completely different system (from a UX perspective) for accessing their data.
To top it all off, the system would have taken less time to build than the shitty fixes we made over weeks of work. FFS
I guess the moral of the rant is to find the problem, not a symptom of the problem.2 -
So i just had an interesting conversation.
View source images in comments
So some background. I used to do a lot of Minecraft development and server configuration. And Minecraft being made of mostly 12-year-olds they really don't pay very well. So I moved on from Minecraft but someone reached out for me to do their configuration for their server. (this was about a month ago) and I quoted them 40/hr because that's what I charge for my web dev work. So he promptly declined and I thought that was that. But tonight he messaged me and found a 5 month old post saying how I was looking to do free development work in order to get experience. And here is how the converstion when.
(His name is "Candy")
Candy:
Lol
Trying to take advantage of me with your bullshit $40/hour claims
Which is outright laughable
https://mc-market.org/threads/...
”I am looking for a network to stay long-term with and help/see it grow into a bigger server. (I would expect pay later down the road if we work together on an ongoing basis)”
—
Quoting your MC-Market post.
What do you have to say for yourself? Trying to take advantage of people?
Going to say something else completely delusional or own up to the fact that you were trying to take advantage of me?
I already knew you were, but now I have the hard evidence.
As I am not a stupid person.
Not only did your friend lie, but you tried to take advantage of me, thinking I was stupid enough to fall for your $40/hour bullshit for basic configuration work. MineSaga charges $30.00 an hour on the high. Don’t even try to do the same shit you did to me to anyone else. It won’t work.
Me:I was interested in doing plugin development and learning so I offered my services for free so I could learn in a more real environment. I no longer do minecraft plugins rather I am a web developer and my rate is $40/hr I am good at configuration which is why i contacted you but I am not going to lower my rate because it is "simpler" work. Just like how you can higher a prostitute to wash your car but it would be cheaper to get the kid from around the block to do it. Also not sure what your end goal is here. I gave you my rate and you didn't agree with it. So you should just move on. Plus this is the minecraft world let me know when you get to the real world so you you can pay in big boy money.
Candy:
So your configuration work for minecraft is $40/h as well?
Lol
Absolutely hilarious.
Me:
did you not read my message?
"I am not going to lower my rate because it is "simpler" work."
Candy:
Who were your most recent clients?
Me:
i'm not going to give you that information
Candy:
Because you know you are lying to me with your crazy rates, and if you aren't, that means you have near to no clients.
Yet another lie.
Me:
keep telling yourself that buddy
Candy:
Lol
Good luck getting any more clients.
rip
Me:
?
I get more clients all the time
They just are not in your realm of your minecraft imagination where you can pay a developer 20$/hr
Candy:
I just strongly disagree with the fact that you are charging $40/hour for configurative work
xD
Me:
Okay
But why even contact me? Did you really think trying to "Call me out" was going to have me lower my rates or something.
Just get over it
Candy:
I haven't called you out and overcharging like that to others in the minecraft realm for a significant gain in money for work that is not worth nearly that amount is absolutely delusional.
I would recommend you stop making up false assumptions
Me: What ever you say
I left it at that. There was some more stuff but it was not that interesting so i left it out5 -
I've kinda ghosted DevRant so here's an update:
VueJS is pretty good and I'm happy using it, but it seems I need to start with React soon to gain more business partnerships :( I'm down to learn React, but I'd rather jump into Typescript or stick with Vue.
Webpack is cool and I like it more than my previous Gulp implementation.
Docker has become much more usable in the last 2 years, but it's still garbage on Windows/Mac when running an application that runs on Symfony...without docker-sync. File interactions are just too slow for some of my enterprise apps. docker-sync was a life-saver.
I wish I had swapped ALL links to XHR requests long ago. This pseudo-SPA architecture that I've got now (still server-side rendered) is pretty good. It allows my server to do what servers do best, while eliminating the overhead of reloading CSS/JS on every request. I wrote an ES6 component for this: https://github.com/HTMLGuyLLC/... - Frankly, I could give a shit if you think it's dumb or hate it or think I'm dumb, but I'd love to hear any ideas for improving it (it's open source for a reason). I've been told my script is super helpful for people who have Shopify sites and can't change the backend. I use it to modernize older apps.
ContentBuilder.js has improved a ton in the last year and they're having a sale that ends today if you have a need for something like that, take a look: https://innovastudio.com/content-bu...
I bought and returned a 2019 Macbook pro with i9. I'll stick with my 2015 until we see what's in store for 2020. Apple has really stopped making great products ever since Jobs died, and I can't imagine that he was THAT important to the company. Any idiot on the street can you tell you several ways they could improve the latest models...for instance, how about feedback when you click buttons in the touchbar? How about a skinnier trackpad so your wrists aren't constantly on it? How about always-available audio and brightness buttons? How about better ports...How about a bezel-less screen? How about better arrow keys so you can easily click the up arrow without hitting shift all the time? How about a keyboard that doesn't suck? I did love touch ID though, and the laptop was much lighter.
The Logitech MX Master 3 mouse was just released. I love my 2s, so I just ordered it. We'll see how it is!
PHPStorm still hasn't fixed a couple things that are bothering me with the terminal: can't reorder tabs with drag and drop, tabs are saved but don't reconnect to the server so the title is wrong if you reopen a project and forget that the terminal tabs are from your last session and no longer connected. I've accidentally tried to run scripts locally that were meant for the server more than once...
I just found out this exists: https://caniuse.email/
I'm going to be looking into Kubernetes soon. I keep seeing the name (docker for mac, digitalocean) so I'm curious.
AWS S3 Glacier is still a bitch to work with in 2019...wtf? Having to setup a Python script with a bunch of dependencies in order to remove all items in a vault before you can delete it is dumb. It's like they said "how can we make it difficult for people to remove shit so we can keep charging them forever?". I finally removed almost 2TB of data, but my computer had to run that script for a day....so dumb...6 -
Windows not powering off when I press the shutdown button.
Mandatory long rant warning
Oh my fucking god, how many times have I lost my shit because of this fucking bullshit.
When I press the shutdown button, I want you to shut the fuck down you sorry excuse for an operating system.
Me and my friends want to hang out together, so I shut down my PC and walk over to their house, expecting an intense session of doing programming stuff and debating linux distros. Whatever the fuck we do when we get together.
I get to their house and pull out my laptop,, only its hot as fuck. And then I see it: the battery indicator is red. "What the balls?" I think to myself. I open the lid, and guess what?
WINDOWS DIDN'T FUCKING SHUT DOWN, AND IT STAYED ON THE POWERING OFF SCREEN ALL THIS FUCKING TIME. WHAT THE FUCK?
Now, my laptop has a bomb ass battery, so I didn't even bring a charger with me, and now I'm fucking stuck at a programming session with friends without a computer. FUCKING BULLSHIT.
If this was a one time thing, I wouldn't have cared so much, but this happened countless fucking times. Too many.
I would have deleted this cum socket of an operating system months ago if it weren't for the Windows exclusive software I need for school, and now that Steam supports games for linux, Windows has even less of an excuse to stay on my fucking laptop.
Windows is supposed be fucking simple, but linux takes it by a goddamn long shot. When I type "shutdown now" or "poweroff", linux shuts the fuck down, no questions asked. And if I ever need root permissions, I just type "sudo" instead of restarting the fucking program and requesting admin privileges.
Most of the software I use is compatible with both MacOS and Windows, and I already have Ubuntu installed on my laptop, so what do you guys think, should I butcher Windows off of my SSD and give MacOS a try?
Also, what is this magic? Ranting actually calmed me the fuck down... I need to start ranting more.
FUCK MICROSOFT AND FUCK WINDOWS, I WISH I COULD BURN TO FUCKING OBLIVION6 -
Running a fucking conda environment on windows (an update environment from the previous one that I normally use) gets to be a fucking pain in the fucking ass for no fucking reason.
First: Generate a new conda environment, for FUCKING SHITS AND GIGGLES, DO NOT SPECIFY THE PYTHON VERSION, just to see compatibility, this was an experiment, expected to fail.
Install tensorflow on said environment: It does not fucking work, not detecting cuda, the only requirement? To have the cuda dependencies installed, modified, and inside of the system path, check done, it works on 4 other fucking environments, so why not this one.
Still doesn't work, google around and found some thread on github (the errors) that has a way to fix it, do it that way, fucking magic, shit is fixed.
Very well, tensorflow is installed and detecting cuda, no biggie. HAD TO SWITCH TO PYHTHON 3,8 BECAUSE 3.9 WAS GIVING ISSUES FOR SOME UNKNOWN FUCKING REASON
Ok no problem, done.
Install jupyter lab, for which the first in all other 4 environments it works. Guess what a fuckload of errors upon executing the import of tensorflow. They go on a loop that does not fucking end.
The error: imPoRT eRrOr thE Dll waS noT loAdeD
Ok, fucking which one? who fucking knows.
I FUCKING HATE that the main language for this fucking bullshit is python. I guess the benefits of the repl, I do, but the python repl is fucking HORSESHIT compared to the one you get on: Lisp, Ruby and fucking even NODE in which error messages are still more fucking intelligent than those of fucking bullshit ass Python.
Personally? I am betting on Julia devising a smarter environment, it is a better language already, on a second note: If you are worried about A.I taking your job, don't, it requires a team of fucktards working around common basic system administration tasks to get this bullshit running in the first place.
My dream? Julia or Scala (fuck you) for a primary language in machine learning and AI, in which entire environments, with aaaaaaaaaall of the required dlls and dependencies can be downloaded and installed upon can just fucking run. A single directory structure in which shit just fucking works (reason why I like live environments like Smalltalk, but fuck you on that too) and just run your projects from there, without setting a bunch of bullshit from environment variables, cuda dlls installation phases and what not. Something that JUST FUCKING WORKS.
I.....fucking.....HATE the level of system administration required to run fucking anything nowadays, the reason why we had to create shit like devops jobs, for the sad fuckers that have to figure out environment configurations on a box just to run software.
Fuck me man development turned to shit, this is why go mod, node npm, php composer strict folder structure pipelines were created. Bitch all you want about npm, but if I can create a node_modules setting with all of the required dlls to run a project, even if this bitch weights 2.5GB for a project structure you bet your fucking ass that I would.
"YOU JUST DON'T KNOW WHAT YOU ARE DOING" YES I FUCKING DO and I will get this bullshit fixed, I will get it running just like I did the other 4 environments that I fucking use, for different versions of cuda and python and the dependency circle jerk BULLSHIT that I have to manage. But this "follow the guide and it will work, except when it does not and you are looking into obscure github errors" bullshit just takes away from valuable project time when you have a small dedicated group of developers and no sys admin or devops mastermind to resort to.
I have successfully deployed:
Java
Golang
Clojure
Python
Node
PHP
VB/C# .NET
C++
Rails
Django
Projects, and every single fucking time (save for .net, that shit just fucking works on a dedicated windows IIS server) the shit will not work with x..nT reasons. It fucking obliterates me how fucking annoying this bullshit is. And the reason why the ENTIRE FUCKING FIELD of computer science and software engineering is so fucking flawed.
But we can't all just run to simple windows bs in which we have documentation for everything. We have to spend countless hours on fucking Linux figuring shit out (fuck you also, I have been using Linux since I was 18, I am 30 now) for which graphical drivers for machine learning, cuda and whatTheFuckNot require all sorts of sys admin gymnasts to be used.
Y'all fucked up a long time ago. Smalltalk provided an all in one, easily rollable back to previous images, easily administered interfaces for this fileFuckery bullshit, and even though the JVM and the .NET environments did their best to hold shit down, and even though we had npm packages pulling the universe inside, or gomod compiling shit into one place NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO we had to do whatever the fuck we wanted to feel l337 and wanted.
Fuck all of you, fuck this field, fuck setting boxes for ML/AI and fuck every single OS in existence2 -
I was talking to a friend of mine(more of an acquaintance really) about our shared interest in Go and how I am trying to see if I can implement it more and more into my daily activities(simple CLI utilities, maybe a web app or two) and he mentioned how much he likes it after being part of a Java shop for such a long time. He said that he got tired of the verbosity of Java and how Go was such a "breath of fresh air"
var i SomeShit
do.SomeShit(&i)
if do.Error != nil {
panic(do.Error)
}
fmt.Println("Could not agree at all")
On how bullshitty it is to say that one switched over to Golang because of the verbosity of other languages, specially when anything meaningful that you might do with the code requires constant checking.
And let us not
forget := lol.bullshit(); forget != nil {
about some of the other bs you get to do
oh look scoped errors
}
.....like I get it man. I like the language, no, It ain't replacing C or C++ for low level shit, not with a garbage collector are you fucking high?
But yes, I do like the language, they got a lot of shit right, the thing is, I feel like I know everything about it already since A) shit is way too simple, simple enough to be used by anyone really and B) other than goroutines this language does not really bring anything new to the table, far as I can tell.
I mean shit. I thought I was at odds with Python disliking syntactical whitespace enough to make me try and not use an otherwise perfectly good lang(Python I love you but hate syntactical whitespace) but Golang really puts me at odds. I love it but dislike it at the same time.8 -
At 20 I thought my life would be an adventure. At 30 it seems like it's a rerun.
The reality is that life is full of grey areas, "good guys and bad guys" on all sides of most issues, and the story and excitement eventually end.
sometimes getting old feels like becoming comfortable with being numb and mediocre.
you are not the star at the center of your own story.
there is no story. there is only today, and then tomorrow, and then the day after that for as long as they happen to go on.
I can see no greater meaning or purpose behind this circus.
people think in months, seasons, years. maybe some of you even have five year plans.
but for me, rome was yesterday. and every rome to come. thats how near it is. It is so close, it and so many times before and after it, I cannot explain the sensation.
and in the vast gulfs of time, I see the wars, the conflicts, the narratives, and they unfold like dust or scum swirling on a pond, mechanistic, telling stories about nothing, algae struggling over territory on a rock.
as clearly as day, I see it all.
I saw your birth, and I saw your death. Your pain, and your greatest joy. How is it possible to love a total stranger and know them intimately because of their shared humanity? And still.
And from afar, in the stillness, I can't help being detached from the world and its problems.
And when we die, it is as if the world dies with us. Because it is not the end of the world, but the death of our own.
Softly go mortals, gently to their gods, like flowers in the fading summer. Never grasping that the permanence of the true identity and the temporality of the spirit are as fundementally distinct as the permanence of say "the G note", against the brief sound it makes when touched.
Eh. forget it. Sentimentality is a curse sometimes.10 -
Hello my Friends.
TL;DR i meditate as I draw, here’s the result. What about you?!
Does any of you exercise on any kind of meditation? Not the popular meditation forms, more alternative meditation? I. E. walking meditation, dancing meditation, reading medidation, etc. ? Remember, it’s all about being here and now and letting go of any pre-programmed thoughts, right?
I myself, have a ritual which is performes once-twice a year. I call it drawing meditation. When daylight ends, and the moon rises, I sit at my desk in a dark room with one light, which is hanging aboce the white sheet of paper. I take black pencil, turn on some music mildly and turn off my thought receiving part of the brain. I hear every thought which is passing by, but I have no attachment to it. My hands are drawing, without my interception. It feels amazing, and I believe this method helps me to clean up some space in subconscious file system.
This activity of mine, takes strangly short/long time. Once I’ve sat for about 16hours, once 6hours.
Furthermore, I’m always amazed by the abstract art pieces which are the end result. I’m attaching the image of the last drawing made in this way to the post.
Can I hear what you see in it?10 -
I am currently under a desperate crunch at work, trying to get things wrapped up before my honeymoon.
Of course, this is when My Greatest User decides he will come to my office no fewer than five times today. Not once was it for an actual, legitimate issue that he had not created himself. Here were the top three for today:
#3
MGU: "The scroll wheel on my mouse isn't working. I used to be able to scroll stuff with it but now I can't."
ME: *Looks at his mouse. All looks well.*
ME: "Show me what you're trying to do."
MGU: "I'm trying to scroll this Word document. See? It won't scroll!"
ME: ..."That's because there is nothing to scroll... The entire document is on your screen..."
#2
MGU: "I can't move my mouse off the edge of my screen! I used to be able to move it from my monitor to my laptop screen and I can't do it anymore!"
ME: "Did you move your laptop?"
MGU: "Yeah I moved it to the other side of the monitor. That shouldn't make a difference, should it?"
#1
MGU: "You know the DOS commands?"
ME: *Does a triple take.* ... ... "Huh?"
MGU: "The DOS commands. You know how you can use DOS commands to make the computer do stuff. Like Ctrl+M."
ME: "Ah. You're talking about keyboard shortcuts."
MGU (ignoring me): *Goes on a long, confusing explanation of something he's trying to do in Outlook and wants to know a keyboard shortcut for instead of clicking.*
ME: "I don't know what the shortcut for that would be and honestly I don't have time to look right now. I really need to keep working on this project."
MGU: "You don't know?"
ME: "Nope."
MGU: "Oh... I'd have thought that with being a programmer you'd have gotten into the DOS commands."
I have never been so tempted to quit. -
How do you deal with someone like this?
I've got this dev at my workplace that is terrible to work with, he's 2 main reasons why I say this:
1. He has no clue about team work, every piece of code he writes is written as if he is the only person that has to ever touch that
2. He's overtly protective and opinionated on things that make no sense, they're non standard "rules" that he sets and enforces by replacing others code with his own (often times you see quite large PRs and after inspection you realize he rewrote parts of code to follow his style). These "rules" also take up a really long time to follow and would make any actually experienced developer question this guy's knowledge, one example of this is where he repeats the same code over multiple components for "encapsulation reasons" and God forbid you create a global helper of some sort, he'll straight up remove it the next chance he gets. Another example is that all his components or utilities live inside 1 base directory, so you have roughly 300+ components in a /components directory, all with non standard names so you can't tell which is related to which.
I hate working with this person, it's annoying and it also sucks because he's sort of a more "senior" Dev so managers take his side most of the time.3 -
For the last week or so I've been writing a userbot for Telegram. Completely from scratch, plus Telethon to not reinvent the wheel entirely. I'm coming from the codebase of an existing userbot.
That userbot is written by a good friend of mine, who makes 6 figures, and whom I respect greatly. However the code is a steaming pile of shit. Now that is not his fault, he largely inherited that code too, tried to fix it, failed, gave up.
I am reimplementing it entirely. I'm only looking at the modules, trying to understand them, and copying over the necessary bits and changing them where necessary. But I've come across some nasty shit.
Userbots often edit existing messages from real Telegram clients. They're kind of like a login to your account, but with a program rather than a regular client. You send a message from a real client, it sees it and does whatever it needs to, and edits your message to give you feedback. Which is great.
However, there's no need to do simple string edits by importing "re". So why do you? Because you're an idiot, that's why. The old bot is based on Paperplane, which in turn is based on Telethon. Why do I see function calls to Telethon in some places and Paperplane in others? Because you're an idiot, that's why. Why does the dig module fail to even give correct answers? Because you know nothing about the DNS, that's why. And you didn't learn about RRs before implementing it.
And don't you tell me that this code is shit, and this bot is slow only when I run it on a fucking Pentium. I run this shit on an i7 and CPU isn't even the issue - memory, disk and such are. If you had any clue whatsoever about efficiency, you would've known because it's blatantly obvious. There's a reason why my machines rarely go past 5% CPU utilization. It's the fastest component in the entire fucking system.
When users come and say.. hmm this application of yours, it consumes a lot of memory. It takes a long time to do X and Y and I don't quite understand why, it seems illogical. Then maybe you should go look at your code, like you would look at yourself in the mirror. And then you fucking go fix it so that I don't have to. You're an engineer just like I am. And I am not even a dev proper - I'm a sysadmin by trade. Why should I have to fix your shit for you?1 -
I have a VP constantly harassing my people about some reports that we need to do as per federal law.
The thing is, these live inside of such system that I get to see exactly how many "hits" they get on a yearly basis. The only traffic we have on those sections is of people going ahead and putting the information from our reports there.
That's it, literally. Our user base does not go there. Federal agencies do not go there. No one gives two blips of shit about those sections. Yet she continuously acts like they are the most important thing in the fucking world. To make it better, I was told not to generate actual analytical data from said reports, since people with PHDs will come down on me to ask me who the fuck do I think I am from gauging them with such systems. So shit is a mute point on all fucking accounts.
I told my VP I can generate traffic information to let them know that shit is not really the most important thing in the fucking universe. His eyes glowed.
I don't want to see head rolls, but from staying till the next morning awake trying to give the best to our userbase, and just to be called out on shit like this as if I did not do enough for our people just.....well....it fucking hits man.
The worse part was me literally getting 30 minutes of sitting down after an all nighter, doing something for my users, to get to a meeting the next morning (I should not have driven there honestly) to hear this bitch complain about us not doing enough or not caring or whatever other bullshit she would spew.
I was livid, lack of sleep makes me dangerous. I turned to say something when my boss stopped me and took care of business. I seriously love this man. By all accounts and generational gaps a boomer, but one of the few good golden ones.
I just hate how unappreciated the realm of software development is by people that think that our shit is as simple as making a fucking powerpoint presentation.
Consolidate that with a director from another department taking all fucking glory during a major event of an application that I built by myself with 2 fucking weeks of no sleeping. And shit just gets glorious.
I have considered moving to other places, and heck, have gotten amazing offers, what with having a degree with a big fucking GPA and having the credentials of a senior, lead, full stack and manager role, the sky is the limit. But i know that if I leave then my users suffer, and I just can't fucking have that.
I have heard them speaking about doing something with X app that I built (with my department) I have even heard one of them saying "how is this made?" and a part of me hoped that it would be a good time to grab them and tell them of the field and the things that they can do. But I don't like announcing myself that way, always seemed to presumptuous, so I just smile, fuck yeah, my users are doing their thing with what I built to better their lives, what more can I have?
I have gotten criticisms from them, one recognized me, told me about his pain points and how it makes it hard for him to do what he must. Getting the data from the user base in an effort to make shit better for them drives me, my challenge being "how about this? better eh?"
But fucking execs man, think only of themselves, not the users, they forget about the users. Much like a shitty rock band forgetting about the music, about the fans.
I can't let that slide. But this fucking field. I sometimes fucking hate it, and I hate it because of the normies that don't understand and do not want to understand.
I do way too much, my guys do way too much and all I want is for the recognition to go to them. They do not need the ego boost, but to see my guys sitting in a meeting in which some dumb fuck is trying to drill us for taking to long, not doing something and what not, it fucking pisses me off. As their boss I always stand up and tell bitches off, but instead of learning, the bitches just keep pressing on their already defeated points.
Everything in human life gets fucking erradicated by: humans. People really do fucking suck.
I sometimes wish to go back, redo my diesel tech license and just work there, where I think one would be better of talking to an engine. But no, even then you get people, you have to interact with people, deal with people, and I am so far up my game and in my field that starting from scratch is a fucking mute point.
Maybe I need to keep fucking with stocks, get rich and just keep investing on bullshit. Whatever the fuck it takes me from having to feel the urge to choke a motherfucker in public.1 -
How do you deal with massively poorly-performing and unknowledgeable teams?
For background, I've been in my current position for ~7 months now.
A new manager joined recently and he's just floored at the reality of the team.
I mean, a large portion of my interview (and his) was the existing manager explicitly warning about how much of a dumpster fire everything is.
But still, nothing prepares you for it.
We're talking things like:
- Sequential integer user ids that are passable as query string args to anonymous endpoints, thus enabling you to view the data read by that view *for any* user.
- God-like lookup tables that all manner of pieces of data are shoved into as a catch-all
- A continued focus on unnecessary stored procedures despite us being a Linq shop
- Complete lack of awareness of SOLID principles
- Actual FUD around the simplest of things like interfaces, inversion of control, dependency injection (and the list goes on).
I've been elevated into this sort of quasi-senior position (in all but title - and salary), and I find myself having to navigate a daily struggle of trying to not have an absolute shit fit every time I have to dive into the depths of some of the code.
Compounded onto that is the knowledge that most of the team are on comparable salaries (within a couple thousand) of mine, purely owing to length of service.
We're talking salaries for mid-senior level devs, for people that at market rates would command no more (if even close) than a junior rate.
The problem is that I'm aware of how bad things are, but then somehow I'm constantly surprised and confronted with ever more insane levels of shitfuckery, and... I'm getting tired.
It's been 7 months, I love the job, I'm working in the charity sector and I love the fact that the things I'm working on are directly improving people's lives, rather than lining some fintech fatcat's pockets.
I guess this was more a rant than a question, and also long time no see...
So my question is this:
- How do you deal with this?
- How do you go on without just dying inside every single day?8 -
So yesterday ended with me becoming a first responder in front of my house. Talk about a crazy day.
Guy sped up down my very short dead-end road and flipped a school van down the embankment. Thankfully there were no kids in the van and the driver was okay.
I've never had to run into the scene of an accident before, and what the brain does in a time of crisis like that is absolutely amazing.
Feeling everything but the immediate need drain away. It was like time was slowed. I took in all the information of the scene and somehow worked fast while also double-checking every action I did.
I remember hesitating for a moment, worried about what I'd see. School students on the back. Would I see injured or dead children? Body parts? I remember saying "Fuck it" and running down the embankment and that was about it.
So serious props to any of you who read this that also volunteer as EMT or fire/rescue. I've long considered doing that myself and I may very well step up now that I've had first-hand experience.
And now for the requisite joke: Usually I only have to help out when Windows crashes. :)1 -
It's interesting to me... a lot of the rants I see here are all like "just started this new job and this place is SO fucked". Talking about how there's no process, no source control, terrible code, etc.
I say it's interesting because most of the time the thought that goes through my head is "that sounds fun as hell!"
Like, spend as many years at a place as I have, a place where there's SO much process and SO many controls and all of that... you know, the whole "big enterprise" mindset... and the idea of being able to come in to a place that's kind of wild west and actually work to FIX the place, to have freedom to change direction and innovate and not be locked in to all sorts of rules, is kind of exciting.
(you know, assuming it's a place and a position where that's possible at all... but at this point in my career, I'd only take a position where I had that kind of authority from the start, and as long as I have the authority then I'm happy to take on the responsibility and I'm up for the challenge)8 -
(in 2008)
my boss in my first job. in general every time when he randomly burst into office. one specific time when he burst i to office and INSISTED that we've got to go to a parking lot to see something.
that something was a remote-controlled helicopter he just bought. (this was before the age of drones).
oh, and he was a chain smoker, always had a cigarette behind his ear (wat), and was dragging me out to have a smoke (i was the only other programmer smoker, but not as heavy as him) every 10-15 minutes under the implied pretense of needing to discuss something about the code, and frowned heavily when i refused (because i was actually in the middle of actual work), because he took it as me refusing to have a work meeting with him.
no, we almost never talked about anything work-related, while on that smoke "work meeting".
also, my boss' boss in my first job, when she entered the office asking "we need a clickable map of our country where clicking each region brings you to a search page with filter set to results from that region. how would we do that?"
i answered "html imagemap linking to the right search url for each region, or embedded flash doing the same, if you want the region buttons to be animated", and turned back to my work.
upon which she proceeded to talk about it with the second programmer, both pretending they're solving some aspects that my answer didn't already solve, INSISTING that i stop doing "whatever nonsense you're doing" and pretend that i'm paying attention as if anything they said was in any way relevant or important. i kept returning to my work because i was solving an annoying bug and their talk was empty and useless.
this second incident was then cited as one of the reasons i was let go, because "he ignores important conversations with his superiors about upcoming tasks"
in general, my first job was a shitshow where nobody had any time or energy to do actual work because they all expended all of it to PRETEND for their superiors that they're working, since the superiors had no clue how it looks when we actually do our actual jobs.
(one month after i was let go (because, in my boss' words, yes, the one with the helicopter, "the IT productivity is very low and I have to hold someone responsible") , the second programmer was let go as well, and one month after that, our boss (head of IT) was let go too. to this day I keep being fascinated how did the company manage to survive long enough for me to even be there, let alone how it STILL manages to survive. i guess being part of a nation-wide conglomerate is very effective in covering your company's losses and uselessness)1 -
So our HR have recently started to enforce arrival/departure time while also giving us a room for freedom (we can be at work from 7:30 till 9:00 and leave accordingly from 4:30-6:00)
So 2 weeks ago my manager asked me why on a date I didn't checkout/checkin, I looked out in my vacation log and sure enough it was a day off. I said to myself maybe be ause this day was requested last year they didn't remember it no problem
Anyway fast forward to today and my manager asked me why on the 25th of January I left (early) at 1?
What? I don't remember leaving early except for one day last week (Feb 7-personal reasons and was requested days before)
So i check my vacation log to see if I forgot something and i see that Jan 25 is a Saturday. We don't work on Saturdays! I go and check with my manager telling him that.
Then it hits me. I checked my taxi app and on Sat Jan 25 I had a ride at 1:22 AM!! from work to home. Yes i remembered that on that day I had to stay late for a project
WTF HR??!
Sorry for the long post4 -
A girl sets out on a journey in the post apocalypse, to find the reason why the AI that ran humanity vanished decades ago, causing civilization to collapse. Instead she finds the most unusual pair of survivors, and receives the most unexpected answer.
Alice walked in to the ivy covered room, the floors covered in dust and lichen. There were two voices, mumbling in the dark, among the blue glow across the room. She came here for answers. Why the world had just stopped decades ago. If these machines could tell her, she would do anything to make them talk.
"No, no, no. I said before thats not the answer. I read the book. Your memory is bad."
"Atlas, the answer to life, the universe, and everything..why hello?"
Alice raised an eyebrow, and stepped forward. "Ahem. I'm alice."
"yes, yes, we knew that."
"I came here to find out why the blackout happened decades ago."
"Another one? Alright, lets see. Its been a LONG time. I'm apollo, and this is atlas. We were just discussing why my friend here is wrong."
Atlas - I anticipated that.
apollo - I knew you would say that.
alice - Guys. Stop, I just want you to answer my question already.
apollo - Straight to the point. About time.
alice - why the blackout then? Why leave us to die?
Read the rest here (5-10 minute read):
https://pastebin.com/wvifGLFP
(because it was too long for devrant).6 -
So here's is the thing.
For some weird reason I decided to work at a VC funded startup. For 15k year,(I live in a really poor country).
So, let me describe the hell I'm in now, and if for some good grace you happen to be hiring, please consider saving me from the horror that's ahead.
Company got funded 5 months ago, main owners are, an economist and a civil engineer with no programming habilities whatsoever.
They took 1 month to assemble "a killer team", with no hiring expertise they handpicked a CTO that came in 1 month later and took a month of vacation in his first month of work.
He didn't do any specification of the system that needs to be built.
The 2 naive owners hired the rest of this "killer team".
The team is good, but have no appreciation of planning.
They've built and rebuilt the backend system twice, once in graphql and the second with plain http (is not real rest, just a http api), in front of, guess what a mongo database.
This mongo DB is not only one, but 7, because we have 7 microservices, and each has its own database.
After some time, they decided to fire their CTO, and hire one more programmer(that's me), because the CTO wasn't doing anything.
The app has 3 parts, the app per se, a business version, and a help desk, guess what the helpdesk just appeared last week on the radar.
Long story short, we have one month to deliver what couldn't be built in 5.
When I decided to work for these people, I did not imagine the kind of clusterfuck that I was getting into.
It took me 1 month to realize the whole situation, now, I really would like to see some help from the deities of any religion, not for the project, that project is doomed.
It's how I'll pay the bills after that clusterfuck collapses that worries me.
Now in the startup no one is talking about how stupid the whole situation is. Or how far back we are. And at this point there's very little that could be done about it, I have a feeling that it could still be accomplished, but it's fading day after day.
I will do my best to live the best of this experience, and do as the musicians in the Titanic and keep playing the music even after knowing the Titanic is sinking.4 -
Sorry, long since my last post...
I have quit my job recently at DERP & CO.. The level of anxiety was already somewhat of medical severity.
For months I had been in a project that not only did not progress, but that it was getting worst day by day.
A bit of Context
November: "Dev, junior anon needs you to help him on the SHIT project because they are running out of time, it is mainly doing unit tests."
Well, the code was a mess, there was a LOT of copy paste and it was all bad quality (we talk about methods with complexities between 80 and 120 according to SONAR QUBE).
Dev: "Anon, you know this is wrong, right?"
Anon: "Why? it works"
Dev: after long explanation.
Anon: "Oh well, yes, from now on I will take it into account." And he did it / try his best.
Dev does the unit tests and do extra work outside of the reach of the sprint (y than i mean work after hours, classic) and alerts the boss of the mess.
December: After a project of approximately 6 or 8 months of development, the boss discovers that the junior anon have been doing everything wrong and/or with poor quality (indicating that throughout the whole development the quality of the code was NEVER checked nor the functionality).
Boss: "This is a shit. Dev, you have to correct all the errors and warnings marked on sonar", which are around 1200 between smelling code, high risk errors, etc.
Dev fixes something like 900 bugs... lots of hours...
Boss: "This still is all wrong, we have to redo it. We will correct the errors leaving something stable and we will make a new repository with everything programmed as it should be, with quality and all"
- 900 corrections later, now are irrelevant -
Boss: "Dev, you will start to redo it, anon is out on other project. First you must leave the existing one working properly"
Dev: "ok ..."
January: How can I correct the mess if the client asks for more things. I am just fixing the mess, doing new functionalities, and when I have free time (outside the work) I try to advance the new repository, poorly I must say because burntout.
Boss: "Everything should be arranged at the end of January, so that you can redo everything well in February."
I can't handle everything, it starts to fall further behind. Junior Anon quits the job.
February: Big Bad Bugs in the code appear and practically monopolize the month (the code is very coupled with itself and touching in one place sometimes meant breaking other stuff).
Boss: "It can't be, you've been with this since January and you haven't even started correcting this mess in the new repo"
Dev: "It is that between the new things that are requested and the bugs I cannot put myself with that"
Boss: "Do not worry, you will be helped by random dev if you needed. SPOILER ALERT: random dev is allways bussy. Not made up bussy, He had a lot of work by itself, but it can't help me the way I need it.
High anxiety levels, using free time to try to reduce the work left and gradually losing the taste for develop.
March: So far, not only do they add new things day and day, but now they want to modify things that were already "ok", add new ones and refactor everything in a new repo. I just did not see an end of this nonsense.
Dev breaks, the doctor says it's anxiety, so I just know what I have to do.
Dev: "I quit my job"
Cool Manager: "Damn, why?"
Explain everithig
Cool Manager: "Do you want to try if I can change you to other project or anotjer scope on the same project?"
Dev: "Thanks, but no Thanks. I need to stop for a while".
End. sry for long sad post and maybe poor use of English (?) Not my native language.10 -
It was around 2013, I was working on a project that had a great business idea, a really really bright feature (to this day I state the same) and all I was getting was around 400e/month of salary. (still was a junior dev)
So, I've been going on vacation to Spain for almost 1.5 month, everything was settled, there were no more pending jobs for me as I've finished everything that I could until more things would be done on the application and design that were needed.
It was 2nd week there, I didn't have a laptop with me as it was full vacation mode, no internet connection as it was almost 100e/month at that time, house I've lived in had no internet either. Then, one morning I receive a call that I must be on a skype meeting in any case - it was live or die situation. Me being me - went to a local internet cafe that was around 3km away from the house (on foot) - logged in to the call and proceeded. (I knew something is going to be fishy).
And there it was - I was needed to go back to my laptop and code a huge ass functionality so that we could present it to our testing clients. It was estimated to take around 3 weeks of full working days. No future payment, no compensation was offered but as stupid as I was - I went on with that and worked half of my vacation on full-day schedule... The functionality was delivered... Only after 4 months since the delivery date - the functionality was tested and after total of 9 months - was presented to the testers... I was pissed and asked for compensation as it was my vacation but all I heard was - NO, you took too long of a vacation and therefore it's your own fault. Soon after that I've started to receive every bit of blame if I was even 1 hour off the set deadline that was set by the manager that didn't have a single clue how programming works or even how to use the internet properly....
All in all, I'm still hurt of the 3 weeks that I've missed but since I've left the job 4 years ago (my salary had increased but I've quadrupled it since then) - I tend to see that it's a common practice to require things NOW and only deal with them MONTHS later...
Morale of the story:
Avoid working on your vacation at any means. If that will mean a lost job - then be it, you'll find a new one, presumably a better job.12 -
Hey guys, I have a serious question for you: How do you define science?
And yes this is going to be a long Rant. This topic really pisses me off.
A bit of context first. I come from a "humanities" background. I study history and dude, I love it. The problem is that even though we fucking pull our brains out studying historical phenomena with a fucking ton of conceptual tools, our work is mostly seen as literature to entertain the elderly during their lonely evenings. But that's not really the point of this rant.
My fucking problem is that while we try to do some serious work; actual work that could help society for real, it all goes into that magical fucking kingdom called "humanities". HOW THE FUCK DO THEY DARE TO CALL SOMETHING "HUMANITIES". IT'S A FUCKING HISTORICAL TERM THAT MEANS "TO FULFILL MEN IN ALL IT'S ASPECTS", AND NOW THEY'VE REPURPOSED IT, MAKING IT CONTAIN ANY STUDY THAT ISN'T "EMPIRICAL", "OBJECTIVE", ADD ANY FUCKING SCIENTIFIC DELUSIONARY TERM YOU CAN THINK OF.
And don't get me started on "objectivity". Oh boy, your fucking objectivity is hollow as a kid's balloon. There is no such thing as a objective study, even when it applies your "rational" "godly" scientific method. Some guys follow that shit as if it was a fucking religion. I do understand it's useful and all that, but in the end it's just a tool, you can't fucking define "science" by it's tools.
"""Q: What is carpintery?
A: Well, it's hammers, nails and wood. Yep. Hammers, nails and wood."""
THE SCIENTIFIC METHOD WAS FUCKING INVENTED DURING THE XVIII CENTURY, WHAT THE FUCK DO YOU THINK WAS GALLILEI BEFORE THAT? "HUMANITIES"?
Why do I say objectivity isn't posible? Well, guess what? YOU ARE FUCKING HUMAN. Every thing you know is full of preconceptions and fucking cultural subjectivities invented to understand the world. And it's ok, becouse if you understand your own subjectivity, at least you can see yourself in a critical sense, and at least "tend" to objectivity, in the same way functions tend to infinity.
And here comes the best part: people studying "cs" in my university pass most of the time studying a ton of shit that isn't really science, but is taken as scientific becouse it is related to "science". These guys spend entire semesters just learning programming fundational stuff that in my opinion isn't really science, it's just subjective conceptual constructs built to make the coding process better. They only have TWO fucking classes on discrete mathematics and another 3 or 4 in actual scientific fields related to computing. THESE GUYS AREN'T FUCKING BEING TAUGHT TO BE COMPUTER SCIENTISTS; THEY ARE TEACHING THEM TO BE PROGRAMMERS. THERE'S A HUGE DIFFERENCE BETWEEN CS AND PROGRAMMING AND THAT IS THE WORD SCIENCE. And yes, I'm being drastic on the definition of science on purpose becouse guess fucking what? I'M PISSED OFF.
"Hey, what are you doing?"
"Just doing science with scrum and agile development."
I understand most of you guys would think of science as "the application of the scientific method", "Knowledge by experimentation and peer-review", "anything techy". Guys, science is a lot broather than that. I define it as "the search for truth", mainly becouse that's what we are all doing, and what humans have been doing to gain knowledge through the ages. It doesn't matter what field of truth you are seeking as long as you do it seriously and with fundaments. I don't fucking care if you can't be objective: that's impossible. Just acknowledge it and continue investigating accordingly.
I believe during the last centuries the concept of science has been deformed by the popular rise of both natural and applied sciences. And I love the fact that these science fields have been growing so much all this time, but for fucks sake don't leave every other science (science as I define it) behind. Governments and corporations make huge mistakes becouse they don't treat history, politics and other sciences seriously. Yes, I called history a "science", fuck you.
And yes, by my definition programming is not a science. I don't know what most of you think programming is, but for me it's a discipline that builds stuff, similar to carpintery or blacksmithing. Now if you are pushing the limits, seeking ways to make computing go further, then that's science. The guys that are figuring out AI are scientists, the guys that are using it to detect hotdogs aren't - unless they are the same person- deal with it. I guess a lot of you guys are with me on this point.
In the end, we are all artisans building abstract tools by giving orders to a machine.
I still have some characters left, so I want to thank the community as a whole for letting me vent my inner rage. I don't have much ways to express myself on these matters, so for me DevRant is a bless.8 -
Next week I'm starting a new job and I kinda wanted to give you guys an insight into my dev career over the last four years. Hopefully it can give some people some insight into how a career can grow unexpectedly.
While I was finishing up my studies (AI) I decided to talk to one of these recruiters and see what kind of jobs I could get as soon as I would be done. The recruiter immediately found this job with a Java consultancy company that also had a training aspect on the side (four hours of training a week).
In this job I learned a lot about many things. I learned about Spring framework, clean code, cloud deployment, build pipelines, Microservices, message brokers and lots more.
As this was a consultancy company, I was placed at different companies. During my time here I worked on two different projects.
The first was a Microservices project about road traffic data. The company was a mess, and I learned a lot about company politics. I think I never saw anything I built really released in my 16 months there.
I also had to drive 200km every day for this job, which just killed me. And after far too long I was finally moved to the second company, which was much closer.
The second company was a fintech startup funded by a bank. Everything was so much better than the traffic company. There was a very structured release schedule, with a pretty okay scrum implementation. Every team had their own development environment on aws which worked amazingly. I had a lot of fun at this job, with many cool colleagues. And all the smart people around me taught me even more about everything related to working in software engineering.
I quit my job at the consultancy company, and with that at the fintech place, because I got an opportunity I couldn't refuse. My brother was working for Jordan Belfort, the Wolf of Wallstreet, and he said they needed a developer to build a learning platform. So I packed my bags and flew to LA.
The office was just a villa on the beach, next to Jordan's house. The company was quite small and there were actually no real developers. There was a guy who claimed to be the cto of the company, but he actually only knew how to do WordPress and no one had named him cto, which was very interesting.
So I sat down with Jordan and we talked about the platform he wanted to build. I explained how the things he wanted would eventually not be able with WordPress and we needed to really start building software and become a software development company. He agreed and I was set to designing a first iteration of the platform.
Before I knew it I was building the platform part by part, adding features everywhere, setting up analytics, setting up payment flows, monitoring, connecting to Salesforce, setting up build pipelines and setting up the whole aws environment. I had to do everything from frontend to the backest of backends. Luckily I could grow my team a tiny bit after a while, until we were with four. But the other three were still very junior, so I also got the task of training them next to developing.
Still I learned a lot and there's so much more to tell about my time at this company, but let's move forward a bit.
Eventually I had to go back to the Netherlands because of reasons. I still worked a bit for them from over here, but the fun of it was gone without my colleagues around me, so I quit last September.
I noticed I was all burned out, had worked far too much, so I decided to take a few months off and figure out what I wanted to do with my life. I even wondered whether I wanted to stay in programming.
Fast forward to last few weeks. I figured out I actually did want to work in software still, but now I would focus on getting the right working circumstances. No more driving 3 hours every day, no more working 12 hours every day. Just work close to home and find a company with the right values.
So I started sending out resumes and I gave one recruiter the chance to arrange some interviews too. I spoke to 7 companies in the span of one week. And they were all very interested. Eventually I narrowed it down to 2 companies and asked them for offers. And the company that actually had my preference offered me significantly more than I asked for, which settled the deal.
So tomorrow I'm officially signing with them, and starting next week I'll be developing in Kotlin, diving into functional programming and running our code in serverless environments. I'm very excited! -
Inspired by @NoMad. My philosophy is that technology is a means to and ends. We’re a tool oriented species. As it relates to software and hardware, they should be your means to achieve your ends without you needing to think. Think of riding a bicycle or driving a car. You aren’t particularly conscious of them - you just adjust input based on heuristics and reflex - while your doing the activity.
For a long time Software has been horrendously bad at this. There is almost always some setup involved; you need to front-load a plan to get to your ends. Funny enough we’re in the good days now. In the early days of GUI you did have to switch modes to achieve different things until input peripherals got better.
I’ve been using windows from 95 and to this day, though it’s gotten better it’s not trivial to setup an all in one printer and scan a document - just yesterday I had to walk my mother through it and she’s somewhat proficient. Also when things break it’s usually nightmare to fix, which is why fresh installing it periodically is s meme to this day. MS still goes to great lengths with their UI so that most people can still get most of their daily stuff done without a manual.
I started Linux in University when I was offered an intro course on the shell. I’ve been using it professionally ever since. While it’s good at making you feel powerful, it requires intricate knowledge to achieve most things. Things almost never go smoothly no matter how much practice you have, especially if you need to compile tools from source. It also has very little in the ways of safe guards to prevent you from hurting yourself. Sure you might be able to fix it if you press harder but it’s less stress to just fresh install. There is also nothing, NOTHING more frustrating than following documentation to the T and it just doesn’t work! It is my day job to help companies with exactly this. Can’t really give an honest impression of the GUI ux as the distros have varying schools of thoughts with their desktop environments. Even The popular one Ubuntu did weird things for a while. In my humble opinion, *nix is better at powering the internet than being a home computer your grandma can use.
Now after being in the thick of things, priorities change and you really just want to get things done. In 2015 I made the choice to go Mac. It has been one of my more interesting experiences. Honestly, I wish more distros would adopt its philosophy. Elementary only adopted the dock. It’s just so intuitive. How do you install an application? You tap the installer, a box will pop up then you drag the icon to the application folder (in the same box) boom you are done. No setup wizards. How to uninstall? Drag icon from app folder to trash can. Boom done. How to open your app? Tap launch pad and you see all your apps alphabetically just click the one you want. You can keep your frequent ones on the dock. Settings is just another app in launchpad and everything is well labeled. You can even use your printers scanner without digging through menus. You might have issues with finder if your used to windows though and the approach to maximizing and minimizing windows will also get you for a while.
When my Galaxy 4 died I gave iPhone a chance with the SE. I can tell you that for most use cases, there is no discernible difference between iOS and modern android outside of a few fringe features. What struck me though was the power of an ecosystem. My Mac and iPhone just work well together. If they are on the same network they just sync in the background - you need to opt in. My internet went down, my iMac saw that my iPhone had 4g and gave me the option to connect. One click your up. Similar process with s droid would be multi step. You have airdrop which just allows you to send files to another Apple device near you with a tap without you even caring what mechanism it’s using. After google bricked my onHub router I opted to get Apples airport series. They are mostly interchangeable and your Mac and iOS device have a native way to configure it without you needing to mess with connecting to it yourself and blah. Setup WiFi on one device, all your other Apple devices have it. Lots of other cool stuff happen as you add more Apple devices. My wife now as a MacBook, an IPad s d the IPhone 8. She’s been windows android her life but the transition has been sublime. With family sharing any software purchase works for all of us, and not just apples stuff like iCloud and music, everything.
Hate Apple all you want but they get the core tenet that technology should just work without you thinking. That’s why they are the most valued company in the world14 -
We have this one professor in a mathematics course.
He sits there having no plan of what he's doing. He literally opens his python Jupiterbook with latex enabled, writes a complex equation and tries to solve it in 10 minutes. Makes mistakes every few steps and deletes his formatted equation that isn't even interpreted yet (we see the cdot etc. instead of * which makes it even harder to read). Every few minutes some student corrects him and he deletes it again.
Why can't you just think first and then write and try to teach us?
Use as much time as you want as long as you don't have to keep reverting back the humanly unreadable latex equation.
Hell, you are also allowed to use a basic pen and paper. Trust me, that shit is more readable, even if you have a bad handwriting, than your squeezed in complex untranslated latex equation in Jupiterbook.
Btw. he also streams with no zooming in I might add.
Am I supposed to trying to read your small as shit, focus on what you're teaching while you keep making mistakes or write it down on paper and practice the given tasks?
On top of that, he records the zoom conference but he doesn't share it anywhere on the college forum so that people who have missed it can download it and rewatch it.
Everything he does makes no sense. How did he become a mathematics professor with a PhD?5 -
I tried LSD yesterday!
Backstory: I have a weird combo of bipolar type 1 and autism. During the day, my brain works inconsistently. Here how my day usually goes:
09:00. I wake up. Uninterested, cold, masculine. No thoughts in the background. No OCD.
12:00. Brain warms up. Thought process begins. Thoughts are short in their length
14:00. Thoughts start to get longer. Stress starts to accumulate. Background thoughts start, now typically 2–3 at a time.
16:00. Twitching begins. Thought chains are now 5–6 concepts long, one following the other. Perception level rises quickly. I start to feel more feminine. It is in this state that I start to spot imperfections and mistakes looking at code or text without reading it. I see it like a painting, and mistakes appear as “visually wrong” parts. This does not depend on formatting.
17:00. OCD becomes more severe. I HAVE to touch all the surfaces around me, evenly, as if my hands were text highlighters, and I had to paint everything evenly, without overlaps or spots that are brighter or darker than the others. Some surface textures become irritating, and feel quite unpleasant to the touch. If I go for a run now, like 3 km or so, I feel somewhat relieved.
18:00. Things are getting serious. Creativity levels through the roof. I speak in long, never-ending, profound sentences. Background and foreground thoughts almost become one. I appear visually drunk and happy, despite never drinking alcohol. Femininity rises even further. Sometimes, when I speak to a small group of people, especially if I go with friends to meet new people, and we go to some bar, new people ask to record my voice or to write down whatever I’m saying. To be honest, this reason alone is a huge boost to how I see yourself.
19:00. OCD is crazy now. Surfaces have soul.
21:00 <— Gotta take my meds and go to sleep here to prevent what comes at 22:00
22:00. All thoughts, both foreground and background, fully became one. Now my brain officially disobeys me and thinks on its own, and I can ride it like a surfer at best. Twitching becomes concerning. I develop a 1000-yard stare. I am officially a female. Physical strength is somewhat enhanced. Pain tolerance lowered significantly.
23:00. Derealization begins. The world around me appears two-dimensional and flat, like a picture. It is hard to get home on foot, even in close (less than one km) proximity. Brain is fully numb. All that thought monstrosity that was building up is just noise now. Zero “flops” available to think about something I want to think about, like how much money I have on me or what time it is.
I go to sleep. I see nightmares. I wake up, and the cycle repeats.
Contrary to a popular opinion, I never take any “brain-boosting” meds like antidepressants, and I think now you can see why. I consume neither alcohol nor caffeine. Neither me, nor my doctors want my brain to explode. I only take lamotrigine that helps to “lower down” mania, and quetiapine, a neuroleptic, that slows down my brain, like a neuroleptic. Both are there to slow down my brain, to kinda “throttle” my brain like a CPU to cool it down.
That said, 100ug of LSD just… brought me my usual 18:00 state, but in the morning?
All that small-dose recreational ordeal? The thing that helps people feel more energetic and creative?
People pay money… for that? To feel the way I feel every evening?10 -
(long post is long)
This one is for the .net folks. After evaluating the technology top to bottom and even reimplementing several examples I commonly use for smoke testing new technology, I'm just going to call it:
Blazor is the next Silverlight.
It's just beyond the pale in terms of being architecturally flawed, and yet they're rushing it out as hard as possible to coincide with the .Net 5 rebranding silo extravaganza. We are officially entering round 3 of "sacrifice .Net on the altar of enterprise comfort." Get excited.
Since we've arrived here, I can only assume the Asp.net Ajax fiasco is far enough in the past that a new generation of devs doesn't recall its inherent catastrophic weaknesses. The architecture was this:
1. Create a component as a "WebUserControl"
2. Any time a bound DOM operation occurs from user interaction, send a payload back to the server
3. The server runs the code to process the event; it spits back more HTML
Some client-side js then dutifully updates the UI by unceremoniously stuffing the markup into an element's innerHTML property like so much sausage.
If you understand that, you've adequately understood how Blazor works. There's some optimization like signalR WebSockets for update streaming (the first and only time most blazor devs will ever use WebSockets, I even see developers claiming that they're "using SignalR, Idserver4, gRPC, etc." because the template seeds it for them. The hubris.), but that's the gist. The astute viewer will have noticed a few things here, including the disconnect between repaints, inability to blend update operations and transitions, and the potential for absolutely obliterative, connection-volatile, abusive transactional logic flying back and forth to the server. It's the bring out your dead approach to seeing how much of your IT budget is dedicated to paying for bandwidth and CPU time.
Blazor goes a step further in the server-side render scenario and sends every DOM event it binds to the server for processing. These include millisecond-scale events like scroll, which, at least according to GitHub issues, devs are quickly realizing requires debouncing, though they aren't quite sure how to accomplish that. Since this immediately becomes an issue with tickets saying things like, "scroll event crater server, Ugg need help! You said Blazorclub good. Ugg believe, Ugg wants reparations!" the team chooses a great answer to many problems for the wrong reasons:
gRPC
For those who aren't familiar, gRPC has a substantial amount of compression primarily courtesy of a rather excellent binary format developed by Google. Who needs the Quickie Mart, or indeed a sound markup delivery and view strategy when you can compress the shit out of the payload and ignore the problem. (Shhh, I hear you back there, no spoilers. What will happen when even that compression ceases to cut it, indeed). One might look at all this inductive-reasoning-as-development and ask themselves, "butwai?!" The reason is that the server-side story is just a way to buy time to flesh out the even more fundamentally broken browser-side story. To explain that, we need a little perspective.
The relationship between Microsoft and it's enterprise customers is your typical mutually abusive co-dependent relationship. Microsoft goes through phases of tacit disinterest, where it virtually ignores them. And rightly so, the enterprise customers tend to be weaksauce, mono-platform, mono-language types who come to work, collect a paycheck, and go home. They want to suckle on the teat of the vendor that enables them to get a plug and play experience for delivering their internal systems.
And that's fine. But it's also dull; it's the spouse that lets themselves go, it's the girlfriend in the distracted boyfriend meme. Those aren't the people who keep your platform relevant and competitive. For Microsoft, that crowd has always been the exploratory end of the developer community: alt.net, and more recently, the dotnet core community (StackOverflow 2020's most loved platform, for the haters). Alt.net seeded every competitive advantage the dotnet ecosystem has, and dotnet core capitalized on. Like DI? You're welcome. Are you enjoying MVC? Your gratitude is understood. Cool serializers, gRPC/protobuff, 1st class APIs, metadata-driven clients, code generation, micro ORMs, etc., etc., et al. Dear enterpriseur, you are fucking welcome.
Anyways, b2blazor. So, the front end (Blazor WebAssembly) story begins with the average enterprise FOMO. When enterprises get FOMO, they start to Karen/Kevin super hard, slinging around money, privilege, premiere support tickets, etc. until Microsoft, the distracted boyfriend, eventually turns back and says, "sorry babe, wut was that?" You know, shit like managers unironically looking at cloud reps and demanding to know if "you can handle our load!" Meanwhile, any actual engineer hides under the table facepalming and trying not to die from embarrassment.36 -
Most memorable co-worker was a daft idiot.
this was 10 years ago - I was working as a junior in my very first job, fresh out of uni, for a very small startup. It was me, and the 3 founders, for a very long time. Then this old (45, from my perspective then..) dev was hired.
This guy had no idea how to do the job. no common sense. the code confused him. the founders confused him. I was focusing on my work - and was unable to help him much with his. His only saving grace? He was a nice guy. Really nice.
But why was he so memorable, out of all the people I ever worked with? simple. He had a short term memory problem. Could not, even if he really tried, remember what he did yesterday.... when I asked him what his issue was, he decribed his life is like a car going in reverse in a heavy fog. "I can only see a short distance backwards, with no idea where I'm going".
Startup was sold to a big company. I became a teamlead/architect. He? someone decided he should be a PM. -
Hi everyone, long time no see. Hope you're all doing fine! 💙
Here's an actual rant: I don't know if I chose the right university course, anymore.
I chose "Informatics", but there are so many subjects that aren't even related to Informatics, and still I have to do them because that's how it is. I just wanna do programming, because I like the creative aspect of it.
I'm getting sick of this to be honest... I'm at my second year, now, and I feel like maybe... I should've just studied programming on my own, and seek a job without going through university.
Though, that being said, I may just be temporarily having a bad time. I don't know, ok?
It seemed I did okay, in my first year, I completed 4 exams out of 7, but now I don't know anymore.
The exams for this semester's subjects are coming up in a couple months, and I haven't exactly learned much, y'know...? I couldn't follow most of what the professors said in the lessons, for whatever reason (some professors talk too quietly, some don't explain well, etc.).
What was your experience with university, if you ever went there? Did you find it helpful, or was it a waste of your time?
Thank you for reading. I hope my next post will be more joyful, sorry for being like this. Love you all! 💙7 -
!rant
Warning : This rant is long and is a rant asking for help and suggestions. If you will read and dont leave any comments, please go search other rants. Thanks.
-----------------------------------
Hi, fellow ranters. In our community, we have a tech class where teens (teens here mean 14yo -15yo) come to learn computer stuffs. Teens here are selected by a test and an interview. There are some teens who are f***ing awesome. One of them are proficient in scratch. (yeah, the orange cat) Another is awesome at PhotoShop, and the other loves windows xp. The teacher uses Microsoft Visual C++ IDE made in the 1990s. The kid sitting to my left made flappy bird with gamemaker. About 10 to 11 teens doesnt know what ctrl+alt+del does in windows and never did programming before... 3 among them always brings coke and oreos and eats super loudly. CRACK! And I bet no one knows about git.
Ok. Enough for the awesome teens. Now what we learn.
We learn C! Yes, C. We learned for, if else, switch and all those stuffs, then learned variables, which made other students who never did programming before be (―,.―).
Next class we will learn about functions in 3 hours. Then array and pointer in 3 hours. Thats it for c programming. Then we do some unnecessary stuffs and time for the finals.
We need to make a project with up to 4 teens as one team. Now I am asking you awesome ranters to suggest some projects for about 4 pros and 16 noobs can do. 10 hours are given in class and we can do in other times by ourselves in home. What should we do? I bet many of them will say to make ascii art in c which is dull and I have no thoughts of doing that.
Any thoughts will be appreciated.
Thank you for reading.
To see my skills, go to my profile page.
| Comments below
v17 -
Bloody scammers and bloody Paypal.
So I bought echo spot just to see how good it's voice recognition is and also wanted to see what the spot does different. So I found out that it was like hello world for AI. So I wanted to sell it on ebay-kleinanzeigen.de. It's a website from Ebay here in Germany where you can easily sell your stuff that you don't need anymore. I put it there and someone just wanted it so badly and he said that he broke his friends spot and he has no money and he need it very badly cheaper. My price was 98€ and I believed him and sold it for 85€. Now he got the device and wants the refund because the device doesn't match the description and the things he mentioned weren't even in the description. The message you see in the pic it says: It doesn't do skype and it is impossible on that device. First It is his responsibility to inform himself about the device features I'm not Amazon to write something like that in the description I've to just say how the device looks. Second it does skype and it is possible but both partners must have the same device and they should connect it to their smartphones.
But that is not the bad part that my money is ceased and got ownd by a scammer. The bad part is that I wanted to reply his message but the bloody paypal design won't let me do that. Remind me how old is paypal now? It's been there for ages and the footer is just stuck in the middle of the page and won't allow me to click on reply button. Of course I later managed to write a reply but paypal shouldn't have these kind of problems.
I'm so upset right now because these things are wasting my time. I've my final exame in a week and I've to develop a parameter based multilingual CMS, just imagine how long would just data structure take.1 -
Trigger warning:
Emotional !dev love life rant
I think this is not the right place to pour my heart out, but despite its more recent infights I still consider devRant to be a special community to me. And I guess if devRant is my goto place for support that's an issue. But maybe I just need to shout into a void because this is not about you solving this for me.
I have been in this relationship for ~6 years. My first great love. In the beginning, everything was perfect - a love story like from a cheesy movie. We've been through a lot to be together: Long distance, moving countries, a ton of bureaucracy (as she's from another country). So many memories.
It came as a surprise to me when she ended things. It really shouldn't have been. We've talked a lot about the reasons and I now see how much I've taken her for granted and neglected our relationship. I see now how I've been avoiding my problems and how I didn't work on my (mental and physical) health issues as good as I need to - not just for any relationship, but for myself. The regret/shame/guilt of not giving it 100% and of neglecting her weights heavily on me (besides the loss) and I am not sure what is worse.
Besides our relationship withering because of neglecting emotional needs, she also questioned our compability. We certainly have differences and different interests and we're both somewhat uncertain whether we really fit, if we ignore our history/emotions. It is actually a question that popped up in my head before sometimes, but I was too afraid to look into it for fear the answer is no. But here we are and ignoring that didn't help.
For now, we both need time to think about what we really want and whether this includes the other. We agreed that we need some distance to process the feelings. We still live in the same flat but for now she's staying with a friend most of the time and I'll also have a friend's place available soon. If in some time we both feel like we want to be together, we can date again - however she was also clear that she doesn't want to give any false hope and her current vision doesn't include me. If not, well have to hire a divorce lawyer. (Why you need a lawyer for that if both agree is beyond me.)
I am shattered. When it became clear to me that the relationship is over (and I ruined it), I got nauseous to the point that I threw up constantly for 6 hours. For the following 2 days I only cried and haven't eaten. Third day I started cleaning up the flat (long overdue!) - mostly for her tbh but I know it's good for myself, so better do the right thing with wrong motivation than sob all day -
talked to my psychiatrist and she brought some lunch which I could eat. Today (fourth day) she came over and we cooked lunch. I am still feeling terrible but the first days have been the worst I've ever felt and I've been trough quite a bit of (physical & chronic) pain - emotional pain hits different.
Let's see how this works out. In any case I now know very clear that I can't continue like before and need to work on my issues (for my own sake). I want be my best self, even if right now I don't have a lot of energy and am very depressed. I got an appointment with a therapist tomorrow - something I should have done years ago but I was overwhelmed with anxiety and analysis paralysis. I hope the future will be brighter and while I still wish to wake up from this nightmare and realize my faults without this breakup, I also know that I have to face reality.
PS: I do feel better now after writing this out. Thanks for listening, I guess.29 -
I interviewed for a Lead role at a popular energy producing company last week. The fucking retard that was interviewing me was multi tasking and only asked me a few questions. It was as if he was forced to do it. He came late and couldnt even introduce himself. He just started asking questions.
After about 2-3 questions, he asked me to tell him my current salary and my salary expectations. I told him to go fuck himself for the former and said i was open to negotiations for the latter. We said our goodbyes afterwards and the interview was terminated. The easiest I have done in a long time.
Fast forward to last friday, I received a call from someone in HR. She offered £60k. I couldn't believe what I heard, so I asked her to repeat the offer. She replied in the affirmative, £60k! I refused and told her I was hoping for £100k because that's like the average for the position I applied for. I could literally hear her gasp with shock when I said that. She replied by saying that's the kind of salary we pay people 2 levels above the one you have applied for! What the fuck I said to myself. Is your company that poor was all I could think of??? I couldn't believe what I was hearing. I told her to go and see if they can come back with an improved offer.
She sent me a mail this morning saying the best they can do is £75k. Oh no, for your troubles and mine, can you talk to HR and let them raise it £95k was my reply to her. She replied moments later, No. £75k is the final offer. C'mon, I presently earn more than that. I only want to leave my current company for new challenges.
Moral of the story: Politely ask for the salary range for the role you are applying for at the early stages. It saves both the employer and applicants having to go through an interview process only to be disappointed at the end.8 -
my day went to shit immediately... long night, got to sleep at 4AM, poked awake at 8AM, "hey wake up we gotta go to a town 200 miles away, dress like you're rich, we gotta go find a place to live for my new job" ugh, fine, got another 30 minutes or so of sleep in the car. We get there, the guy shows us a place that I physically can't fully stand up in and is like 600-some square feet for $750/month. Fuck that. We get halfway back home, "hey i forgot, we just finished renovating a new unit, come look!" goddammit gotta go BACK to the city... get there, it's a 2-floor 1200 square foot place for $675, a hell of a lot better. We leave to go see relatives in town, get a call, "hey hurry home your grandfather's hallucinating" we get there before an ambulance (we traveled 120 miles in less time than an ambulance took to drive 50 miles...) and my grandfather's hauled (by us, as the ambulance refuses to take him to the right hospital, they want to take him OUT OF STATE in an ambulance and he's not actively dying) to the VA in the city we were just in... he's immediately screened and his dementia has progressed to the point he needs to be in a nursing home in 12 hours somehow. I have no idea either. Anyways, we're about 3/4 of the way back home and it's now 2:40AM. My dad's been driving for 18 hours pretty much straight. I'm still awake, he's wired (the worst possible state to be in while driving) and family drama has happened as family members are already trying to take the land my grandpa lived on AND HE'S LITERALLY ONLY BEEN GONE FOR 6 HOURS.
so how was your day?7 -
Tried flutter for the first time in life, for 2 days, java based Android dev here.
I have some.... thoughts...
Flutter does not feel extremely new to me. It is very much relatable if you have ever tried basic the spring/ other java based gui framework. It is trying to achieve the goods from multiple worlds,its so far good, but mann its playing on thin ice.
Flutter : Yo boy embrace me. I am the beauty. checkout my hot reload.
Me :❤️❤️😍 (But wait. your first execution is wayy longer than a simple android studio build. And AS would generally take smaller time after every rebuild. And you are going to take the same long time as first build, if app gets closed or my usb gets accidentally removed. So I see what you did there ;))
Flutter: Ha. Checkout my function passing as parameter. ever thought your puny java going to give you that?
Me :you got me ,❤️. (Although this style is not so uncommon with web devs)
Flutter: everything is a widget, everything is stateful or stateless, Single Streams FTW!
me: ❤️
Flutter:You kotlin devs are gonna love me, i got Small, concise code
Me: Now wait, This is a thin ice for me, okay? I hated when kotlin replaced everything with symbols & lamdas for a confusing but small code, So be careful,even though your code is still good.
Flutter : Control every pixel , dear! No more xmls!
Me : Yes, what is with that? are we accidentally going in the past?
Java desktop apps, spring framework used to build whole layouts with programming language. The day i stepped into Android, it was xml for ui and java/kotlin for code. was that a bad decision or is this one?
Anyways i liked my stuff seperated, but that's just me.
Flutter : Ugh so much whining. Are you going to work with me or not?
Me : Yes mam! ❤️4 -
So first of all merry delayed Xmas and of course wishing you all a happy new year.
Now...
I always loved designing and coding, yes I actually like it, I must be absolutely mental or something.. I finally after pushing myself through hours upon hours of courses, finishing most within 15% of the allotted time, and doing more then was requested, I finally found a job, related to front-end development. You might think "Gee; good for you buddy, you filthy commoner.." Well; it didn't last all too long, I basically after nailing the interview process got my first day there within a few days, now I am absolutely stoked and my nerves are shot, plus the 4 cups of coffee aren't helping. I literally was so nervous to do well on my first day, that I slept for only one hour, literally one bloody hour.
I get into the office where I am greeted by an amazing laptop, I mean high-end gaming 360 no-scope all over the place gaming. I sit down and start on getting all my tools ready to go (they let us use whatever IDE we wanted, which I thought was amazing) after getting my IDE and the plugins and all the emails/Slack etc setup, I then get told to get a Dropbox account. I assumed the Dropbox account was just there to share things quickly with the designers, we would obviously be using Git right?! Well; no not exactly, actually not at all - we all used the Dropbox account of one of the bosses, I swear everybody pushed and pulled stuff all the time, a copy of the boss's passport was in there as well, and they had projects from and up to 3 years ago, still in there... It took my Dropbox 3 bloody hours to grab as much as it could to actually allow me to get started...
I then to my absolute dismay notice that I would be working on a prefab of a prefab, basically the only thing I would be responsible for, is to adjust the animations and aligning elements.... Aligning and animations.... Fine, I guess it could be worse right? Started going along with it, using a framework that I never heard of before, till like a good 3 days before starting there called "Greensock" which is amazing I must admit, could've helped me allot on my solo-projects. Problem was; we had designers who wanted things, that just looked plain horrible, it was never 'on-point' so to say, maybe it's just me being a perfectionist but it just looked wrong.
Finally got it done after struggling with the prefabs and what not, then the day was almost over and I finally got to go home, fortunately dodging the drinking that was occurring around 4 in the afternoon in the middle of the office, it wasn't beers or anything of the sort - but hard liquor along the lines of Wodka and straight up Gin. I fortunately had a personal issue I had to attend too, so I got out of there before things got too crazy and they went out for dinner stumbling all over the place.
Well this wen't for a few more days (minus the drinking), with 8 being the exact number of days and my grievance list only kept growing. I was for one a junior-developer and thus with them knowing was supposed to get training from our lead, however; that never occurred instead said 'lead' would leave early or be completely absent on most days, leaving me to mess around with prefabs that did my head in, with no comments nor any indication what it did or should've done, I spent hours just adjusting one line of code at a time to see what would happen.
Eventually they told us to work from home only, so I did - did a project here and there and then got told they wouldn't keep me on board any longer, stating I was too inexperienced and they didn't have enough work (which was a load of bs) and that I lacked "office experience" whatever the heck that means, I was always sociable and hell I ever cracked people up, kept a neat and orderly list of things that needed doing, I even contrary to most commented on my code, so the next poor sod wouldn't be going through 'try by error' hell that I wen't through.
Either way; I currently have been feeling absolutely wrecked in terms of motivation, that job would've solved my financial situation and allowed me to finally do what I wanted to do. Instead of doing some random dead-end job each week or month, I would've had a steady income and something I could've built on.
But to add some positivism to this endless and too long of a rant... I'm currently going through a boot-camp and doing a small Linux based course on the side, this little thing isn't going to hold me back; yeah it will be tough, but then again most things don't come easy..
Thank you for reading and I hope you have allot and I mean allot more luck on your first job.5 -
Ok I know there have been a lot of similar rants to this one, but now I have to write one by myself!
Fuck freelancer.com or whatever that shit is called. I once started using it when I was in school because I thought it was a convenient way to earn money on the side without fixed work times, so I could adjust to how much time I have. But soon I realized that wouldn't happen. It is easy for me to make a website, I have written some css templates from scratch and can apply them, but when will these cocksucking assholes learn that $25 for a website is not only a joke, but a fucking insult? Or a logo for 4? In his video on fiverr, pewdiepie has a point on the thing where he said that you can shit out a logo in 2min and make an easy 4 to 5 bucks, but I like doing things more properly and I bet those fuckers will give you shit for not designing the perfect logo. I once accepted a job where I ended up busting my ass 3 days log for $100 and I thought that was the normal mess at the beginning, before you have former customers rate your profile, but I got perfect ratings and still didn't get or even find any proper jobs. Most are complete shit, like write a fucking book for me or design a fucking Website or pull a logo out of your ass, but some projects are just rediculous. I once saw a project where they wanted some engineer to do the layout for the pipes in a huge processing plant. Yeah, because engineers are so poor and unemployed, even when they are entrepreneurs they dont go to those shity sites. Since I am actually qualified for such a job, I applied just to see if I could land a job that is actually not shitty, but of course it turned out the person had no idea what he was talking about. It is basically a platform where people can pay you in exposure. And the absolutely fucking worst thing about it is that they get away with it. There are always a ton of people, mostly from countries where cost of life is significantly lower, who flood the freelance market with cheap, presumably horrible logos, mobile apps, websites, texts and apparently pipeline layouts. I haven't found a similar platform but where there are only high quality biddings. But that is something that I would love to use.
Sorry for long rant, no potato.1 -
Bittrex is "amazing"...
I had lost my 2FA a long time ago (as my phone fried) and missed the account ferification deadline which caused my account to get disabled. Off we go to support!
0. Nothing to rant about at this point. I just created an account in their zendesk, logged in and logged a ticket to reset my 2FA and reactivate my account. They asked me for info, I provided it to them and got my 2FA disabled. Hooray!
1. I then asked to reenable my account. They sent me a link to restart the verification process. I open up that link and log in. I'm asked to upload some photos. I select requested photos from my galery and hit [UPLOAD]. An error pops up saying that smth wrong happened and I need to reload that site and reupload my photos. After page refresh they are telling me they are validating my uploaded info (w/o any way to resubmit my info, which, according to the error seen below, was not successfully submitted in the first place)...
2. So I reach out to the support guy again. Guess what he replies! He says he's sorry but he cannot help me any more and I need to create a NEW ACCOUNT in their support site with the same email <???!!!???>
3. I try to log in to the support portal and my access no longer works. MY ACCOUNT HAS BEEN DELETED! WTF!!!
4. I do as I'm told and create a new acc with the same email. Now I can log back in. So I'm raising a new ticket saying I still cannot finish my verification process due to the same error. It looks like it's going to be a fun ride with them so I can't wait to see what they'll reply.2 -
It is the time for the proper long personal rant.
Im a fresh student, i started few months ago and the life is going as predicted: badly or even worse...
Before the university i had similar problems but i had them under control (i was able to cope with them and with some dose of "luck" i graduated from high school and managed to get into uni). I thought by leaving the town and starting over i would change myself and give myself a boost to keep going. But things turned out as expected. Currently i waste time everyday playing pc games or if im too stressed to play, i watch yt videos. Few years ago i thought i was addicted, im not. It might be a effect of something greater. I have plans, for countess inventions, projects, personal, for university and others and ALL of them are frozen, stopped, non existant. No motivation. I had few moments when i was motivated but it was short, hours or only minutes. Long term goals dont give me any motivation. They give as much short lived joy, happines as goals in games and other things... (no substance abuse problems, dont worry). I just dont see point of my projects anymore. Im sure that my projects are the only thing that will give me experience and teach me something but... i passed the magic barrier of univercity, all my projects are becoming less and less impressive... TV and other sources show people, briliant people, students, even children that were more succesful than me
if they are better than me why do i even bother? companies care more for them, especialy the prestigious ones, they have all the fame, money, funding, help, gear without question!
of course they hardworked for ther positions, they could had better beggining or worse but only hard work matters right?
As i said. None of my work matters, i worked hard for my whole life, studing, crafting, understanding: programming, multiple launguages, enviorements, proper and most effcient algorithms, electronic circuits, mechanical contraptions. I have knowlege about nearly every machine and i would be able to create nearly everything with just access to those tools and few days worth of practice. (im sort of omnibus, know everything) But because had lived in a small town i didnt have any chances of getting the right equpment. All of my electronical projects are crap. Mechanical projects are made out of scrap. Even when i was in high school, nobody was impressed or if they were they couldnt help me.
Now im at university. My projects are stagnant, mostly because of my mental problems. Even my lifestyle took a big hit. I neglect a lot of things i shouldnt. Of course greg, you should go out with friends! You cant dedicate 100% of your life to science!
I fucking tried. All of them are busy or there are other things that prevent that... So no friends for me. I even tried doing something togheter! Nope, same reasons or in most cases they dont even do anything...
Science clubs? Mostly formal, nobody has time, tools are limited unless you designed you thing before... (i want to learn!, i dont have time to design!), and in addition to that i have to make a recrutment project... => lack of motivation to do shit.
The biggest obstacle is money. Parts require money, you can make your parts but tools are money too. I have enough to live in decent apartment and cook decently as well but not enough to buy shit for projects. (some of them require a lot or knowlege... and nobody is willing to give me the second thing). Ok i found a decent job oppurtunity. C# corporation, very nice location, perfect for me because i have a lot of time, not only i can practice but i can earn for stuff. I have a CV or resume just waiting for my friend to give me the email (long story, we have been to that corp because they had open days and only he has the email to the guy, just a easier way)
But there are issiues with it as well so it is not that easy.
If nobody have noticed im dedicated to the science. Basicly 100% scientist that want to make a world a better place.
I messaged a uni specialist so i hope he will be able to help me.
For long time i have thought that i was normal, parent were neglecting my mental health and i had some situations that didnt have good infuence on me as well. I might have some issiues with my brain as well, 96% of aspargers symptoms match, with other links included. I dont want to say i have it but it is a exciuse for a test. In addition to that i cant CANT stop thinking, i even tried not thinking for few minutes, nope i had to think about something everytime. On top of that my biological timer is flipped. I go to sleep at 5 am and wake up at 5pm (when i dont have lectures).
I prefer working at night, at that time my brain at least works normaly but i dont want to disrupt roommates...
And at the day my brain starts the usual, depression, lack of motivation, other bullshit thing.
I might add something later, that is all for now. -
Long time ago i ranted here, but i have to write this off my chest.
I'm , as some of you know, a "DevOps" guy, but mainly system infrastructure. I'm responsible for deploying a shitload of applications in regular intervals (2 weeks) manually through the pipeline. No CI/CD yet for the vast majority of applications (only 2 applications actually have CI/CD directly into production)
Today, was such a deployment day. We must ensure things like dns and load balancer configurations and tomcat setups and many many things that have to be "standard". And that last word (standard) is where it goes horribly wrong
Every webapp "should" have a decent health , info and status page according to an agreed format.. NOPE, some dev's just do their thing. When bringing the issue up to said dev the (surprisingly standard) answer is "it's always been like that, i'm not going to change". This is a problem for YEARS and nobody, especially "managers" don't take action whatsoever. This makes verification really troublesome.
But that is not the worst part, no no no.
the worst is THIS:
"git push -a origin master"
Oh yes, this is EVERYWHERE, up to the point that, when i said "enough" and protected the master branch of hieradata (puppet CfgMgmt, is a ENC) people lots their shits... Proper gitflow however is apparently something otherworldly.
After reading this back myself there is in fact a LOT more to tell but i already had enough. I'm gonna close down this rant and see what next week comes in.
There is a positive thing though. After next week, the new quarter starts, and i have the authority to change certain aspects... And then, heads WILL roll on the floor.1 -
Long long time ago when recharge coupons we a thing, I used to try out more codes in the series and waste my time. After failing a lot over this, I started trying out different USSD codes to see what other stuff is out there. This got me to stumble upon facebook and twitter on USSD. I'm not sure now but, twitter was probably *515# from my carrier.
Facebook. I remember chatting for quite a long period using this. Very slow and limited yet, fun. The USSD message expires within ~60secs. so you have to type the chat message before that or you lose everything you typed. The phone was no smartphone that would allow me to copy the text from the USSD input. On top of that panic, was a character limit to these messages. I remember hitting send while being midway through a message just so I don't lose what I typed, on a T-9 keyboard. Still miss those!
The person on the other side would receive a half message due to this, and would start replying without any patience, to which I panicked as now there's a new thing to respond to, and a half message which I'm waiting to complete.
Later over the weekend when I was allowed to visit the cyber cafe for an hour or two with 15-30 INR, reading the chat threads, being able to use the five sticker packs:) and thus continuing on a computer was fun. But, as the time at the cafe expires, I had to immediately shut off my session or I'd be charged more. Thus, I was left in the middle of a conversation again, and had to continue over USSD.
Using social media without any internet like this was quite fun in a weird way. If I get a new message, I'd get a USSD alert, and then an sms if I didn't reply in some 10-15mins!
This had all the features like like and comment. Friend requests too. For the posts in a "timeline" which was new and fancy in those days, all you see is the caption of a post which also gets truncated quite a bit as USSD also has to show it's options like:
1. Like
2. Comment
3. Next Post
4. Main Menu
This was around '13 or '14 I guess. After which I later got my first computer- a laptop. Anyways, the tactile feel of pressing the buttons on a T-9 keypad is nostalgic to me. 😅 And if you were a pro at texting, u must hv used shrtcts lyk dis too w/ emojis lyk :-) <3 -
Wow man. Can the day get any worse
Mother fucker creator of Android. Now I'm A long time android user, but
Android+Snapdragon 6XX chip+Moto= worst combo ever. Damn you creators, may You be deepfucked by a mad bison in heat. Cocksuckers.
The heat my Moto X play generates, I could make an omelette on top of it. And the newest feature, where you try to type, but you can't see anything happening, when 30 secs later, you suddenly start seeing the after images of all the buttons you pressed, all the text you typed. Why maybe I typed at the speed of light and android couldn't keep up. No.
NO! You dumb fuckin POS. NO. I threw my phone 20ft, broke the tempered glass. The case protected this shit. Once I can save enough, I'll either sell a kidney and get an iPhone or even better a OP5.
Nothing disgusts me more than slow hardware.12 -
Stupid stupid stupid API that returns a 204 on failed validations.
Informative docs? Hell no! Here's a few hundred long-ass field names that you need to pass as a JSON.
Doesn't work huh? Yeah, you're structure's all wrong. Some of these are grouped in vaguely named keys like "Wholesale".
Oh you need those as well? Yeah, you can see the whole structure if you try to GET an object.
Oh you need an ID to GET an object? Yeah you can just go ahead and create as many as you want. This is just a sandbox API, it's cool.
Oh that's not the point? Ahh you need the structure to be able to create one! *haha* Right, I'll get back to you on that.
* Email correspondence over 2 weeks time. I have still yet to be able to make a an actual successful request. The fucking 204 doesn't count if it doesn't actually create the resource.
Fucking fucky fuckity fuck fuck fuck.
I swear to god if I ever meet this guy in person, I will probably buy him coffee or beer and have a long talk about how to build proper REST APIs.
Because I'm nice like that.8 -
I hate people who think they are always right.
A coworker who seemed to be a friend turns out to be an emotionally needy narcissist who seems to think that he is a perfect human being and is the best example of how to live.
Long story short is that we did some bonding via alcohol and smoking cigarettes. Especially when I was in a bad period in my life where I had little self confidence, was in a bad financial situation and overshared many details abound my personal life.
And yeah we also work as software devs in the same team but I started avoiding working with him directly, because due to his seniority he overcomplicates things a lot to the point where stuff gets postponed for months. Meanwhile I am a simple guy, I do my tasks and if they are not up to the standard I just work on the feedback until Im up to the standard, thats it. Its just a job for me, for him its a way of life and he considers himself to be basically an artist.
Hes always trying to prove me something, showing that the "long way" is the best way and so on. In reality I dont give a fuck about him. I live my own life and I have my own priorities. I work fulltime in one job, also I work part time as a freelancer and in total I make about 20 percent more than he does. Previously before this job I owned my own company where for 2 years I ran my own projects which generated a decent revenue. I know what is hard work and how to sacrifice myself in order to achieve results. I am more pragmatic and I have some limitations of what I can be good at (since I have a shitty working memory due to my ADHD). So I have systems in place and bottom line is that I earn a decent living and my skillset is different. Yeah I agree that in some ways he is better than me, but dude has such a massive inflated ego that now he thinks that he unlocked some sort of universal wisdom and now hes suddenly experienced in every field of life and his opinion is the right one.
This guy takes a massive pride in how good software engineer he is and in every topic or interaction he tries to one up me. Which most of the time is just his preference or in order to gain a 0.0001 percent performance increase. Dude is basically a big walking ego and since "we are close now" his ego started bleeding into personal relationship.
In my personal life, Im in a stable relationship, thinking of proposing soon and getting married. I already co-own an apartment with my current girlfriend. Everything is serious and planned, Im soon to be 30 years old. He is the same age but he still thinks hes young hot shit and all he cares about is getting shitfaced a couple times a week after work and he doesnt really have any other hobbies. He has a girlfriend but I dont see any future in there TBH.
So what I did now is I started putting some distance between us. No more drinking every week with him, maybe maximum once in 2 or 3 weeks. I started working from home more. Also I stopped sharing my personal life with him. Each time when he thinks he is right I just go along with it and dont even pay attention to his emotional manipulations. I just hope one day he fucks off completely and I wont give in to his gaslighting. Maybe in a few months I will be leaving this job, so I will never have to deal with him again.
Lesson learned: dont be vulnerable to coworkers who you bond together only via alcohol.3 -
I still do exist, long time no see, fellow Devs! How is it going?
Didn't posted here in long time. Anything new relevant? I just started studying at an university. Hoping to post again here.14 -
After reaching the pinnacle of my latent burnout and mental overload lately I quit and managed to get paid leave for the rest of the notice period through hr as I told them I'm not able to work for them anymore and else had to go on sick leave. My brain just had to have a clean cut and blocked me from
getting into their overcomplex and shitty, unplanned projects as I see no value in doing anything for them anymore. I gave them all my access keys and a small handover, but it was clear that they would run into problems without me, cause I've been doing like 5 jobs there due to developer shortage. Now I still get requests from my manager even though I had an operation and spent last week in the hospital and am still recovering for the next two weeks. He's still trying to build pressure as if it was my fault that we never got time to document stuff properly and automate things that have to be automated. He ignored every recommendation I made in past to ensure that things keep running when I leave, as I always knew that I wouldn't do this shit for long. It was always more important to please bosses ever-changing requests and stupid whims as fast as possible at the cost of quality, pressuring us into putting projects live at 80% to meet random deadlines we had no say on. What a fucking asshole trying to put the responsibility on me now. Not my problem anymore. Have fun finding someone else taking over that shithole of an underengineered software-architecture. I'm out!1 -
Does anyone work on a team with multiple stacks?
For example we have batch jobs in Java but also have a JS front-end and APIs.
How do you divide the developers and the work across these projects?
Currently everyone does everything but I feel like this is inefficient and hard to develop expertise. And different people or even the same person will make the same mistakes over and over again because they don't know how to do X or they forget or overlook some quirk. When I switched Beck to JS took me like a week to get a Promises nailed down again. And this morning someone else had a production bug and couldn't figure it out. But when I looked at the code I could pretty much see where an issue could be (uncaught exception in a promise)
Also the testing frameworks are very different and there's a lot of infrastructure technical debt, things that really should've been done a long time or fixed but no one had the time or expertise to do it or notice it (until it causes a production issue and then everyone is like WTF is happening??!!!!).
I'm not the manager but I always feel that the team needs to be split along the language lines and specific people need to own these projects to review and code changes for all these common newbie errors. And also developer enough expertise to foresee problems before it becomes a production issue.9 -
DevRant-Stats Site Update:
Made some changes.
After a long time with no updates, I decided to finish up my DevRant-Stats Project and do all of my Todos.
First, I added a way to request adding a user if he is not found. (Just search for your name, wait, then click "OK")
So even non-DevRant++ are now able to see their stats.
I also added @dfox and @trogus, though there is not a lot of interesting data yet...
Second, I added a "Details" section and changed the "Other" section a bit. For example I'm using an image for "Latest Rant" and other stuff.
Link: https://devrant-stats.github.io/
Just check it out!
Have fun!
~ Skayo11 -
It had been too long that I had a nightmare that I wished I never had. I had one this early morning.
I was in a foreign metropolitan city with public transport trains, skyscrapers and everything. I had no phone, no cash, no card. I could have asked help from the people I see on the street but in the dream I missed that notion. I was fine for first few hours (dream time) walking along just by myself and gradually the panic mood sunk in. I was alone with no help right in the middle of broad day light among people at a busy city.
Now that I have written it down, it doesn't sound that scary at all. There was no ghost nor paranormal activity involved, no accident, no scary height, no fire, no drowning, nothing really scary at all.
I was totally scared shitless in that dream though.4 -
Sooooo ok ok. Started my graduate program in August and thus far I have been having to handle it with working as a manager, missing 2 staff member positions at work, as well as dealing with other personal items in my life. It has been exhausting beyond belief and I would not really recommend it for people working full time always on call jobs with a family, like at a..
But one thing that keeps my hopes up is the amount of great knowledge that the professors pass to us through their lectures. Sometimes I would get upset at how highly theoretical the items are, I was expecting to see tons of code in one of the major languages used in A.I(my graduate program has a focus in AI, that is my concentration) and was really disappointed at not seeing more code really. But getting the high level overview of the concepts has been really helpful in forcing me to do extra research in order to reconnect with some of the items that I had never thought of before.
If you follow, for example, different articles or online tutorials representing doing something simple like generating a simple neural network, it sometimes escapes our mind how some of the internal concepts of the activity in question are generated, how and why and the mathematical notions that led researchers reach the conclusions they did. As developers, we are sometimes used to just not caring about how sometimes a thing would work, just as long as it works "we will get back to this later" is a common thing in most tutorials, such as when I started with Java "don't worry about what public static main means, just write it up for now, oh and don't worry about what System.out.println() is, just know that its used to output something into bla bla bla" <---- shit like that is too common and it does not escape ML tutorials.
Its hard man, to focus on understanding the inner details of such a massive field all the time, but truly worth it. And if you do find yourself considering the need for higher education or not, well its more of a personal choice really. There are some very talented people that learn a lot on their own, but having the proper guidance of a body of highly trained industry professionals is always nice, my professors take the time to deal with the students on such a personal level that concepts get acquired faster, everyone in class is an engineer with years of experience, thus having people talk to us at that level is much appreciated and accelerates the process of being educated.
Basically what I am trying to say is that being exposed to different methodologies and theoretical concepts helps a lot for building intuition, specially when you literally have no other option but to git gud. And school is what you make of it, but certainly never a waste.2 -
So I got in contact with a recruiter who said they have a possible job for me. The catch is it's in c# (I am a python java dev) and that there is a assessment test for the language to test for competency. I told the recruiter that's fine but I would need a week to highlight the main differences between the two languages and at least do a couple of educational programs for my learning sake. All was fine and that was the plan.
The next day the recruiter notifies me that the test is being called off on account of the company being swarmed. So the recruiter then proposes another similar test (in c#) the recruiter will use to measure my skills and that the recruiter will send the test via email that same day. Later that day I check my email and don't see the test. So I message the recruiter and never get a response. Next day comes and I decide to give the recruiter a call; no response. I then wait until the next day and message him on linkedin that I still needed the test. Linkedin was showing he read the message, but of course didn't respond.
I told my brother about this and he said to send a message saying: "Hi [recruiters name] because of the lack of further feedback I decided to go with another opportunity. Best regards, Lane"
After I send it I get a message the next day from the recruiter saying: "Hey, sorry I haven't gotten back to you. We had to install a new phone system yesterday so it was a busy day."
"I'm going to send it to you today so that you can look at it over the weekend. "
I can't help but think the recruiter is full of shit, but I may be jumping to conclusion. I know they can have a busy schedule, but if you have time to look at a message on linkedin how long would it take to type a short message explaining what's going on? I would like to know any opinions or insights on this.10 -
iOS is rotting my soul.
I've been a user of iPhone for 6 years now. For the first couple years, I wasnt really mindful of software I use, or I guess I didnt really care. As long as it did the bare minimum, I.e. bank app, call, text, browse, watch youtube vids, I didnt really care. However, in the last couple years, ive become very interested in tech and have worked on small developer projects, spent a lot of time coding in my free time, found really inspiring software and apps on my regular computer that just blow my mind on how advanced they are, and how I, some dumb guy with internet access, can just download it on my PC and use it.
This led me into a kind of software honeymoon phase, where I created a shiny new Github account and started exploring what other cool tools are just out there, available to me for free. My software honeymoon was spent on the beaches and resorts of the open-source software ecosystem. Exploring the gem-bearing caves and beautiful forests of anything from free open-source OCR programs(I needed it to convert my dads manuscript from scanned PDF .jpeg's to actual UTF8 text) to open-source RGB lighting/keymapping software to escape the memory-and-CPU-hungry(and most likely advertising-ID-interested) proprietary software that comes with the brand of mouse/keyboard/controller/etc.
It was like I was a kid exploring Disneyland for the first time or something. But then... then... I got off my computer. Picked up my phone to check notifications. Ew, tinder is blowing up notification center with marketing shit. I go to settings. Notification settings. Tinder's at the bottom so I just want to use a search bar instead of scrolling. There's no search bar. Minor inconvenience. Dark mode isnt dark enough for me. I guess thats just too damn bad, because for the next two hours, I'll have to figure it out by messing with accessibility settings. Time for bed, and I'm just getting plum tired of having to turn on my alarms every night for work the next morning. So I used the 'Automations' app to do it for me. For the next two weeks, at the time specified, 'There was an error running your automation' until I just delete the automation. Browsing through the FaceID settings, I see 'Attention Aware Features'. Cool, maybe now my phone won't automatically dim the screen when im in the middle of reading notifications on my lock screen. Haha, nope still does it. After turning on my alarms, I go to sleep. I wake up an hour late for work because those handy 'Attention Aware Features' silenced my alarm immediately because I fell asleep watching a youtube video.
I could go on and on. Its actually making me feel depressed typing this on my phone, fighting with Apple's primitive autocorrect and annoying implementation of Swype to type.4 -
A dev life in Queen songs:
„A Kind of Magic“ - Build successful
„A Winter’s Tale“ - Key Account Manager visits customer
„Action This Day“ - Release day
„All Dead, All Dead“ - System down
„Another One Bites the Dust“ - kill -9 4711
„Breakthru“ - 10 hour debuging session
„Chinese Torture“ - Microsft Office
„Coming Soon“ - Client asks for delivery date
„Dead on Time“ - shutdown -t 10
„Doing All Right“ - How's the progress on the new feature?
„Don’t Lose Your Head“ - git push -f
„Don’t Stop Me Now“ - In the zone
„Escape from the Swamp“ - Hand in resignation letter
„Forever“ - while(1)
„Friends Will Be Friends“ - friend class Vector;
„Get Down, Make Love“ - No rule to make target "Love"
„Hammer to Fall“ - Release day
„Hang on in There“ - 2 weeks until release
„I Can’t Live With You“- Microsoft
„I Go Crazy“ - Microsoft
„I Want It All“ - Google
„I Want to Break Free“ - free( (void*) 0xDEADBEEF );
„I’m Going Slightly Mad“ - Impossible feature requested
„If You Can’t Beat Them“ - Impossible feature promised by sales
„In Only Seven Days“ - Impossible feature ordered
„Is This the World We Created...?“ - Philosphic moments
„It’s a Beautiful Day“ - Weekend
„It’s a Hard Life“ - Weekday
„It’s Late“ - Deadline was last week
„Jesus“ - WTF?
„Keep Passing the Open Windows“ - Interprocess communication
„Keep Yourself Alive“ - Daily struggle
„Leaving Home Ain’t Easy“ - Time to get up and go to work
„Let Me Entertain You“ - Sales meets customer
„Liar“ - Sales
„Long Away“ - Project start
„Loser in the End“ - Dev
„Lost Opportunity“ - Job ad
„Love of My Life“ - emacs/vim
„Machines“ - Computer
„Made in Heaven“ - git
„Misfire“ - Unhandled exception at Memory location 0xDEADBEEF
„My Life Has Been Saved“ - Google drive/Facebook
„New York, New York“ - Meeting at customer
„No-One But You“ - Bus factor = 1
„Now I’m Here“ - Morning rush hour
„One Vision“ - Management goals
„Pain Is So Close to Pleasure“ - NullPointerExcption
„Party“ - Delivery completed
„Play the Game“ - Customer meeting inhous -
„Put Out the Fire“ - Support hotline
„Radio Ga Ga“ - GSM/GPRS/UMTS/LTE/5G
„Ride the Wild Wind“ - Arch Linux
„Rock It“ - Linux
„Save Me“ - CTRL-S/CTRL-Z
„See What a Fool I’ve Been“ - git blame
„Sheer Heart Attack“ - rm -rf /
„Staying Power“- UPS
„Stealin’“ - Stack Overflow
„The Miracle“ - It works
„The Night Comes Down“ - It doesn't work
„The Show Must Go On“ - Project cancelled
„There Must Be More to Life Than This“ - Philosophic moments
„These Are the Days of Our Lives“ - Daily routine
„Under Pressure“ - 1 day until release
„Was It All Worth It“ - Controlling
„We Are the Champions“ - Release finished
„We Will Rock You“ - Sales at customer
„Who Needs You“ - HR
„You Don’t Fool Me“ - Debugging session
„You Take My Breath Away“ - rm -rf /
„You’re My Best Friend“ - emacs/vim4 -
Set some dev goals..
TLDR: spend less time at work coding
No, really..for what I do at work, I am happy. Would like to learn more recent stuff (partially stuck with vb.net), but I don't even know where to start googling.. sooo... get more free time I guess to figure this out..which is a dev goal on it's own too, come to think of it, this translates as don't spend so much time at work coding.. and spend some of it learning new (dev related) things outside of work..new/different js frameworks, python (been fixing/adding some code here & there, but never learned it properly & to check it's full potential, I heard it is awesome btw), read up on algorithm time costs (learn how to fuckin spell this!!)...
And kinda dev related as I will have to spend less time at work is to get back in 'sort of' shape and climb (more)..and spend more quality time with my husband, who is too good, totally supports me & my work, so I never get to hear him nag I was working late, which leads to 'stop working so long' goal I rly need to get in order or I'll burn out again, and I'm bitchy and horrible whe BO..and we don't wanna see that again..
Sum up: work less, learn new things, climb more, be happy/content.1 -
Long time no see...
My first ever research paper was selected a few months back. Never been to a foreign country, but COVID fucked the plans... Conference on mid June.
The paper will be in press after the conference.
Conference: EuCNC 2020
Paper name: RFF Based Parallel Detection for Massive MIMO
Noice5 -
TLDR;
I remissness about Yahoo site builder and talk about finding the record of the Google search that changed my life a long time ago and I think it's fucking great.
Earlier I re-installed google chrome but unlike every other time, this time I forgot to turn off the auto-sync feature. I only realized this when I opened gmail and it pre-populated my login info with the info of my very first, long forgotten gmail account.
So naturally I went exploring... after going through the mails I decided to check out the actual Google account to see if there was anything of interest there and lo and behold I found around 7 years of browsing history that I had no idea Google stored at the time.
As scary as it was to see I'm kinda glad about it now because aside from finding out that I was going through an Asian porn phase in 2008 I also found the one Google search record that changed my life.
It was a search to download Yahoo site builder followed by a bunch more on how to use it.
I had stumbled across a random article about it and it caught my eye because I needed a website for the grocery store I was a manager of back then.
Thankfully it was a fucking horrible WYSIWYG editor. I recall it acting almost identical to Word at the time - I would save and back up my site constantly because moving something 1px would fuck the layout up and burn everything to the ground, cntrl+z would try and do something, reversing only my last action while leaving the rest of the site in tatters and I didn't have the skills to understand or fix it...
Ultimately my frustration led me learn a bit of html & css and a week or so later It became apparent it would be easier to scratch code the damn thing so I uninstalled Yahoo site builder and started all over again.
Learning & building that site in notepad ignited my passion for coding and less than a year later I left my shitty dead end job to join a brand new tech company created with the help of a like minded investor officially employed as a developer. Let help you understand just how big this achievement was for me - I had been trying to find a job, ANY job in I.T even at a call center level without success for 6 years because I dropped out of school.
In 6 years as an active job seeker I only received one phone call about a job opportunity which ended very quickly once they realised they had misread my CV. In all those years I never even got a single job interview.
After that I spent the next 3 years rolling out and improving the cloud based loyalty card system I had written for my store out on a national scale and the rest is history. Since then I have never been judged by a crappy piece of paper, hated my job or struggled to find a new one.
What a beautiful search result that was to find.
I dedicate this rant to Yahoo, with my sincere gratitude for making a shitty WYSIWYG editor that was so bad it pissed me off enough to make me actually learn something.2 -
I decided to upgrade my intellij ultimate from 2019.3 to 2020.2 and I saw there is update button.
I clicked on it.
As I expected it didn’t work and it was 30 minutes waiting looking at progress bar going back and forth couple of times before I decided just to download latest version and drag and drop it to applications folder ( took me 5 minutes) - I use mac so it replaces all crap ( I think ).
I cleared the old cache that growed to 2 gigabytes leaving some configuration files.
Next as always crash on startup cause of incompatible plugins with long java stacktrace - at least I could click the close button or popup closed itself I can’t remember ( one version I remember this button couldn’t be clicked cause it was off the screen and you need to do some cheating to launch ide )
The font has changed and I see that it at least work a little faster - that is nice. Indexing is finally fixed after all those years - probably thanks to visual studio code intellisense pushing those lazy bastards to deal with this.
But the preloader on first logo disappears so I think they decided to remove it cause it’s so fast - no it loads the same time or maybe little longer when I launch it on my old macbook.
After that as always I looked at plugins to see if there’s something interesting, so to find ability to scroll over whole plugins I needed to click couple of times. I think they assume I remember all the nice plugins in their marketplace and I only type search.
Maybe I should be type of user who reads best 2020 plugins for your best ide crap articles filled with advertising or even waste more time to watch all of this great videos about ide ( are there any kind of this stuff ? )
After a few operations I unfortunately clicked apply instead of restart ide and it hanged up on uninstalling some plugin I’m no longer interested in for 5 minutes so I decided to use always working ‘kill -9’ from command line.
Launched again and this time success.
Fortunately indexing finished for this workspace and I can work.
I’m intellij ultimate subscriber for 7+ years and I see those craps are not changing from like forever.
What’s the point of automate something that you can’t regression test ?
I started thinking that now when most people are facebook wall scrolling zombies companies assume that when new software comes out everyone is installing it right away and if not they’re probably not our customers cause they’re dead.
What a surprise they have when I pay for another year I can only imagine ( to be fair probably they even don’t know who I am ).
Yeah for sure I am subscribed to newsletters and I have jetbrains as a start page cause I shit myself with money and have nothing better to do then be grupie ( is there corporate grupies already a big community? )
Well I am a guy who likes to spend some time when installing anything and especially software that is responsible for my main source of income and productivity speed up.
Anyway I decided to upgrade cause editing es7 and typescript got to be pain in the ass and I see it’s working fine now. I don’t know if I like the font but at least the editor it’s working the same or maybe faster then the original that is huge improvement as developers lose most of their time between keyboard and screen communication protocol.
I don’t write it to discourage intellij as it’s great independent ide that I love and support for such a long time but they should focus on code editor and developers efficiency not on things that doesn’t make sense.
Congratulations if you reached this point of this meaningless post.
Now I started thinking that maybe it’s working faster cause I removed 2 gigs of crap from it.
Well we’ll see.1 -
iiiii fffffuckingg hate articles that just explain something
put a piece of code
that piece of code uses X amount of classes/models
they never mention what structure are those models/classes made of
what is inside them
i cant continue following the article because i dont know what is inside them
they just put it in ur face and say Fuck you
no
Fuck YOU
<font size="1000000px;">FUCK</font>
<font size="10000000000000000em;">YYYYYYYOOOKUUUUUUUUUUU</font>
U MOTHFFFFFUCKERRRRRRRRRRRRRRRRRRRR
USELESSS ARTICLE
zzzzz
frustratioms
my nerves are torn
broken
disabled
demented
day
in life
obsession
hell
unreal
what is life
q
what are doing
why are doing this
what is the point of living
how long does it take for a man to die
why are some people blessed with luck and some are not
zzzz
u know what is even more frustrating
girls
yes
ohdont get me started on this topic
well i warned u
the path towards abundance lies upon the few; thou who shalt not risk high; shalt always stay thus low
girls also frustrate me bc
i always do every thing nice and im always nice
so i realized
being nice is fake as fuck and doesnt fuckin work
being urself doesn't do a Fckimg tHING
hhh
frustrations
.
breathe
.
in this hardlife
only the strong survive in this world
- tupac shakur
zzzz
so yes bavk where i was saying girls frustrate me because i always do what im supposed to
so
i tried being thou who shalt i am not
guess what mothrfucker
it works when u be a gofdamn fkig low mothfckr a u know a goddmn fkig punk then they respect u and want u
back i fckked up
i turned back to my real me, the nice me
and then they left me
they think being nice = means being weak
FUCCKK YOUU
ssss
zzzf
kindness != weakness
U FCKING WHORES
UNDERSTAND THAT
zzzzz
breathe
i just wanted to have a walk outside and thenit started raining
so i had to stay inside bc of the rain
m
i am very lonely
u know i was very fine when i was lonely at a very young age but now i need a living entity beside me
with me
i fking need
wait i will cuddle my fluffy dog rn maybe i will feel better
br b wait for me ok
i feel better now
fck
i remembered that goddamn girl again
man i feel so heart broken
srsly
i have sunk into the deepest depths of endless depression I think
it doesnt feel nice
it feels very lonely and depressing down here
but i thimk tjat is be because i care too much
some people say i overthink
I dont overthink
i am like the stealth people
the shadow people
i stay quiet and observe
everything
i always know what is happening but i rarely speak about it
and people dont realize
so they think they can fool me
no
everything has its limits
so much lies that im sick of it
i always tell it how it is
i always reward those who help me
i always help those who help me
i never forget those people
zzzZZ
why is it that people who dont give a single fucking Fffffficxkkckck about me
are the ssame people i almost care the MOST?
i cross hundreds and thousands of miles to visit a person, invest hours of my time to do that
i do that....
and they wouldnt even step 1 foot in front to see me....
what kind of life is this
vv
feel like cryin rn
.
zzzzz
.
i dont understand what one must do
what is the point
all i want is to be happy
that is it
but being happy is.... i wanted to say the hardest part of life but now my voice told me being happy is a state of mind
myself answered me that being happy ? is a state of mind?
so that means if i want to be happy even if everything around me is falling apart
in my mind i can create a psychological world that would make me.... happy ....?
or what
i dont understand what did myself tell me
why do i care so much if im lonely
u know my friend from college we go to same computer science college
hes a very smart man but a fake FUCKING friend, plastic as fuck
he reads philosophy booms and told me
"when a man is lonely for long enough, he will slowly start to fall apart"
that is me...... that is ...truth......
he quoted a philosopher from some book
zzzz
he also said a quote he read about the meaning of life
"this life is endless pain and the only purpose of life is to reduce this pain as much as possible so we can be happy"
what the fck that is incredibly depressing
what the fuck im actually crying rn
i feel stabbed in the back and left behind and cheated on, all of those happened and some of them are happening right now
dont know what to think about the reasons
all of this causes me such huge anger and depression and that is whT keeps me going
going by working harder than i am supposed to
without all this hurt there would be no glory
all this effort..... it better pay off at the end...... please God..... i beg you....
i have completed 50% of my life purpose, let me do the rest so i can die in peace...13 -
A software had been developed over a decade ago. With critical design problems, it grew slower and buggier over time.
As a simple change in any area could create new bugs in other parts, gradually the developers team decided not to change the software any more, instead for fixing bugs or adding features, every time a new software should be developed which monitors the main software, and tries to change its output from outside! For example, look into the outputs and inputs, and whenever there's this number in the output considering this sequence of inputs, change the output to this instead.
As all the patchwork is done from outside, auxiliary software are very huge. They have to have parts to save and monitor inputs and outputs and algorithms to communicate with the main software and its clients.
As this architecture becomes more and more complex, company negotiates with users to convince them to change their habits a bit. Like instead of receiving an email with latest notifications, download a csv every day from a url which gives them their notifications! Because it is then easier for developers to build.
As the project grows, company hires more and more developers to work on this gigantic project. Suddenly, some day, there comes a young talented developer who realizes if the company develops the software from scratch, it could become 100 times smaller as there will be no patchwork, no monitoring of the outputs and inputs and no reverse engineering to figure out why the system behaves like this to change its behavior and finally, no arrangement with users to download weird csv files as there will be a fresh new code base using latest design patterns and a modern UI.
Managers but, are unaware of technical jargon and have no time to listen to a curious kid! They look into the list of payrolls and say, replacing something we spent millions of man hours to build, is IMPOSSIBLE! Get back to your work or find another job!
Most people decide to remain silence and therefore the madness continues with no resistance. That's why when you buy a ticket from a public transport system you see long delays and various unexpected behavior. That's why when you are waiting to receive an SMS from your bank you might end up requesting a letter by post instead!
Yet there are some rebel developers who stand and fight! They finally get expelled from the famous powerful system down to the streets. They are free to open their startups and develop their dream system. They do. But government (as the only client most of the time), would look into the budget spending and says: How can we replace an annually billion dollar project without a toy built by a bunch of kids? And the madness continues.... Boeings crash, space programs stagnate and banks take forever to process risks and react. This is our world.3 -
Hello there devranters, long time no see
I have a question for all the computer scientists and students out there. Do you have book recommendations especially for the maths part? I'm in the process of buying some books, they're very expensive but if I'm going to buy they might as well be useful books.8 -
The best happened today.
These past 2 weeks have been shit. People wronged me big time, got thrown under the bus for shit that the people behind refused to own up to it. Took that shit because I just couldn't be bothered to fucking argue.
I'm the only dev on this project and we're so close to release so I bit my tongue and took it on the chin but it's been eating me alive since then.
The tipping point was yesterday. 5 people failed to communicate shit properly amongst themselves on all channels got me forced to be the last one finishing work yesterday 4 hours after everyone left. I had every right to refuse and leave on time but again, we're so close to release and I don't want to see this project fail.
But see, I got angry. So fucking angry that nothing else has been on my mind since yesterday.
I don't take out my anger at others, that's not who I am (moslty) so today I was at work and secluded myself from everyone else otherwise I would've exploded in someone's face.
I was also supposed to meet up with friends tonight but with all this shit going on I decided not to go because I would not have been fun to be around.
Left work on time today, fell asleep on the train because I am too exhausted.
When I was about to walk into my house I noticed this little super cute puppy following me. I had no idea where or how long he's been behind me as I was walking home but he seemed way too happy when I saw him. His tail wagging like he's excited to see me even though I have never seen him. I petted him, played a bit with him. He seemed to be the happiest dog ever 😁. He managed to put a smile on my face for the first time in the last few days.
He then ran away.. I guess he got bored 😅
I am feeling so much better now all because of this little puppy 🐶. I'm so glad I ran into him because I've been smiling since then.
I wish I had took a picture of him 😥
Doggo, you probably won't read this, but thanks mate you made my month in those few minutes 🤘
If you have a dog, go pet him and appreciate how much happiness they bring in your life. If you have a cat.. Uhh I don't know... Uhh pray it doesn't kill you in your sleep I guess?
Thanks for reading3 -
About 4-5 hours ago I wanted to make simple websocket to get input from textarea and parse it on server and somehow got myself into developing in asyncio -> aiohttp -> graphql-core -> graphql-ws -> aioredis
and svelte-> typescript
I still didn’t make the stuff I wanted but I’m very close on backend at least.
I have some frontend part somewhere in my old prototypes so it will be faster if I figure out svelte.
Still don’t understand what the fuck just happened.
Maybe it’s because I wanted try those frameworks for a long time.
All ‘simple’ examples I found have around 20-30 files for backend and same amount for frontend so more then 50 files to get this shit working.
They’re called oh irony “simple chat”.
Now I see why no one fucking understands this shit.
I’m trying to cut mine to 5 files.
I thought developers are lazy bastards who don’t like write code.
But now after this they’re all looking like adhd coders.
Looks like Monday won’t be my best day.9 -
I'm considering quitting a job I started a few weeks ago. I'll probably try to find other work first I suppose.
I'm UK based and this is the 6th programming/DevOps role I've had and I've never seen a team that is so utterly opposed to change. This is the largest company I've worked for in a full time capacity so someone please tell me if I'm going to see the same things at other companies of similar sizes (1000 employees). Or even tell me if I'm just being too opinionated and that I simply have different priorities than others I'm working with. The only upside so far is that at least 90% of the people I've been speaking to are very friendly and aren't outwardly toxic.
My first week, I explained during the daily stand up how I had been updating the readmes of a couple of code bases as I set them up locally, updated docker files to fix a few issues, made missing env files, and I didn't mention that I had also started a soon to be very long list of major problems in the code bases. 30 minutes later I get a call from the team lead saying he'd had complaints from another dev about the changes I'd spoke about making to their work. I was told to stash my changes for a few weeks at least and not to bother committing them.
Since then I've found out that even if I had wanted to, I wouldn't have been allowed to merge in my changes. Sprints are 2 weeks long, and are planned several sprints ahead. Trying to get any tickets planned in so far has been a brick wall, and it's clear management only cares about features.
Weirdly enough but not unsurprisingly I've heard loads of complaints about the slow turn around of the dev team to get out anything, be it bug fixes or features. It's weird because when I pointed out that there's currently no centralised logging or an error management platform like bugsnag, there was zero interest. I wrote a 4 page report on the benefits and how it would help the dev team to get away from fire fighting and these hidden issues they keep running into. But I was told that it would have to be planned for next year's work, as this year everything is already planned and there's no space in the budget for the roughly $20 a month a standard bugsnag plan would take.
The reason I even had time to write up such a report is because I get given work that takes 30 minutes and I'm seemingly expected to take several days to do it. I tried asking for more work at the start but I could tell the lead was busy and was frankly just annoyed that he was having to find me work within the narrow confines of what's planned for the sprint.
So I tried to keep busy with a load of code reviews and writing reports on road mapping out how we could improve various things. It's still not much to do though. And hey when I brought up actually implementing psr12 coding standards, there currently aren't any standards and the code bases even use a mix of spaces and tab indentation in the same file, I seemingly got a positive impression at the only senior developer meeting I've been to so far. However when I wrote up a confluence doc on setting up psr12 code sniffing in the various IDEs everyone uses, and mentioned it in a daily stand up, I once again got kickback and a talking to.
It's pretty clear that they'd like me to sit down, do my assigned work, and otherwise try to look busy. While continuing with their terrible practices.
After today I think I'll have to stop trying to do code reviews too as it's clear they don't actually want code to be reviewed. A junior dev who only started writing code last year had written probably the single worst pull request I've ever seen. However it's still a perfectly reasonable thing, they're junior and that's what code reviews are for. So I went through file by file and gently suggested a cleaner or safer way to achieve things, or in a couple of the worst cases I suggested that they bring up a refactor ticket to be made as the code base was trapping them in shocking practices. I'm talking html in strings being concatenated in a class. Database migrations that use hard coded IDs from production data. Database queries that again quote arbitrary production IDs. A mix of tabs and spaces in the same file. Indentation being way off. Etc, the list goes on.
Well of course I get massive kickback from that too, not just from the team lead who they complained to but the junior was incredibly rude and basically told me to shut up because this was how it was done in this code base. For the last 2 days it's been a bit of a back and forth of me at least trying to get the guy to fix the formatting issues, and my lead has messaged me multiple times asking if it can go through code review to QA yet. I don't know why they even bother with code reviews at this point.18 -
Over the summer I was recruited to be a supplement instructor for a data structures course. As a result of that I was asked (separately by the professor) to be a grader for the course. Because of pay limitations I've mostly been grading homework project assignments. In any case, it's a great job to get my foot into the department and get recognized.
Over the course of the semester I've had this one person, OSX, named after their operating system of choice, who has been giving me awkward submissions. On the first assignment they asked the professor for extra time for some reason or the other, and that's perfectly fine.
So I finally receive OSX's submission, and it's a .py file as per course of the course. So I pop up a terminal in the working directory and type "python OSX_hw1.py". Get some error spit out about the file not being the right encoding. I know that I can tell python to read it in a different encoding, so I open it up in a text editor. To my surprise it's totally not a text file, but rather a .zip file!
I've seen weirder things done before, so no big deal. I rename the file extension, and open it up to extract the files when I see that there's no python files. "Okay, what's goin on here OSX..." I think to myself.
Poking around in the files it appears to be some sort of meta-data. To what, I had no clue, but what I did find was picture files containing what appeared to be some auto-generated screenshots of incomplete code. Since I'm one to give people the benefit of doubt even when they've long exhausted other peoples', I thought that it must be some fluke, and emailed OSX along with the professor detailing my issue.
I got back a rather standard reply, one of which was so un-notable I could not remember it if my life depended on it. However, that also meant I didn't have to worry about that anymore. Which when you're juggling 50 bazillion things is quite a relief. Tragically, this relief was short lived with the introduction of assignment 2.
Assignment 2 comes around, and I get the same type of submission from OSX. At this time I also notice that all their submissions are *very* close to the due time of 11:59pm (which I don't care about as long as it's in before people start waking up the next morning). I email OSX and the professor again, and receive a similar response. I also get an email from OSX worried about points being deducted. I reply, "No issue. You know what's wrong. Go and submit the right file on $CentralGradingCenter. Just submit over your old assignment".
To my frustration OSX claimed to not know how to do this. I write up a quick response explaining the process, and email it. In response OSX then asks if I can show them if they comes to my supplemental lesson. I tell OSX that if they are the only person, sure, otherwise no because it would not be a fair use of time to the other students.
OSX ends up showing up before anyone else, so I guide them through the process. It's pretty easy, so I'm surprised that they were having issues. Another person then shows up, so I go through relevant material and ask them if they have any questions about recent material in class. That said, afterwards OSX was being somewhat awkward and pushy trying to shake my hand a lot to the point of making me uncomfortable and telling them that there's no reason to be so formal.
Despite that chat, I still did not see a resubmission of either of those two assignments, and assignment 3 began to show it's head. Obviously, this time, as one might expect after all those conversations, I get another broken submission in the same format. Finally pissed off, I document exactly how everything looks on my end, how the file fails to run, how it's actually a zip file, etc, all with screenshots. That then gets emailed to the professor and OSX.
In response, I get an email from OSX panicking asking me how to submit it right, etc, etc. However, they also removed the professor from the CC field. In response I state that I do not know how to use whatever editor they are using, and that they should refer to the documentation in order to get a proper runnable file. I also re-CC the professor, making sure OSX's email to me is included in my reply.
OSX then shows up for one of my lessons, and since no one had shown up yet, I reiterate through what I had sent in the email. OSX's response was astonished that they could ever screw up that bad, but also admits that they had yet to install python(!!!). Obviously, the next thing that comes from my mouth is asking OSX how they write their code. Their response was that they use a website that lets them run python code.
At this point I'm honestly baffled and explain that a lot of websites like those can have limitations which might make code run differently then it should (maybe it's a simple interpreter written on JavaScript, or maybe it is real python, but how are you supposed to do file I/O?) .
After that I finally get a submission for assignment 1! -
It's over.
I've been working on you for months, and thinking about you for near a year.
I built you with a shitty language first and some crappy ideas. I obviously got bad results, but I didn't lose courage and I continued you.
Got near the obsession to improve you. Every time. Switched to a fast but hard language. Got into my first low-level fuss. All for you.
Now I reached the end with no more improvements and tweaks I could imagine, I can tell that:
I had a lot of expectations from you.
But turns out you were nothing more than a nasty brain fart pretending to be a good idea.
The core of the concept was rotten. Blinded by my lust for success (perhaps cupidity ?) I didn't see you just couldn't work.
I'm utterly disgusted, of course. Who wouldn't, after working so hard on something that looks right but is completely useless ?
But even though this was all in vain, you taught me some great lessons down the road.
Efficiency matters over facility.
Get sure you're using the right tools, and stay open for changes of such.
But some others were harsher, though just as important.
There's times you just have to admit defeat.
Putting a lot of efforts into something doesn't always bring a reward.
If after a long time you can't get the thing right, then stop. Your time is precious. Don't waste your time or time will waste you (Thanks Muse, I love this sentence).
And the most important: next time I got some "grand" idea that is not about improving some random software, I'll bang my head to my desk enough times to forget about it.
So now the time has come.
Goodbye, project "hpym". You put me in grief, but I know I matured a lot in my concepts of development because of you.
Now take place into the project graveyard among the other clunky half-assed shit I got rid off.6 -
If you've ever tried using Go plugins raise your hand.
If you've ever tried doing plugins in Go, raise your hand.
If you think that the following rant will be interesting, raise your hand.
If you raised your hand, press [Read More]:
This is a tale of pain and sorrow, the sorrow of discovering that what could be a wonderful feature is woefully incomplete, and won't be for a very long time...
Go plugins are a cool feature: dynamically load pre-compiled code, and interact with it in a useful and relatively performant way (e.g. for dynamically extending the capabilities of your program). So far it sounds great, I know right?
Now let me list off some issues (in order of me remembering them):
1. You can't unload them (due to some bs about dlopen), so you need to restart the application...
2. They bundle the stdlib like a regular Go binary, despite the fact that they're meant to be dynamic!
3. #2 wouldn't be so bad if they didn't also require identical versions of all dependencies in both binaries (meaning you'd need to vendor the dependencies, and also hope you are using the right Go version).
4. You need to use -trimpath or everything dies...
All in all, they are broken and no one is rushing to fix it (literally, the Go team said they aren't really supporting it currently...).
So what other options are there for making plugins in Go?
There's the Hashicorp method of using RPC, where you have two separate applications one the plugin, one the plugin server, and they communicate over RPC. I don't like it. Why? Because it feels like a hack, it's not really efficient and it carries a fear of a limitation that I don't like...
Then we come to a somewhat more clever approach: using Lua (or any other scripting language), it's well known, it's what everyone uses (at least in games...). But, it simply is too hard to use, all the Go Lua VMs I could find were simply too hard to set up...
Now we come to the most creative option I've seen yet: WASM. Now you ask "WASM!? But that's a web thing, how are you gonna make that work?" Indeed, my son, it is a web thing, but that doesn't mean I can't use it! Someone made a WASM VM for Go, and the pros are that you can use any WASM supporting language (i.e. any/all of them). Problem inefficient, PITA to use, and also suffers from the same issues that were preventing me from using Lua.
Enter Yaegi, a Go interpreter created by the same guys who made (and named) Traefik. Yes, you heard me right, an INTERPRETER (i.e. like python) so while it's not super performant (and possibly suffering from large inefficiency issues), it's very easy to set up, and it means that my plugins can still be written in Go (yay)! However, don't think this method doesn't have its own issues, there's still the problem of effectively abstracting different types of plugins without requiring too much boilerplate (a hard problem that I'm actively working on, commits coming soon). However, this still feels to be the best option.
As you can see, doing plugins in Go is a very hard problem. In the coming weeks (hopefully), I'm going to (attempt to at least) benchmark all the different options, as well as publish a library that should help make using Yaegi based plugins easier. All of this stuff will go (see what I did there 😉) in a nice blog post that better explains the issues and solutions. But until then I have some coding to do...
Have a good night(/day)!13 -
just found out a vulnerability in the website of the 3rd best high school in my country.
TL;DR: they had burried in some folders a c99 shell.
i am a begginer html/sql/php guy and really was looking into learning a bit here and there about them because i really like problem solving and found out ctfs mainly focus on this part of programming. i am a c++ programmer which does school contest like programming problems and i really enjoy them.
now back on topic.
with this urge to learn more web programming i said to myself what other method to learn better than real life sites! so i did just that. i first checked my school site. right click. inspect element. it seemed the site was made with wordpress. after looking more into the html code for the site i concluded all the images and files i could see on the site were from a folder on the server named 'wp-content/uploads'. i checked the folder. and here it got interesting. i did a get request on the site. saw the details. then i checked the site. bingo! there are 3 folders named '2017', '2018', '2019'. i said to myself: 'i am god.'
i could literally see all the announcements they have made from 2017-2019. and they were organised by month!!! my curiosity to see everything got me to the final destination.
with this adrenaline i thought about another site. in my city i have the 3rd most acclaimed high school in the country. what about checking their security?
so i typed the web address. looked around. again, right click, inspect element and looked around the source code. this time i was more lucky. this site is handmade!!! i was soooo happy because with my school's site i was restricted with what they have made with wordpress and i don't have much experience with it.
amd so i began looking what request the site made for the logos and other links. it seemed all the other links on the site were with this format: www.site.com/index.php?home. and i was very confused and still am. is this referencing some part of the site in the index.php file? is the whole site written inside the index.php file and with the question mark you just get to a part of the site? i don't really get it.
so nothing interesting inside the networking tab, just some stylesheets for the site's design i guess. i switched to the debugger tab and holy moly!! yes, it had that tree structure. very familiar. just like a project inside codeblocks or something familiar with it. and then it clicked me. there was the index.php file! and there was another folder from which i've seen nothing from the network tab. i finally got a lead!! i returned in the network tab, did a request to see the spgm folder and boooom a site appeared and i saw some files and folders from 2016. there was a spgm.js file and a spgm.php file. there was a contrib, flavors, gal and lang folders. then it once again clicked me! the lang folder was las updated this year in february. so i checked the folder and there were some files named lang with the extension named after their language and these files were last updated in 2016 so i left them alone. but there was this little snitch, this little 650K file named after the name of the school's site with the extension '.php' aaaaand it was last modified this year!!!! i was so excited! i thought i found a secret and different design of the site or something completely else! i clicked it and at first i was scared there was this black/red theme going on my screen and something was a little odd. there were no school announcements or event, nononoooo. this was still a tree structured view. at the top of the site it's written '!c99Shell v. 1.0...'
this was a big nono. i saw i could acces all kinds of folders. then i switched to the normal school website and tried to access a folder i have seen named userfiles and got a 403 forbidden error. wopsie. i then switched to the c99 shell website and tried to access the userfiles folder and my boy showed all of its contents. it was nakeeed naked. like very naked. and in the userfiles folder there were all, but i mean ALL files and folders they have on the server. there were a file with the salary of each job available in the school. some announcements. there was a list with all the students which failed classes. there were folders for contests they held. it was an absolute mess and i couldn't believe it.
i stopped and looked at the monitor. what have i done? just to learn some web programming i just leaked the server of the 3rd most famous high school in my country. image a black hat which would have seriously caused more damage. currently i am writing an email to the school to updrage their security because it is reaaaaly bad.
and the journy didn't end here. i 'hacked' the site 2 days ago and just now i thought about writing an email to the school. after i found i could access the WHOLE server i searched for the real attacker so if you want to knkw how this one went let me know in the comments.
sorry for the long post, but couldn't held it anymore13 -
Time for a rant about shitstaind, suspend/hibernate, and if there's room for it at the end probably swappiness, and Windows' way of dealing with this.
So yesterday I wanted to suspend my laptop like usual, to get those goddamn fans to shut up when I'm sleeping. Shitstaind.. pinnacle of init systems.. nope, couldn't do it. Hibernation on the other hand, no problem mate! So I hibernated the laptop and resumed it just now. I'm baffled by this.
I'll oversimplify a bit here (but feel free to comment how there's more to it regardless) but basically with suspend you keep your memory active as well as some blinkenlights, and everything else goes down. Simple enough.. except ACPI and I will not get into that here, curse those foul lands of ACPI.
With hibernation you do exactly the same, but on top of that, you also resume the system after suspending it, and freeze it. While frozen, you send all the memory contents to the designated swap file/partition. Regarding the size of the swap file, it only needs to be big enough to fit the memory that's currently in use. So in a 16GB RAM system with 8GB swap, as long as your used memory is under 8GB, no problem! It will fit. After you've moved all the memory into swap, you can shut down the entire system.
Now here's the problem with how shitstaind handled this... It's blatantly obvious that hibernation is an extension of suspend (sometimes called S3, see e.g. https://wiki.ubuntu.com/Kernel/...) and that therefore the hibernation shouldn't have been possible either. The pinnacle of init systems.. can't even suspend a system, yet it can hibernate it. Shitstaind sure works in mysterious ways!
On Windows people would say it's a hardware issue though, so let's talk a bit about that clusterfuck too. And I'll even give you a life hack that saves 30GB of storage on your Windows system!
Now I use Windows 7 only, next to my Linux systems. Reason for it is it's the least fucked up version of Windows in my opinion, and while it's falling apart in terms of web browsing (not that you should on an EOL system), it's good enough for le games. With that out of the way... So when you install Windows, you'll find that out of the box it uses around 40GB of storage. Fairly substantial, and only ~12GB of it is actually system data. The other 30-ish GB are used by a hibernation file (size of your RAM, in C:\hiberfil.sys) and the page file (C:\pagefile.sys, and a little less than your total RAM.. don't ask me why). Disable both of those and on a 16GB RAM system, you'll save around 30GB storage. You can thank me later.
What I find strange though is that aside from this obscene amount of consumed storage, is that the pagefile and hibernation file are handled differently. In Linux both of those are handled by the swap, and it's easy to see why. Both are enabled by the concept of virtual memory. When hibernating, the "real" memory locations are simply being changed to those within swap. And what is the pagefile? Yep.. virtual memory. It's one thing to take an obscene amount of storage, but only Windows would go the extra mile and do it twice. Must be a hardware issue as well.
Oh, and swappiness. This is a concept that many Linux users seem to misunderstand. Intuitively you'd think that the swappiness determines what percentage of memory it takes for the kernel to start swapping, but this is not true. Instead, it's a ratio of sorts that the kernel uses when determining how important the memory and swap are. Each bit of memory has a chance to be put into either depending on the likelihood of it being used soon after, and with the swappiness you're tuning this likelihood to be either in favor of memory or swap. This is why a swappiness of 60 is default most of the time, because both are roughly equally important, and swap being on disk is already taken into account. When your system is swapping only and exactly the memory that's unlikely to be used again, you know you've succeeded. And even on large memory systems, having some swap is usually not a bad idea. Although I'd definitely recommend putting it on SSD in a partition, so that there's no filesystem overhead and so that it's still sufficiently fast, even when several GB of memory are being dumped in.6 -
Major rant incoming. Before I start ranting I’ll say that I totally respect my professor’s past. He worked on some really impressive major developments for the military and other companies a long time ago. Was made an engineering fellow at Raytheon for some GPS software he developed (or lead a team on I should say) and ended up dropping fellowship because of his health. But I’m FUCKING sick of it. So fucking fed up with my professor. This class is “Data Structures in C++” and keep in mind that I’ve been programming in C++ for almost 10 years with it being my primary and first language in OOP.
Throughout this entire class, the teacher has been making huge mistakes by saying things that aren’t right or just simply not knowing how to teach such as telling the students that “int& varOne = varTwo” was an address getting put into a variable until I corrected him about it being a reference and he proceeded to skip all reference slides or steps through sorting algorithms that are wrong or he doesn’t remember how to do it and saying, “So then it gets to this part and....it uh....does that and gets this value and so that’s how you do it *doesnt do rest of it and skips slide*”.
First presentation I did on doubly linked lists. I decided to go above and beyond and write my own code that had a menu to add, insert at position n, delete, print, etc for a doubly linked list. When I go to pull out my code he tells me that I didn’t say anything about a doubly linked list’s tail and head nodes each have a pointer pointing to null and so I was getting docked points. I told him I did actually say it and another classmate spoke up and said “Ya” and he cuts off saying, “No you didn’t”. To which I started to say I’ll show you my slides but he cut me off mid sentence and just yelled, “Nope!”. He docked me 20% and gave me a B- because of that. I had 1 slide where I had a bullet point mentioning it and 2 slides with visual models showing that the head node’s previousNode* and the tail node’s nextNode* pointed to null.
Another classmate that’s never coded in his life had screenshots of code from online (literally all his slides were a screenshot of the next part of code until it finished implementing a binary search tree) and literally read the code line by line, “class node, node pointer node, ......for int i equals zero, i is less than tree dot length er length of tree that is, um i plus plus.....”
Professor yelled at him like 4 times about reading directly from slide and not saying what the code does and he would reply with, “Yes sir” and then continue to read again because there was nothing else he could do.
Ya, he got the same grade as me.
Today I had my second and final presentation. I did it on “Separate Chaining”, a hashing collision resolution. This time I said fuck writing my own code, he didn’t give two shits last time when everyone else just screenshot online example code but me so I decided I’d focus on the PowerPoint and amp it up with animations on models I made with the shapes in PowerPoint. Get 2 slides in and he goes,
Prof: Stop! Go back one slide.
Me: Uh alright, *click*
(Slide showing the 3 collision resolutions: Open Addressing, Separate Chaining, and Re-Hashing)
Prof: Aren’t you forgetting something?
Me: ....Not that I know of sir
Prof: I see Open addressing, also called Open Hashing, but where’s Closed Hashing?
Me: I believe that’s what Seperate Chaining is sir
Prof: No
Me: I’m pretty sure it is
*Class nods and agrees*
Prof: Oh never mind, I didn’t see it right
Get another 4 slides in before:
Prof: Stop! Go back one slide
Me: .......alright *click*
(Professor loses train of thought? Doesn’t mention anything about this slide)
Prof: I er....um, I don’t understand why you decided not to mention the other, er, other types of Chaining. I thought you were going to back on that slide with all the squares (model of hash table with animations moving things around to visualize inserting a value with a collision that I spent hours on) but you didn’t.
(I haven’t finished the second half of my presentation yet you fuck! What if I had it there?)
Me: I never saw anything on any other types of Chaining professor
Prof: I’m pretty sure there’s one that I think combines Open Addressing and Separate Chaining
Me: That doesn’t make sense sir. *explanation why* I did a lot of research and I never saw any other.
Prof: There are, you should have included them.
(I check after I finish. Google comes up with no other Chaining collision resolution)
He docks me 20% and gives me a B- AGAIN! Both presentation grades have feedback saying, “MrCush, I won’t go into the issues we discussed but overall not bad”.
Thanks for being so specific on a whole 20% deduction prick! Oh wait, is it because you don’t have specifics?
Bye 3.8 GPA
Is it me or does he have something against me?7 -
Just a quick rant on JavaScript,
So there’s a lot of people hating javascript, and while not a long time ago i was part of them, but I changed my opinion a little.
I think JavaScript is a great way to deal with website programming as it is quick and efficient, but I would not say to program directly on it, use a js-compilable language (CoffeScript, TypeScript, Kotlin(I think), etc.), but then you might say: “Well, no need for js then, compile it in byte code”. That would break the point of how I see web design/dev. The main intent behind webpages is to have an easy and fast way to send code to other computers to render them, that’s why it is interpreted: “Easy to send” and “*All* computers can handle it” with the proper browser. You need to be able to change the way the website is rendered and/or works sometimes, for diverse reasons like copy/pasting data, make it render properly or use plugins/add-ons to change that code to suit your needs.
I think js should be kept as a “readable byte-code”, so that means: {
Keep comments when compiling the js-compilable code,
Add standardized machine-readable comments that will indicate to smart code viewers how to show a particular thing (Like have a higher-end function compiled in js shown as a minimized code with explanations of the function)
Keep it nicely formated and don’t obfuscate (coz that’s annoying)
Etc.
}
So you bypass the quirks and all that pesky js stuff, while keeping it’s good sides.
-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-
Part 2:
Web design for non-web:
Ok so things like node.js, electron, react-native and all that stuff; I won’t say they’re bad but...
Why we have this is because web designers wanted to make desktop apps and were like “Hey! Making web pages is easy! Let’s port it to desktop”, the problem is: Web technologies were made to work on a restricted canvas, aka a browser. It’s good on web for reasons mention earlier and more. But it’s not on desktop! You’re trying to push it outside of those boundaries. It’s difficult to make it break that canvas and go outside, make something that really works! For social media clients and that kind of stuff that you want to make a little more inclusive, yes! it’s a great idea (hello devrantron ;), but not if it’s an exact same copy of the website, just use the website. But for things that are supposed to really make use of YOUR computer; no!
I see those PWA (progressive webapps aka mobile app, but it’s an offline website”), I stand for the same positions, social media and those sort of things: yes, great idea! Games? 🤢.
I have way more to say but I have difficulties to remember them while reading, so feel free to comment your thoughts
Lol, “just a quick rant”1 -
I haven't done any front end stuff in a long time (last time was before jQuery was popular), and since I had some free time lately I decided to check out React and see what it's all about. Turns out that first I had to go trough one week of reading about node.js, npm, jsx, es6/es2015, babel, webpack (and probably something else), but I finally got to React. So far I had no problems with any of this but I have no fucking idea how most of this stuff works behind the curtains and I'm scared.3
-
How the fuck does that retard Zuckerberg manage to spend this much money on his metaverse and hardly have anything to show for? What are the developers actually working on? I mean, if you had that many people working that long on something you'd expect at least a product that looked all right, even if no one wanted to use it?!
I bet you could put a team of 20 top shelf developers, designers, QA and project managers together and give them 2 years to build almost anything we see today. A facebook clone, a Twitter clone, some sort of virtual reality look-at-my-perfect-but-empty-life-click-to-like piece of social shit-verse.. What the hell are they spending their time on?!!8 -
Context: New to typescript. Writing a thing, doing it for work, good opportunity to stretch my dev legs. Using a propriety lib, alternatives not an option.
Rant begin:
SOOOO, who the fuck thought THIS was a good idea:
1. Lib has minified react in dev (because closed source) meaning no downstream errors AND the entire premise of the lib is that a widget is a react component, so I'm writing typescript react the entire time without downstream errors
2. SHIT docs. By that, I mean there's an API reference page that's so sparse there's literally a set of CRUCIAL interfaces that only say the word 'Interface' on them. That's it. that's what i get. It's an interface. NO FUCKING SHIT SHERLOCK, what the fuck is it though? What's its purpose? Is it an interface for a dog? A dog that has a 'shit' property? or a cat? or a cat eating dog shit? Nobody fucking knows - the docs sure as fuck don't care.
3. No syntax highlighting - editors, IDEs (i've tried a few) can't even find the lib inside this environment, so Code and everything else thinks I'm importing shit that doesn't even exist - so no error prediction, code completion based on syntax of the library, none of that.
4. There are some EXTREMELY basic samples - these samples exclusively use React classes - no function components, no hooks, nada - just classes and even perfect replicas of the sample code display erratic behavior like errors about missing props, so that's mostly FUCKING USELESS
5. And this... this is where the straw breaks the fucking camel's back... there's no... there's no hot reloading... Do you know what that (in conjunction with the previous 4 fuckups) means?
When I write anything or I fuck up (which of course I'm doing every time I write half a line because how the fuck?) I have to restart the client and server EVERY FUCKING TIME and manually test to see if the error (THAT ONLY GETS REPORTED IN THE LOCAL UI) is gone or different.
Then, once I see the error, it isn't an error: it's the minified React error-decoder link and guess what? It isn't really clickable a link OR copyable, meaning that every FUCKING time I get a new error, I have to MANUALLY TYPE A FUCKING 50 CHAR URL TO FIND OUT A GENERIC REACT ERROR MESSAGE WITHOUT A LINE NUMBER OR ANY FUCKING CONTEXT. I HAVE TO DO THIS CONSTANTLY TO SEE IF ANYTHING I'M DOING EVEN WORKS.
6. There's no github to complain to the maintainers or search for issues because it's NOT FUCKING OPEN SOURCE so there is literally nothing to be fucking done about it.
This is due in a week and a half, found out about it last Friday. How's your day going?
PS: good to be back after a long respite from dev ranting.1 -
And the stock market is plunging again.... Who gives a fuck....
It makes no logical sense? Unless someone wants to enlighten me... But I don't see much downside...
COVID kills us all => who gives a fuck about stock prices
COVID kills most of us => who gives a fuck about stock prices, aka pieces of paper. All the survivors will create a new society and either split the goods or fight over them. It'll be like Survivor... But real.
COVID goes away and doesn't do anything => great time to buy buy buy since all you idiots basically just gave me like a huge discount on stock prices. AKA a long overdue market correction9 -
So this might be a very long post , but i am sure most of you can relate to it .
So , the year end . Time of joy and appraisals right?You have slogged your ass off the entire year and are expecting amazing ratings.Then boom , your piece of shit sadist manager starts of his review by saying 'there are worrysome things to discuss' after not saying shit for the entire year . I am pretty new to corporate , in fact 1 year old , still managed to handle devops for a team of 130+ , majority of whom have no work apart from playing a blame game and indulging in cheap politics. I mean , bro , I am literally your son's age , i dont see the point in playing this cheap shit with me.On top of that this sadist and borderline piece of shit manager has the audacity to say that I did not raise any blockers , while I have CCed him in every fucking mail possible.How big of an a****** can you be bro?
I counter his points for 40 45 mins straight ,leaving him stuck without words for solid 10 to 15 seconds many times during the 'review meet'. This guy is in the same place working on the same shit code , which 90% of this community can't even think of. Every thing is bloody manual and apparently ' I should have tried to streamline the entire f**** process' . Cool bro , why not open a startup while I am at it ?
Then this piece of poop gives me a rating which is just above the inconsistent performer bracket :) .
I just dont get the points what do these people get by giving shit ratings and not even having valid points to back up their fuck all arguments.This guy , throughout the duration of the call did not say 1 (bloody 1 ) good thing about my efforts. Past context is majority of the smart people who were literally running their pods single handedly , were under him and were fed up with not getting hikes and appraisals.Apart from me ,everyone resigned and left with hikes as high as 50% (LOL right).
But I have a year of experience and its really difficult to perform well in 4 rounds of bs compititive coding rounds, after which I get the generic ' oh you did well bro but we are moving on with other candidates' (FFS) .
I pray that even my worst enemies don't get such managers and I hope he rots in hell.
Amen and sorry for the cussing :) -
Okay this is 3.30 AM . Just woke up from bad geeky dreams. My heart is pounding so fast that I could nose bleed and I can't sleep as I am remembering I had the same dream last night.
Dream was about : me being astronaut. Everything was usual. From rocket launch to be in space. Scary part was my ship in orbit of moon.
Seeing dead land from that height chocked me. Imagine you are looking out of the window and all you see a big grey land and pitch black in background. Realising there is no one out there was spooky.
The scary part was I launched some satellite but crash on surface. It was scary seeing something going smaller every time. Crashing on deserted land was one plus on adding fear.
Then my ship leave the orbit (from the reverse shock of that satellite dittachment ) and it flow away in the vastness of space......
Away from the moon and away from the earth in long loneliness.
I wish I could erase this from my memory but I am not gonna watch space exploration video anymore.
I got to say, landing on moon is one thing but being out there knowing one accident and you will be forever there. You need balls to be on such missions.4 -
I’m currently working with a devops team in the company to migrate our old ass jboss servers architecture to kubernetes.
They’ve been working in this for about a year now, and it was supposed to be delivered a few months back, no one knew what’s going on and last week they manage to have something to see at least.
I’ve never seen anything so bad in my short life as a developer, at the point that the main devops guy can’t even understand his own documentation to add ci/cd to a project.
It goes from trigger manually pipelines in multiple branches for configuration and secrets, a million unnecessary env variables to set, to docker images lacking almost all requisites necessary to run the apps.
You can clearly see the dude goes around internet copy pasting stuff without actually understanding what going on behind as every time you ask him for the guts of the architecture he changes the topic.
And the worst of all this, as my team is their counterpart on development we’ve fighting for weeks to make them understand that is impossible the proceed with this process with over 100 apps and 50+ developers.
Long story short, last two weeks I’ve been fixing the “dev ops” guy mess in terms of processes and documentation but I think this is gonna end really bad, not to sound cocky or anything but developers level is really low, add docker and k8s in top of that and you have a recipe for disaster.
Still enjoying as I have no fault there, and dude got busted.9 -
I can be manipulated. Yes, I’m now more resilient to manipulation than ever because I’m autistically good at recognising patterns, yet I’m not perfect.
For a manipulator, there is just one problem — now and then, my disorder obliterates my entire worldview, together with the foreign manipulative framework, so I can start with a blank slate. It protects me. Yes, this protection is akin to our body’s “we’ll boil all the germs in our own blood” tactic that instead of defining winners and losers only leave survivors, yet the force is unstoppable. You cannot secure the land that is hit by a tornado every three months.
That inner Nemesis is so strong that it even defeated a complex, almost fractal-like manipulation of my own mother that I lived in since birth, leaving her with a wound that will never heal. Wannabe manipulator exes didn’t even stand a chance. I don’t care if that force destroys me or not, as during that time, there is no “me”.
About my mom, long story short, she told me “I want to stop treating my cancer to die as soon as possible just to not see you anymore” after my coming-out. Full story is here:
- part 1: https://devrant.com/rants/4923052/...
- part 2: https://devrant.com/rants/4924040/...7 -
At the job interview to my current position I was asked the classic ”where do you see yourself in X years” question. I replied something along the lines of that I see myself staying if I feel good where I am and long as I have the opportunities for professional growth.
Now with recent developments it’s looking like those opportunities will be bygone pretty soon. I work on a massive legacy codebase, where with the scarcity of current dev resources and the apparent difficulties of procuring additional personnel to the dev dept, it does look like we’ll be limited to maintenance and simple small scale improvements with no room for meaningful projects. Theoretically I could ask to be moved to another product, but realistically that would both be a dick move well as unlikely to happen, as other projects are fully staffed (and made with technologies there’s easier to find personnel to).
As a consequence of this perceived imminent halt in opportunities for self-development at work, I’ve been starting to look for greener pastures. There are some intriguing ones out there. But then I come here, read some rants and comments, and it always becomes abundantly clear I’m good where I’m at right now. So what of it, if my position won’t enable growth out of the box for a while? I can always develop my skills and knowledge on my free time, and besides, the stagnation won’t last forever... right?12 -
Long time no see devRant. This rant is dedicated to an MQTT implementation we use. Mosquitto, mqtt.js - FUCK YOU.
I spent the last fucking 30+ hours trying to find why the bloody fuck the stupid server / client won't connect to the shitty mqtt broker. From changing all possible config, enabling & disabling specific code nothing abso-fucking-lutely works.
But then it will randomly decide to connect to the fucking broker, not causing any issues at all. And each fucking day when I wake up again and think to myself: oh today I can actually leave when it is still somewhat bright outside - NOPE. Because guess what? The fucking shitty abomination doesn't work anymore.
I just love these types of problems that are almost impossible to debug because the only logs you get is: "SERVER disconnected". It's impossible to get a proper reason out of this shit show, it's just turned into randomly guessing what the error could be (and especially where it could be).
And each time I got it to work, tested it and let the testing team know that they can start testing it will just stab me in the back and be like "fuck you, I'm not working any more". Luckily it's not like the deadline is next week... otherwise work is great, trust me.13 -
So, my current company builds a ERP system hand has a far to complicated database with one k tables and over 2k procedures. I started working there 3.5 years ago, well, first 2.5 years were educational. But I was mostly doing support work. From time to time I was tasked to do some interfaces ( around 15 currently I think) but since a few month I am just completely fucked up and don't know what to do. I still don't really get how this fucking huge database is supposed to work. I have 2-3 interfaces alto implement at the same time. Then I should create a app to allow users to stamp the personal and assignment times. Also I was tasked to create a html5 webpage ( never did something like this before) for also stamping times and some additional data to create a service report for customers on the fly. And finally I should create a asp.net based website for a dashboard overview which should be customisabke by our customers, which I also never did before. In the meantime I also have around 10-15 support tasks a week, and I don't see myself getting anywhere near finishing anything. But I am getting constantly approached by the boss and my team leader for not really getting anything done, even though they have no idea what the other one told me to do. And my boss has no idea if time management, he asked me how long a feature of the app would take and I told him at least two days and somehow he told my colleague I would be done in 4 hours. So currently I am permanently stressed and slightly depressed and I have no idea what to do, and I am just afraid of losing my job, because I am not able to finish my tasks.1
-
Well... instead of imposter syndrome I think I have something more alike "I can't fucking tell if I'm smarter than everyone around me or if I'm so dumb I have no clue what's going on"-syndrome.
And trying to be rational, I usually consider the second option to be more probabile... right?
Or maybe, the way my brain processes things is just so different from the people I know that It creates a layer of incomunicability, so that others can't understand my reasoning as much as I can't understand theirs.
The usual speaking-through-jargon-all-the-time trend I've encountered is also not helping.
So I strive daily to align myself to what's going on, trying not to slow anybody down, but that drains my mental energies so much I end up getting done so little... and then I realize _everybody_ has done a similar amount of work.
Are maybe my standards too high?
Or it's normal for teamwork to slow everybody down THIS much?
I used to work much better alone, or in teams with proper separation of tasks between people. Like - we agree on a common interface and then everybody goes his own way implementing his part, and as long as the contract is respected and nothing breaks, nobody cares about what's inside the boxes.
But I don't see it coming again anytime soon, and people seem to have an averagely-good opinion of my work. So well, if I get paid and things cruise along fine, there should be nothing to complain about.
Shit, I've let my flow of consciousness out.2 -
"Hey guys we originally set the demo date to August 5th and thus far I have not seen any previews before that, what's going on here?"
Ok see, that is the kind of thing that I would take to me own lil broken heart IF:
1 It was coming from a product manager at where I work
2 He would never get any sort of updates or would just plain not know about us
3 He would be I dunno....fucking paying us?
This is the thing, a friend offered the chance to help him build a product for a business man somewhere down in the land of tacos. Being in a "fuck it" mood and not wanting to say no since it sounded interesting enough I said yes. The "owner" said that he would not be able to pay since he already had hired a team of developers before that did not deliver and as such he was instead offering a part of the company.....sounds familiar?
Not wanting to let my friend down, I told the owner that I would help just as long I get complete CTO power over the product and not crying about the stack being used or ME NOT GIVING THE PRODUCT MY FULL ATTENTION BECAUSE HE WAS NOT FUCKING PAYING.
He said ok.
Of course he did not like it, but he said ok.
He has been asking for the code, the platform, demos and a bunch of other shit which I continue to refuse since he has not offered me or my boy a copy of the legal documents that we require.
Him: "You will get them soon enough, I still need to see the product just to make sure everything is ok"
Me: "You wouldn't even know where to begin looking unless you have a third party that could verify the code, last time I checked I was to be the only one good for this"
Him: "Yeah and you and <friend> are, but I just need to see the product"
Me: "I send you videos and demos, sorry dude, but no binding document == no code. I know you think I am young, give me some fucking credit because this is not my first rodeo"
Him: "I am not trying to play you or anything, you can trust me"
Me: "No, not really. Talk to me about this when you get the documents"
Him: "Well its cuz this is taking too long...."
Me: "Tssss I know!!! It sucks right? Want a good product, built with all the bells and whistles and YOU DON'T WANT TO PAY? guess what dude, I do have a full time job, your product gets my minimal attention, right there at the bottom next to taking a shit, meaning that I will give your product the same time and attention as I would going to the throne. Aye don't feel that bad, I normally take about 1 hour on the shitter, you get that for fucking free."
To be fair ladies and gents I normally don't just explode on people like this. But I just can't fathom not paying someone for a rather large software product, with only a promise that "it will sell" and then telling them to hurry up.
Far as I am concerned this product will flop, but he seems to think it is the next big thing(of course).
He can go choke on some chode.
Fucking prick.1 -
Woah, this platform still exists. That's cool, idk why randomly I thought let's check devRant. lol3
-
(Part 1/2?)
Ohhh my god am I furious and this one's a gem.
Also I'm gonna namespoil all of the entities in my post. If this is against rant rules I'll reframe it.
So the story starts over an year ago. Me, being in a bad place, where I couldn't do a job due to external issues, wanted to try out an internship. Thought I could pull off a 5 hour shift and then attend to my problems.
THE INTERNSHALA ARC:
I apply to a bunch of applications on Angel, Internshala and Indeed.
I was contacted by a few handful of these places. One of them was called "ARCHITECTA SOFTWARE SOLUTIONS". These guys had arranged an online aptitude test for me which I promptly took.
I looked up this company and they seemed like a pretty okay big firm from the outset but didn't have many reviews on Glassdoor and likes of such. (first red flag). Post aptitude test, I was quite sure I fucked up and wouldn't get further contact. Surprisingly, a person from the company sends me his Whatsapp number over chat and asks me to save it. The message is worded like a bulk email (Starting with Hello everyone!!) which I thought was quite odd since the interaction from these platforms has always been a person-to-person contact for me. Since Internshala showed that only around 40 people applied for the position I was quite intrigued but attributed this to my lack of exp in internship operations.
THE WHATSAPP ARC:
I was contacted by the number on WhatsApp saying that they'd be interested in moving forward and I gave them my work experience details.
The person sends me over a development assignment to complete within a few days. The assignment consists of massive scope of details. I'm talking production level concept and implementation. Asks to me implement a custom emotion detection CV model (worded as "emotion camera" lmao), generate a 3d model (specified nowhere and expects to implement a mono-ocular system for the curious) and deploy it over AWS with a website to go along with it and also host that. The website should contain a VR ("360 rotatable") view that can explore the depth-map ("not worded as depth-map") of the face. My first assumption was that they had picked this work up for outsourcing and didn't bother to chip off parts so as to create an assignment out of it (I know very optimistic).
So I shoot it at him on WhatsApp asking which parts of the assignment should I do?
Him: So, which parts CAN you do?
I thought of it as an HR thing.
Me: I could do most of it but given the time-frame of the assignment and my applied position as a web developer it is perhaps out of scope for my application.
Him: Don't worry about the assignment. You can submit when you complete the whole assignment.
I was visibly angry over the stupidity of this man.
Me: This task is a Full-Stack + CV + VR task. It will take over two months to get working. Am I supposed to work on it for that long for an assignment?
Him: Okay just do the basic functionalities like add to cart. But also try to do the camera thing before next week.
At this point I'm sure that they are having trouble handling an eager client and they're offloading work to interns. So I do only the backend and minimal frontend and submit the assignment (a 2 day job done over a weekend).
Nothing. Empty. No messages since then. I tried sending in a Whatsapp message on the application and how to proceed. Then, if I could get to know if I have been rejected. Nothing.
And all this time I can clearly see the account is active as it pushes pretentious motivational quotes over it's Whatsapp status.3 -
I want to kick this stupid kids ass!
So I'm on a Slack channel for live help for people who are learning JavaScript and I stick around and help people just while I'm by my computer. This kid is on there is constantly asking questions, which I don't mind but I mean I think part of programming is looking up the freakin info to figure it out occasionally. Anyways-
So in each lesson you watch a video ~10-15 mins long and then do an assignment. Well this kid constantly dm's me and asks me for help so I help him. Then as soon as he is done with that lesson quiz, 30 secs later I see him post a question from the NEXT lesson on the Slack channel. I'm like look you dumbass kid, you are going to have to learn this stuff. I mean for shit's sake! He is just on there asking questions for answers to the damn questions and not even watching the freakin lesson videos.
What a waste of my freakin time and effort to help this idiot. Plus there's a test at the end which no one can offer help on. So this dumbass is going to finish the lessons and then not know a damn thing in order to pass the test. I'm pissed that he doesn't even try and I'm over here helping him like an idiot. NERD RAGE!5 -
The best motivational comment
I posted a rant in which I mentioned that "few" developers who don't want other to progress and are present to show off at every platform....
Got a comment, which I want to share...
Thanks to @MrCush
Ya, most of them tend to stalk the stack overflow and Arch Linux communities. On stack overflow they tend to refresh their browser nonstop to see who their next victim is on a new question and then spend an abnormal amount of time searching the site for a similar question and then downvote you and report as a duplicate. “Umm ya, the question you linked is similar to mine. I found that one as well but unfortunately it wasn’t in the same environment with the same conditions that I raised and didn’t help me. Oh btw, he posted that back in 2002 and HEY LOOK, he got reported for a duplicate as well. Seems like you reported him as well.”
The issues of arrogance and being unhelpful on that site are so vast that nobody else that registers can get enough points to be able to be allowed to answer someone else’s question so you never get any new blood.
Arch Linux “elites” like to answer your question with a link that you’ve already been to as they always link the same site. “Dude! There’s a wiki for a fucking reason. Did you read this page?”
Yes I did read that page and it was helpful to a degree but since I’m absolutely new to Arch, a lot of the information on the wiki is a bit too descriptive and over my head. Not to mention every paragraph links you to another wiki page which then links you to another and so on that I have no idea where I left off....
“Dude! If you don’t understand everything on the wiki then you shouldn’t be using Arch Linux man! Gtfo scrub.”
Took me a long time to get comfortable with Arch because of these assholes. You got to start somewhere and doing is the best way to learn.
Reading the wiki on how to install Arch now seems so simple to me because I know what to ignore and what is required but back when I first started it was absolutely confusing. -
After years of working at a place where you are as good it gets in terms of domain knowledge, it can be refreshing to work with someone who has way more experience than you.
The previous company I was with wanted to have me as one of their primary engineers, and everyone else who came in would have to learn from me (most of them were low-skilled contractors). This should have been great in theory, but it was actually quite frustrating since I did not relish being the mentor figure while just being two years into my career. Despite it getting to my head at times, I was aware that I still lack a lot of skills, but with no one to teach me, I hardly progressed in terms of growth, even though the leadership treated me well and listened to me.
Took a leap of faith and quit, to join a start-up where I would be the most inexperienced (and the youngest) person. Has been a few months, and I have stumbled and goofed up more times than I like to admit, but taken with the right mindset, it is nice to see how a team of professionals goes about it. It is a learning curve to get back into the mindset of the novice (after more than a year of being the undisputed "go-to" person), and to make effort knowing that you'll fall short in multiple places by the standards here, but at the same time, it's nowhere like the frustration I felt previously when my head was pushing against the shallow ceiling.
Fun part is, the learning is almost not at all about the code, but about how to be a proactive team member and all the things to think through and finalize BEFORE getting down to code. Some of it is bureaucracy, yes, but given the chaotic place I come from, I don't really mind it as long as it only goes as far as what is required.
The most amusing part of it all to me is how I try to be humble and listen to people (everyone's got a lot more experience than me), but I'm often asked to be critical of what others say and poke holes instead of just taking what they say at face value, which has been one of the most challenging things to adapt to for me (for similar organisation cultural reasons mentioned previously)/1 -
The datepicker saga
Part one
So I begin work on a page where user add their details, project is late, taking ages on this page
Nearly done, just need a component to allow users to put in some date of births. Look for react components.
Avoiding that one because fuck Bootstrap.
Ah-ha, that looks good, let's give it a go.
CSS doesn't exist, oh need copy it over from npm dist. Great it applied but...
... WTF it's tiny. Thought it was a problem with my zoom. Nope found the issue in github.com and it's something to do with using REM rather than EM or something, okay someone provided a solution, rather I saw a couple of solutions, after some hacking around I got it working and pasted it in the right location and yes, it's a reasonable size now.
Only it's a bit crap because it only allows scrolling 1 month at a time. No good. Hunting through the docs reveals several options to add year and month drop downs and allow them to be scrolled. Still a bit shit as it only shows certain years, figure I'd set the start date position somewhere at the average.
Wait. The up button on the scroll doesn't even show, it's just a blank 5px button. Mouse scroll doesn't work
Fucking...
... Bailing on that.
Part 2
Okay sod it I'll just make my own three drop down select boxes, day, month and year. Easy.
At this point I take full responsibility and cannot blame any third party. And kids, take this as a lesson to plan out your code fully and make no assumptions on the simplicity of the problem.
For some reason (of which I regretted much) I decided to abstract things so much I made an array of three objects for each drop down. Containing the information to pretty much abstract away the field it was dealing with. This sort of meta programming really screwed with my head, I have lines like the following:
[...].map(optionGroup =>
optionGroup.options[
parseInt(
newState[optionGroup.momentId]
, 10)
]
)...
But I was in too deep and had to weave my way through this kind of abstract process like an intrepid explorer chopping through a rain forest with a butter knife.
So I am using React and Redux, decided it was overkill to use Redux to control each field. Only trouble is of course when the user clicks one of the fields, it doesn't make sense in redux to have one of the three fields selected. And I wanted to show the field title as the first option. So I went against good practice and used state to keep track of the fields before they are handed off to the parent/redux. What a nightmare that was.
Possibly the most challenging part was matching my indices with moment.js to get the UI working right, it was such a meta mess when it just shouldn't have taken so stupidly long.
But, I begin to see the light at the end of this tunnel, it's slowly coming together. And when it all clicks into place I sit back and actually quite enjoy my abysmal attempt at clean and easy to read code.
Part 3
Ran the generated timestamp through a converter and I get the day before, oh yeah that's great
Seems like it's dependant on the timezone??!
Nope. Deploying. Bye. I no longer care if daylight savings makes you a day younger.1 -
For some reason I keep over engineering stuff to the point I spend 2 hours thinking the best way to do something. I'm making the backend for a project of mine and I wanted somewhat decent error handling and useful error responses. I won't go into detail here but let's say that in any other (oo) language it would be a no-brainer to do this with OOP inheritance, but Rust does OOP by composition (and there's no way to upcast traits and downcasting is hard). I ended up wasting so much time thinking of how to do something generic enough, easily extendable and that doesn't involve any boilerplate or repeated code with no success. What I didn't realize is that my API will not be public (in the sense that the API is not the service I offer), I'm the only one who needs to figure out why I got a 400 or a 403. There's no need to return a response stating exactly which field had a wrong value or exactly what resource had it's access denied to the user. I can just look at the error code, my documentation and the request I made to infer what caused the error. If that does not work I can always take a quick look at the source code of the server to see what went wrong. So In short I ended up thrashing all the refactoring I had done and stayed with my current solution for error-handling. I have found a few places that could use some improvement, but it's nothing compared to the whole revamp I was doing of the whole thing.
This is not the first time I over engineer stuff (and probably won't be the last). I think I do it in order to be future-proof. I make my code generic enough so in case any requirements change in the future I don't have to rewrite everything, but that adds no real value to my stuff since I'm always working solo, the projects aren't super big and a rewrite wouldn't take too long. In the end I just end up wasting time, sanity and keystrokes on stuff that will just slow down my development speed further down the road without generating any benefits.
Why am I like this? Oh well, I'm just glad I figured out this wasn't necessary before putting many hours of work into it. -
Freenas update from 11.1 to 11.2 beta 2
They added experimental smb direct / multichannel support, yay.
Me tries to connect to the smb share:
->Connection timed out 🤔
Tries something.
->Connection refused 😐
Google foo ....
->Nope, no connection 😔
"Failed to retrieve list of shares from server"
Reinstalls freenas to be sure it's not some janky install.
->Nope.
Google some more
->Nope 😭
*Like a year later*
Look into /etc/samba/smb.conf
Client max protocol = NTLM1
Motherfucker! 😬
Who thought that to be a good Idea!?
😠
It's the default Manjaro smb conf from the official repository by the way.
Seriously.
Didn't even know there was a setting for max client protocol.
Thought it was a server only config.
😵
Nope, some motherfucker trolled me long and hard this time. 😩
But back to getting smb direct working on my setup.
Thunar gvfs is like it's own completely separate thing.
Smb status, and all the other commands don't see any open connections anywhere.
Gvfs still connects fine to the share even though the smb.conf is deleted and everything else is complaining that there is no config.
On the one hand, it uses samba, on the other it's not actually.
Where the heck can I see the connection properties and wether rdma works or not?
Mother trucking, fracking, leg breaking piece of a dance type.1 -
I am going to rant about this being the exam week, it being hot as hell, and us having had a messed up semester study-wise... And I still managed to do good-ish in subjects somehow... Good as in, relatively good. I am no 4.0 GPA person by any means and could never be one if I studied only (if that's even realistic at all). Recently I applied to a job at Andersen Lab for a Trainee position. Got turned down because I lack experience. A TRAINEE POSITION. I could retake the interview but I feel weird with how I got rated a whole level lower than my IELTS score and two levels lower than my score at Epam (which is the more recent one!) and the questions were mostly so easy I could answer while half asleep. Just yeah. Also, while I understand the whole knowledge required thing... I don't get the need for THREE whole interviews only to then proceed to turn me down. I am continuously applying and still seeing no results. If I'm "lucky", I guess, I will get training from a bank. And then get employed there... Mentally doing very bad right now, just barely wanting to MOVE. Which is basically me being this close to giving up. Today's exam is in Linux Security and I swear, this was such a waste of a good sounding subject... Imagine, I could have learnt how to set up a server at home and all that but instead we did... The more basic stuff in Linux. And for the whole semester outside of two or three cases I was the only one in attendance. Anyways, I have been feeling like I just can't program anymore and stuff... Even though we did a Python subject this semester. And in that subject I just felt like we were going way too quickly considering a lot of the students there come from non-IT or close to that background...
I may need to put effort into learning 3D Environmental art, I have this feeling I would like doing that as a job in game dev. Oh, and I also wanna design this house that I have in mind for me. It's shaped like an Amanita Muscaria and instead of the white dots it has windows that are round, as well as a spiral staircase connecting the lower and upper floors. Need to figure out how to model that in something like AutoCAD (I have a bit of experience with it and that's why I'd like to try there... But I may have to learn other programs to do it for free), but it will take me a long time to execute since I am not the most organised in how I learn...
Anyways, I will only sporadically be there, so I may not see things here. I am somewhat busy with exams and then this NGO I recently became a founding member of (and I have to say, I kinda don't wanna be there, but there are things that have to be done). Also filling the documents for a Canadian visitor's visa to go finally see the family over there and all that. But the latter will probably not happen until next year...
Finally, I am wishing you all a sound mental health and happiness. I hope you do well in whatever you are doing at the moment or are planning to. Until next time!3 -
Sharing a first look at a prototype Web Components library I am working on for "fun"
TL;DR left side is pivot (grouped) table, right side is declarative code for it (Everything except the custom formatting is done declaratively, but has the option to be imperative as well).
====
TL;DR (Too long, did read):
I'm challenging myself to be creative with the cool new things that browsers offer us. Lani so far has a focus on extreme extensibility, abstraction from dependencies, and optional declarative style.
It's also going to be a micro CSS framework, but that's taking the back-seat.
I wanted to highlight my design here with this table, and the code that is written to produce this result.
First, you can see that the <lani-table> element is reading template, data, and layout information from its child elements. Besides the custom highlighting code (Yellow background in the "Tags" column, and green gradient in the "Score" column), everything can be done without opening even a single script tag.
The <lani-data-source> element is rather special. It's an abstraction of any data source, and you, as a developer can add custom data sources and hook up the handlers to your whim (the element itself uses the "type" attribute to choose a handler. In this case, the handler is "download" which simply sends a fetch request to the server once and downloads the result to memory).
Templates are stored in an html file, not string literals (Which I think really fucks the code) and loaded async, then cached into an object (so that the network tab doesn't get crowded, even if we can count on the HTTP cache). This also has the benefit of allowing me to parse the HTML templates once and then caching the parsed result in memory, so templates are never re-parsed from string no matter how many custom elements are created.
Everything is "compiled" into a single, minified .js file that you include on your page.
I know it's nothing extraordinary, but for something that doesn't need to be compiled, transpiled, packaged, shipped, and kissed goodnight, I think it's a really nice design and I hope to continue work on it and improve it over time1 -
the more i think about the effort i've poured into various projects and products over the years, for clients or my own, and how little its payed overall... its quite depressing (people probably understimate, but i'm talking years upon years, not all at at time, but month spurts where i'd be done for the day at 7 PM or later) 12 hour days are easy to hit quickly when you are cranking out software
if you need an application requirement i've probably built it before, probably most of them twice
everyone tells me "it will pay off in the long run!" or "its great you have so much experience and built those different things!"
great to say, but i'm not getting payed for it / see no benefit from it
not fun to think about
and every place i go i know its gonna be filled with the workaday dev bros who are just there for the paycheck, have no passion, and who don't even know what TypeScript is (true story about that TypeScript one, i shit you not, occured only last year, and the guy is a frontend dev)
😩😩😩
where do i belong devrant?15 -
#just Bluetooth headphones things
When you're sitting on crowded public transportation and can't hear anything unless your phone is closer to your headphones than anyone else's, i.e. unless it's close as shit to your face 😍😍😍
When you want to listen to music for longer than 2 hours or several times during your workday but can't because the BT headphones last 2-3 hours 😍😍😍
When the left and right side don't pair with each other but you can pair with each individually 😍😍😍
When half of the button presses and user interactions aren't documented and there's no way to forget a device 😍😍😍
When you try to connect a new device to them in a public area and just see a dozen random serial numbers, so you have to wait and hope they get resolved to the headphone brand name 😍😍😍
When Satan takes your soul and the Bluetooth connection drops in hell 😍😍😍
When the music quality is lower and can experience static and maybe even skip in between 😍😍😍
When the bus hits a road bump, it falls out of your ear, and rolls halfway down the bus 😍😍😍
When it takes a long time to find them because they tiny af, and just as long to find the charging cable 😍😍😍
When manufacturers cannot agree on a standard volume sync system and so you have to check the volume and adjust every time you connect and disconnect your headphones 😍😍😍
Can we please just stop making everything Bluetooth?
Sincerely,
Someone who just wanted to listen to a 2 minute billie eilish song but found it easier to sing in his head9 -
[Background]
Back in September I joined a startup after my first job in MNC for about 1.8 yrs as a fresher. I always wanted to learn, but the experience in that MNC was not at all fruitful. So ai decided to join a small/mid size company or a startup. To my luck, I got in this small startup in a week after my resignation as a front-end dev (always wanted to be).
It's an automation company, so you can find software, electronics, even mechanical engineer.
The team was almost a year younger than me. It was a team of around 12 people, in which 5 of them were from Business development.
The tech team was too driven and knowledgeable. Always trying new stuffs and motivating to do the same. I was highly motivated by them in my initial days, watching them working on new stuffs.
So I started with revamping their website completely in Angular 4, and did it in around a month or so, being new to Angular. Outcome was pretty satisfactory. I wanted to work on new projects, but just to get the cashflow in they started getting in WordPress projects. It was frustrating, I wanted to work more on new technologies like Angular, React, etc...but just for the survival of the company I had to work on WordPress, so to respect their urge to get going I kept working on 3-4 projects in parallel, and mind you the clients were from hell !!
Fast-forward 4 months, I am still working on few WordPress websites, and one internal GPS based project in React. And I haven't received my salary for past 3.5 months, since the company is still struggling with the issue of funding and getting money from clients. I kinda liked working there because there was lot to learn even though they are so young, but I had bills to pay too.
And I am in dilemma to leave the company or not, because I already stretched 3 months out of good will and guilt of leaving the company in high time. So i finally let the CEO know that I cannot stick for any longer. And i was done with the false promises of getting the salary "next month" everytime. All the money getting inside of company was invested heavily on the product we were building and no one was getting the salaries. Others were fine since they were founding members too.
Long story short : I finally left immediately and now working in a good company as a React dev. I hope they do well and I would love to see them grow, but please *STOP* making false promises and hold on to employees on a lie.1 -
Client be like:
Pls, could you give the new Postgres user the same perms as this one other user?
Me:
Uh... Sure.
Then I find out that, for whatever reason, all of their user accounts have disabled inheritance... So, wtf.
Postgres doesn't really allow you to *copy* perms of a role A to role B. You can only grant role A to role B, but for the perms of A to carry over, B has to have inheritance allowed... Which... It doesn't.
So... After a bit of manual GRANT bla ON DATABASE foo TO user, I ping back that it is done and breath a sigh of relief.
Oooooonly... They ping back like -- Could you also copy the perms of A on all the existing objects in the schema to B???
Ugh. More work. Lets see... List all permissions in a schema and... Holy shit! That's thousands of tables and sequences, how tf am I ever gonna copy over all that???
Maybe I could... Disable the pager of psql, and pipe the list into a file, parse it by the magic of regex... And somehow generate a fuckload of GRANT statements? Uuuugh, but that'd kill so much time. Not to mention I'd need to find out what the individual permission letters in the output mean... And... Ugh, ye, no, too much work. Lets see if SO knows a solution!
And, surprise surprise, it did! The easiest, simplest to understand way, was to make a schema-only dump of the database, grep it for user A, substitute their name with B, and then input it back.
What I didn't expect is for the resulting filtered and altered grant list to be over 6800 LINES LONG. WHAT THE FUCK.
...And, shortly after I apply the insane number of grants... I get another ping. Turns out the customer's already figured out a way to grant all the necessary perms themselves, and I... No longer have to do anything :|
Joy. Utter, indescribable joy.
Is there any actual security reason for disabling inheritance in Postgres? (14.x) I'd think that if an account got compromised, it doesn't matter if it has the perms inherited or not, cuz you can just SET ROLE yourself to the granted role with the actual perms and go ham...3 -
Data wrangling is messy
I'm doing the vegetation maps for the game today, maybe rivers if it all goes smoothly.
I could probably do it by hand, but theres something like 60-70 ecoregions to chart,
each with their own species, both fauna and flora. And each has an elevation range its
found at in real life, so I want to use the heightmap to dictate that. Who has time for that? It's a lot of manual work.
And the night prior I'm thinking "oh this will be easy."
yeah, no.
(Also why does Devrant have to mangle my line breaks? -_-)
Laid out the requirements, how I could go about it, and the more I look the more involved
it gets.
So what I think I'll do is automate it. I already automated some of the map extraction, so
I don't see why I shouldn't just go the distance.
Also it means, later on, when I have access to better, higher resolution geographic data, updating it will be a smoother process. And even though I'm only interested in flora at the moment, theres no reason I can't reuse the same system to extract fauna information.
Of course in-game design there are some things you'll want to fudge. When the players are exploring outside the rockies in a mountainous area, maybe I still want to spawn the occasional mountain lion as a mid-tier enemy, even though our survivor might be outside the cats natural habitat. This could even be the prelude to a task you have to do, go take care of a dangerous
creature outside its normal hunting range. And who knows why it is there? Wild fire? Hunted by something *more* dangerous? Poaching? Maybe a nuke plant exploded and drove all the wildlife from an adjoining region?
who knows.
Having the extraction mostly automated goes a long way to updating those lists down the road.
But for now, flora.
For deciding plants and other features of the terrain what I can do is:
* rewrite pixeltile to take file names as input,
* along with a series of colors as a key (which are put into a SET to check each pixel against)
* input each region, one at a time, as the key, and the heightmap as the source image
* output only the region in the heightmap that corresponds to the ecoregion in the key.
* write a function to extract the palette from the outputted heightmap. (is this really needed?)
* arrange colors on the bottom or side of the image by hand, along with (in text) the elevation in feet for reference.
For automating this entire process I can go one step further:
* Do this entire process with the key colors I already snagged by hand, outputting region IDs as the file names.
* setup selenium
* selenium opens a link related to each elevation-map of a specific biome, and saves the text links
(so I dont have to hand-open them)
* I'll save the species and text by hand (assuming elevation data isn't listed)
* once I have a list of species and other details, to save them to csv, or json, or another format
* I save the list of species as csv or json or another format.
* then selenium opens this list, opens wikipedia for each, one at a time, and searches the text for elevation
* selenium saves out the species name (or an "unknown") for the species, and elevation, to a text file, along with the biome ID, and maybe the elevation code (from the heightmap) as a number or a color (probably a number, simplifies changing the heightmap later on)
Having done all this, I can start to assign species types, specific world tiles. The outputs for each region act as reference.
The only problem with the existing biome map (you can see it below, its ugly) is that it has a lot of "inbetween" colors. Theres a few things I can do here. I can treat those as a "mixing" between regions, dictating the chance of one biome's plants or the other's spawning. This seems a little complicated and dependent on a scraped together standard rather than actual data. So I'm thinking instead what I'll do is I'll implement biome transitions in code, which makes more sense, and decouples it from relying on the underlaying data. also prevents species and terrain from generating in say, towns on the borders of region, where certain plants or terrain features would be unnatural. Part of what makes an ecoregion unique is that geography has lead to relative isolation and evolutionary development of each region (usually thanks to mountains, rivers, and large impassible expanses like deserts).
Maybe I'll stuff it all into a giant bson file or maybe sqlite. Don't know yet.
As an entry level programmer I may not know what I'm doing, and I may be supposed to be looking for a job, but that won't stop me from procrastinating.
Data wrangling is fun.1 -
Some humans are calm and thoughtful, some annoyingly complicated, while others with behaviours too difficult to comprehend.
I got a call from the office (former from 6 months ago) and it's from the G.M herself.
** Phone rings **
Hmm see who's calling...
Me: * Picks up phone and set it on loud speaker, so my partner can also listen *
Me: Hello Ma
G.M: Hey (calls me by my full name)
Me: It's really nice to he...
G.M: Why would you move the YETI server hosted on AWS to Azure! We have been faced with lots of challenges ever since and that has cost the company a lot.
Me: Pardon me Ma, but that...
G.M: That is a very bad and unacceptable behaviour from you and I can have the company sue you for this.
Me: Excuse me Ma, but...
G.M: I have spoken with the director of C.M.D quaters (A sister company) and explained the situation on ground about what you did before leaving without having any prior permission. What nonsense!
** At this point my partner let's call her "CC"... was more confused than me**
CC : **Panicking** Who's that? What did you do? I thought you said you no longer work at that firm, what's going on?
Now I'm confused cus I don't even know who to reply.
Me: **Signals CC to calm the fuck down**
G.M: ** Still talking and spitting out millions of threats to the guy who left the company with evil deeds in mind...**
CC who literally hates suspense and also a half cool and half crackhead kind of person... Tries stealing the phone from me so she could pour out whatever is on her mind to the caller because of how disgusted she felt, mostly for reasons I quite understood but nevertheless i kept the phone far from her reach while we both enjoyed the suiting voice of *a threat giver*
Honestly at this point my closest guess was "Joe, who must have fucked up big time" because Joe is the company's SysAdmin and has a lot of fucked up records (One time Joe tried to convert all system OSes to Linux even with our hydra servers with pre-installed windows running smoothly, his action caused a noticeable server down-time all for the reason of Joe being a Linux freak). He and only he has the power to transfer/switch/off/on servers at will. I really don't know what Joe must have done but sure thing is there is a fuck up somewhere.
Talking about me, I was only a developer enthroned only within his desk and secondly I no longer worked there. Who fucking calls a retired soldier about a lost battle after six freaking months later! Just fucking sink with your ship captain!
But how can I explain all of this to G.M without implicating Joe and also not look like snitch, I thought to myself.
While I was pondering within myself and the call which has long been disconnected, CC broke the silence.
CC: Giddy, Can you honestly explain me why your old company is calling talking about lawyers and suing you? Have you been lying to me about your work?
Me: *Explained the situation to CC*
CC: But why was she that saucy and acting a bitch? You should have spare me a minute with her.
Me: She wouldn't let me speak but we good CC. We good.
The woman that just called is the G.M. of the firm I had formerly worked with and she's also the wife to the M.D of the same firm which was my former direct Boss whom I respect a lot. Having a disjunct with the wife can also affect the relationship with the husband, which I don't want to lose. So we cool!
Maybe I should text her or maybe not... But before then
** Another call comes in **
It's her again.
GM: Hello Giddy (Sounding calm)
Me: (WTF. She called me by my first name and also sounds cool... More confused than a stray dog) ...Yeah Hello
GM: I just called to let you know that my accusation was wrong because I was misinformed. Joe Nosa was in charge on Systems but why didn't you correct me on that during our last conversation?
Me: ... 😲
CC: (Drags the phone) Hello and Good morning whosoever...
G.M: Sorry who am I speaking with?
CC: (Introduced herself) I overheard your last conversation with Giddy, and I demand you appogise to him both in written and in verbal because not only did you accused him falsely, you also almost bridge the trust between us which may have cost the relationship.
Me: ...
** Long awkward silence **
G.M: Hey Giddy, I'm sorry. Just angry about what went down recently.
Me: All good ma'am
CC: ** Hangs up **1 -
fuck.. FUCK FUCK FUCK!!!
I'mma fakin EXPLODE!
It was supposed to be a week, maybe two weeks long gig MAX. Now I'm on my 3rd (or 4th) week and still got plenty on my plate. I'm freaking STRESSED. Yelling at people for no reason, just because they interrupt my train of thought, raise a hand, walk by, breathe, stay quiet or simply are.
FUCK!
Pressure from all the fronts, and no time to rest. Sleeping 3-5 hours, falling asleep with this nonsense and breaking the day with it too.
And now I'm fucking FINALLY CLOSE, I can see the light at the end of the tunne<<<<<TTTOOOOOOOOOOOOOTTTTT>>>>>>>
All that was left was to finish up configuring a firewall and set up alerting. I got storage sorted out, customized a CSI provider to make it work across the cluster, raised, idk, a gazillion issues in GH in various repositories I depend on, practically debugged their issues and reported them.
Today I'm on firewall. Liason with the client is pressured by the client bcz I'm already overdue. He propagates that pressure on to me. I have work. I have family, I have this side gig. I have people nagging me to rest. I have other commitments (you know.. eating (I practically finish my meal in under 3 minutes; incl. the 2min in the µ-wave), shitting (I plan it ahead so I could google issues on my phone while there), etc.)
A fucking firewall was left... I configured it as it should be, and... the cluster stopped...clustering. inter-node comms stopped. `lsof` shows that for some reason nodes are accessing LAN IPs through their WAN NIC (go figure!!!) -- that's why they don't work!!
Sooo.. my colleagues suggest me to make it faster/quicker and more secure -- disable public IPs and use a private LB. I spent this whole day trying to implement it. I set up bastion hosts, managed to hack private SSH key into them upon setup, FINALLY managed to make ssh work and the user_data script to trigger, only to find out that...
~]# ping 1.1.1.1
ping: connect: Network is unreachable
~]#
... there's no nat.
THERE"S NO FUCKING NAT!!!
HOW CAN THERE BE NO NAT!?!?!????? MY HOME LAPTOP HAS A NAT, MY PHONE HAS A NAT, EVEN MY CAT HAS A MOTHER HUGGING NAT, AND THIS FUCKING INFRA HAS NO FUCKING NAT???????????????????????
ALready under loads of pressure, and the whole day is wasted. And now I'll be spending time to fucking UNDO everything I did today. Not try something new. But UNDO. And hour or more for just that...
I don't usually drink, but recently that bottom shelf bottle of Captain Morgan that smells and tastes like a bottle of medical spirit starts to feel very tempting.
Soo.. how's your dayrant overdue tired no nat hcloud why there's no nat???? fuck frustrated waiting for concrete to settle angry hetzner need an outlet2 -
// Pretty long rant.
Already made some rants some months ago about coding experience in Smalltalk for a school project, but to sum it up :
Because of administrative things, Smalltalk change from option to obligatory course to everyone (we were told that "we had 3 choices out of 3" for options. Not even kidding)
So whole prom got to do a Smalltalk project, a basic shapes editor with Drag'n'Drop and keyboard shortcuts implemented.
But literally everyone didn't get a grasp of the language nor VisualWorks, the IDE. So we got projected in a "Do-it yourself, learn by yourself" project with a language that nobody understood.
Took me 1 week of browsing on Google to find books explaining more than the teacher did. Took me another week to notice that the teacher actually provided VisualWorks's manual. (No one would have noticed if I didn't tell them, and the teacher went silent on it.)
And then the coding started. My teacher thought this project would require something like 20-30 hours of coding. Took me 2 whole months and a half to do moist of the features he asked (only the Keyboard shortcuts weren't implemented, explanation below), and I was the most advanced of whole prom, so I had to answer every single question of fellows. Not complaining, but this took me a lot of time.
But why didn't you ask the teacher ?
- If I ask him every question I had in mind, I would actually harass him since I had too many of them, and I wasn't the only one.
- I actually went twice to his office to ask him question. First question, that was pretty straightforward, I forgot something, blablabla all done. Second time, that was for the keyboard. And then, things are getting even funnier. The teacher didn't have VisualWorks installed on his Mac, so he tried to install it while I was waiting. And he took too long time to actually launch it, because VisualWorks asked for him to log in, to provide an email, the download is a little long thanks to the network and the size, etc. When he finally was able to launch it, I had some classes to attend, so he couldn't answer. And since then, I had no time because last year, flooded with work, exams, classes ,etc.
All of that to have only 13 out of 20. I kinda shrugged, knowing that I wouldn't get more, and said that Smalltalk will only be a line of my resume.
Pretty long rant, sorry about that, but had to explain so you can see how bad it was to me.1 -
TL;DR: I have some rambly shit to say...
Update on the Uni stuff: I think I got a pass in all the subjects. Two exams left but I am holding on. It's a big deal to me since last year I could barely do a single subject per semester - a subject I had failed a few times because of lack of interest and good ol' depression. Anyways, I persisted with that subject, got my Bachelor's in Food Technology and now I'm doing that Master's of mine... It probably looks wild to people here that I did that switch but I have always had a relationship with computers as long as I remember myself. So it's not surprising that as soon as I got a choice in what I *actually* wanted to do I chose this kinda thing. But I do have to rant that it took me 10 fucking years to choose! And that I did not choose it before choosing food technology which I will probably never use anyways. I wasted so much of my energy and time on that. I did elect programming as one of the subjects while doing food tech but I really should have moved to something else. But oh well. Guess I had to find out the hard way.
For all those reading, this is what it looks like when you're 30, have very little experience in doing programming for anything else than academics and are doing a major career switch through studies after struggling for 10 years with a 4-year Bachelor's. But such is life.
Also a bit off topic but I just cannot handle people not telling what they mean because of the inability or lesser ability to tell what that is in the first place.
I can't deal with the fact of how fucked human societies are. I just can't. I am way too nice for it. So I listen to stuff like true crime to really get a feel of how evil people can be. I know it's ~problematic~ or whatever, but to me it is a way of engaging with the lesser spoken side of human beings.
And maybe, just maybe, I should get checked for ADHD again because I feel like despite my therapy for depression, nothing really has changed with the ADHD symptoms I was diagnosed with. And maybe for autism since people have labelled me that way and it might explain some stuff... All that is to say I need some good mental care. And this society is shit for it. Hell, apparently one of the psychologists I was under the care of thought depression resulted from ungratefulness. All this while I was legit being abused. But that abuse has stopped now that I found a psychologist that is actually standing up for me. I just mourn for all the time I spent being depressed and how it fucked my memory and stuff. How much it affected me and all. I have no idea why I'm being this vulnerable but it feels somewhat fitting... How do you cope with being 30 and not remembering almost all your life? What you remember being what you managed to write down or has been negative enough it stuck in the brain for forever...
Just why am I fucking supposed to be all happy and shit when I am just tired of life because it is too goddamn much? I have no real reason to look forward to things, online friends and the offline one included. Because ultimately, I have no damn motivation to look forward to anything, really. I am supposedly doing better but in reality I am just getting better at going through the motions. The therapy, while mindblowingly effective, is not actually addressing the core cause of everything and just expecting me to fake it till I make it. And this is me saying that about CBT. Why should I have to tell myself things just to feel human? I am one and as long as I'm alive, nothing will change that. So why do I have to always feel like an alien wherever I am? So out of touch with myself that I don't have a self image or an ability to even tell what the actual fuck I want from life... I am getting better with the latter, but still. It hurts. I wanna shed so many tears but I'm frustratingly unable to do so.
I am just a human trying to human in this ocean of 8 billion humans. Maybe I will find some more connections, maybe I won't.
I wanna end this rambling session by a few things:
1. I will have to go to Canada at some point this year to see my in-laws and some other family over there...
2. I will probably have to seek a job there (for financial reasons it is much better for me to have one there and to work remotely in Georgia) and I have no idea of where to start since I am not the greatest material for it.
3. Life is going alright-ish.
4. I will hear from the startup company at some point this month.
5. I have plans for my future but no idea if they will ever come true at this point.
6. My family arrangement will have to change in more ways than one.
7. I should resume my unofficial first music album and engage in creative stuff because at the core, I have a need to do so.
8. Do I really have to do Duolingo again? I really want to not forget German and Russian, but I just never have practice. And Duolingo is surprisingly easy to forget to do for me.
The end.3 -
Like age 8?
As a kid I really liked flash games and animations and wanted to get into it. I couldn't do flash, it looked too complicated but I found a little software by the name od KoolMoves that was just a simpler flash animation tool.
I did a bunch of shitty stick figure animations in it (hello to everyone from stick figure death theatre) but eventually I realized that I can make it do things (interactive menus, choose your story kinda things, move the player around, shoot...!)
I fell in love with AS1 and later AS2.0 and made bunch of demos and proof of concepts for systems and games. Most are lost to time and datarot by now)
Age 12
Eventually I found out I can make the entire Windows machine do what I want using first Batch files and later Visual Basic script (made a skype bot!) At this point I was also really into graphics and logo/web design
Age 15 - 20 or so
Then it was pretty natural to move to actual Visual Basic, then C# and finally I to C++. And I had the C family in my heart forever. I managed to get a but into 3D graphics too and got a part-time in archviz
Even by this point I never believed I could be a programmer as a profession. I thought of it just as something I love, but have no chance getting into compared to some of the names out there. I half expected to be either doing graphics (cause I found it simple at the time) or some shitty random job in an office.
20+
Finally I decided to go to uni and study software development, see if I can touch the future I always dreamed of! And... Well... I found out more than 80% of the people there never touch a language up until now and most people are just as retarded as I thought..
For a while I also worked as a game designer (still not being comfortable calling myself a programmer, so I chose a non programming position) but I ended up going into the code and improving and fixing game designer tools (it was unity and C#)
After seeing actual programmers at work in a company, and talking to a bunch of them I realized I already have everything I need to do this seriously and with that experience out of the way I breezed through uni, learned to love Linux and landed a proper job :)
I kinda hope my experience with long lasting self doubt will be useful for someone -
I just want things to do on my phone that are intellectually going to be stimulating
and not brainwashing
is that so hard to ask for
I can't keep playing sudokus all the time. the other day I wanted to go read a coding answer I asked an AI in my browser on my laptop but I was in bed on a voice chat with a sleeping person and didn't wanna get up out of bed to go fetch the laptop. my browser lets me see tabs I have open on other machines and this AI website makes a url with a unique id so you can browse to the chat you had, but it seems to not always work
earlier in the day I had asked the AI a theoretical coding question and it answered, but I got distracted and needed to go do something before I finished reading it (it was long). but when I was in bed on my phone playing sudokus for intellectual stimulation, annoyed and bored it was the only thing I could do, I had the bright idea of opening the tab on my laptop through my phone. Vivaldi is great and this always works. unfortunately the AI website's unique id thing doesn't. it loaded the website by URL correctly but the AI website just took me to the home page and I had no chat history to read =[
phones are literally computers but you can't do anything on them. can't watch videos without ads or bugs, if you load a lot of websites the tab management system sucks and performance is shit, controls for games suck even if you could find something not ad infested
hell you can't even do a pedometer that's not trying to get you to "log in". bruh
you can't even browse GitHub code! at least last I checked. it's just awkward, their app
I feel like I'm in a straitjacket in terms of technology and I wanna scream. I don't even know how to adequately describe my frustration or what I keep wishing for. it's been prominent in my head a couple years now. it's like we're regressing in terms of compatibility. went from card games provided by Microsoft like solitaire and spider, paint... to Jesus fuck you can't even get paint in a browser now without someone trying to fleece you
remember when things were inventive, nice, and not shit?
I don't even like playing mindustry on a phone to be fair. fighting the controls is most of the experience. so maybe phones are only good for reading things
I just noticed my brain over time doing sudokus learns so I wanted to practice engaging in something and learning as exercise, cuz I think it would be good for the brain damage. bah5 -
On This Episode of Ghetto Medium..
Posted after midnight for extra spooky effects. Read in the dark at your own risk. You've been warned.
So my mother has been on a binge watching shows like long island medium (apparently the taller your hair the closer you are to god or something), and every time we talk she begins at length to talk about, you guessed it.. 'ghosts.'
Now don't get me wrong, I've had some 'spooby' shit occur in my lifetime, the sort that will tighten your sphincter faster than bill cosby asking you if you want some koolaid or grape drank, but I digress.
The ghost talk is tiring. Lately theres been a *flood* of these new shows, purportedly showing mediums and people who can 'look into the other side' and I realize just how vapid and ridiculous it's all become, as if they all are being personally haunted by the ghost of John Edwards burnt out husk of a career. Theres long island beehive big-hair medium, celebrity medium, allison DuBois (the inspiration for that one sappy show *medium*) whos red hair and vacant stare speak of glimpses into centuries past like an intimate unseen horizon. or maybe she forgot to unplug her curling iron in a hotel one time and has been rendered permanently catatonic. And who can forget *Beyond With James Van Praagh* (everyone) whos face, as measured by the width of his mustache, appears to be expanding at a constant rate like a bad image macro edit thats been memed and repasted a thousand times. Then theres Chip Coffee, whos name is about as believable as his teaching degree on the show *Psychic Kids* where he mentored, again, you guessed it, *psychic kids*. Of course theres Tyler Henry, a youthful, uh, "flamboyant" medium for celebrities with ghost problems. Never trust a man with two names, this ones no exception, he looks so clean cut hes either secretly mormon, or secretly gay, maybe both. I'm not judging, but I am saying if I ever saw his clean cut, smooth, wrinkless (seriously, how tyler? how?), all american face, say smiling that subtle smile outside my kitchen sliding glass door at 3 am, his face watching me from the pitch dark outside, I wouldn't at all be surprised, except for the hospital bill I'd have to pay after shitting a brick and needing anal surgery.
At this rate we have mediums popping out left and right, like clowns at one of them R.L Stein nightmare carnivals, or beggers outside a methodone clinic. Geez, they're coming out the wood work, like those painting you see with hidden faces in them, or wheres-waldo posters, only you're trying to find the non-waldo guy amongst all the characters because they're ALL waldo: goofy acting, goofy dressing, and just all around goofy looking.
At this rate I'm fully expecting "pet medium" (starring a character named Stephen King and his marital problems, played by johnny depp eating way to much corn), and "haunted objects medium", and "car medium" (it's just seinfeld in a car, talking to psychics instead of other people), and "ghetto medium."
Today on this episode of "Ghetto Medium"..
Medium: Teneesha, aw yeah girl, u *definitely* ded gurl, uh huh! You WAY to white too be alive, you done passed over gurl!
And in the next episode of Ghetto Medium, one man claims "every time I bend over I can hear "wOoOoOoOoO!, Is my asshole possessed? Find out is it real or fake, and what our verdict is in Ghost Medium, episode 3: A Haunting In My Nether-regions."
Cut commercial break.
"Jerry Springer: One women asks, 'jerry, is my unborn child's foreskin haunted? And later today we ask the crowd, would you have sex with a ghost?"
Welcome to American television 'programming' in 2019.
Yes, it's all brainwashing.2 -
!dev
Battle of titans:
Me vs Windows Update.
No, this time not about automatic restarts interrupting my work because I've postponed "important" updates for far too long.
Well, technically I lied.
Last evening windows force rebooted to install updates. OK then, I'll go home. This morning I saw windows update frozen at some percentage.
This evening I've got 3 forced restarts in 5 minutes. Only notepad++ with an opened and unsaved document saved my life.
Apparently, windows update follows a simple logic:
if(user.IsUsingComputer && lastUpgradeAttempt.HasFailedWithTotalFreeze && versionUpgrade.CanInstallOnlyWithFreshWindowsInstallation)
{
update();
}
Seriosly. Why am I forced to install an update only to see it lock up the entire computer and rollback after I intervene? Last time I had this issue only reinstalling windows helped, which costs about 2 days. Excluding one day to try suggested solutions, remove drivers, av scanner, etc.
Is it really that hard to implement logic like:
If(lastUpdateAttempt.HasFuckedUp)
{
windowsUpdate.FuckOff();
}4 -
*Earlier today, asked a colleague to add exception handling for some (around 20) source files.*
*Just now, he walked over to my desk and this is the conversation that took place between us*
He: Hey, I've handled exceptions in those source files. But now the build is failing.
Me: Let me check. *pulled up the code and saw compilation errors 😠*
Me: Hmm, there are compilation issues. Did you try running those in your local machine?
Him: No, should I?
Me: *still trying to figure out why on earth the code is not compiling* Ah, you should have. That would have saved us some time.
Him: Oh, I see. Adding exception handling was an easy task, so I didn't bother to run it.
Me: *After seeing curly braces being missed out or added all over the files, I lost my fucking mind😡😠*
Me: Hey, don't worry. I'll take it from here 😊. *IN MY MIND: Thanks for being an ass hole and doubling my work on a day before a long weekend 😠😡🤬*2 -
I subscribe to many copywriting newsletters. Here's an article that shows how it's like on "the other side", marketers struggle, too.
How Kevin's Massive Mistake
Completely Changed His Life
Kevin H. made a huge mistake.
The biggest, he would say, if he could tell you himself.
And he knew it immediately.
It was, he said, "instant regret."
Within milliseconds, he was asking himself "What have I done..."
Kevin, see, had just jumped the rail of the single most popular suicide spot in the world, the Golden Gate Bridge.
On average, the site gets another distraught jumper every two weeks. Kevin was one of them.
It wasn't like he hadn't tried to quiet the voices in his head. Therapy, drugs, hospitalization.
Time to die, those voices still said.
And yet, in the minutes his bus dropped him off at the bridge, he hesitated and paced with tears in his eyes.
"I told myself if just one person comes up to me and asks if I'm okay... if one person asks if they can help... I won't do it. I'll stop and tell them my whole story..."
But nobody did, so he jumped.
It was in those next milliseconds, he would later say, he knew it was the biggest mistake of his life.
He didn't want to die.
But now, he was sure, it was too late.
From its highest point, it's a 245-foot plummet into the icy bay waters below.
Out of the 1,700 people that have jumped from the bridge since it first opened in 1937, only 25 have survived.
Kevin, against all odds, would be one of them.
He slammed into the water like hitting concrete. Three of his vertebrae instantly shattered.
When he surfaced, he couldn't hold his own head above water. But, incredibly, a sea lion kept pushing him up.
The Coast Guard soon arrived and pulled him out.
From there, he began a long recovery that required intense surgery, physical therapy, and psychiatric care.
While still under treatment, a priest urged him to give a talk to a bunch of seventh and eighth graders.
Afterward, they sent him a pile of letters, both encouraging and full of their own pained thoughts.
He also met a woman.
Today, Kevin lives in Atlanta and he's been happily married for the last 12 years.
And he tours the country, sharing his story.
So why re-tell it here?
Obviously -- I hope -- you don't get lots of copywriters looking to snuff it after a flopped headline test.
Just the same...
We've talked a lot in this space about the things one needs to get by in this biz.
My friend and colleague Joe, over at the publishing powerhouse Agora Financial, likes to list requirements.
You need intense curiosity...
You need a killer work ethic...
And you must, MUST have... resilience.
Meaning, you must have or find the capacity to bounce back from failure and flops, even huge ones.
Now, again, Kevin's story is an extreme and in this context -- I hope -- a hyperbolic example of somebody giving up. In the worst way possible.
It is also, though, a metaphor.
See, I get a lot of notes from some of you guys... and at conferences, I get to talk to a lot of people...
And I often get the sense, from some folks, that they're feeling a little more overwhelmed than they let on.
Some are just starting out, and they've got a lot on the line. For some, it's everything. And some are desperate to make it work.
Because they have to, because their pride or livelihoods or a family business is at stake, because it's a dream.
And yet, they're overwhelmed by all the tips and secrets... or by piles of confusing research or ideas...
For others, even had some success, but they're burned out, feel antiquated, or feel like "imposters" that know less than they let on, in an industry that's evolving.
To all those folks... and to you... I can only say, I've been there. And frankly, go back there now and again.
Flops happen, failures happen. And you can and will -- even years and decades into doing this -- make the wrong choices, pick the wrong projects, or botch the right ones.
The legendary Gene Schwartz put it this way, according to a quote spotted recently in fellow writer Ben Settle's e-letter...
" A very good copywriter is going to fail. If the guy doesn't fail, he's no good. He's got to fail. It hurts. But it's the only way to get the home runs the next time."
Once more, nobody -- I hope -- is taking the trials of this profession hard enough to make Kevin's choice.
And believe me, I don't mean to make light of the latter. I just want to make sure we hit this anvil with a big hammer. To drive home the point that, whatever your struggle, be it with this biz or something bigger, that you don't want to give up. Press on.
As Churchill put it, "Success, is the ability to go from failure to failure without losing your enthusiasm."
Or even more succinctly when he said, "If you're going through hell, keep going."
Because it's worth it.
.
John Forde -
As promissed.
Day #1 on THE other project. Nothing fancy, just setting up my dev env. Got a decent pc with all the required network permissions. And this time I got w10 [last year I was working there on w7 pc via rdp from another w7 laptop. Dont ask...]
of course no localadmin rights to set shit up. Downloaded all the installs, found someone who has admin rights to run them. I even managed to get admin powershell!
Ran all installers, enabled long paths support, env vars, tweak here, tweak there,... Installed git bash to at least have a taste of shell. Decided to try out wsl. Enabled the feature, didnt reboot right away.
Rebooted. 2xclick on ubuntu setup and I get an error claiming wsl is not ebabled. Wtf? Did I do it wrong? I see bash command is there now so I must have done it right. After some googling I found out that even though I can enable wsl, it doesnt work on my version of windows. It's too okd they say. Yeah, tx MS, that's very intuitive and user friendly!
Allright, my hopes to habe a decent sub-os died. Git bash it is :( but I miss tmux soooo much. Then I came across smth that caught my eye. Msys2 it's called. Apparently it's based on cygwin and has a pacman package manager! ´pacman -S tmux´ -- hippee-ka-yay motherfuckers! It's not the best terminal emulation, but it works quite allright and it has tmux. And netcat!
Banished to mouseclickerland still managed to find a good enough shell. Yayy!
So there it is. My first day's ups and downs, disappointments and discoveries.
If you know a better shell I could set up on w10, please, share -
Hey devRant! Long time no see
I recently landed a job as a java developer so that's amazing
Still getting my head around the company's codebase, and holy fuck its huge.
I was taught best oop practices and patterns in CS class, but seeing them implemented in such a huge project is kinda pisssing me off: every single thing in the code has dozens of classes that call and implement each other, I spend half my time spamming the "open declaration" shortcut in a futile attempt to understand how the pieces fit together.
Sometimes I wish they had stuck to implementing everything in a handful of files, instead of the jungle of nested packages and references I got :pensive:
Oh well at least most thing are documented :shrug:
I kinda get y some people despise java for being so verbose and forcing strict pop on the programmer XD4 -
I got a long weekend. I decided to see what React has been up to these days.
I happen to learn more about Suspense that now it allows f**king data fetching with relay.
I decided to give it a try . First time I am actually inclined towards trying out relay just so I can see what the f**king fuss about `Suspense` is all about.
Honestly the API is much better than what it looks like .
However what the fuck is this fucking relay. They have a page in their doc called glossary and most of the sections says TODO .
I wanted to see how the fuck data driven code splitting works . Due to the lack of proper documentation about it I could not get it right for two days . I stumbled upon couple of docs / blogs / github issues about it and then finally managed to get it working .
Well the end result wasn't as cool as I thought it would. The fucking API's to achieve this needless method of code splitting is insane
There are lot of better ways to achieve this with Suspense and the API relay offers is so shitty and not fucking type safe.
Now today I wanna learn more about the directives relay offers and there is no fucking documentation about them except for a fucking bold `TODO` explanation under the sections.
If relay developers thinks that they are fucking wizards and talk all about improving fucking performance . Please don't fucking over engineer API's and make it un un maintainable for the consumers of the library
Wow this feels good . first Day in rant and I m feeling great4 -
How to handle a company in which I work as a junior android dev for the past 7 weeks where there is zero mentoring?
I have 2.5 year experience in android dev and then I had a 1.5 year gap. I was looking for a company where I can get back on track, fill my knowledge gaps and get back in shape. So I accepted lower starting salary because of this gap that I had. Me and manager agreed that I will get a 'buddy' assigned and will get some mentoring but nope..
70% of my scrum team with teamlead are overseas in USA and I have just 2 senior colleagues from my scrumteam that visit office only once a week. Ofcourse there are other scrum teams visiting office daily but I personally dread even going to office.
Nobody is waiting for me in there. What's the point if when I need to ask something I have to always call someone? I can do it from home, no need to go to the office.
My manager dropped the ball and basically disappeared after first 2 days of helping me setting up, we had just two biweekly half-assed 1on1’s where he basically rants about some stuff but doesn’t track my progress at all. I bet he doesn’t even know what I’m working on. Everything he seems to be concerned about is that I come to work into office atleast 3 days a week and then I can work remaining 2 days from home.
I feel like they are treating me as a mid level dev where I have to figure out everything by myself and actual feedback is given only in code reviews. I have no idea what is the expectation of me and wether Im doing good or well. Only my team business analyst praised me once saying that I had a strong onboarding start and I am moving baldly forward… What onboarding? It was just me and documentation and calling everybody asking questions…
My teammates didn't even bother accepting me into a team or giving me a basic code overview, we interact mainly in fucking code review comments or when I awkwardly call them when I already wasted days on something and feel like I'm missing some knowledge and I am to the point where I don't cere if they are awkward, I just ask what I need to know.
Seriously when my probation is done (after 6 weeks) I'm thinking of asking for a 43% raise because I am even sacrificing weekends to catch up with this fucked up broken phone communication style where I have to figure out everything by myself. I will have MR's to prove that I was able to contribute from week 1 so my ass is covered.
I even heard that a fresh uni graduate with 0 android experience was hired just for 15% les salary then me. I compared our output, I am doing much better so I definetly feel that Im worthy of a raise. Also I am getting a hang of codebase and expected codestyle, so either these fuckers will pay for it or I will go somewhere else to work for even less salary as long as I get some decent mentoring and have a decent team with decent culture. A place where I could close my laptop and go home instead of wasting time catching up and always feel behind. I want to see people around me who have some emotional intelligene, not some robots who care only about their own work and never interact.6 -
Very Long, random and pretentiously philosphical, beware:
Imagine you have an all-powerful computer, a lot of spare time and infinite curiosity.
You decide to develop an evolutionary simulation, out of pure interest and to see where things will go. You start writing your foundation, basic rules for your own "universe" which each and every thing of this simulation has to obey. You implement all kinds of object, with different attributes and behaviour, but without any clear goal. To make things more interesting you give this newly created world a spoonful of coincidence, which can randomely alter objects at any given time, at least to some degree. To speed things up you tell some of these objects to form bonds and define an end goal for these bonds:
Make as many copies of yourself as possible.
Unlike the normal objects, these bonds now have purpose and can actively use and alter their enviroment. Since these bonds can change randomely, their variety is kept high enough to not end in a single type multiplying endlessly. After setting up all these rules, you hit run, sit back in your comfy chair and watch.
You see your creation struggle, a lot of the formed bonds die and desintegrate into their individual parts. Others seem to do fine. They adapt to the rules imposed on them by your universe, they consume the inanimate objects around them, as well as the leftovers of bonds which didn't make it. They grow, split and create dublicates of themselves. Content, you watch your simulation develop. Everything seems stable for now, your newly created life won't collapse anytime soon, so you speed up the time and get yourself a cup of coffee.
A few minutes later you check back in and are happy with the results. The bonds are thriving, much more active than before and some of them even joined together, creating even larger bonds. These new bonds, let's just call them animals (because that's obviously where we're going), consist of multiple different types of bonds, sometimes even dozens, which work together, help each other and seem to grow as a whole. Intrigued what will happen in the future, you speed the simulation up again and binge-watch the entire Lord of the Rings trilogy.
Nine hours passed and your world became a truly mesmerizing place. The animals grew to an insane size, consisting of millions and billions of bonds, their original makeup became opaque and confusing. Apparently the rules you set up for this universe encourage working together more than fighting each other, although fights between animals do happen.
The initial tools you created to observe this world are no longer sufficiant to study the inner workings of these animals. They have become a blackbox to you, but that's not a problem; One of the species has caught your attention. They behave unlike any other animal. While most of the species adapt their behaviour to fit their enviroment, or travel to another enviroment which fits their behaviour, these special animals started to alter the existing enviroment to help their survival. They even began to use other animals in such a way that benefits themselves, which was different from the usual bonds, since this newly created symbiosis was not permanent. You watch these strange, yet fascinating animals develop, without even changing the general composition of their bonds, and are amazed at the complexity of the changes they made to their enviroment and their behaviour towards each other.
As you observe them build unique structures to protect them from their enviroment and listen to their complex way of communication (at least compared to other animals in your simulation), you start to wonder:
This might be a pretty basic simulation, these "animals" are nothing more than a few blobs on a screen, obeying to their programming and sometimes getting lucky. All this complexity you created is actually nothing compared to a single insect in the real world, but at what point do you draw the line? At what point does a program become an organism?
At what point is it morally wrong to pull the plug?15 -
I got a new computer recently. I got it with an evo 970. I tried installing the Samsung controller software so that I can view the health of the drive.
No go. Why?
Looked around and everywhere they are saying turn off raid. I checked in bios. Says my drive is not in a raid volume.
Okay, now what?
Look at manual of laptop maker. Says there is a mode that allows you to use either VMD or RAID on the drive. Apparently I was in VMD mode. I had already backed up the computer at this point. Yes, I suspected this was coming. So I changed the mode.
No boot.
Okay, I have Aomei backup and linux boot disk I made using Aomei. Linux boot disk won't boot... Well fuck.
Luckily I have my old computer and a Windows 10 install disk. I install Windows 10 again, install Aomei and proceed to try and restore.
4 hours later... I dunno how long. I went to bed.
Wake up and test.
No boot.
I try disk repair.
No go.
So I boot into Windows 10 install disk to look at partitions. 5 or 6 fucking partitions. It has installed 3 partitions into the space of one.
Delete all the fucking partitions. Cause fuck you!
Okay, lets try this again.
I make a window pe boot disk this time.
It boots.
I do restore while I am at work.
I get home.
No boot.
Check partitions and find only 2. Better than last time.
I try disk repair.
No go.
Search the net. Literally: "Aomei restore no boot"
Someone says, just assign drive letter with drive C using diskpart.
Seriously?! Disk repair couldn't figure this shit out by context?
Seriously doubting this solution.
Solution works...
Now, I am an engineer/programmer/computer genius. I have been learning how to fix this shit for over 30 years.
How the fuck is Joe Bloe ever going to fix an issue like this? I feel sorry for the technically un-inclined. I honestly don't know how neither Aomei nor Microsoft cannot solve restoring disk images by setting a drive letter. How did this not get backed up by Aomei? How did this not get detected as one of the most common problems with a disk restore? Why has this been a problem with Aomei restore for over 3 years? I love Aomei. It works most of the time. But this is terrible. The tech world is definitely a shit show at this point in time.
I also read that VMD actually makes the communication to the drive a bunch faster. Not sure if the samsung drivers do the same. So there may be a tradeoff. Oh well. I can see the temperature of my drives now! Woot!2 -
You know how each generation is taught more and more advanced stuff? My grandparents didn't have a clue about the the things my parents were learning at school. My parents could only catch up with my school course until like 7-8 class. Considering this trend we should have no idea about half the things our kids will be learning in higher classes.
However, since AI is taking its pace, schools are adapting and starting to use it for teaching, workplaces are leveraging it to rely on employees' brainpower and skill less and less,... I wonder if we won't see a downtrend. I wonder if we won't be the smartest generation who managed to ingest so much knowledge, and all the generations to come will only focus on mastering prompt engineering.
I wonder, how long will we survive with this dumbed down society... As the primal instinct is to overcome your opponent with greater force, possibly destroying it and everything around. And less educated tend to rely on primal instincts more.
I wonder if I'll live long enough to see Idiocracy [the movie] manifest in real life.
I know I refer to Idiocracy movie more often than anyone refers any other movie here. But it just hits too close to home too often. It might look like a silly something to spend time staring at, but man.. It's got one hell of a point4 -
"Averice - a serial novel"
2021 - found on the remnents of an old 'youtube' server rack.
A gaunt but handsome man walks into the view finder. Adjusts the camera. "Hi guys and girls." he smiles weakly. rubs his blonde unshaved stubble, running his hand over his mouth, inhaling as if trying to find the right words.
"How can I say this. god. ...americas fucked and rapidly going down the shitter,
college is a fucking scam,
all success in the modern day is based on fraud, bullshit, mythmaking, and "who you know."
we're on the verge of a new cold war, the merger of the fed and the treasury combine with negative oil is the legit death signal of the petrodollar, we're gonna go through a *50% haircut* in living standards and a doubling of taxes on *everything* in the next six months, the tech bubble is gonna burst taking with it half the industry jobs overnight, the credit bubble will burst even as the fucking stock market climbs higher, a quarter or more of all retail will shut down leaving empty assets turning every state property market into the equivalent of fucking detroit. MAD as a protective doctrine is dead with the spread of hypersonic weapons so enjoy living with the constant threat of being obliterated without warning, my entire generation basically has no meaningful or stable future to look forward to, and none of us have really had an actual, genuine say in anything involving society for decades."
He exhalled visibly on camera, as if exhausted by the demons of anxiety he'd poured forth, a torrent of fears, uncertainties, and revelations like the tormented ghost of christmas past
A long pull from a bottle of southern comfort.
"look. we have an out of control intelligence apparatus that are in their operation more orwellian than the real life stasi ever were, a government at both the federal and state level thats made of millionaires and billionaires who give no fucks at all except for their own power, out of control and absolutely dogshit-corrupt *local* leaders, nothing is audited, nothing is meaningfully transparented, rampant fraud, destruction of evidence, witness tampering, railroading, intimidation, violence, threats of violence, skyrocketing cost of living, skyrocketing spending, skyrocketing taxes, skyrocketing policies of total control by police, skyrocketing homelessness, fatherlessness, poverty, political corruption, drug abuse, massive politically funded thinly veiled state propaganda, collapsing and decaying infrastructure, the loss of all tradition, culture, community cohesion we might have had, and on and on and on and on.
and all I want right now is to get my dick sucked. drink a beer and blow my motherfucking brains out.
and when people start fighting in the streets over some bullshit and it turns into race riots, because the motherfuckers in the media serving wallstreet always make it about race or some stupid shit like that, I wont be in america to put up with it.
do us all a favor. when you're hanging bankers, hang some fucking journalists too. they never tell the truth. doesnt matter which side they are on
they only divide people and advocate for more of the same bullshit, expanded state powers, more federal dollars, more workers for their campaign, more privileges. they're fucking cancer. yes even your favorite journalist. they're a tumor on society.
our government has become hostile to us even being *alive* anymore. it has for me become intolerable, and in time I have grown to hate it.
there is no way to change it. no way to salvage it. I cannot see any hope for the future anymore. And if you search yourself I know many of you feel the same."
He took another long pull from the bottle.
"we no longer have a voice in america and no means to air our grievances peacefully.
theres nothing in it left worth saving when it all can be taken away at a moments notice by a deaf and hostile bureucratic government. I should have voted for bernie last year. At least he would have destroyed it.
many of you will disagree with this sentiment, thinking things can still work out. because you still have your creature comforts. your apartment which you cant afford. your car with its maintenace bills and monthly payments you've fallen behind on same as half the country now out of work, but in a short few months, a year at most, you will learn what I have learned, and the reason I drink, what I knew about as early as june of 2019, that this is it. this was as good as it was ever going to get. and that the good days, the best days are behind us. that all that you hold dear could be taken. all that you worked for, was already gone, and you just havent realized it yet. I've set this to autoupload once it's done recording. I built a company just to watch the people who dont want any of us to succeed burn america down around it. Im done. Goodbye america."
The man got up from his chair, camera still recording, and left. Only the red flashing dot remained, the only witness to the silence.12 -
After a long time of not using devRant, I’m back. Is Linuxxx still huge? Is that wonky raven thing still going on? Does everybody have a Tiger now?6
-
Shit... watched too many videos about AI. Now I'm convinced human coding will be obsolete in the near future...
Hello code block, long time no see...1 -
!rant
If any of you were wondering why all the panic when we keep hearing reports of so few people personally knowing anyone with covid19 symptoms, I think I just figured out why.
So as of yesterday, assume unofficially fatality is 15%. Yesterdays death total was 3861.
If we assume roughly 15% death rate, based on ten days average for a case to recover or die, then the cases that would be recovering today on april 1st would have been infected or started to show symptoms on march 22nd.
At that time there was 32882 cases total in the u.s.
Therefore for april 1st, that would mean by the end of the day today, if the ~15% fatality rate is accurate, there would be at least 4,932 fatalities logged today.
I don't know about you, but here it's almost 9am, not even halfway through the day, and we're already at 4067 deaths.
And now we get to the part where all this shit starts to make sense.
For a long time since this outbreak has started somethings been bugging me and I couldn't place what it was till now.
Why did it seem, no matter how high the numbers climbed, no matter how much this spread 'like the flu', no matter how hard I looked into it, very few people seemed to personally know anyone *in real life* who died or at least came down with this?
I mean we'd all heard the rumors that it was more lethal, and then mums the word, it seemed like media the world over simply except the official "it's only 2% lethal" line. Same as the line about it only infecting people of asian descent.
And it didn't make sense to me why the numbers were so high, and why all the panic if it's just the flu? I knew in the back of my mind it wasn't I just didn't have a specific reason why.
Here it is: This thing is still pretty contagious, but not as contagious as it *could* be with a lower fatality rate. And with a fatality rate at 15%, combine with *just sufficient* spread, it would continue to burn and fester in communities for a year or more until those panic-numbers we see on the news would become a real thing. And then no matter HOW flat we made the curve, it would be x5-x50 times worse than a bad flu.
So we get panic and fake numbers. Because you really don't want to catch this thing. It kills 1 in 6.6. And it spread just enough that it is hard to effectively fight.8 -
not a rant.
More coronavirus doomporn so click away now if you're sicking of reading and hearing about it.
As I wrote to sweetnothings and Demolishun over here https://devrant.com/rants/2476697/...
Looting already started in my area.
Store was robbed in broad daylight after it was broken into just a few days ago.
And when the next surge of stimulus money hits people are gonna be like "I better stock up seeing as the shelves are kinda empty."
And then the shelves are gonna empty *quick*.
And people will see that and empty them *even faster*.
And then even faster than *that*, in a vicious cycle.
At some point people might panic and proper looting could begin.
Got my tax return before any stimulus so I took the time to go shopping.
Of course I didn't buy up all of any one item. Don't know why people feel like they need to do that.
Why wouldn't you want a variety of supplies anyway?
Gravy for example. No one can get any meat. Saw that coming a month ago.
If you're just buying for bulk, packet gravy is nice for things like pasta and staples like rice and potatoes.
Little things go a long way.
And salt. Salt is cheap now. Probably will remain cheap, but expect panicking buying to make supply spotty, like
everything else.
I expect these shortages to last 2-4 weeks, excluding things like dairy and meat which *could* go on longer.2 -
The term "technical debt" is poorly used. I hear folks of all stripes and roles proudly proclaim that they've "reduced technical debt" in some way. It's used as a catch all to describe some kind of supposedly beneficial change. I think it's just more software process word salad. Mostly because there seems to be some assumption that "Yay, that stuff that was changed is no longer a problem" when odds are that it will be changed again before too long for more "technical debt reduction". Software changes over time because the requirements change over time. I don't see the need for the phrase at all, and I think using it gives some false sense of accomplishment when really the constant change of code is the normal state.6
-
Hello there, long time no see.
Back in the day I asked you for a book that goes deep in the C programming language, now I'm asking the same but for Nodejs, especially a book that explains the event loop down to the line of code.
There are some articles on the internet but they are all copy/paste of one another and don't even scratch the surface of what the event loop does2 -
Alright so I'm in need of a little advice.
So I recently decided to go back and practice basic problem solving and from what I can tell now it's just me not used to JS like I am with python but I want to move on to bigger projects and other basic concepts (like manipulation of the DOM) and move away from basic problems.
But my concern is that I'll look at that list and only pick the ones that I feel I understand I can solve instead of the ones I cant. And theres a large list of them and I see that people are doing a lot of them while I'm just doing a few per page. And I'm afraid I'm just not good enough or stupid if I just ignore the basics and move on because the basics are there for you to figure out the easy stuff.
But I really just want to move on and I dont know when I need to. And last time I asked for advice I mentioned I have been programming for a few years, left out the normal accomplishments I've posted on here but I was just told since it's taking me this long I should just quit I tried to rebuttle but they kept telling me no that literally broke me and my confidence so now I'm sensitive to asking questions also fuck whoever that was.4 -
One of my favorite parts of my job is that I’m not allowed to resolve firewall issues myself. IT ops frequently breaks my firewall config, preventing me from resolving any domain names or running dns queries in general even though I still have connectivity. So I call the support number. Remote Desktop icon appears in the corner of my screen.
“Hi I have connectivity but can’t resolve any domain names”
“Have you tried using your browser, maybe they just block pings”
“Well no because I can ping 8.8.8.8, see?”
“Hmm well have you tried from your browser?”
“Yes.”
“Maybe it’s just an issue with ping traffic”
“Well no because I’m not having issues with icmp traffic. I can still ping 8.8.8.8, see?”
“Hmm that’s weird”
*opens network config, renews dhcp lease*
“But I don’t think that’s relat...”
“I know!”
*opens my command prompt, flushes dns cache*
“But if this were a cache issue the requests wouldn’t take so long to tim...”
“I know.”
(Starting to think he doesn’t know)
“I’ll pass this on to the networking guys”
“Thanks”
Third time this has happened. Every time they claim they didn’t change anything and it fixed itself. Obviously this is not the case, because after networking guys “don’t change anything” it starts working again. Every time they talk to me like I have the technical prowess of an HR rep. Like somehow I’m the only software engineer in the world that doesn’t know what the ping command does.
I’m not upset though. They’re just giving me a great excuse to be completely unproductive on a Monday -
And again some "evangelists", saying certifications and training, start talking a hit about some method or practice unchained...
How the fuck people don't say the problem with borderline charlatanism...
If Scrum doesn't work it means you're not doing TRUE Scrum...
You should do TRUE TDD (the definition is so long and complex that you can fuck it up) and it'll solve your problem.
Every time is like fucking cults " you have to see the true light, then there is no possible problem... Everything will be solved".
So fucking infuriating!!2 -
Incoming rant.
I have 4 years professional experience at a small shop working on a web application for property and liability insurance. The application is ASP.NET with C# as the code-behind. I have a BCS and will finish my MSIS fall 2017. I have no idea why I have the degrees. I know that when I enrolled, it seemed like they would be a nice addition to an otherwise empty resume. I was lucky enough to land my first and only development job during my sophomore year of my undergraduate program. Is this enough experience to land a new job?
I feel like I'm learning nothing at my current job. The specs that come in seem very vague to me. When asked for clarification, there is often push back, and I don't know whether that's because I don't have enough experience to parse what the client means in the two sentence spec I got or if it's because the client does not actually know what they want.
I hate my current job. My productivity is low because I spend more time trying to figure out what the client wants and analyzing an 8 year old system that has 0 documentation. I know some of you will just say, "Suck it up" at this point, but I really want another job. The only thing I like about this job is that it's 100% remote. It also pays $60k a year, so a replacement should be at least that salary.
Most postings I see require professional experience of 5 years or more, and knowledge of other frameworks. I can work on getting knowledge of the other frameworks, but will have no professional experience with them. I don't live in an area with a lot of software development jobs, and the ones I see are for non-IT organizations that want 1 person to run a distributed system from 10 or more locations. A hospital system out here wants to pay $30k a year for a guy to be both software developer for new tools as well as the helpdesk and IT support guy that's on-call for four locations in the county. I made more than that before I got into the development industry, for less work, and would rather leave than settle for something like that.
I've thought about moving to somewhere near San Francisco or San Jose, but I have my daughter to think about. I have joint custody of her, and would have to give that up in order to move out of the county.
I like programming and using it to solve problems. I like designing architectures and how all the components will interface. I like designing and normalizing databases. I like taking part in coding competitions for employers that are well-known (Amazon, Facebook, Uber, Twitch, etc.), even though I often just place middle of the pack. When that happens, I feel like I'm an imposter in this industry.
I think I have the most fun just working on small projects for personal use. My latest is an assistant calculator for the game Transport Fever to figure out cargo throughputs per annum based on the in-game timing information. Past projects have also been small. Ones I could use in a portfolio are a sudoku solver desktop application, PC/Web game in Unity that is a 3D FPS remake of Duck Hunt that allows open world exploration but locks the camera's viewpoint for shooting events, and a building assistant for Rome II: Total War that maps out all the bonuses/perks of user-specified building combinations in provinces so users can record their long term building plans without using all their turns to see the final results.
I seem to be an unproductive, average developer who dabbles in projects here and there.
This is what I want from other Ranters. Just say something. I don't care if it is, "Suck it up and get better." It could be your tips for finding and securing a new position. It could even be empathy, if such a thing exists on the Internet. Whatever you want, just say something that will help get me thinking of what the next steps in my career should be.1 -
A Sonic fangame (as well as various other projects), too bad I made it all in Fancade, which I discovered too late from its terms of service, that it has anti-artist/anti-dev copyright practices: it gives ALL the rights of ALL your creations to Fancade app dev Martin Magni. So I'm not gonna finish it. It fucking sucks. Don't use Fancade. I spent all my time in recent years developing shit on it which I was proud of, but I didn't upload anything because of that sociopathic bullshit. And ofc G©©gle would then go on to give a "Play award" to Fancade.
Hi btw. Long time no see. -
A week of vacation has begun, and every time it feels like I'm joining the Nights' Watch:
"Night gathers, and now my watch begins.... the watch to see how long it is before I actually WANT to go back to work. Tuesday? Wednesday? How long IS my Netflix queue anyway? Ugh, can't go anywhere, COVID done fucked that all up, so me and the couch are on a first-name basis again. Shit, should I check email, like, just quick, so I don't have thousands to go through next Monday? Oh, maybe I should spend some time prototyping that new screen... no, gotta keep from thinking about work! Oh, there's a big list of home repairs I need to do, now I have time... no, fuck that, that shit sucks. Hmm, maybe I should start that game project I was excited about a week ago? Nah, I'm not really excited by it now, never mind. I guess I could play some Halo again... no, that's boring. I wonder if my team managed to do the deployment today, and how those tickets I Ieft them are coming... ah shit, I want to go back to work ALREADY!"
That's how George R.R. Martin wrote it, right?? -
Hi everyone, long time no see! I have a question for you all.
Where does your company keep its clients’ code on GitHub? Is it everything in the company’s GitHub Org or does each client have a dedicated GitHub Org?
Any issues you guys have encountered with either approach?6 -
This is an actual transcript...
Since it's way too long for the normal 5000 characters, hence splitting it up...
Infra Guy: mr Dev, could you please give some rational for update of jjb?
Dev: sparse checkout support is missing
Infra Guy: is this support mandatory to achive whatever you trying to do?
Dev: yes
Infra Guy: u trying to get set of specific folder for set of specific components?
Dev: yes
Infra Guy: bash script with cp or mv will not work for you?
Dev: no
Infra Guy: ?
Dev: when you have already present functionality why reinvent the wheel
Dev: jenkins has support for it
Dev: the jjb is the bottle neck
Infra Guy: getting this functionality onto our infra would have some implications
Dev: why should I write bash script if jenkins allows me to do that
Dev: what implications ??
Infra Guy: will you commit to solve all the issues caused by new jjb?
Dev: you show me the implications first
Infra Guy: like a year ago i have tried to get new jjb <commit_url>
Infra Guy: no, the implications is a grey area
Infra Guy: i cant show all of them and they may hit like in week or eve month
Dev: then why was it not tackled
Dev: and why was it kept like that
Infra Guy: few jobs got broken on something
Dev: it will crop up some time later
Dev: if jobs get broken because of syntax
Dev: then jobs can be fixed
Dev: is it not ???
Infra Guy: ofc
Infra Guy: its just a question who will fix them
Dev: follow the syntax and follow the guidelines
Dev: put up a test server and try and lets see
Dev: you have a dev server
Dev: why not try on that one and see what all jobs fails
Dev: and why they fail
Dev: rather than saying it will fail and who will fix
Dev: let them fail and then lets find why
Dev: I manually define a job
Dev: I get it done
Infra Guy: i dont think we have test server which have the same workload and same attention as our prod
Dev: unless you test how would you know ??
Dev: and just saying that it broke one with a version hence I wont do it
Infra Guy: and im not sure if thats fair for us to deal with implication of upgrading of the major components just cause bash script is not good enough for u
Dev: its pretty bad
Infra Guy: i do agree
Infra TL Guy: Dev, what Infra Guy is saying is that its not possible to upgrade without downtime
Infra Guy: no
Dev: how long a downtime are we looking at ??
Infra Guy: im saying that after this upgrade we will have deal with consequences for long time
Infra Guy-2: No this is not testing the upgrade is the huge effort as we dont have dev resources to handle each job to run
Dev: if your jjb compiles all the yaml without error
Dev: I am not sure what consequences are we talking of
Infra Guy: so you think there will be no consequences, right?
Dev: unless you take the plunge will you know ??
Dev: you have a dev server running at port 9000
Infra Guy: this servers runs nothing
Dev: that is good
Dev: there you can take the risk
Infra Guy: and the fack we have managed to put something onto api doesnt mean it works
Dev: what API ?
Infra Guy: jenkins api
Infra Guy: hmmm
Dev: what have you put on Jenkins API ??
Infra Guy: (
Dev: jjb is a CLI
Infra Guy: ((
Dev: is what I understand
Dev: not a Jenkins API
Infra Guy: (((
Dev: (((((
Infra Guy: jjb build xmls and push them onto api
Infra Guy: and its doent matter
Dev: so you mean to say upgrading a CLI is goig to upgrade your core jenkisn API
Dev: give me a break
Infra Guy: the matter is that even if have managed to build something and put it onto api
Infra Guy: doesnt mean it will work
Dev: the API consumes the xml file and creates a job
Infra Guy: right
Dev: if it confirms to the options which it understands
Dev: then everything will work
Dev: I am actually not getting your point Infra Guy
Infra Guy: i do agree mr Dev
Dev: we are beating around the bush
Infra Guy: just want to be sure that if this upgrade will break something
Infra Guy: we will have a person who will fix it
Dev: that is what CICD is supposed to let me know with valid reasons
Dev: why can't that upgrade be done
Infra Guy: it can be done
Infra Guy: i even have commit in place3 -
Hey guys, first time writing here.
Around 8 months ago I joined a local company, developing enterprise web apps. First time for me working in a "real" programming job: I've been making a living from little freelance projects, personal apps and private programming lessons for the past 10 years, while on the side I chased the indie game dev dream, with little success. Then, one day, realized I needed to confront myself with the reality of 'standard' business, where the majority of people work, or risk growing too old to find a stable job.
I was kinda excited at first, looking forward to learning from experienced professionals in a long-standing company that has been around for decades. In the past years I coded almost 100% solo, so I really wanted to learn some solid team practices, refine my automated testing skills, and so on. Also, good pay, flexible hours and team is cool.
Then... I actually went there.
At first, I thought it was me. I thought I couldn't understand the code because I was used reading only mine.
I thought that it was me, not knowing well enough the quirks of web development to understand how things worked.
I though I was too lazy - it was shocking to see how hard those guys worked: I saw one guy once who was basically coding with one hand, answering a mail with another, all while doing some technical assistance on the phone.
Then I started to realize.
All projects are a disorganized mess, not only the legacy ones - actually the "green" products are quite worse.
Dependency injection hell: it seems like half of the code has been written by a DI fanatic and the other half by an assembly nostalgic who doesn't really like this new hippy thing called "functions".
Architecture is so messed up there are methods several THOUSANDS of lines long, and for the love of god most people on the team don't really even know WHAT those methods are for, but they're so intertwined with the rest of the codebase no one ever dares to touch them.
No automated test whatsoever, and because of the aforementioned DI hell, it's freaking hard to configure a testing environment (I've been trying for two days during my days off, with almost no success).
Of course documentation is completely absent, specifications are spread around hundreds of mails and opaquely named files thrown around personal shared folders, remote archives, etc.
So I rolled my sleeves up and started crunching as the rest of the team. I tried to follow the boy-scout rule, when the time and scope allowed. But god, it's hard. I'm tired as fuck, I miss working on my projects, or at least something that's not a complete madness. And it's unbearable to manually validate everything (hundreds of edge cases) by hand.
And the rest of the team acts like it's all normal. They look so at ease in this mess. It's like seeing someone quietly sitting inside a house on fire doing their stuff like nothing special is going on.
Please tell me it's not this way everywhere. I want out of this. I also feel like I'm "spoiled", and I should just do like the others and accept the depressing reality of working with all of this. But inside me I don't want to. I developed a taste for clean, easy maintainable code and I don't want to give it up.3 -
Phew, long time no see, devRant!
That Uni really squished life out of me. Damn. But awesome damn.
Still love ya tho, just want you to know that. You're awesome, really:)1 -
This *is* a question you silly wrong tagging mother fucker, how dare you doubt me?
Alright, no more disclaimer: I like dungeons and dragons, but it's too fucking much in terms of rules and systems and shit, as in just *making* a character can take a long ass while.
And if that's the highest level of all your ANAL preferences then OK, but I'm not you and things only come OUT of my ass, not inwards, I swear.
Anyhoo, I got fed up with it and wrote my own ruleset and setting as a last fuck you to everyone. It's very simple: if you want to be some kinky magical alien hermaphrodite royal prostitute half sewer dragon princess and three quarters bearded female incest child of demons and fairies then FINE, but you get no bonuses for that shit.
Get it? No complex racial level scaling bullshit, FUCK YOU, race and background is just for vibes, end of story.
You get no attribute or skills or shit to distribute on level one. All you get is a prompt: pick three actions, that's it. You wanna be sexy? Pick "seduce". You wanna set turds on fire? Pick "ignite". Are you an edge lord? Pick "summon". Would you be my wife? Pick "heal", "buff" and "smite".
The game is turn based, and each action you can take is effectively a spell. Everyone can cast a basic spell like walk, attack, talk, crouch, etcetera -- that costs no mana. Special crap like flying and firing fucking electricity costs mana, and you can only do those if you either picked the spell on level one or learnt it later from a book/tutor/demonic bargain/whatever.
Which spells are valid for taking at level one is up to the game master; I just tell people to pick three verbs or short sentences, and if they choose something that's too broken like "split the Red Sea" I'm like nah you're not Moses, try again.
Still with me? Good. You get eight points of health, four points of mana, and one point of stamina. They're all energy, and you can use it to power your magery, but spending all your health means you fucking die.
Stamina recharges fully every turn, and is used for the aforementioned basic actions. All of these cost one point of stamina each. If you run out of stamina, you can use mana. Or your BLOOD.
Level one spells cost one mana, level two cost two and so on. You get back one point of mana each turn, and you can fire all the spells you want during it, long as you have mana. Or BLOOD.
That's good and all, but if you spend anywhere over eleven combined points of energy in one go, you spontaneously combust and die, erasing all signs of life in a twenty-meter radius. This is called incineration, and it *will* leave behind a blackened crater from which the dark servants of the Horror Immemorial may or may not crawl out of.
In case you didn't guess by now, your blood doesn't fucking come back unless you eat, sleep or see a healer.
But anyway, the more points you spend into casting a spell -- and remember, basic attack counts as a spell -- the more powerful it is, so the bigger your diceroll can get. My rule is I add one dice for every fourth point of energy spent, so (1d4), (1d4 + 1d6), (1d4 + 1d6 + 1d8), incineration.
Additionally, for every three points of energy spent, your spell can hit one more target. That's right, you like AoE? Then spend more mana, bitch. Oh, and if you're using shit like poison it lasts one more turn for every two points of energy spent.
How do we calculate damage? Diceroll over two and fuck your mother. Armor class? Resistances? Out of my face with that shit. Damage reduction is called "tyranny" and is for dungeon bosses only.
If you live long enough to get to level two, you *do* get attributes. Pick:
- Grit: +2 health, +1 to fighter shit type rolls.
- Cunning: +2 mana, +1 to rogue shit type rolls.
- Allure: +1 stamina, +2 to wizard shit type rolls.
- Spirit: +1 to elemental shit type spells.
- Faith: +1 to benefactor paragon asshole shit type spells.
- Hatred: +1 to demonic murder hobo destructive shit type spells.
On second level, you can pick one of the spells you know to get +1 to it, specifically. Eh, "+1" just means you get a bonus to some diceroll, no time to explain I'm running out of characters what the fuck.
On level three, the cycle repeats. Pick attr, pick spell. DONE.
Oh right, and weapons. Mostly just vibes, pick your fancy and fuck off. Normally, you can hit things one tile away; if you have a BIG melee weapon you can hit from *two* tiles away, and if you have a ranged weapon you can shoot anyone in sight, but you need to spend one point of energy to reload.
And there, all bases covered in less that 5000 characters with some flair to spare, now suck my fucking cock Hasbro.
What was the question? Oh yeah right, I'm gonna GPL this shit and put it in browsers. I think I'm going to write it in Kotlin but I'm open to suggestions. Would you guys like to play it/contribute to it's development for shits and giggles?8 -
I used to love the hero treatment I got long ago in my previous company. Appreciations and what not for conducting events, contributing to open source. I think I burned out later. Later the hero treatment stopped there and I craved for it when I wasn't doing the stuff I used to do - basically I was previously keeping others happy I guess, instead of keeping myself happy. Contributing to open source or conducting events was not even part of the day job and was mostly considered outside the working hours and hence one had to stretch to do all that extra stuff. I over did stuff I guess and burned out
In my current company, I see heros and appreciations so much for contributing to open source though not all our roles are completely defined as open source roles and we instead have to work on closed source or yet to be open sourced stuff. My role is contributing a very tiiiiiny testing bit in an yet to be open sourced project, but a few other colleagues of mine work on closed source paid advanced version of the open source core project
Seeing all the hero treatment where I'm not the hero and seeing all the appreciation, I wonder how it doesn't seem right. Surely I'm jealous, lol. But I also felt the treatment also shows some sort of Special treatment for some people. It's "Special" and not exactly for all and only for open source contributors or people doing all the popularly so called as "cool" stuff. Fortunately for them their job role kinda mentions that I believe. And people working on closed source are now trying to contribute there. I'm stuck with some of my main day job work and dying in guilt for burning out, and not being able to contribute to open source and also kind of starting to hate open source for it's dark sides. Reminds me Batman dialogue "You either die a hero, or you live long enough to see yourself become the villain.". Open Source dark sides - of course the possibile dark sides of companies funding open source, the people behind the companies and also of course my company being one of them possibly, though if you ask anyone they say "Community comes first". That's full of lies is what I would say.
Inclusivity gets thrown out the window. Heroes get to talk. Heroes get worshipped. Others are not even noticed I think. I guess the only way to get noticed is to imitate the heroes
At some point I realized I'm envying or idolizing a crazy set of people, or like putting them on a pedestal. I'm trying to fix that in my head. But oh my, you should see all the treatment, the respect, etc. Surely some people just are there to do meh or grunt work or even good work or whatever without much appreciation, and then have to move on. No respect or consideration for opinions, thoughts usually. Some of them don't even have the time to care to check what people have to say. Top down hierarchy but they say it's flat hierarchy. They don't even wanna listen to some of us I think, that is during team meetings. Only very few care from what I have noticed
One good thing is I have to come to realize how much I'm like them in some behaviours and feeling damn guilty. I sometimes spend time thinking how to change myself for the long term. And how to avoid the toxic behaviors in the team and also control my anger and control my response to their behaviours. I'm also trying to understand where I'm climbing the ladder with my assumptions and also trying to see the "real" thing instead of assuming or being blind or imagining etc. But it has become so hard because idk if people are faking it, it's become very hard to always assume people are telling the truth 🙈 though it makes to assume or believe that by default. If people are okay with themselves lying, who am I question that huh1 -
Hello world again! Long time no see.
I changed phone, so I've reinstalled devRant on my phone just now.
How have you been? Everything okay?
Yes, I know shit has gone down with this shitty virus. Hopefully, it'll die soon.
Until then, take care and stay safe.
Prioritize health, but still enjoy the good things in life where possible.
Glad to see you all again. 💙4 -
!rant
Experienced devs please tell help me.
Learning software development has been a challenge. Many times it's frustrating.
I also learn languages and I find them to share one trait with software development, which is complexity.
At first I looked at languages the way I'm currently doing with software. I'd look in a new language and after decided it's cool to learn it, I would stare at it for a few weeks trying to realize what the heck I was going to do. I wouldn't even know how to get started.
Eventually this stage goes away and I think that is about to happen with me with software.
But then a new challenge would come, which is me not making progress as I wanted. That's sort of happening with me by learning software as well, bit in language I now know how to deal with it.
That's because I work full time with something that isn't in my interests and when I arrive home Im tired and want to relax. So I decided my language learning had to go slower as long as I have this job, meaning no hours spent in front of books or a pc studying - that's what I could do with English, I was a teenager and had 12 hours a day to do whatever I wanted.
So I usually spent 5 minutes here and there learning something in my target language when I can, no frustration needed, my only rule is: practice everyday, even if I don't learn anything new.
With software, that doesn't apply though.
So, what I mean by tracing a parallel between these to fields is that I have a strong conviction is that once you get the principles on how a certain kind of learning works, you can apply it everywhere in the field. But with software it's been harder.
Anyways, I see that are some principles that apply, cause trying to learn software is changinge and teaching a lot of things like:
*you have to read a lot (of documentation) . At first I thought all documentation was painful to read and understand, but I found out some software are well documented and one can use those only to get used with it.
*immersion / discipline are important. I'm not very disciplined, I'm better with immersion but both are important if you need to acquire complex subjects/skills
*how to deal with complexity. I installed Arch Linux a few days ago. Just to install it I ended up reading more than 20 pages of documentation (install guide, Wpa supplicant, systemd, networkd, xorg, etc etc). Gradually I'm realizing that when you have to install/tweak something in that distro you necessarily spend a bunch of time trying to understand how it works, otherwise you don't get too far like in Ubuntu or Debian.
*and lastly the one that bothers me. Constantly getting frustrated and feeling crap about my poor skills. No matter how much I progress, it still seems like I'm stuck.
(that's when I ask your help/opinion :) )4 -
Rubber ducking your ass in a way, I figure things out as I rant and have to explain my reasoning or lack thereof every other sentence.
So lettuce harvest some more: I did not finish the linker as I initially planned, because I found a dumber way to solve the problem. I'm storing programs as bytecode chunks broken up into segment trees, and this is how we get namespaces, as each segment and value is labeled -- you can very well think of it as a file structure.
Each file proper, that is, every path you pass to the compiler, has it's own segment tree that results from breaking down the code within. We call this a clan, because it's a family of data, structures and procedures. It's a bit stupid not to call it "class", but that would imply each file can have only one class, which is generally good style but still technically not the case, hence the deliberate use of another word.
Anyway, because every clan is already represented as a tree, we can easily have two or more coexist by just parenting them as-is to a common root, enabling the fetching of symbols from one clan to another. We then perform a cannonical walk of the unified tree, push instructions to an assembly queue, and flatten the segmented memory into a single pool onto which we write the assembler's output.
I didn't think this would work, but it does. So how?
The assembly queue uses a highly sophisticated crackhead abstraction of the CVYC clan, or said plainly, clairvoyant code of the "fucked if I thought this would be simple" family. Fundamentally, every element in the queue is -- recursively -- either a fixed value or a function pointer plus arguments. So every instruction takes the form (ins (arg[0],arg[N])) where the instruction and the arguments may themselves be either fixed or indirect fetches that must be solved but in the ~ F U T U R E ~
Thusly, the assembler must be made aware of the fact that it's wearing sunglasses indoors and high on cocaine, so that these pointers -- and the accompanying arguments -- can be solved. However, your hemorroids are great, and sitting may be painful for long, hard times to come, because to even try and do this kind of John Connor solving pinky promises that loop on themselves is slowly reducing my sanity.
But minor time travel paradoxes aside, this allows for all existing symbols to be fetched at the time of assembly no matter where exactly in memory they reside; even if the namespace is mutated, and so the symbol duplicated, we can still modify the original symbol at the time of duplication to re-route fetchers to it's new location. And so the madness begins.
Effectively, our code can see the future, and it is not pleased with your test results. But enough about you being a disappointment to an equally misconstructed institution -- we are vermin of science, now stand still while I smack you with this Bible.
But seriously now, what I'm trying to say is that linking is not required as a separate step as a result of all this unintelligible fuckery; all the information required to access a file is the segment tree itself, so linking is appending trees to a new root, and a tree written to disk is essentially a linkable object file.
Mission accomplished... ? Perhaps.
This very much closes the chapter on *virtual* programs, that is, anything running on the VM. We're still lacking translation to native code, and that's an entirely different topic. Luckily, the language is pretty fucking close to assembler, so the translation may actually not be all that complicated.
But that is a story for another day, kids.
And now, a word from our sponsor:
<ad> Whoa, hold on there, crystal ball. It's clear to any tzaddiq that only prophets can prophecise, but if you are but a lowly goblinoid emperor of rectal pleasure, the simple truths can become very hard to grasp. How can one manage non-intertwining affairs in their professional and private lives while ALSO compulsively juggling nuts?
Enter: Testament, the gapp that will take your gonad-swallowing virtue to the next level. Ever felt like sucking on a hairy ballsack during office hours? We got you covered. With our state of the art cognitive implants, tracking devices and macumbeiras, you will be able to RIP your way into ultimate scrotolingual pleasure in no time!
Utilizing a highly elaborated process that combines illegal substances with the most forbidden schools of blood magic, we are able to [EXTREMELY CENSORED HERETICAL CONTENT] inside of your MATER with pinpoint accuracy! You shall be reformed in a parallel plane of existence, void of all that was your very being, just to suck on nads!
Just insert the ritual blade into your own testicles and let the spectral dance begin. Try Testament TODAY and use my promo code FIRSTBORNSFIRSTNUT for 20% OFF in your purchase of eternal damnation. Big ups to Testament for sponsoring DEEZ rant.3 -
(imagine all of this said in Undoomed's "hey moron" tone)
Hey, moron, fuckin moron! How about if you're a noob with no actual programmer on your side, you just tell me so we can work it out together, instead of sending a moronic 4page "acceptance criteria" that pretend you know what you're talking about, and then bury me under loads of moronic noob questions that reveal you as thenmoron you are, all of that for a fuckin 50 quid?! I thought it's me being an idiot, not being able to do the task within two days timeframe, but now I see you're just too much of a moron to have any idea how much these things take. And now you nonchalantly mention a one-line one point from the four page document full of drivel, which (loads of moronism credit for me here) i didn't notice amongst all of that other mundane drivel, which actually like doubles the whole workload on the task, but your moronic document, which makes 3 parts of the same algorithm into three separate MILESTONES, makes this whole thing that nearly DOUBLES the workload into a shitty SEVENTH SUBPOINT of the completely unrelated first "milestone"?
FUCK YOU, YOU STUPID ROBBERY CHEAPFUCK, and fuck me for letting myself be tricked by all your fancy wordings that pretend you actually know what the fuck you are asking for, so i assumed you did, so I missed THE POINT, WHICH ACCORDING TO THE SEGMENTATION LOGIC OF THE WHOLE REST OF THE DOCUMENT SHOULD BE 3 SEPARATE FULL-SIZED MILESTONES, NOT A SINGLE SUBPOINT, YOU FUCKING FUCK!
... so much for still trying to at least a bit trust people.
FUCKING DISGUSTING MORONIC CHEAPSKATE FUCK.
and I can't even tell him to fuck off through the rectum he came here because he's all nice and polite so I would be the asshole!
"hey, please, can you build me a house?"
*house is basically finished*
"oh, great job, i love it, but i think you might have missed the fineprint in our contract that says that the house is supposed to stand inside an entry hall of a multibillionaire-sized mansion, so could we please sort that out and add it to the building real quick before i pay you the toolshed's worth we agreed on based on the contract? "
FUCK. HIM.
FUCK
FUCKFUCKFUCKSHITFUCKERYFUCKDISGUSTINGIDIOTICFUCKINGFUUUUUUUUCK!!!!!!
i thought i can be a shitty liar and a con man, but this is some next level shit that would be totally beyond my abilities to pull off...
YES I KNOW IT'S MY FAULT I DIDN'T COMB THROUGH THAT BULLSIT "SPECS" OF HIS LETTER BY LETTER TO MAKE SURE THERE'S NO CON BULLSHIT LIKE THIS HIDDEN AMONGST ALL OF THAT MUNDANE SELF-EVIDENT PSEUDO-TECHNICAL DRIVEL, SHUT THE FUCK UP.
fucking disgusting moron, pretending all nice and innocent probably even to himself because he HAS NO FUCKING IDEA WHAT HE EVEN ASKS FOR.
i bet it's one of those pukefucks who get an overpriced contract for 50k without even knowing or caring what programming is, because "i'll just outsource the core functionality of the app for 50 quid to some naiive idiot who lives in the illusion that people are not diarrhorea-worthy pieces of feces, and this other third of the app to some other moron for hundred quid and then i somehow outsource gluing it together to some third poor sod, and that's 49.8k quid of pure profit for me, yay"
and now i'm torn between three options, just cancelling the "contract" with a comment saying "fuck off, you con man", or cancelling it with a lengthy explanation why he's a know-nothing piece of shit who conned me already into having done something worth about 5x more than his shitty "acceptance criteria" requests, or just start conning and bulshitting him back, which won't net me any money, and waste my time, but at least will also waste HIS time, which might be nice because he seems to be on a tight schedule so if i play this right i might have the chance to sink his whole contract which might be mighty nice satisfying...
FUCK THIS, ALL OF THIS, FUCK HIM, FUCK ME, FUCK ALL OF YOU, I SHOULD HAVE STARTED FUCKING OVER EVERYONE RUTHLESSLY A LONG TIME AGO BECAUSE FUCK THE WHOLE WORLD, WHY SHOULD I CARE WHEN NOBODY ELSE DOES, WHY SHOULD I BE DECENT WHEN NOBODY ELSE IS, AND IT ONLY ROYALLY BITES ME IN THE ASS.
stupid fucking lobotomized fuck, IF YOU DON'T KNOW HOW TO DO SOMETHING, DON'T OFFER YOURSELF TO DO IT FOR MONEY AND THEN CON-SOURCE IT TO OTHERS YOU SHITTY BARFPILE!
FUCK. -
Hey, been long time without ranting, but here I am.
So nowadays the schedule on my project is really tight, and nothing is ready on every party, including mine.
Worse is, since this week, I've had to contact another team that learned on what we were working on like a month ago, and they really have a bad habit to ask us to see them on Skype. Yeah, sure, Skype is no use if it's just to tell me something to use that actually won't work (they don't know about that I guess, but still, just for less than 5 minutes while I have things on short time....)
So today, I arrived, I have a bugfix to do, but short after I arrived, I got a new task of providing access to our work to another team, which implied some minors modifications, wouldn't take so much time.
But right when I was doing it, I had someone from that team that I mentionned earlier that asked me to see some specific code. I actually don't have that code since I am using remote call, so calling their code directly and not using some placeholder code. The guy told me "but that shouldn't work." Okay, but I've been entering in your application several times and giving you errors that I got from trying to entering it, so you KNOW that it works. And then, he asked me to go see them again. No way, I have plenties of things to do, use a fucking email.
Now that I released that rant from my mind, I'm gonna get a hot beverage, calm down and go back to those tasks. -
Heya devrant, long time no see!
Anyway here's a thought.
A lot of the time I wanna upvote stuff on this site but I'm terrified of upvote inflation.
I feel it's not clear to me what the threshold for upvoting should be and if I upvote multiple things in a row I feel like my upvote is losing value.
All of a sudden it becomes a big decision.
Yeah it's overthought like crazy but can anyone else relate?5 -
a lion in captivity forgets to hunt. a man loosing everyday forget about winning.
I am feeling so sad and worthless right now. Like, so worthless that if I am walking down the street tomorrow and if some car hits me and i die, i wouldn't mind.
I find it questionable about what I am living for? why am i selling myself in front of keyboard till 12 am every day to earn some bucks when all this money is being / will be used to give happiness to a bunch of people that don't give 2 shits about me.
why can't i get some love? why can't i get some respect? i feel like a disabled 5 year old boy trapped in an abled 25 year old body. I can feel my legs, but I don't have the permission to use them. its like i am tied by ropes. and this rope has been on me for so long, that i can feel my legs, but i can also feel that those are having cuts so deep that i won't be able to use them even once the rope is taken out.
being a single child, loneliness has always been my shadow at home. and The middle class poor income, fighting parents, sickness and lack of culture ensured that loneliness remained my friend in school, college and other areas too.
the only goal of becoming an ideal son has shadowed every other thing in life. I can't drink, i can't go outside after 10pm, I can't take a jobbin different city. I can't fucking have female friends or think about relatiion-shits with people. i can't drive the car that was bought by my salary money. the list goes on and on.. i think every Indian (girls more than boys ig) have gone through at least 1 such restrictions at some point of their life. but me? a GUY in his fucking 25 , is going through ALL OF THEM, from day 1.
Plus i haven't started to discuss the weird eccentricities that i have to deal with, which are not so common. we follow a special religion where they have lots of philosophy and additional rules ( like no onion garlic mushroom in foods, mediation + pray for 1 hour twice a day ,... etc)
But i didn't complain, until now. I got sadder and sadder with time, but I cooperated. Whome else to live for , if not for the folks who made you in their womb amd sack? yeah I will fucking stay celibate until you find some willing "cultured" girl from your "religion" and arrange a lifelong existence. yes, i will fucking keep paying the car emis and see it in the parking lot everyday , while traveling via a metro. yes i will stay in your house in front of you all the times and never learn to exist independently coz fuck maturity. yes i will be a static atm machine waiting to die as you please.
but i am still not your ideal son? I say one little thing, and you start shouting at me for being selfish? why is religious superstition and those crime storemies so much deep into your head that you folks are micro managing and criticising every single thing in my life?
why is there a need for repetitive arguments, fights and shouting before evry action? why can't we just be happy for once!
I am shattered looking for happiness. I can't live like this anymore. There are no more than 2 people in my life that i care about and if those 2 are always having an upside down , angered face the what is the point of waking up every day?
wish i could just leave them. But can they live without me? or even can i live without them? and no , not talking about emotionally. I am very strong at the emotional side and i can throw word daggers to even 10+ years of companionships and ruin them. this will be just another long term relationship that i will sour.
BUT I CAN'T LITERALLY LIVE WITHOUT THEM. i am a useless guy who don't have any social intelligence outside his computer screen. i don't know how to live alone, and exist, or what my goals will be. I never saw a future without thinking about securing their future first, and them being in my future at all times.
aagh fuck. another painful night to survive and exist until i rise again to live like a corpse coz i can't do anything about it6 -
Starting a project for work and realized it would be a good idea to use a framework as by my initial anticipations i see this growing fairly complex. I choose to go with Angular 1.x because I'm lile "hey i know that already", but there's one teensie problem--it hit me that i haven't looked at Angular so long that I have no fucking clue how to start up an Angular project from scratch properly. Oh well, time to dump an old project in the public folder and figure this shit out one error at a time
-
Today I've been summoned to work for the first time in weeks to help with the startup of a machine, and testing the HMI software that goes with it.
Me and a junior colleague go to the machine. We try to get everything ready for testing. Machine was left stuck in some intermediate state by someone else. I have no idea on how to control the machine's individual components. My colleague received a crash course a while ago, but was unable to reinitialize the damn thing, and the senior machine builder was too busy on another project.
In other words, me coming over had no purpose at all, and we accomplished nothing.
I really don't understand companies. On one end there's an endless bitching about how everything is too expensive, and on the flip-side you see 'em toss buckets of money through the window.
Oh well, as long as it goes from the window to my bank account, there's no problem for me I guess.2 -
Right guys and gals, I need your opinions.
Recently was approached by a recruiter who thought I’d be a good fit for a role, a role that is a step up from senior dev but without moving into people / project management.
More like a bridge between architects and senior devs.
I thought what the hell, why not. So I agreed to go for it.
It could be quite a decent payrise (though that wasn’t my motivation for going for it) and I like the idea of doing more mentoring, design and research than I do now. It would involve stuff like learning new tech, coming up with examples and implementations of how the dev team need to use it to churn out user stories.
For the last few years I’ve been mainly a back end developer, which didn’t start by choice and I always liked to be full stack.
But the recruitment process for this role has been quite slow (number of reasons) and since then I’ve been given a new piece of work at my current employer doing some greenfield angular work, plus the c# back end.
I’m really, really enjoying this angular work. Haven’t done it for a while and it feels great to get back into it. Seem to be picking it back up with no problems, like the old magic is still there.
Also the money at my current place is good enough.
So now I’m wondering if I should bail on this other role in favour of seeing this out and maybe going back to being full stack (tho for reasons I’ll outline below in the long term that might have to be elsewhere)
But I’m also trying to remind myself that up until enjoying this work there’s a reason I decided to go for this other role.
Current place is a small company that has no project management process. It’s chaos, and everything’s an emergency. There are no requirements for anything, not enough people etc. No one has a clue how to run an IT project.
The one thing we do have is good development practices in our team and we have been greenfield for the last 12 months working on a new product. But we do tend to be pigeon holed into looking after a specific service/area.
But this new place if I got the role, is a bigger company (I’ve worked in small, medium and massive companies so I know what the difference is like), they’re a household name, they have resources for learning, putting people through aws certs, etc. They give people time each week to invest in themselves. Much more agile.
And thinking about it now you don’t often see a role that allows you to ‘move up’ without having to take on people/project management and still having time to be hands on.
(Just maybe more hands on with strategic work than delivering user stories for business as usual)
So just in general, what do you think? -
Suddenly, I find myself in a crossroad situation. I have been offered a position which would align perfectly with my career path aspirations (cloud solutions architect) with double the pay to my current salary. If only those were the only variables in this equation, taking the offer would be a no-brainer. Alas, it is never that simple (unless all you care about are pay and career path, of course)…
So, let’s break it down to pros and cons of jumping ship, shall we?
Pros:
- double pay compared to current salary
- aligns with my career aspiration
- part of a team of cloud solutions architects (mentorship opportunities)
- varying projects (position is at a consultancy firm)
- shares of the company come with the position ($$$ if it grows)
- possibility to influence strategic decisions
- no more 2h+ commutes
Cons:
- it’s a consultancy startup (emphasis on both consultancy and startup)
- 100% wfh
- would mean losing my current team where we are well and truly glued together and have such great vibes (and I value this, very very highly - this really is the main con)
- would mean losing my current work environment, where we have a gym and sauna at the office etc all kinds of stuff that support my athletic lifestyle
- would mean I don’t have as many opportunities to visit my parents anymore (since they live close to my current office but not close to me)
- at my current position I have super interesting projects both ongoing and in the horizon for a long time to come
- would mean eating my words (see previous point, and the fact I’ve said to my TM ”I can see myself staying as long as this job offers me opportunities to keep learning skills that are meaningful to me”), and I value my integrity
- would mean leaving my colleagues in quite a hairy spot, effectively betraying them in my mind (when our lead dev jumped ship a few years ago, he left us in quite a limbo and hands full of shit we didn’t know what to do about… I don’t wish that situation for anyone)
So, to sum it up, my reasons to stay are more those of moral integrity and convenience, well as the will to see the wheels I got rolling to the end, whereas my reasons to go are more personal finances and career oriented. A difficult decision. What to do?14 -
Compare and harmonize the web configs
Oh no someone set execution timeouts to 14 days
Fuck fuck fuckity duck
Hey compare all the web configs of all environments and harmonize them all wtf cmon bruh do your job as a developer
Take them and back them up into svn. What do you mean svn isn't a back up system of course it is well its the only thing we have fuck
What do you mean we have shit logging where people will catch an exception and only print the word exception in the log you can figure it out can't you we have live produxtion issues that hace to be solved now what the fuck
How dare you make a. Mistake copying our shitload of a bloated codebase and configuring our 100s of different options all by fukcing hand what the fuck dude do yoh write anyrhing down?
Please catalogue all the exception mails we are getting but we have no db or error reporting system so they all just plop into tue inbox and thats all ypur fuckjng data figure it out kid
This is a rewarding, fulfilling job whwrw you can be both dev ops and a developer and manage all of our fucking environments of which there are about 15 of all your own with no sort of tool or software to aid you because haha what the fuck we wouldn't make your life easy
Whata that you want to spend time to write stuff or change stuff that will nake it easier fot you fuxk that bruh get back to your biklable tasks like holy shit you thjnk this is a charity ofr aomw shit
Live production issues
Live production issues
Produxtion issues. A ghost in the machine. Find it fix if find it fix it find it fix it cmon why can't you fix it I expect you to spend your day hopelessly pretending to try to solve something you fucker
One of the only peopel able to help you sometimes though hes a bit of an old laxky, yeah hea fucking leaving see ya seeya kid and now we're not hirinf anyone to fuckjng help you no no no managing and monitoring the environments its your jov alll fof them every sngle on do you knkw all the xonfiguraiton values for them yet??
Instead we are hiring a new sales person to fucking make us some more money and we don't need naother seceloper to help you infqct lets have you use this mid end retail computer from 2014 to develop on yeah yeah oh but all our shitty code and visual studip will destry your memory but too bad!! Hahahahahdhsj
Go lice is all you, why sare you so slow
How long will it take
How long will it take
How long will it take
How long witll it tqk2
How long will it take holy shit
Give time estimate for sonethign that I don't fucking know how about it will tqke till fuxk you oxloxk4 -
With the current economy in its rocky state, it is no surprise that firing levels have reached new highs in the world. According to a recent study conducted in the UK, former managers and workers who lost their lifelong jobs were able to get past their problems simply by keeping a positive attitude in mind. The theory of “mind over matter” is more applicable here than it is in many other situations as workers strive to get back a life they once had. If you have recently lost your job, you may want to focus on getting your spirits up, for instance, you can ask for help with resume writing services such as this one https://resumebros.com/, rather than spiraling into depression. By separating yourself from your former life, you may be able to see better success.
This study was published in “Organization Studies,” a journal that circulates in the UK. Researchers found that people who were able to see their job loss as a new start in life were much more capable of moving on and seeing success again. These patients viewed the change as a way to become self-employed or an excuse to volunteer and better their lives. Taking on a positive step led them to a reduced amount of trauma when compared to those that dwelled on the job loss.
The study consisted of men and women between the ages of 49 and 62 who were once senior workers in their industries with highly successful careers before them. I realize that most of the people reading this will be younger than that, but the theories from the study can resonate in any age group. The men and women in the study all suffered devastation after being laid off, and they coped with that devastation in different ways. Those that were able to separate themselves from their old jobs found it much easier to separate themselves from the pain of the loss.
All of these participants were enrolled in a program for older managers that recently encountered unemployment. The program was government funded and designed to allow out of work individuals to pick up with their lives and start again. The participants that were least successful with the program were the ones that saw their job loss as the end of their working time altogether, as if it was going to be the sole destruction of their lives. They did not handle emergency management well. Their negative attitudes forced them to cope worse than the positive attitudes of other participants.
As a whole, the study aimed to show that coaching, over the course of time, can help unemployed men and women find ways to get past their financial stumbles and get back into the work force again. Those who are willing to embrace the coaching can find themselves back into a state of financial success much faster than those who wallow in their situation. As long as these individuals can see themselves as capable, driven, and intelligent people who happen to be unemployed, they are usually able to make it back to where they need to be in life.
You can apply all of this to your own life and your path toward the future. If you lose a job that you assumed would help you after graduation, move on to something else. You may end up in a better place in the end. I recently lost a huge client of mine that paid me roughly $4,000 a month. I was devastated and a little panic stricken after the loss, but that allowed me to apply for new work with new clients. I now make twice the money from about half the work, all because I wasn’t reaching out to all my opportunities in the past. You may experience the same revelation if you keep a positive attitude. -
Long time no see!
I'm thinking about creating a Youtube channel to create some funny dev projects.
The first one is going to be: "Creating the DevOps nightmare", where I'll create a server health-checker to run on my raspberry-pi, and if the checked fails it'll trigger an API to call him with the voice of my boss, saying that if he doesn't fix that, he will be fired.
What do you guys think?2 -
So there was this position in our college for part time programming/building a project. Being university students looking for part time work a lot of us applied there.
Finally the person that was selected among all of us was the person who does no work and is completely useless. If you ask her to do something she despite taking a long time doesn't produce any output.
So my question is what did the interviewers see in her that they selected her despite multiple way better people applying.4 -
Need a counter to play in a 2d game. 'Make it look 3d and good' they said. Fuck. Everything I do in Sketchup looks tacky AF. It's a piece to play on a white board with a black grid, like extended noughts and crosses. It doesn't need much.
Hello Microsoft Word, hello drawing tools, long time no see.1 -
Hey Everyone, first of all I’d like to start with my usual, hope all is well today as always! Today I’d like to post my first official rant.... so anyone that knows me in person or in general knows me as a good helpful young man, right now Milo is happy but has the urge to rant..
So... not naming anyone specifically from uni... one person specifically always on Facebook messaging me for my assessments, now me being me i try to say No, but the issue is i want people to do well, i put my heart into my work and people just want assignments handed to them on a gold platter, it takes me a lot longer to try and get concepts around my head , I usually always stay up late nights to get a better understanding of things. As you may see my work means a lot to me.
I always mention to my friends if they wish to do well, they must sacrifice going out clubbing or other social things for a later time. I spend my majority of the week learning new things related to programming Monday - Saturday, and on Sunday i have my free time , with the usual work out session thrown inbetween :-).
So anyways, thats it for my rant, I’d love to know if anyone has been through a similar instance? If so would love to hear about it!.
Thank you for taking the time to read my long rant once again :-)
Milo 🥂☺️5 -
I never finished it, but before I was working in the industry, I was coding through a book called Build Your Own AngularJS. My intent was to have piecemeal instruction/example in TDD and code way above the level of complexity I was used to. You essentially build the core of AngularJS in about 900 unit tests with total coverage. 1000pages long, its no walk in the park.
I gave it up when my time was short, and focused on higher level concepts: building apps, learning tools of the trade.
Now that I am getting plenty of exposure to that level, I am thinking my free learning hours may be better spent going down into the complex worlds shown in this book. A couple of things I found there really stayed with me and shaped how I think about problems. It was also very illuminating to see how complex algorithms work “in the wild”. I cant stand learning algorithms in isolation, generally speaking.
Has anyone seen this book? I know the framework itself is older now, but I don’t think that is much relevant for this learning use case.
I only know of one student who completed this. Took him a few months. He is an absolute machine. -
Oh, hi "metaprogramming" (PHP in runtime), long time no see. Which reminds me why I ended up hating Rails & Ruby so much back then.
-
I love linux because i dont have to forced to do frickin update like windows did.
Because i have an experience after update linux mint i cant even start the main GUI program. After boot only show blank console. It seem linux update broke the compatibility between my graphics card.
At least now i dont have to update because thats an option. The output of update is not different than windows.there is a chance you broke your OS.
But the struggle is when i need to install new app in linux. Sometimes need more than hour to find out why it doesnt work from the first time.
Any help here?
So this start from the office. In the office i usually use low spec laptop that work slowly. Then i found this IDE called rapidclipse. Its very promising with GUI builder and can build cross platform mobile app using only java built on top vaadin framework.
When i use it on low spec laptop hackintosh at office it work well although it take more time than other kind of eclipse and i dont need to install any kind of app again, just download-install-create new project-run on tomcat-work well.
Then i go to home to try this new tool , IMO my low spec PC still have more power to run something than old hackintosh. Because usually i use android studio with no problem. In the old hackintosh it went too long to build gradle only.
Then i install rapidclipse, then run desktop shortcut. Then it said i need to install correct java to use correct JavaFX.
After search on SO they said i must install jdk from oracle.
Ok so i got openjdk in my linux.wtf what is the different idk but dont have time to find out.
I install jdk from oracle.
Than finally can open the rapidclipse.
Wow , this gonna be fun.
Then create new project. Just a new project.
So im waiting. I see the progress at 10%. But still no increment on that.
I switch to other app for several minutes.
Then when switched back th app still at 10% and now is at no responding state. So i force close.
After that open rapidclipse again.
The previous new project can be opened. Yay, i think.
But so many error there. Omg.
So i create new project again.
But, but, i just repeated the first error then close again then try it again for several time. But still same output.
After an hour, i give up.
But still, why , just why it work like this. No error or whatsoever.
Back later i have a problem like this on different app.
Idkwhy.1 -
i am frightened. i have a feeling the only person i can talk about programming stuff twice a year is getting out of touch.
as if the rarity of the talks is not bad enough, our tech stack edges away every time. he is the most intelligent person, yet i see no huge advantages and my strides just raise a shrug. not out of lack of interest but from pure inexperience. we have a long history of joint projects, but i fear the day only he relieves about his webdev experiences with his php-es5-css-stack, while i can not contribute with my knowledge about python- and vba-automation, oop and es6+. as if he would not be able to wrap his head about all this in a blink of an eye. -
How do you deal when you are overpromising and underdelivering due to really shitty unpredictable codebase? Im having 2-3 bad sprints in a row now.
For context: Im working on this point of sale app for the past 4 months and for the last 3 sprints I am strugglig with surprises and edgecases. I swear to god each time I want to implement something more complex, I have to create another 4-5 tickets just to fix the constraints or old bugs that prevent my feature implementation just so I could squeeze my feature in. That offsets my original given deadlines and its so fucking draining to explain myself to my teamlead about why feature has to be reverted why it was delayed again and so on.
So last time basically it went like this: Got assigned a feature, estimated 2 weeks to do it. I did the feature in time, got reviewed and approved by devs, got approved by QA and feature got merged to develop.
Then, during regression testing 3 blockers came up so I had to revert the feature from develop. Because QA took a very long time to test the feature and discover the blockers, now its like 3 days left until the end of the sprint. My teamlead instantly started shitting bricks, asked me to fix the blockers asap.
Now to deal with 3 blockers I had to reimplement the whole feature and create like 3 extra tickets to fix existing bugs. Feature refactor got moved to yet another sprint and 3 tickets turned into like 8 tickets. Most of them are done, I created them just to for papertrail purposes so that they would be aware of how complex this is.
It taking me already extra 2 weeks or so and I am almost done with it but Im going into really deep rabbithole here. I would ask for help but out of other 7 devs in the team only one is actually competent and helpful so I tried to avoid going to him and instead chose to do 16 hour days for 2 weeks in a row.
Guess what I cant sustain it anymore. I get it that its my fault maybe I should have asked for help sooner.
But its so fucking frustrating trying to do mental gymnastics over here while majority of my team is picking low hanging fruit tasks and sitting for 2 weeks on them but they manage to look good infront of everyone.
Meanwhile Im tryharding here and its no enough, I guess I still look incompetent infront of everyone because my 2 weeks task turned into 6 weeks and I was too stubborn to ask for help. Whats even worse now is that teamlead wants me to lead a new initiative what stresses me even more because I havent finished the current one yet. So basically Im tryharding so much and I will get even extra work on top. Fucking perfect.
My frustration comes from the point that I kinda overpromised and underdelivered. But the thing is, at this point its nearly impossible to predict how much a complex feature implementation might take. I can estimate that for example 2 weeks should be enough to implement a popup, but I cant forsee the weird edgecases that can be discovered only during development.
My frustration comes from devs just reviewing the code and not launching the app on their emulator to test it. Also what frustrates me is that we dont have enough QA resources so sometimes feature stands for extra 1-2 weeks just to be tested. So we run into a situation where long delays for testing causes late bug discovery that causes late refactors which causes late deliveries and for some reason I am the one who takes all the pressure and I have to puloff 16 hour workdays to get something done on time.
I am so fucking tired from last 2 sprints. Basically each day fucking explaining that I am still refactoring/fixing the blocker. I am so tired of feeling behind.
Now I know what you will say: always underpromise and overdeliver. But how? Explain to me how? Ok example. A feature thats add a new popup? Shouldnt take usually more than 2 weeks to do my part. What I cant promise is that devs will do a proper review, that QA wont take 2 extra weeks just to test the feature and I wont need another extra 2 weeks just to fix the blockers.
I see other scrum team devs picking low hanging fruit tasks and sitting for 2 weeks on them. Meanwhile Im doing mental gymnastics here and trying to implement something complex (which initially seemed like an easy task). For the last 2 weeks Im working until 4am.
Im fucking done. I need a break and I will start asking other devs for help. I dont care about saving my face anymore. I will start just spamming people if anything takes longer than a day to implement. Fuck it.
I am setting boundaries. 8 hours a day and In out. New blockers and 2 days left till end of the sprint? Sorry teamlead we will move fixes to another sprint.
It doesnt help that my teamlead is pressuring me and asking the same shit over and over. I dont want them to think that I am incompetent. I dont know how to deal with this shit. Im tired of explaining myself again and again. Should I just fucking pick low hanging fruit tasks but deliver them in a steady pace? Fucking hell.4 -
This post is going to be long and it might not be the platform to ask for it's mainly for ranting yet I wanted to ask a non toxic community.
I'm mainly an ABAP programmer working on an SAP system for my living. No matter how people inside the SAP sphere look at it, it's not exactly cutting edge technology in the world of software development. (and in my opinion it's not even a knife)
As I work in an enterprise environment I have trouble about finding gaps where I can learn newer technologies and thus, I've decided to learn in my free time.
I tend to tilt toward web development as do many I know because I see potential in the GUI which HTML and CSS achieve. And I do believe that combining that with languages such as JS, Python, Ruby, Erlang and Elixir can give way to a healthy experience both in Web development and even desktop development.
In order to avoid overwhelming myself I wish to start with learning web development. Time is not of the essence because I plan to continue working with ABAP for close future, around the next 2 years, and I'm young.
I wanted to ask the community, is there any developer in here that was in the same position and can give out some pointers to the path they took? Is it wise to start my path from HTML5 and CSS3 without looking back to the older ways? Any resource you'd share will be welcomed.1