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 - "it finally works"
-
Mac: Suddenly turns off
Me: Fuck my code..F***
Mac: No response at all
Me: reset SMC etc etc
Mac: I am dead (no battery detection, dies after 10 min on power adaptor)
Me: Skips a heart beat..(Git, oh yea git)
**Takes Mac to store, After diagnosis**
Apple Freaking Genius (AG): Your Mac has a mother board problem it needs to be replaced.
Me: Hmm what is the problem exactly??
AG: Issues in logic board and some other components.
Me: How much?
AG: Out of warranty so $$$ (60% of original amount)
Me: (wtf?) Really
AG: It's entire motherboard replacement .. bla bla
**Bring it home > open > everything seems ok on multimeter as per circuit diagram > finally finds a voltage drop that is not consistent > minute short circuit > remove > check further > nothing else > reassemble > hit power button > starts fine > freaking battery detected > works fine**
0 $ repair
Fixes two more devices @ 0 $ in friend circle
Builds a raspberry pi backup laptop with 3d printed body..Ubuntu.. you know can't live without a computer
#ThugLife #Engineer29 -
Today at work, still laugh thinking back to it!
We were on lunch break but the linux support engineers who are on the phones as well have to pick up calls anyways (very small team).
*engineer walks to the table, sits down: Ahhh rest, finally!*
*tringggggggggg*
*engineer pulls a face like 'oh for fucks sake' and walks back to his desk*
*puts headphones on and clicks the answer button just as it disappears*
"really!?! Alright lets finally eat now"
*sits for literally one second*
*tringgggggggggg*
*Engineer seems quite pissed off now. walks to his desk again, puts on headset, clicks the answer button JUST as the call stops again*
"Mother of god, fucking really?"
*stays as his desk for a minute or so, walks back, stays hovering above his chair for a little and finally sits down again*
"Finall......"
*TRINGGGGGGGGGGGG*
"MOTHERFUCKER. THESE GUYS TIME IT OR SOMETHING!?!?"
*walks back to his desk very frustrated this time*
*puts on headphones very quickly and presses the answer button*
*answer works but the call is literally dropped the second he starts it (it was a real client)*
"OH FOR FUCKS FUCKING FUCKING FUCKING SAKE FUUUUUUUUUUUUUUUUUUUUUUCK"
*walks back to table again and sits down. Takes sandwich and....*
*TRINGGGGGGGGGG MOTHERFUCKER*
"FUCKING COCKSUKING MOTHERFUCKING PIECES OF WHAT THE FUCKING FUCK EVER"
*gives a deadly look to another engineer: "I am NOT going to take it this time! En-fucking-joy."*
We laughed so hard xD15 -
Dev: "Ah, I finally fixed that code I was working on the other day and got it pushed to staging!"
Almond: "Ah, great! What was the issue in the end?"
Dev: "It was an odd one - it wasn't actually my code that was the issue, there was a bunch of other code getting in the way."
Almond: "How do you mean?"
Dev: "It kept complaining about something called a "unit test" failing - so after a while I found the right unit tests, deleted them, and now it works great!"
Almond: "..."11 -
This one guy REALLY WANTED to work on the hardware (aka arduino in this case) part.
After hours of trying (with 8 guys) of get it to work on windows which just didn't happen, he still refused to even live boot into a Ubuntu machine.
At the end of the day one of the members went to sit down with him to talk about it and the guy finally gave in.
Two seconds into Ubuntu and arduino was successfully up and running!
Then, every day whenever he didn't get something, he'd just do nothing for the entire day while claiming to be working. The team leader sat down with him and I did too, offering him to sit next to me for a day to see how backend stuff went (I was the backender).
Did it but it just went back to the same old bullshit.
I honestly don't mind it if you find it difficult to ask for help but if you, after numerous chances and conversations, still don't do shit, sorry but fuck off.
He was a nice guy and blamed his autism for it but that's just not how it works.9 -
Oh the joy of helping elders with their computers..
...
Client: My computer is broken.
*Me expecting some kind of hardware issue*
Me: In what way is it broken? Are you able to start the computer?
Client: Yes. I can read Windows and then there's a login. It works fine but then It's broken.
*me standing next to client while client struggles to type password*
...
*5 minutes and a coffee brake later*
/* the client is finally able to figure out the password.. What a suprise! A note in the drawers containing all passwords.. */
Me: I'm sorry but I can't see any problems so far. You are supposed to be welcomed by your desktop *points at screen*. In what way is it broken?
Client: It's not the same as before. *now the client points at the screen*. Here. There used to be a picture here. It took me to <site>. Now It's not there. Something has changed.
*realizing that the client has lost his shortcut and wants a new one*
Oh the joy of helping elders with their computers.6 -
Storytime!
This customer comes in and practically throws a computer on the counter.
Customer: This computer isn't working. I've ran the diagnostics and it says it's software. *places a dvd case with a 32 bit Windows 7 disk in it on the counter* It had Windows 10 on it, but I want Windows 7 on it.
Me: Well, you may have issues with the drivers if you put Windows 7 on it--
Customer: I don't care, I just want Windows 7.
Me: You SHOULD care. That means no wifi, no display, no mouse... Windows 7 doesn't like Windows 10 hardware.
Customer: Then... check to see Windows 7 compatibility!
Me: Alright.... *makes notes to check for Windows 7 compatibility*
Me: So has this Windows 7 been used before?
Customer: Yes, it has.
Me: On how many computers?
Customer: I've installed it on two computers and it works just fine.
Me: That's weird because Windows license keys are for one computer only. Are both of them connected to the internet?
Customer: Yes.
Me: Well, okay then... *finishes up ticket*
Customer: I work in this field and I just don't understand why they don't come with the disks anymore. How much is a Windows 10 disk?
Me: *gives price*
Customer: And do you have any?
Me: Let me check *I go to where they are, find some and come back out*
Me: Unfortunately we're out at the moment and would have to special order some back in.
Customer: OK. So then how much to fix this computer?
Me: *price of installing Windows and backing up data*
Customer: That's halfway to the price of a new one of these!
Me: Well yes, an HP at Walmart... But you do have that option if you want to take it.
Customer: Well, why does it cost that much?
Me: Well, it's $labor1 to install Windows, $labor2 to do some basic setup and drivers, and $labor3 to backup and restore data.
Customer: Oh, well I don't want data.
Me: Okay, well then it would be $total - $labor3
Customer: ...Okay, fine
Me: *updates the ticket*
When she finally left I put it on the bench and the first message said "SMART ERROR." I then did 4 different tests that said "lol, the hard drive is failing."
If you "worked in this field," you would know that a SMART error is hard drive related.
If you worked in this field, you would know that Windows is only a 1PC license, so why are you lying about installing it with no issues on other computers?
If you worked in this field, you would know you would want a 64bit Windows on your computer.
If you worked in this field, you would know how to find a Windows 10 installation media online.
If you worked in this field, you would know that HPs are not good computers to get.
IF YOU FUCKING WORKED IN THIS FIELD YOU WOULDN'T BE SUCH A FUCKING CUNT.17 -
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 -
Doot doot.
My day: Eight lines of refactoring around a 10-character fix for a minor production issue. Some tests. Lots of bloody phone calls and conference calls filled with me laughing and getting talked over. Why? Read on.
My boss's day: Trying very very hard to pin random shit on me (and failing because I'm awesome and fuck him). Six hours of drama and freaking out and chewing and yelling that the whole system is broken because of that minor issue. No reading, lots of misunderstanding, lots of panic. Three-way called me specifically to bitch out another coworker in front of me. (Coworker wasn't really in the wrong.) Called a contractor to his house for testing. Finally learned that everything works perfectly in QA (duh, I fixed it hours ago). Desperately waited for me to push to prod. Didn't care enough to do production tests afterwards.
My day afterwards: hey, this Cloudinary transform feature sounds fun! Oh look, I'm done already. Boo. Ask boss for update. Tests still aren't finished. Okay, whatever. Time for bed.
what a joke.
Oh, I talked to the accountant after all of this bullshit happened. Apparently everyone that has quit in the last six years has done so specifically because of the boss. Every. single. person.
I told him it was going to happen again.
I also told him the boss is a druggie with a taste for psychedelics. (It came up in conversation. Absolutely true, too.) It's hilarious because the company lawyer is the accountant's brother.
So stupid.18 -
1. Find bug
2. Try 3 methods of fixing
3. All fail
4. Tell yourself you're trying for the LAST time then you'll go on to something else
5. End up trying 5 more times
6. Repeat step 4 20 times
7. Cry
8. Finally take a break
9. Return next day, try another method, it works instantly
FML!6 -
Hello Monday:
0.Arrive late due to traffic.(Apparently a car hit a cow crossing the road)
1. Try upgrading php5 to php7 and break stuff in the process and waste 2 hours fixing things.(Poor connection so ssh sessions hung occasionally)
2.PHP fixed,open Gmail and get over 100 emails from clients about the server being down(because of (0)).Ignore all.Find a snaglist of over 20 TODOs.
3.Open Android Studio, update to 2.3 and everything becomes broken.Each time i open it ,it crashes and i have to "Report to Google"
4.Spend the next 1 hour reinstalling AS.It finally works.
5.Open Project and the libraries are broken.Spend another hour upgrading build tools.
6.Leave SDK to update and decide to check my Google Cloud console.$50 bill pending.Shit.
7.Try XCode. Remember the project is still in Swift 2 and I have to upgrade it(Would take eternity).Immediately closes xcode.
8.Gives up on life and decides to log into Devrant.4 -
Fuck yeah!
6 monitors are success-fucking-fully running on my setup.
Fun detail is that WITH the official AMD driver, one screen wasn't turning on and one had a weird resolution but WITHOUT it, it works completely fine!
Yes, it runs completely fine on Linux (Kubuntu).
Finally have my dream setup.42 -
!!fml
"Root, go fix this bug. It'll take you two days."
The "bug" is a feature that was never implemented for one particular payment type.
The code in question is two years old, full of typos, smells, junior-isms, and is convoluted AF. The feature's commit touched 190 files and implemented many other features as well. Thus far, I have been unable to narrow down where this particular feature's code lives for the other payment types, nor which code or payment paths lead to it. Burned out, I can barely focus on the screen, let alone follow its many twisting and dynamically-inferred paths. I hint as to the ticket's scavenger hunt nature during standup.
"But I wrote comments on the ticket telling you exactly where to look to fix it," Thundercunt admonishes in front of the team.
"Sure, you did," Root replies. "You reworded what the original dev had said in the comments 20 minutes prior, and agreed with him. His comments were helpful, but it doesn't tell me how any of it works," she continues.
TC scoffs and closes the meeting.
Root stares blankly, seeing neither code nor screen, questions her life decisions, and recalls the previous tickets she has worked on: nearly every one of them busywork, fixing other people's bugs. Bugs she never could have gotten away with if she tried.
"Why do I put up with this?" She asks. "They don't care, and it's killing me."
But the bills remain, and so must she.
"Fuck my life" she finally decides.20 -
THIS is why unit testing is important, I often see newbs scour at the idea of debugging or testing:
My high school cs project, i made a 2d game in c++. A generic top down tank game. Being my FIRST project and knowing nothing about debugging or testing and just straight up kept at it for 3 months. Used everything c++ and OOP had to offer, thinking "It works now, sure will work later"
Fast forward evaluation day i had over 5k lines of code here, and not a day of testing; ALL the bugs thought to themselves- "YOU KNOW WHAT LETS GUT THIS KID "
Now I did see some minor infractions several times but nothing too serious to make me refactor my code. But here goes
I started my game on a different system, with a low end processor about 1/4 the power of mine( fair assumption). The game crashed in loading screen. Okay lets do that again. Finally starts and tanks are going off screen, dead tanks are not being de-spawned and ended up crashing game again. Wow okay again! Backround image didn't load, can only see black background. Again! Crashed when i used a special ability. Went on for some time and i gave up.
Prof saw the pain, he'd probably seen dis shit a million times, saw all the hard work and i got a good grade anyways. But god that was embarrassing, entire class saw that and I cringe at the thought of it.
I never looked at testing the same way again.6 -
5 Types Of Programmers
1.The duct tape programmer
The code may not be pretty, but damnit, it works!
This guy is the foundation of your company. When something goes wrong he will fix it fast and in a way that won’t break again. Of course he doesn’t care about how it looks, ease of use, or any of those other trivial concerns, but he will make it happen, without a bunch of talk or time-wasting nonsense. The best way to use this person is to point at a problem and walk away.
2.The OCD perfectionist programmer
You want to do what to my code?
This guy doesn’t care about your deadlines or budgets, those are insignificant when compared to the art form that is programming. When you do finally receive the finished product you will have no option but submit to the stunning glory and radiant beauty of perfectly formatted, no, perfectly beautiful code, that is so efficient that anything you would want to do to it would do nothing but defame a masterpiece. He is the only one qualified to work on his code.
3.The anti-programming programmer
I’m a programmer, damnit. I don’t write code.
His world has one simple truth; writing code is bad. If you have to write something then you’re doing it wrong. Someone else has already done the work so just use their code. He will tell you how much faster this development practice is, even though he takes as long or longer than the other programmers. But when you get the project it will only be 20 lines of actual code and will be very easy to read. It may not be very fast, efficient, or forward-compatible, but it will be done with the least effort required.
4.The half-assed programmer
What do you want? It works doesn’t it?
The guy who couldn’t care less about quality, that’s someone elses job. He accomplishes the tasks that he’s asked to do, quickly. You may not like his work, the other programmers hate it, but management and the clients love it. As much pain as he will cause you in the future, he is single-handedly keeping your deadlines so you can’t scoff at it (no matter how much you want to).
5.The theoretical programmer
Well, that’s a possibility, but in practice this might be a better alternative.
This guy is more interested the options than what should be done. He will spend 80% of his time staring blankly at his computer thinking up ways to accomplish a task, 15% of his time complaining about unreasonable deadlines, 4% of his time refining the options, and 1% of his time writing code. When you receive the final work it will always be accompanied by the phrase “if I had more time I could have done this the right way”.
What type of programmer are you?
Source: www.stevebenner.com16 -
Spent nearly a day to get this tiny laptop-tablet to work.
I got myself a second hand Asus T100TAF but Linux compatibility was far to be found. Online resources said I'd be very lucky if I'd even get the touchscreen or the WiFi to work.
I've been installing distro's all day and I finally have a working version!
Lubuntu with Budgie as desktop environment. Touchscreen works out of the box and some random person on the Linux mint forum linked to a github thing. Lost all hope already but this made the fucking WiFi work.
Can dock and undock it and it works great.
Thanks to all open source devs for this!18 -
Half a week later I finally found out why my DNS server "wasn't working" on any of my servers.
Let's just say that MullVad's anti-dns leaking technology works extremely well.
It was tunneling all DNS requests through its own servers to prevent DNS leaks and I never thought of it a single fucking time!
😅3 -
This company!
Ugh.
Two days ago we had an hour and a half meeting on which projects to focus on, with the result being all seven are top priority. Because of course.
Last night I told my boss why an api he has me hitting always returns 401s; even gave him the line# responsible for the response (in his code). After an hour and sixteen minutes of him debugging, he finally admitted I might be right. zzz. This morning, he tells me it's on my end, and to ask someone else for their project's API code. The problem is that the server is not accepting the new application's key, since that key is not in the allowed list. That other project works just fine. Guess why? Their key has been whitelisted for months. But it's totally my code. Yeah. Bloody brilliant. 🔅
Anyway, today we're discussing "Winning with Accountability," a 100 page book that boils down to "do what you say you'll do, by when you said you'd do it, and take responsibility if you don't." But a huge part that the boss is stressing is: provide the exact date, time, and timezone of when things will be completed by. I mean That's fine for sales calls and reports and such trivial busywork. But dev projects? Not so much.
And that's been my past three days!
Friggin joy.6 -
So I finally got my head out of my ass and decided to install some OS on that 500MB RAM legacy craptop from earlier.
*installs Tiny Core Linux*
Hmm.. how do I install extra packages into this thing again? *Googles how to install packages*
Aha, extensions it's called.. and you install them through their little package manager GUI, and then you also have to dick around with some TCE directory, and boot options for that. Well I ain't gonna do that. Why the fuck would I need to dick around with that? Just install the fucking files in /bin, /var, /etc and whatever the fuck you need to like a decent distro. I'll fucking load them whenever I need them, BY EXECUTING THE FUCKING BINARY. But no, apparently that's not how TCL works.
Also, why the fuck is this keyboard still set to US? I'm using a Belgian keyboard for fuck's sake.. "loadkeys be-latin1"
> Command not found.
Okay... (fucking piece of shit) how do I change the fucking keyboard layout for this shit?!
*does the jazz hand routine required for that*
So apparently I need to install a package for that as well. Oh wait, an EXTENSION!! My bad. And then you can use "loadkmap < /usr/share/kmap/something/something" to load the keyboard layout. Except that it doesn't change the fucking keymap at all! ONE FUCKING JOB, YOU PIECE OF SHIT!!!
That's fucking it. No more dicking around in TCL. If I wanted to fuck around with the system this much, I'd have compiled my own custom Linux system. Maybe I can settle with Arch Linux, that's a familiar distro to me.. I can easily install openbox in that and call it a day. But this is an i686 machine.. Arch doesn't support that anymore, does it?
*does another jazz hand routine on Arch Linux 32 and sees that there's a community-maintained project just for that*
Oh God bless you fine Arch Linux users for making a community fork!! I fucking love you.. thank you so much!! Arch it'll be then <318 -
It works!! IT WORKS!!! IT MOTHERF@CKING WORKS!!
My private program FINALLY WORKS, and DOES WHAT ITS SUPPOSED TO....
YAAAAAYYYY!!!4 -
Dear diary,
Today is day 3 of Windows 11 for me, and after about an hour of gaming, everything got laggy. I thought it was an AV scanner taking its sweet time kind of lag, but then.... I couldn't switch back to the desktop, I couldn't launch the task manager, it was just a solid frozen brick, and then when I unpaused this game to go back into it.... it was frozen too.
So here I am , with a frozen machine, so I give up and attempt a hard reboot........ yep, your fucked too. Windows auto repair kicks in, and it freezes too.
So now I'm here, with a brick of a fucking machine, wondering wtf could have gone so wrong.
Finally, I've made it to the failed boot screen,
> bootrec /fixboot
permission denied.
🤔 dafuq you smoking?
Fine
> sfc /scannow
Permission denied
Ok.... I don't think I want to know how this works.
> chkdsk /f /r /x C:
Yay something fucking runs
.
.
.
no issues 🤨
Fuck it, reboot.
Oh, now you want to fucking boot you piece of shit.
Now to understand how the fuck you can get a permission denied when your running CMD before boot 😐18 -
Friend of mine killed his MacBook with some Softdrink.
Just poured it all over his poor a1502.
He let it dry for a few days, it starts to work again.
Except the battery.
Goes on Amazon and buys a new battery.
New battery doesn't work either and so he tells me about it and I as stupid as I am couldn't resist the temptation to finally work on a MacBook like my "hero" Lois Rossmann does.
So turns out the board is good.
Cleaned it up and basically nothing happened to it.
So what's the deal with "los batlerias"?
The first got hit by liquid, the second had a broken connection to a cell.
That could have happened through my friend, installing it without testing it first, or at the seller, so it being a DOA battery.
Now away from the stupidity of my friend and the situation to the actual source for this rant.
Once something happens to a modern Managed battery, the Battery Management System (BMS) disconnects the voltage from the system and goes into an error state, staying there and not powering anything ever again.
For noobs, it's dead. Buy a new one.
But It can be reset, depending you know how to, and which passwords were set at the factory.
Yes, the common Texas instruments BQ20Zxx chips have default passwords, and apple seems to leav them at default.
The Usb to SMBus adaptors arrived a few days ago and I went to prod the BMS.
There is a very nice available for Windows called BE2works, that I used the demo of to go in and figure out stuff. The full version supports password cracking, the demo not.
After some time figuring out how Smart Battery Systems (SBS) "API" works, I got to actually enter the passwords into the battery to try get into manufacturer and full access mode.
Just to realise, they don't unlock the BMS.
So, to conclude, my friend bought a "new" battery that was most likely cut out of a used / dead macbook, which reports 3000mah as fully charged instead of the 6xxx mah that it should have, with 0 cycles and 0hours used.
And non default access.
This screams after those motherfuckers scaming the shit out of people on Amazon, with refurb, reset, and locked fucken batteries.
I could kill those people right now.
Last but not least,
My friend theoretically can't send it back because I opened the battery to fix the broken connection.
Though maybe, it'll get send back anyway, with some suprise in the package.9 -
Every step of this project has added another six hurdles. I thought it would be easy, and estimated it at two days to give myself a day off. But instead it's ridiculous. I'm also feeling burned out, depressed (work stress, etc.), and exhausted since I'm taking care of a 3 week old. It has not been fun. :<
I've been trying to get the Google Sheets API working (in Ruby). It's for a shared sales/tracking spreadsheet between two companies.
The documentation for it is almost entirely for Python and Java. The Ruby "quickstart" sample code works, but it's only for 3-legged auth (meaning user auth), but I need it for 2-legged auth (server auth with non-expiring credentials). Took awhile to figure out that variant even existed.
After a bit of digging, I discovered I needed to create a service account. This isn't the most straightforward thing, and setting it up honestly reminds me of setting up AWS, just with less risk of suddenly and surprisingly becoming a broke hobo by selecting confusing option #27 instead of #88.
I set up a new google project, tied it to my company's account (I think?), and then set up a service account for it, with probably the right permissions.
After downloading its creds, figuring out how to actually use them took another few hours. Did I mention there's no Ruby documentation for this? There's plenty of Python and Java example code, but since they use very different implementations, it's almost pointless to read them. At best they give me a vague idea of what my next step might be.
I ended up reading through the code of google's auth gem instead because I couldn't find anything useful online. Maybe it's actually there and the past several days have been one of those weeks where nothing ever works? idk :/
But anyway. I read through their code, and while it's actually not awful, it has some odd organization and a few very peculiar param names. Figuring out what data to pass, and how said data gets used requires some file-hopping. e.g. `json_data_io` wants a file handle, not the data itself. This is going to cause me headaches later since the data will be in the database, not the filesystem. I guess I can write a monkeypatch? or fork their gem? :/
But I digress. I finally manged to set everything up, fix the bugs with my code, and I'm ready to see what `service.create_spreadsheet()` returns. (now that it has positively valid and correctly-implemented authentication! Finally! Woo!)
I open the console... set up the auth... and give it a try.
... six seconds pass ...
... another two seconds pass ...
... annnd I get a lovely "unauthorized" response.
asjdlkagjdsk.
> Pic related.rant it was not simple. but i'm already flustered damnit it's probably the permissions documentation what documentation "it'll be simple" he said google sheets google "totally simple!" she agreed it's been days. days!19 -
!dev
> Get on Deutsche Bahn train
> Train delayed
> Miss Eurostar connection (not just me, many people did too), get the next one
> Building works in Brussels Station
> Maps inaccurate
> Get lost
> Find Eurostar terminal
> Electricity failure
> Check-in suspended
> After 40min, announcement
> This train cancelled, get the next one
> Electricity fixed
> Check in, finally
> Now 2½ trains worth of people need to get on this one
> Somehow fit on train
> Lose table because family needs it (fair, but annoying)
> Train departs
> More delays due to scheduling conflict
> Arrive in Lille Europe
> Stop for 10 minutes for no reason
> Announcement: "there is an illegal passenger on board, everyone and their luggage needs to get off"
> Get off train, stand on platform for a decade
> "Who has left an orange bag on coach 18?"
> Nobody
> They bring the bag out
> It's red, not orange
> "Oh it's mine, sorry" - some woman
> Wait around for ages
> "Everybody go downstairs and go through security again"
> Go through security and passport control
> Get back on train
> Arrive at St. Pancreas
> Last train to where I live has gone
> Woohoo, I get to pay for an expensive hotel in London
> Get rail replacement bus service home
> Home 😒13 -
Hello there, just couple of words about PHP. I've been develop on PHP more than 10 years, I've seen it all 3,4,5,{6},7. Yes PHP was not good in terms of engineering and patterns, but it was simple, it was the most simple language for web to start those days. It was simple as you put code into file, upload it via FTP and it works. No java servlets, no unix consoles, no nothing, just shared hosting account was enough to host site, or even application with database. As database everybody used to have mysql, again because its simple to start and easy to maintain. So PHP+MySQL became industry standard on Web during 00-2012, and continues in some way.
You can write HTML and logic inside single file, within php code, even more single file may content few pages, or even kind of framework. That simplicity and agility sticks everybody who wants to develop sites with PHP.
This is pretty much about why it is so popular.
Each good or wannabe PHP developer in an early days write its own framework or library (like in javascript this days because of nodejs)
Imagine that PHP has hadn't have package manager, developers used to have host packages on their own sites, then various packages catalog sites created, and then finally composer. A gazillions of php code had spread over internet, without any kind of dependency control. To include libraries to your projects you have to just write include, or require. Some developers do it better than others.
So what we have ? A lots of code, no repositories, zip archives with libraries, no dependency control.
Project that uses that kind of code are still alive even today, they are solid hose of cards, and unmaintainable of course.
And main question that I'm trying to answer is Why PHP is not good ?
- First is amount of legacy code which people copy and pasted into their project, spread it even more like a virus.
- Lack of industry standards at the beginning lead to a lots of bad practices among developers. PHP code usually smells.
open source php projects in early days was developed in same conditions so even in phpbb, phpnuke, wordpress, drupal used to have a lot of bad practices in their codebase. So php developers usually not study by another library, instead they write their own frameworks/libraries.
- "It works", - there are no strong business demands, on web development, again because lack of standards, and concerns.
This three things are basically same, they linked to each other and summarize of answer of why PHP have strong smells and everybody yelling against it.
Whats is with PHP nowadays ? Of course PHP today is more influenced by good practice of webdev. Composer, Zend, Laravel, Yii, Symphony and language it self became more adult so to say, but developers...
People who never tried anything except PHP are usually weaker in programming and ecosystem knowledge than people who tried something else, python, perl, ruby, c for instance.
Summary
PHP as any other programming language is a tool. Each tool has its own task. Consider this and your task requirements and PHP can be just good enough solution.
"PHP is shit" - usually you heard that from people who never write strong applications on PHP and haven't used any good tools like Symphony or Laravel.
Cheap developers, - the bigger community, the more chance to hire cheap developers, and more chance to get bad code. That can be applied on any other language.
PHP has professionals developers, usually they have not only php on scope.
That's all folks, this is very brief, I am not covering php usage early days in details, but this is good enough to understand the point.
Enjoy.8 -
This one project at my study.
We always had to do quite some documentation, even some in a way that works the opposite of how my brain works.
That's all fine if you can agree on doing it differently.
Had this teacher who valued documentation above anything else. The project was 10 weeks, after 9 weeks my documentation got approved (yes, not a single line of code yet) and I could finally program for the remaining 5 days.
Still had quite some bugs at say number five, the day of presentation.
I imagined that'd be okay since I only had 4 full days instead of the 5-8 weeks everyone else had.
Every bug was noted and the application was "unstable" and "not nearly good enough".
At that moment I thought like "if this is the dev life, I'm out of here".7 -
I'm a f****** idiot. Wifi adapter stopped working, I rebooted. I reinstall my distro. I look up for a replacement card. I troubleshoot the issue in software.
Finally someone says something one of the fourms.
I hit Fn + F2
It fucking works!!! The hardware was disabled by accident when I tried to open tty2.
FUCK!!!4 -
Update on my previous rants: finally got it working! after spending 2 days compiling the kernel and trying to fix some issues, I just reinstalled my laptop with a fresh antergos image, installed the kernel and both the speaker and headphones work just fine! no distortion, no weird chrome video speed ups, just works - it was probably just something I had installed ages ago to make external usb sound work.
I also used this opportunity to apply the missing grub theme and found this: https://gnome-look.org/content/... it's perfect with almost any custom background too.
Why is this a rant? well some asshat at gnome decided to remove the "global dark theme" option from tweaks, so now thousands of themes are broken if you want the dark theme, since the developers now have to offer the dark theme seperately, well numix-frost has had this reported since the 7th may and no response since, the hack to make it work is to replace the gtk.css with the dark equivalent gtk-dark.css for now..31 -
Ahhhhhhhhhhhhbhhbhhhhh
Finally!!!!!
Oh..
My.
F*ing...
G****t
It finally worked!
Holy shit!
I figured out how to make it work. Only took me like 3 weeks. But it works so smoothly now.... Holy f.13 -
After 16 years of porn addiction, I've finally realized that the only way to stop any addiction, is to take control of your mind. Nobody can help you, except make you realize the source of the problem or factors that cause it.
It's strange to describe how the mind works, sometimes we need stuff in our lives because we need to spend time on something to avoid the emptiness.
Free yourself from the things you love the most, in my case I love playing video games, it helps me feel complete, but in all honesty, I don't need it. I like drinking energy drinks, but in the end, I don't need that too.
My point is that once you find a way to deal with the things you can't live without, you find a way to live with it.
The only reason I watch porn is to reduce stress or have something "fun" to do.
As Bruce Lee once said: Be formless, be shapeless, be water my friend.
I like to think that he means to let the urge flow within you, but don't let it control you.15 -
I Quit,
Finally I quit.
This feels good after the countless red flags I raised to management and wishful thinking that this time things will be different. For the past year!
This time I lost the optimistic approach and got myself a couple of interviews, thinking, I'm in this for the long haul, could be 6 months could be a year, evantually I will succeed. and what do you know? It works, I can still pass those.
Then I set down with myself and thought, should I come to managment before signing the contract? Giving another chance for a real change? The answer was a resounding Hell No!
So, yea, if you are in a tough position. Don't give up, think long term, and who knows that "long term" might just be a month.3 -
Does anyone else despise buzzwords? A little background. I am a senior dev with a government organization who works in machine learning. As everyone knows, AI is the hottest of the hot now. Thus, everyone believes that they need it.
Long story short. I had a "requirement" come down to develop an "AI" algorithm that totaled all of the hours that a device was used last month. I explained to them that they weren't looking for "AI" and instead they needed rudimentary mathematics and a touch of Business Analytics for visualization. When they finally understood, they told me "nevermind, we just want to get into AI"...11 -
Remember Apple's initiative to scan photos on user's devices to find child pornography?
Today I finally decided to research this.
The evidence is conflicting.
For context, the database of prohibited material is called CSAM (child sexual abuse material).
“If it finds any CSAM, it will report the user to law enforcement.”
— Futurism
“Apple said neither feature would compromise the security of private communications or notify police.”
— NPR
CSAM initiative is dead. It won't scan photos in iCloud. It won't scan photos on your device. It will be a feature that only works in some countries, only on children's devices, and it will be opt-in. It will only work for iMessage attachments.
This is what Apple actually said at https://www.apple.com/child-safety:
- “Features available in Australia, Belgium, Brazil, Canada, France, Germany, Italy, Japan, Netherlands, New Zealand, South Korea, Spain, Sweden, UK, and U.S.”
- “The Messages app includes tools to warn children when receiving or sending photos that contain nudity. These features are not enabled by default. If parents opt in, these warnings will be turned on for the child accounts in their Family Sharing plan.”
News outlets telling people they will be automatically reported to authorities, and then telling there can be false-positives is a classic example of fearmongering. I hate this. Remember, anger and fear are the most marketable emotions. They make you click. News are and will always be worded to cause these emotions — it brings in money.
When presented with good news, people think they're not being told the truth. When presented with bad news, even when they're made up, people think it's the truth that's being hidden from them. This is how news works.
Now, a HUGE but:
Apple is a multi-billion dollar corporation. There is no such thing as good billionaires. Corporations will always wait for chances to invade privacy. It's like boiling the frog — one tiny measure here, one there, and just like this, step by step, they will eliminate the privacy completely. It's in their interest to have all the data about you. It brings control.
This is not the first time Apple tries to do shit like this, and it definitely won't be the last. You have to keep an eye on your privacy. If you want your privacy in the digital age, it's necessary to fight back. If you live in Europe, take the action and vote for initiatives that oppose corporate tyranny and privacy invasions.
Privacy on the internet is one thing, but scanning people's devices is a whole another thing. This is unacceptable no matter the rationale behind it. Expect more measures like that in the near future.
Research Linux. Find a distro that suits you. The notion that you can't switch because of apps/UI/etc. may be dictated by our brain's tendency to conserve energy and avoid the change.
Take a look at mobile distros like Graphene OS and LineageOS. The former only supports Pixel devices, the latter supports a wide range of devices including OnePlus and Xiaomi. They'll have FAR better privacy than iPhones.
Consider switching. It's easier than you think. Yes, it's me who's saying this. I do and will always protect people/companies from unjust criticism, and I consider myself an Apple fangirl for personal reasons related to my childhood, yet I won't fight blindly. CSAM initiative is a valid criticism, and there's nothing preventing me from saying this is unacceptable, and Apple deserves the backlash they got.11 -
!rant
So I am building a website and already finished it and ready to be deployed.
Got server access and found that there are many other websites files and folder.
Note : multiple copies of website that I am working on.
So I raise my concern with client about which folder is actually handling the website. She contact the old dev guy and got the webroot for that website. She told me to delete everything and clean it up and make tge current websites available.
I realize that there are many other websites may rely on those files and folder and inform about the consequences. And finally told her I will not touch any files except for the website I am working on.
So, I deployed the website and works good as expected. After 3 weeks clients comes back with an issue that one of her websites is notworking and trying to blame me for it.
Fyi : before my deploymemt she says that she will talk to hosting providers to clean their webspace. I am not sure on that yet.
So I tried to do auditing and found that after 2 days frm my deployment some has already wiped everything from those other websites.
I showed my audits and its someone did it.
You should contact your hosting provider or the other dev who she contacted for wiping.
From the begining I am telling that lady to take backups. She said no need.
The reason I didnt took it because I am not working on those website and obviously client isnt going to pay me for those back.
There is still more to go waiting for her resonses.3 -
Your git commit history on your personal branch when you're freaking out and cry tears in joy because the code you spent the whole previous week on to somehow get it to work suddenly DOES work.3
-
I finally got Redux-Form’s `initialValues` to work! Wooooo~!
/giphy confetti cheering
It turns out I haven’t actually been doing anything wrong for the past week. I mean, I've been working on other things during that week, too, but I've been trying to solve this the entire time.
The cause? ReduxForm made a breaking change awhile ago (v5; we’re using v7) that prevents the `initialValues` prop from working if you decorate your form component in the wrong order. Many examples online are incorrect because of this.
Basically, the decorators `reduxForm` and `connect` do not commute:
Incorrect:
`reduxForm(...)( connect(..., {...})(form) )`
vs Correct:
`connect(..., {...})( reduxForm(...)(form) )`
But what really pisses me off is that the fucking documentation specifically fucking states that you may decorate your component IN ANY [FUCKING] ORDER.
/giphy that is [fucking] false
So, I've been following example after [fucking] example that either list these in the wrong order, or I just don't notice the different order because it doesn't matter. AND because of that NONE OF THE [...] EXAMPLES WORK.
ARGH.
I've been pacing around the office trying to figure this out for days. I've rewritten my code three times to try to solve this. I've written two workarounds for it only to rip them out and try again because they both broke some other part of the UX. (e.g. causing false validation errors after rerender)
just. hafhsldkjhgjkhagklwhsdjfkahslf. 😡
/giphy angry hades
You know how I discovered this?
I found it in a github ticket. One solitary, untagged ticket from October of last year. Not a single goddamn post anywhere else mentioned this. And the [...] documentation specifically [...] states the [...] opposite!
Bloody [...] hell.
but it finally works.
as;kgjhaekl;gahgjkdflssdafh.
I could scream.6 -
Client called the office in an angry voice complaining about how he could nog see the data in the latest generated excel sheets. Calmy tryimg to figure out what could be the problem. Asked him to send over the file so I could check it. Works perfect on my end. Ask him to open the file again on his computer and tell me what he is seeing. Error message, empty excel file. He starts to me discribing a directory full of files and folders. 15 minutes later I finally figuren out what it is.
The guy had set winzip as default program for excel files. Hoe do these people work behind a PC Evert day. Are they like I hope this magic box with screen and buttond does everything right today.4 -
My work laptop (windows) updated yesterday. Today my monitors keep flickering, hanging, and going black for a few seconds then come back with an error that my display drivers crashed. Since I have basically zero access to anything admin on this machine, I put in a help desk ticket with all the details, the error message, even screen shots which took forever to get because of all the crashes.
They finally respond after about an hour, and tell me that my computer does not support 3 screens so I will have to use 2, and that is what is causing the crash. Well I have been using 3 screens with this computer since I started there in 2014, and it has worked perfectly until the update, so I asked if they could revert the update.
He told me that they could not revert it, and not only that, but I couldn't have been using 3 monitors before because the computer doesn't support it and never has. REALLY??? I just freaking told you I have been doing that for over 3 years so obviously it does support it you deaf, stupid retard. Try using your brain for 2 seconds and work on a solution instead of calling me a liar and dismissing my issue without thought.
After going back and forth for about 5 minutes I gave up and hung up. Finally I fixed it by switching out my docking station with another one I found laying around. Not sure why that worked, but I'm back to working on all 3 monitors. I called the guy back to tell him it's working and sent a picture of my setup, his response: "Well I don't know why that works because your laptop is too old to support that."
Useless...3 -
Finally got a new job, but it's already a horror story not even 2 hours in (making this while on break)
Everyone here is an Intern, IT? Interns, Designers? Interns, HR? Interns.
The Person who I should've worked with got fired yesterday, and now I have to work all of his shit up from 0, Documentation? Fragmental, a few things here and there, but nothing really.
IT security also doesn't exist in the slightest, there is an Excel sheet called "Master_Passwords" and every single password is in Plaintext, written out for everyone to see. (at least they used "strong" passwords)
And the place also looks run down, theres PC's, Laptops, Mics, Cables etc. lying literally everywhere no-one knows what works and what doesn't (since everyone is an intern)
Not to mention the "Server Room" is an absolute mess itself, cables hanging from literally anywhere, powerstrips are ontop of servers, each rack has like 2 or 3 2U Servers, (in a 40u Rack) and there are 10 of them!4 -
I'm a DevOps engineer. It's my job to understand why this type of shit is broken, and when I finally figure it out, I get so mad at bullish players like AWS.
It's simple. Install Python3 from apt.
`apt-get update && apt-get install -y python3-dev`
I've done this thousands of times, and it just works.
Docker? Yup.
AWS AMI? Yup.
Automation? Nope.
WTF? Let's waste 2.5 hours and figure out why this morning.
In docker: `apt-cache policy python3-dev` shows us:
python3-dev:
http://archive.ubuntu.com/ubuntu focal/main amd64 Packages
But in AWS instance, we see we're reading from "http://us-east-1.ec2.archive.ubuntu.com/... focal/main" instead!
Ah, but why does it fail? AWS is just using a mirror, right? Not quite.
When the automation script is running, it's beating AWS to the apt mirror update! My instance, running on AWS is trying to access the same archive.ubuntu.com that the Docker container tried to use. "python3-dev" was not a candidate for installation! WTF Amazon? Shouldn't that just work, even if I'm not using your mirror?
So I try again, and again, and again. It works, on average, 1 out of every 5 times. I'm assuming this means we're seeing some strange shit configuration between EC2 racks where some are configured to redirect archive.ubuntu.com to the ec2 mirror, and others are configured to block. I haven't dug this far into the issue yet, because by the time I can SSH into the machine after automation, the apt list has already received it's blessed update from EC2.
Now I have to build a graceful delay into my automation while I wait for AWS to mangle, I mean "fix up" my apt sources list to their whim.
After completely blowing my allotted time on this task, I just shipped a "sleep" statement in my code. I feel so dirty. I'm going to go brew some more coffee to be okay with my life. Then figure out a proper wait statement.7 -
3 nights of "why doesn't this work?", "what else can I try?", "why doesn't that work either?"...
Finally... it f**king works!3 -
How I spend my days at work working with legacy code:
* Writing tests before I do anything
* Noticing that i cannot write tests because of antipatterns. Lots of them.
* Refactoring to make at least a tiny bit testable.
* Then writing tests.
* More rewriting and refactoring
* Finally adding that one feature my boss asked me for
* Writing tests for that new feature (my do that before implementing)
* Explaining to my boss why it took me so long and agreeing on stopping writing tests.
* 2 days later: explaining why i still broke something.
But in the end my code works just fine.
my colleagues handle things differently. They just ignore problems as long as at least one feature works a bit.13 -
The last time I tried to root my phone, every method failed. Today I said fuck it. Either I'll brick my device or it works but fuck not having root access on my own fucking device.
It worked! I've got Xposed (😍) back and can finally run a root firewall and XPrivacy again 😍51 -
Great finaly get away on vacation 2weeks of just realaxing, 30min before leaving to the airport i get a sms from my server one of my main hard drives fail. No problem just need to swap the drive and start the recover at the airport.
At the airport i connect to my home vpn and start the recovery everything works fine just need to restart the server when done ~12h. next day im in the hotell and my vpn does not accept my connection, okey might be the hotell that block vpn connections i try my external vpn and it works and i try to connect home when i get a lovley text from my server "login attempt has failed from ip:x" then it hits me i have forgotten to add to whitelist. Outsmarted myself to just let i be.
So i finally get 2 weeks off and nothing i can do about it.3 -
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 -
Two months ago, I went to an interview that I thought I aced... Time passed and I heard nothing. Got bummed cause it's one of the rare positions that doesn't require industry experience, plus a friend works there so that would be fun.
Yesterday tho, i received a phone call from said friend saying that he finally got an update on a situation (since the whole thing was kinda in the dark even inside the company).
Apparently, the boss who directly interviewed me fought to the nail to hire me cause I was most qualified (even tho I'm very modest and generally nervous as fuck on interviews), but was denied funds for the new department at the moment.
Still bummed about the whole situation, but god damn it feels great to know that I'm still the first choice if/when they get funds3 -
I am much too tired to go into details, probably because I left the office at 11:15pm, but I finally finished a feature. It doesn't even sound like a particularly large or complicated feature. It sounds like a simple, 1-2 day feature until you look at it closely.
It took me an entire fucking week. and all the while I was coaching a junior dev who had just picked up Rails and was building something very similar.
It's the model, controller, and UI for creating a parent object along with 0-n child objects, with default children suggestions, a fancy ui including the ability to dynamically add/remove children via buttons. and have the entire happy family save nicely and atomically on the backend. Plus a detailed-but-simple listing for non-technicals including some absolutely nontrivial css acrobatics.
After getting about 90% of everything built and working and beautiful, I learned that Rails does quite a bit of this for you, through `accepts_nested_params_for :collection`. But that requires very specific form input namespacing, and building that out correctly is flipping difficult. It's not like I could find good examples anywhere, either. I looked for hours. I finally found a rails tutorial vide linked from a comment on a SO answer from five years ago, and mashed its oversimplified and dated examples with the newer documentation, and worked around the issues that of course arose from that disasterous paring.
like.
I needed to store a template of the child object markup somewhere, yeah? The video had me trying to store all of the markup in a `data-fields=" "` attrib. wth? I tried storing it as a string and injecting it into javascript, but that didn't work either. parsing errors! yay! good job, you two.
So I ended up storing the markup (rendered from a rails partial) in an html comment of all things, and pulling the markup out of the comment and gsubbing its IDs on document load. This has the annoying effect of preventing me from using html comments in that partial (not that i really use them anyway, but.)
Just.
Every step of the way on building this was another mountain climb.
* singular vs plural naming and routing, and named routes. and dealing with issues arising from existing incorrect pluralization.
* reverse polymorphic relation (child -> x parent)
* The testing suite is incompatible with the new rails6. There is no fix. None. I checked. Nope. Not happening.
* Rails6 randomly and constantly crashes and/or caches random things (including arbitrary code changes) in development mode (and only development mode) when working with multiple databases.
* nested form builders
* styling a fucking checkbox
* Making that checkbox (rather, its label and container div) into a sexy animated slider
* passing data and locals to and between partials
* misleading documentation
* building the partials to be self-contained and reusable
* coercing form builders into namespacing nested html inputs the way Rails expects
* input namespacing redux, now with nested form builders too!
* Figuring out how to generate markup for an empty child when I'm no longer rendering the children myself
* Figuring out where the fuck to put the blank child template markup so it's accessible, has the right namespacing, and is not submitted with everything else
* Figuring out how the fuck to read an html comment with JS
* nested strong params
* nested strong params
* nested fucking strong params
* caching parsed children's data on parent when the whole thing is bloody atomic.
* Converting datetimes from/to milliseconds on save/load
* CSS and bootstrap collisions
* CSS and bootstrap stupidity
* Reinventing the entire multi-child / nested params / atomic creating/updating/deleting feature on my own before discovering Rails can do that for you.
Just.
I am so glad it's working.
I don't even feel relieved. I just feel exhausted.
But it's done.
finally.
and it's done well. It's all self-contained and reusable, it's easy to read, has separate styling and reusable partials, etc. It's a two line copy/paste drop-in for any other model that needs it. Two lines and it just works, and even tells you if you screwed up.
I'm incredibly proud of everything that went into this.
But mostly I'm just incredibly tired.
Time for some well-deserved sleep.7 -
!dev
Oh my fucking god spotify is SOOOOO trash for free users!!!
I don't mind ads, I don't mind not being able to download.
BUT, it won't let me freaking repeat a single song!
AND, it automatically adds random music to my playlist while listening to it!!!!!!!
Apparently, it has a "feature" (cough limitation cough) that if you are a free user, your playlist must contain at least 15 songs or they will randomly add songs WHILE you are listening to your bloody playlist!!!!
I was so hyped about spotify finally being in India, now I am more disappointed than it not being at all 😑😑😑😑😑😑😑
Edit: This is about spotify android, the desktop (mac for me) version works just fine 😑😑🤷🏻♂️🤷🏻♂️45 -
Step 1: Run to the store to buy a USB card reader because all of a sudden you have a need to use a 16Mb CF card that was tossed in a junk drawer for 20 years (hoping it still works, of course), but that was the easy part...
Step 2: Realize that the apps - your own - you want to run on your new (old) Casio E-125 PocketPC (to re-live "glory" days) are compiled in ARM format, not MIPS, which is the CPU this device uses, and the installer packages you have FOR YOUR OWN APPS don't include MIPS, only ARM (WHY DID I DO THAT?!), so, the saga REALLY begins...
Step 3: Get a 20-year old OS to install in a Hyper-V VM... find out that basic things like networking don't work by default because the OS is so damn old, so spend hours solving that and other issues to get it to basically run well enough to...
Step 4: Get that OS updated so that it's at least kind/sorta/maybe (but between you and me, not really!) safe online, all without a browser that will work on ANY modern site (oh, and good luck finding a version of Firefox that runs on it - that all took a few hours)...
Step 5: Okay, OS is ready to go, now get 20-year old dev tools that you haven't even seen in that many years working. Oh, do this with a missing CD key and ISO's that weren't archived in a format that's usable today, plus a bunch of missing dependencies because the OS is, again, SO old (a few MORE hours)...
Step 6: Get 20-year old code written in a language you haven't used in probably almost that long to compile, dealing with pathing issues, missing libs, and several other issues, all the while trying to dust off long-dormant knowledge somewhere in the deep, dark recesses of your brain... surprisingly, it all came back to me, more or less, in under an hour, which lead to...
Step 7: FINALLY get it all to work, FINALLY get the code to compile, FINALLY get it transferred to the device (which has no network capabilities, by the way, which is where the card reader and CF card came into play) and re-live the glory of your old, crappy PocketPC apps and games running on the real thing! WOO-HOO!
Step 8: Realize it's 3:30am by the time that's all done and be VERY thankful that you're on vacation this week or work tomorrow would SSUUCCKK!!!!
Step 9. Get called into work the next day for a production issue despite being tired from the night before and an afternoon of errands, lose basically a whole day of vacation (7 hours spent on it) and not actually resolve it by after midnight when you finally say that's enough :(
Talk about your highs and your lows.6 -
I just wasted 20 minutes debugging a component that, when included in the parent template, caused an untraceable infinite loop.
Out of desperation, I finally just renamed component to "pants". It works.
...huh?
Renamed back to its original name. THAT works too.
...Huh??7 -
First (working) attempts at writing a proxy that rewrites live requests from the devrant app, right now it only rewrites all notifications to be unread
Though the first attempt that finally works is built with mitmproxy and it's add-on scripting, plan is to get that stuff work with e.g. goproxy instead37 -
FUCK SAFARI!!!!! I am developing our new company website and have a deadline tomorrow. It is built with flexbox WHICH SHOULD WORK EVERYWHERE BY NOW. The new website works FINALLY GREAT in all browsers now and then I just tested it in Safari (which I did not do before) on my mac and SO MANY THInGs doNT WORK! WHATTA FCUK?? I EVEN GOT EVERY THING TO WORK IN EDGE?? Is safari the new explorer?! What happened?!4
-
After spending hours with one problem and when you finally get it working:
1. Yei it works!
2. What? Why does it work?
3. WTF did I just do to get it working?
4. - >Coffee2 -
Over the past few years I've tried to start learning JavaScript, only to become annoyed and move on. In my latest effort, I finally hit that "aha!" milestone. Turns out that the tutorial books and videos everybody said we're the ideal way to learn weren't so ideal for me. What ended up working:
1. Find a project tutorial.
2. Understand maybe 5% of what I'm doing.
3. Alter the project, ultimately breaking it.
4. Spend the few hours Googling.
5. Scrap it.
6. Redo it, exactly the same. It works this time.
7. Bask in my glory. For I am a JavaScript master.
I'll get there eventually. I think.5 -
I finally finished my implementation of a suffix array construction algorithm! 😄
It takes about 30 mins to process 1GB of text and uses all available RAM, but it works! 🎉
Now I can optimize it, the original algorithm is 3x faster.9 -
It works. It finally works!
After an 8 hour session I got my crawler to work and give me basically every anime op/ed I long for.
All that using Elixir even though I'm still fairly inexperienced with both elixir and functional programming
I'll try to create an API and eventually Maybe even a database tomorrow (or rather in a couple of hours)5 -
When it finally works after hours or days of suffering.
Or, when you clean things up and get to delete some garbage code.
Makes it all worth it in the end5 -
Currently I'm working on 3D game engine and making a 3D minesweeper game with it.
I have started creating a compiler not long ago using my own implementation (no Lex no tools nothing just raw algorithms application) to hopefully some day I will be able to make a language that works on top of glsl inside my game engine. I have compilers design class this semester which haven't even started yet and made a lexical analyser generator. I also have another class about geographical information systems which I will be using my engine to create some demos for some 3D rendering techniques like level of details or maybe create something similar to arcgis which we will be using.
Oh man I have many stuff I want to do.
Here is a gif showing the state of my minesweeper game. I clearly lack artistic skills lol. One thing I will be making is to model the sphere as squares not triangles.
Finally I want to mention that I months ago saw someone here at devrant making a voronoi diagrams variant of this which inspired me to make this.
I made long post so
TLDR : having fun reinventing the weel and learning 😀 -
THE TIME HAS COME, LADIES AND GENTLEMEN.
I finished the avatar editor on the rewrite. It works so well.
After trial and error in design, API reversing and more, I've finally done it.6 -
That moment when... something finally works.
But you don't trust it.
So you pass it bad inputs to see if it's failing as it should.7 -
I really want to.
I want to get away from Windows.
But I have yet to find a distro that works.
Today I tried again again.
I found out Linux Mint released version 19.
Snapshots integrated. Cool. I will try it.
Installed with Cinnamon. Looks nice. Everything is running fast.
Aaaaand I hate the mouse movement...
Why is there no 1:1 movement? Is acceleration on? Does not feel like it.
Ok. We can fix this right?
Opened the Mouse settings.
There is no way of deactivating mouse acceleration. Only customizing the amount of acceleration. What?
Ok customize it. No change at all.
Try extreme settings. Nothing.
Google for a solution. Says I should install dconf-editor and change settings there.
Install it, change the settings. Hey it works!
It is far from perfect but I can live with that.
Now the scroll wheel is so slow...
But there is no setting at all? Not even in dconf-editor.
Google the solution. Need to install imwheel and configure it. Really?
Okay will do. I wanna use this.
Finally. Mouse works as it should.
After all that, why is my lap so hot? Fucking hell the cpu seems to be burning.
Fuck that!
I am out! Back to Windows!24 -
Ok, so teacher (which should be something like a professional dev or whatever) assigned us a homework for a Christmas (I dont care, I can complete his assignments in like 10 minutes max). We have to do some simple shit in C++, just some loops and input + output. Nothing hard. He challenged me to write it as short as possible, so I did. My classmates have codes around 60 to 70 lines long (after propper formating). I made it 20 lines long using some pointer magic and stuff like that. I tried my code, it ran fucking perfectly, so I sent that to him. He replied that the code does not work. I tried to recompile it and it ran perfectly. Again, it does not work. Afeter 13 fucking emails he fucking finally sent me the error message. Some fucntion was not found (missing some library but literally everywhere else it works without it...). Thats strange, because it run perfectly on my Fedora with CLion, so I switch to Windows and try to run same code in Visual Studio (which we are using in school btw). Works perfectly. So I start arguing with the teacher more and more. I tried around 10 online compilers. Works fuckng everywhere. Teacher is pissed, me too. So I rewrote my whole code, added comments and shit, reinvented wheel literally everywhere. Now I have C99 standardised code over 370 lines long that run even on a fucking arduino after changing input output methods so it can work with it. It (suprisingly runs) on his PC too.
After a bit more arguing, he said that he is using CodeBlocks from fucking 2015. Wow. Just fucking wow. Even our school has some old Visual Studio (2007 I guess) and it worked there.6 -
Do you know that feeling when you finally have no more errors, but then you can't tell if the software actually does the right thing?
🤢
Wisdom of the day:
'No crashes' is not equivalent to 'it works'...5 -
I finally moved to Fedora Silverblue 30 which is a really awesome OS.
Silverblue Edition unlike the standard version, runs a immutable core. That means the entire FS is not writable except for certain parts that are mounted to /var. While this is limiting, this allows for atomic updates, which is the whole point of Silverblue.
Now this also might throw off even myself, because I might need to run VSCode in the host and I might need C++ libs. Fortunately there's a tool named toolbox that allows you to use standard DNF inside a OCI container. Now the thing is, now you need to tell your IDE to use it after installing it.
I wrote a little helper script to do just that. I wrote it primarily for VSCode but it should also work for your IDE if you happen to want to try to use Silverblue.
Helper script: https://t.co/sXYOgcwLBg?amp=1
Also if you wanna try Silverblue for yourself, here's some notes:
* To install apps, you need to run flatpak. Make sure you also have the flathub repo listed.
* don't use the Flatpak version of the IDEs. If possible, use the RPM versions. Silverblue allows you to install traditional packages (to some degree, not everything works in this thing because of the immutable design) in the host. So as much as possible if you need dev libs, use toolbox for those.
* Silverblue also comes with podman and buildah installed (aka what if Docker had no daemon and was more secure?)
*Do your updates via rpm-ostree upgrade, or turn the auto updater on if you're lazy
All in all I like this environment, I've used this kind of workspace before (Chrome OS), so its pretty easy for me to get used to.
What do you think guys, think you'll give it a shot?5 -
Haha kids, you're all dead wrong. Here's my story.
There is a thing called “emergence”. This is a fundamental property of our universe. It works 100% of the time. It can't be stopped, it can't be mitigated. Everything you see around you is an emergent phenomenon.
Emergence is triggered when a lot of similar things come together and interact. One water molecule cannot be dry or wet, but if you have many, after a certain number the new property emerges — wetness. The system becomes _wet_.
Professionalism is an emergent phenomenon too, and its water molecules are abstract knowledge. Learn tech things you're interested in, complete random tutorials, code, and after a certain amount of knowledge molecules is gained, something clicks inside your head, and you become a professional.
Unfortunately, there are no shortcuts here. Uni education can make you a professional seemingly quicker, but it's not because uni knowledge is special, it's because uni is a perfect environment to absorb a lot of knowledge in a short period of time.
It happened to me too. I started coding in Pascal in fifth grade of high school, and I did it till sixth. Then, seventh to ninth were spent on my uni's after-school program. After ninth grade, I drop out of high school to get to this uni's experimental program. First grade of uni, and we're making a CPU. Second grade, and we're doing hard math, C and assembly.
And finally, in the third grade, it happens. I was sitting there in the classroom, it was late, and I was writing a recursive sudoku solver in Python. And I _felt_ the click. You cannot mistake it for anything else. It clicks, and you're a changed person. Immediately, I realized I can write everything. Needless to say, I was passing everything related to code afterwards with flying colours.
From that point, everything I did was just gaining more and more experience. Nothing changed fundamentally.
Emergence is forever. If you learn constantly, even without a concrete defined path, I can guarantee you that you _will_ become a professional. This is backed by the universe itself. You cannot avoid becoming one if you're actively accumulating emergence points.
Here's the list of projects I made in the past 11 years: https://notion.so/uyouthe/...
I'm 24.7 -
Powershell should die.
I have a simple bash script I made that allows me to download almost any video from the internet. Works great and took me only a few minutes to make.
The only issue is it bash meaning Windows doesn't run it natively. I am not able to install linux Subsystem or bash, etc on the server.
So I decided to rewrite it in powershell thinking it should be Okay and I have never struggled with so much retardedness in my life. After 40+ tabs in chrome and a massive headache, it finally works.
Microsoft should kill powershell entirely and rethink their scripting language.
Also VBA should have died 10 years ago.16 -
!rant
Two years ago, I started to learn Ruby on Rails so I would at last know a server language even though it wasn't the almighty PHP. Two years ago minus a few months, I decided to put my first website online with Apache and Passenger. It took me a whole six hours with stress and cries for help until I finally saw my website's homepage displayed on my screen
Today, after a few more websites (and currently 3 more projects but still not released, dang it), I tried to update mySQL to 5.7 since I need it to be able to save arrays for a future project, but everything went full shitstorm with broken packages and lame-ass-shit tutorials that make you doubt your sanity.
So I decided to backup my database and my online websites and to reinstall the whole server and take advantage of it to update the current used gems (Rails 4.2 -> 5.1, not bad)
Not only it took me just a bit more than 2 hours to redeploy the websites, but I didn't felt at the edge of panicking once, and now everything works like a charm.
I feel fucking alpha now.2 -
!rant
I finally did it. Finally had the energy to do... One axis for my CNC lol.
It works perfectly.
But the 28BYJ-48 are so slowwww.
- One Arduino Uno
- Two 28BYJ-48 with Uln2003A controllers (Y is already programmed)
- One joystick.
It's aliveeeee!16 -
I was just waiting for it to happen. The gaslighting charade finally crumbles.
Tldr: was strongly asked to work overtime again for no reason, refused it (weakly, but it is a start).
(Boss isn't actually my boss, just my unofficial lead at the moment.)
1.4 hours after regular work hours:
Me: boss, this issue is still not resolved but I am out of ideas for it. Already shared my last resort idea twice with you but you don't agree to it. If you are available I can meet you for a short call before logging off for the weekend.
.
10 minutes later, just as I am about to log off.
.
Boss: let's meet. The problem implies something wrong with your code. Let's check.
Me: [ugh] okay
.
Boss then rambles on about a juvenile nsfw joke to describe the situation and I force a laugh, we get to the topic. I manage to explain the situation despite the interruptions from him. Then he shares his genius idea. We agree it might work but the implementation will be slightly tricky. It is now 2 hours outside of work hours.
.
Boss: can you try it out and let me know if it works?
Me: sure, I'll try it out on Monday and keep you posted.
Boss: Monday?!! Look, it is getting on my nerves now, this has been going on for too long (false, since the issue is from a day before not a week before and I had asked for help multiple times before today).
I don't even know what big boss is going to be like. This needs to be done.
Me:. ...
[ You manipulative asshole, I'm not doing overtime for you, I owe you nothing and don't give a shit about your senile nerves. Fuck you and your shit codebase and clusterfuck development environment which makes the hairballs in a public toilet look well engineered.]
Look, it is difficult for me too...
Boss: If not now, I can accept weekend. Because I don't know how big boss will take it. You understand right what I'm saying. This needs to be done.
Me: [Fuck off scum chod! Take your acceptance, fuck it hard, and take it away with you! ]
Hmm. Let's see what can be done.
Thanks for your help.
Logged off.
I can't express the tone of his righteous rage in words.
I have never had to face such revolting attitude before from people at work. I just don't get how people can be so ridiculous. The whole team is filled with chodebags of different sizes.rant fucking chodebag little wins how do these people get chosen to lead? perhaps more to come later35 -
When you finally get to use that tensorflow side project you've been working on for a while to solve a real world problem and your boss wants to know how it works.3
-
Turns out I had some conversion issues and timing issues in the SD card file parser that I wrote... wtf it worked before I swear
It fully works now!!! I can now finally load presets from an SD card and apply them to the screen at my leisure.5 -
First time rant here, and I'm just gonna let fucking loose because this seems to be a good place for it.
My uni can't teach programming for shit. It's the reason people sign up for the course. They want to know how to program. I'm self-taught and unhappy in college as it is.
I joined CS because I thought they'd assimilate work in the real world, which is experience I need. I realized early on that programming is like art, and I love the rush I get of something finally working right.
That said, they sucked the fun out of it. It's too structured. Everyone trying to get the same goddamn result. In the real world, we'd be working on a larger project that involved planning, design, communication, teamwork, and the ability to complete each of our own pieces of the puzzle and subsequently put them together in a project that works for the end user.
I'm paying to be a fucking sheep, people. Why do employers give a shit about a degree instead of talent? Welp, fuck society for this. You can tell me I can drop it and still get a good job, it'll just be harder. That's the fucking problem. I can't get a job if these incompetent fucking bastards will throw out my resumé the moment they see "self-taught."
If we could hire based on GitHub contributions, I think many of us here would be relatively better off. Programmers program, not socialize. We do socialize, but in our own little groups. We team up as needed. The moment the jackass in HR realizes that, the better off we'll be.
Sorry, just the way I'm seeing shit right now. I'm going through some OCD-induced depression and this might be a result of that, but I'm passed the point of giving a fuck.15 -
I started at a company to develop an "uber" clone. Hired by the company's cto. I was happy initially as i had been unemployed for a while but that's because i didn't see the shitstorm coming. The task was build this using php, well 2 weeks later and db locking issues because mysql only allows 100 connections and the website takes over 200mb per request, i tried using the meteor framework, a lil better but the orphaned process would require me to reboot every 2 days. So enter erlang, built in 3 weeks works amazing problems none here... Well in comes the cto (which came in once a week). Apparently he had been reviewing my code and didn't understand it. He couldn't understand no for loops etc and demanded that it be made understandable to a normal dev. Did normal devs write uber no. Anyhow i spent the next 6 Weeks refactoring trying to make elixir looks like imperative programming, he finally gave up, so now I'm deep committed writing an API, finish in a week cto comes in and "why aren't you using patch" i don't need it, well another day implanting a patch api that will never be used. Ok done. Now we have a meeting with the investors who i worked in the same building with and they want a frontend built. I explained i was a backend dev and they needed a uiux expert. Next week cto comes back with this jquery fire pit and stolen bootstrap theme and take me with implementing it. This time we scrap the api change some of the backend logic and implement rest from the 90s one static page per request. After 3 months working with jquery I'm let go because of finical issues. I told them i was a backend dev but they didn't listen if the cto would've gotten a frontend expert things would be different but what to expect from a cto who's coding legacy is creating WordPress plugins.
Hopefully things will be better soon I'm tired of living on the streets.5 -
Be careful when you go down the rabbit hole of creating custom observables (rxJS).
I wasted half a day just to find out that there are hot and cold observables and that the whole time I tried to use the wrong one.
It finally works. 01:00 in the morning.
My boss will be proud when he pulls the changes and the code looks completely fucked up (clean, well structured code, but he doesn't really know observables).
Now something different: Sleep. Cya. -
What.. the actual... fuuuuuck?!
Browsing through changes on TFS (yeah, yeah boo me for using TFS instead of git if you like, I don't care, most people use/prefer TFS here, so I conform 'to the standards'..)
Anyhow, going through changes, looking for the one where some comment appeared..
'a wild comment appeared'.. tadaaah!
Checked the rest of changes.. Hm.. Someone did a validity check.. that returns the 'false' if not passed.
// OK, great! They are finally testing their shit and fixing stuff..
But apparently then they decided it is OK to do all the shit anyways.. so WTF?!
Why even bother validating it?! Oh yeah, forgot... cuz in case it returned false YOU WERE NOT SUPPOSED TO LET SOME STUFF HAPPEN!! But they weren't assigned with that exact task I guess..
TO DO:
- do the validation algo // fml, not going into how fucked up that was written..but it was horrible!
- do validity check where appropriate/needed
- test validity check and that it doesn't break functionality
+ check if the validation actually logically works?! nope, not on my to do list, not my job..
All done, better not actually do something that requires you to think.. :\
How the fuck that happened?! How can one person be assigned to check if something is stupid/wrong?! and when checking (&confirming) still lets the customer do that shit anyways?! What's the point?! O.O13 -
Well I FUCKING FINALLY managed to build a program that makes my dad's printer print automatically.
Have ranted about this on my previous rant.
My recent approach was actually overengineered all over the top. I was using pyautogui to simulate the mouse that would call the settings window on Windows, which would print a nozzle test (the translation for "Düsentestmuster" according to google?). The more I worked with it, the more I would have had to care about edge cases when calling the settings and god knows what else...😖
So I left the idea.
What I came up with was a python script with some copy-pasted code of an example from the win32print api that printed an image that I specified, so it would use all inks. Somehow it works perfectly...
After that I used the win32api. ShellExecute() with ghostscript to print a PDF for the PGBK ink.
Finally a batch script to run this python script on the task scheduler. No converted .exe as dependencies and whatnot let it all go to hell.😒
It's not quite what I had originally anticipated as a solution but IT FINALLY FUCKING WORKS!!
...😪 It took way longer than expected and although I somehow couldn't manage to print all on 1 paper, I'm still satisfied that it really works.
That's all, had to vent my frustration and share this personal success.12 -
Here's one that involves Windows, Linux (at the same time!), WInZip, Python, Lua and Minecraft, sort of.
So, when I get depressed I often find that old 2011 Minecraft videos help a lot from the nostalgia boost. If its stupid, but it works, it isn't stupid. Anyways, I was thinking about how much fun it must have been to just fuck around with code and make something like Minecraft. Naturally, I got a huge code boner and really wanted to do something I hadn't in a while: binding c to a higher level language.
This time around, I wanted to try Python. C + Python seems like a good pair. I watched a tutorial and it seemed pretty interesting and simple enough but I remembered that I actually like Lua a lot better than Python, so I went to the download page of Lua.
The download is a tar.gz so I let out a sigh and start typing "WinZip" into google. But no, fuck that, I hate 3rd party decompression programs on Windows. They all just give me this eerie feeling.
"This would be so much fucking easier on Linux"...
I remember that I haven't tried the Windows Subsystem for Linux. I guess it's time, isn't it?
I read the docs of how to do it. Nice little touch, they tell you how to enable WSL from PowerShell but don't mention the GUI way to do it. It's genuinely a nice touch.
So I get everything installed and go to the app store to choose a distro. I want Ubuntu. I click the Install button...
...
... "Something unexpected happened"
Windows and their fucking useless error messages. Jesus, okay. I restart computer. Same issue. I update Windows. Same thing. Uninstall WSL. Reboot. Install WSL. Reboot. Same thing. HOLY SHIT.
Went to bed. Woke up. Tried to install Ubuntu.
"Yea ok lul i'll work this time for no reason"
Finally unzipped Lua.4 -
Finally!
My first electric guitar was around $25, and apart from terrible sound, some notes were just off or dead because of its construction. Having no money, I was demotivated because I couldn't play what I wanted not because of me, but because of my equipment. When depression struck, I quit playing guitar altogether.
Now, because of my brilliant doctors, my therapy works, and the desire to play is born again. But now I can finally get proper instruments. I'm happily relearning how to play and it finally sounds great.3 -
*doing the happy dance*
🕺💃🕺🎶🕺💃🕺🎶🎶🕺💃🕺
IT WORKS!! It finally WORKS!!! For the first time. AND IT WORKS!!!
```
^s^s^s^s^s^s^s
git add .
git commit -m 'IT WORKS!!!!'
git push origin
git push backup1
git push backup2
```
*continues with the dance*random 2 days later this moment will be forgotten it works! enough work happy time for netflix and sweet popcorn took me 4 years to get here a lot more left to do8 -
I’ve been trying to use Debian without a graphical UI, at least for the most part. I use X window to run firefox since I feel that is the best way to browse. But simply using the terminal for almost everything feels so refreshing somehow.
I start to find these gems such as a music player for the terminal that works really well, my HOME area feels so clutter free and I feel like I finally can finely control and tune my system to a much larger extent. I’m coming from an extensively cluttered windows system so just seeing a few things makes me feel like I can finally focus.
For me it feels like I’ll have an easier time managing my projects by setting up github in a good way in HOME. I’ve been putting more time into my vimrc to make it better for my different workflows and general productivity (and for the sake of minimalism trying to keep it mostly to hand written stuff). I’ve also been looking into Lutris to be able to fire up games or use wine for other necessary tools that I might need during cowork with others.
Generally I believe that if this test works out I’ll truly consider to make this my main OS. The clutterlessness keeps me much more distraction free. The terminal environment make me read about and learn of new ways to do things. And most of the tools I use can either be used from command line, multiple ones with a multiplexer and in the case I truly need to use GUI or want to play a game I can just fire it up on demand.
*happy*
Do you guys have any distraction free OS or setups that you want to share? Anyone with a similar experience of revelation?9 -
While building a Java net sniffer app, I finally write the code to run a Linux binary in a separate process after three days. It works perfectly!
Then I export my app to a runnable jar file.
About nine exceptions are thrown, including a security exception. So much for being done. 😐5 -
Giant, month-and-a-half-long-ticket.
After learning six or so complicated areas of the system and updating them all to work with the new changes, make them all play nicely, etc. I finally got everything working. 95% spec coverage, though no ui tests because I haven't gotten selenium working. whatever, everything's done and works.
Second dev bases her ticket off of mine and continues working. Work elsewhere continues and there's an official release, so we both merge in master. I run tests, everything passes, and go back to working on other tickets.
She finishes her ticket.
We do end-to-end testing, and everything works perfectly. Time for a demo!
She merges in master again, and pushes her branch to two staging servers. (idk why two.)
Demo starts.
We connect to the staging servers, and... none of the UI changes exist; they aren't running the correct code!
So she runs it locally for a demo instead. Two features in my ticket no longer work. She throws me under the bus. She throws me under the bus again by criticising a rake task I scrapped because she wanted to do it. Then again because I didn't update my branch to master and push it before the demo, despite having no reason to. and despite the demo being of her branch.
Then she continues to show off and brag about how she's like the "legend" (senior dev) she envies. QAbuys it.
I'm having an emotion, and it's called anger.rant unfounded superiority complex people suck anger what the hell did you do to my project? i miss working alone8 -
I finally found it!
I set up an self-hosted gitlab at our company and for some reason everything worked except for one thing: using git (clone, push, etc) via SSH.
The solution was on the 'common installation problems' page at gitlab, but it took me a long time finding it through Google.
I read through the auth.log and realized the 'git' user was locked. Swapped the '!' for a '*' in the /etc/shadow and now it works. -
That feeling when you finally use @ before a few functions in PHP to suppress warnings, since the whole application is a hack which miraculously works anyways.
The feeling of finally getting close to deploying it.5 -
Ask yourself a couple of simple questions:
Do you like to code?
Do you like to learn new things and improve?
Do you like to solve problems and spend hours on a single detail until it finally works?
If your answers contain a "no", then development is probably not for you. You will hate it and you will suck at it. And you will make lifes of devs who actually love it miserable. So do something else.6 -
Oh boy, finally something to rant about.
I got hired in a "small" company (not even 2000 people in it), then got "shipped" to a way bigger company. Basically, I work for this company (the french biggest internet / phone service provider) but in the name of my own. And this since last wednesday.
First off, I'm fucking stupid. After leaving the big company that I was in before, I swore to myself that from now on, I would work for smaller companies, mainly because I couldn't stand the inertia that big company have. You ask for something, you get it a month and a half after. The old company has about 6000 employees... This company has 98k people in it. Fuck. My. Life.
Now, to the rant: Orange (the company) decided that they had to move their office somewhere else. They set up a lot of things so that all we needed to do was to put things in boxes, to work somewhere else until next monday, then we could go to the new office on tuesday morning.
Keep in mind that I have been there for 8 days: I keep learning how they do their stuff. For example, if I need a specific docker image, I can't get it from the Docker Hub, the download will fail. However, if I hit an Orange subdomain's registry, I will get this image from a mirror. Because fuck logic.
When we join the company, they give us a Windows laptop ("yeaah we have useless but required Orange softwares that don't run on Linux" "Yeeaaah fuck you") that have a specific VPN allowing us to use the Orange network and, in theory, you can download docker images or clone orange repositories from that network.
In practice, you can simply just go fuck yourself. Why? Because whenever you want to curl, wget or pull anything (or even pip install), your connection keeps being shut down while it waits for the response's header.
The worst part? According to my (new) boss's evasive answers, the way to fix that works with glue, sticks and the power of the Force.
WHY THE FUCK DO YOU ENFORCE US A SHITTY OS FOR DEVELOPMENT, WHEN THE TOOLS YOU SHOVE IN IT WITH A FAKE SMILE DON'T EVEN WORK, AND WE HAVE TO HACK OUR WAY TO FUCKING WORK?6 -
Okay, I'm interning at a government institution & boy let me just tell you... mmmh... A FUCKING MESS!
So I'm tasked with developing a HR system that the whole company should eventually use. I tell them I'm not familiar with the open source technologies they'd like me to use, they tell me no worries, you can develop a prototype with a tech stack that you're familiar with. Also, they tell me that they don't quite have the requirements from HR so what I can do for my prototype is just develop something "general" that works according to their "idea".
Being the good intern I am, I develop quite a good functioning prototype & present it to the team who then present it to the managers.
Finally we're all called in for a final meeting with the managers & HR, and guess what? The requirements for the system are different. Almost 90% of the features we built into the prototype need to change. Also, the system must use open source technologies. The managers promise to send a detailed requirements specification document, with sample data. I think this is a great idea as there's still a lot I don't understand. I expected this to happen, so I soon start to redesign afresh, this time trying as hard as possible to consider open source technologies within my plans.
But noooo... My team wants me to "finish" the system!
"Finish" what system, I ask? That was a prototype!
"Just tweak the functionality you built to meet the new requirements".
WTF!
We don't even have the actual requirements specification document, so I'll still be coding blindly. Also, the whole system needs to be re-built using open source technology!
Instead of pushing me to develop a system blindly, with no requirements, how about you push HR to tell you exactly what they need and how it should work first!?
I'm honestly exhausted with the false sense of urgency from my team!!8 -
OH MY FUCKING GOD!!!
IT FUCKING WORKS!!!
I tried so long on getting my new Netty based webserver up and running, I think I grew my beard twice... But NOW ITS WORKING!
Need to delete a few unnecessary functions that I needed with the old web server, implement SSL. And I can finally release a version of my framework ❤️❤️❤️
And I might put up one standalone version because - it's the same freaking server every time so I am fucking loving to export it ❤️❤️9 -
Ok, so I basically spent my weekend trying to work out why the fuck my python docker container would not connect to my mariadb docker container. Tried fucking everything, bridged network, host network, links (even though theyre deprecated), you name it. It would NOT WORK!
In my despair I finally turned to StackOverflow. There I was told 5min after posting the question that the reason was probably that mysql is a quite heavy service, which takes a bit to start up.
I thought to myself "Oh, get the fuck outta here, that can't be it, shit's way too easy to work!"
I tried it nevertheless by adding a 10sec delay before querying the database AND THE MOTHERFUCKING PIECE OF SHIT ACTUALLY WORKS!! So, I essentially just lost a weekend because I was too impatient... I think I'm gonna punch some trees now.4 -
Follow-up to https://devrant.com/rants/1754950:
I've finally been able to completely migrate my 4TB Elements to btrfs, copy all the data over (initially did it from my laptop out of laziness, thing overheated, mounted to my server afterwards to copy from there) and now it's mounted to my WanBLowS host again. And I gotta say, it works like a charm! Rsync which previously would mindlessly copy everything over from the server to the (at the time) NTFS drive, now leaves existing files as-is, as it should.
And why is that? Btrfs to btrfs, or a POSIX-compliant filesystem to another POSIX-compliant filesystem rather. Could be ext filesystems, HFS filesystems, or whatever. But not NTFS, because its file attributes aren't POSIX-compatible. That's why rsync chokes on it. And you think that Crapple Thinks Different.. which, granted, they do. But Microshit.. that's a whole different level beast altogether! Every fucking thing they do, every time it's shit and never is it remotely compatible with common standards, and it extends itself even to something rather trivial yet vital to the OS - the NTFS filesystem. Think fucking Different, it isn't an Apple exclusive!2 -
Me when I finally understand how VueJS works, how simple, easy and customizable it is, how I built a working contact form in 5mn and how I'm gonna stick with this gorgeous motherfucker for the rest of my life.4
-
If this isn't the worst thing.
I was asked to develop a WordPress plugin as an intern developer and I've been on it since last week. I got stuck when i finally had the loops running but couldn't find a way to format the output without overwriting the existing values on each iteration.
For the last one week I've been showing the progress on my code to the CTO and this is how it has been.
Me: Hello. Everything is coming along fine, I have most of the functions running properly, do you mind looking into the algorithm?
CTO: Oh not at all, let's see what you got. Omg great code for an intern. I think you should add a new variable there and maybe clean up that function over there because it's deprecated now and yeah HaHa, Great work.
Me: Thanks xD I'll have it finished latest next week.
CTO: Oh great. I can't wait to see what you'd have by next week so we can install it on our WordPress.
*Next finally week comes and I'm done with the code.
Me: Hello, I'm done with the entire code! Want to take a look? The plugin works just exactly as described.
*CTO takes a look
CTO: Omg?
Me: Omg?
CTO: This is completely bad programming practice, so you are running 4 nested loops that all send queries to our data base and make changes to data. This would have a very drastic effect on the server considering the traffic we get.
Me: But you saw this exact code last week and said it was okay, I only changed some CSS since the last time.
CTO: Omg, we can't accept this, you have to develop it again from the scratch without using those loops and queries.
Me: What? Okay, fine. Any hints?
CTO: Yes.
Me: What?
CTO: Just start. That's the greatest hint I could ever give. And also, always have a plan before you begin.
Me: Yeah, thanks for those. It's the first time I'm hearing them and they would totally be applicable to building this thing.2 -
I JUST HAD ONE OF THOSE DAYS THAT MAKES ONE WANT TO BANG TWO BRICKS ON HEAD SND END THE PAIN THE STORY STARTS YESTETDAY WITH ISSUES AFTER A MIGRSTION AND THEY ASK ME TO HELP TROUBLESHOOT EVEN THOUGH I'M A DEV DBA AND THE ISSUE IS IN QA/SAT AND I HELP ANYWAY AND THEY CAN'T FIND A VIEW AND SO I LOOK EVERYWHERE AND CAN'T DOING IT EITHER AND IT DIDN'T EXIST IN PROD OR DEV SO I TELL THEM IT'S NOT THERE, AND THEY ARE LIKE, CAN YOU RETRIEVE IT FOR US AND I'M LIKE FROM WHERE? I DON'T KEEP VIEWS IN MY BUTT AND YOU GUYS ARE SMOKING CRACK AND THE GIVE ME THEIR QUERY WHICH CONTAIN THE VIEE ANYWAY AND THEY SAY CAN YOU RUN IT AND IT RUNS AND WORKS AND THEY CAN'T MAKE IT WORK AND IT WORKS BECAUSE IT DOESN'T CALL THE VIEW THEY HAVE ME SO NO PROBLEM THERE SO I FINALLY ASK THEM ARE YOU POINTING TO THE CORRECT DATABASE AND THEY'RE LIKE OH MAN WE TOLD YOU THE WRONG DATABASE AND SO I LOOK AT THE RIGHT DATABASE AND FIND THAT THE GRANTS ARE MISSING AND YEAH THANK YOU FOR TAKING EIGHT HOURS OF MY LIFE BECAUSE WE WERE IN THE WRONG DB YOU GAVE ME AND I HOPE THE FLAG OF A THOUSAND CAMELS INVEST YOUR ARMPITS AND THE CHIGGERS OF A THOUSAND SOUTHERN LAWNS INGEST YOUR SOCKS AND UNDERWEAR. YAAAAAA!!!!9
-
== Internship Interview Rant ==
This is the weirdest interview I've been to to be honest because it wasn't really ABOUT ME. It's like the boss is not really interesting in knowing what I can do, what I am capable of doing. He asked me about my educational background for 5 minutes and started explaining about the startup for 45 minutes. He explained how he came up with the idea like it was a children's bedtime story. He explain what the job is, BUT he didn't mention what programming languages they use. All he said was it required knowledge about different programming languages. I tried asking but he seemed to dodge the question for some reason by saying everyone needs to know a little bit of everything. (Srsly i don't even know what to start learning for this) After listening to him talk and talk and talk and talk, he finally said "hey, think about it and send me an email if you are willing to take it up!"
He works with STUDENTS. The team is composed of him and 5 students. o.O They all seem so..... quiet in the office. Is that normal ???? Or like shouldn't everyone be kinda "interactive" sometimes?
So there is a girl working there too for 3 weeks now but SHE IS IN ROMANIA like wtf, gr8 then i guess ill be the only girl there but hey perks of being a girl, u get to be spoiled sometimes XD it happens a lot !
Internship ad ----> Main language: English
Me: *rages internally during the interview and thinks: BRUHH WHY ARENT U SPEAKING IN ENGLISH i prepared what I was gonna say in english for an hour*
I wonder if the code is in english or maybe its not :(( But I wish it were because it would be soooo much easier in english.
And there you go, I guess I have one week to find a better internship or decide to deal with this talkative boss. This isn't exactly a story of my last job cause my last job is totally non-dev related. This is a story of (maybe) my future job unless I actually find a better internship.2 -
Last Monday I bought an iPhone as a little music player, and just to see how iOS works or doesn't work.. which arguments against Apple are valid, which aren't etc. And at a price point of €60 for a secondhand SE I figured, why not. And needless to say I've jailbroken it shortly after.
Initially setting up the iPhone when coming from fairly unrestricted Android ended up being quite a chore. I just wanted to use this thing as a music player, so how would you do it..?
Well you first have to set up the phone, iCloud account and whatnot, yada yada... Asks for an email address and flat out rejects your email address if it's got "apple" in it, catch-all email servers be damned I guess. So I chose ishit at my domain instead, much better. Address information for billing.. just bullshit that, give it some nulls. Phone number.. well I guess I could just give it a secondary SIM card's number.
So now the phone has been set up, more or less. To get music on it was quite a maze solving experience in its own right. There's some stuff about it on the Debian and Arch Wikis but it's fairly outdated. From the iPhone itself you can install VLC and use its app directory, which I'll get back to later. Then from e.g. Safari, download any music file.. which it downloads to iCloud.. Think Different I guess. Go to your iCloud and pull it into the iPhone for real this time. Now you can share the file to your VLC app, at which point it initializes a database for that particular app.
The databases / app storage can be considered equivalent to the /data directories for applications in Android, minus /sdcard. There is little to no shared storage between apps, most stuff works through sharing from one app to another.
Now you can connect the iPhone to your computer and see a mount point for your pictures, and one for your documents. In that documents mount point, there are directories for each app, which you can just drag files into. For some reason the AFC protocol just hangs up when you try to delete files from your computer however... Think Different?
Anyway, the music has been put on it. Such features, what a nugget! It's less bad than I thought, but still pretty fucked up.
At that point I was fairly dejected and that didn't get better with an update from iOS 14.1 to iOS 14.3. Turns out that Apple in its nannying galore now turns down the volume to 50% every half an hour or so, "for hearing safety" and "EU regulations" that don't exist. Saying that I was fuming and wanting to smack this piece of shit into the wall would be an understatement. And even among the iSheep, I found very few people that thought this is fine. Though despite all that, there were still some. I have no idea what it would take to make those people finally reconsider.. maybe Tim Cook himself shoving an iPhone up their ass, or maybe they'd be honored that Tim Cook noticed them even then... But I digress.
And then, then it really started to take off because I finally ended up jailbreaking the thing. Many people think that it's only third-party apps, but that is far from true. It is equivalent to rooting, and you do get access to a Unix root account by doing it. The way you do it is usually a bootkit, which in a desktop's ring model would be a negative ring. The access level is extremely high.
So you can root it, great. What use is that in a locked down system where there's nothing available..? Aha, that's where the next thing comes in, 2 actually. Cydia has an OpenSSH server in it, and it just binds to port 22 and supports all of OpenSSH's known goodness. All of it, I'm using ed25519 keys and a CA to log into my phone! Fuck yea boi, what a nugget! This is better than Android even! And it doesn't end there.. there's a second thing it has up its sleeve. This thing has an apt package manager in it, which is easily equivalent to what Termux offers, at the system level! You can install not just common CLI applications, but even graphical apps from Cydia over the network!
Without a jailbreak, I would say that iOS is pretty fucking terrible and if you care about modding, you shouldn't use it. But jailbroken, fufu.. this thing trades many blows with Android in the modding scene. I've said it before, but what a nugget!8 -
Hey guys,
I think the topic of this week is very important.
Older, experienced devs are giving their skills and advices to the younger one.
Some of you maybe know it, I'm a young developer, who started his apprenticeship at september.
I'm feeling good there, the others are friendly. I learn a Lot there. I had experience before I started there. It's my Hobby to code so I started coding when I was 14.
You can't know anything, everyone makes mistakes, this is what I've learned and this is important to remember.
There are these days like today, when your Boss isn't there and you have to work alone. You have to do many things, and you are desperated because nothing Works, you can't ask anyone, you are completly alone. There are these days, when nothing seems to work. But there are also these days when everything Just Works fine and you are happy with yourself.
This is important to remember.
For me its very hard. Days like today are driving me crazy and I'm very sad, even when I know, that this is Kind of normal not to know everything and have Problems, especially when you are young as me and started your first apprenticeship 3 months ago.
Tomorrow I'm also alone, I'm a Little Bit feared of tomorrow (you say that in that Way? :P) When I think of tomorrow and that I don't know How to proceed and sitting there, I'm getting frustrated and Kind of sad. But I know that this will Make you even better some day, because you learn and gets better - day for day.
At least there was something good today. My stickers finally arrived! To Germany! That was fast! Thanks everyone, Thanks! And Thank you @dfox for building this great community!
What are you advices? And how you handle these situations? I hope tomorrow everything Works fine :/2 -
Our IT-Class project: Mathematics trainer in Java
Day 1 (was monday)
TL;DR we didn't save.
So we formed groups and I landed in the UI team with, let's call him Mage and let's call her Goth.
We had an eclipse project folder on our desktop (they said it only works when put on desktop) Btw they didn't even want to use a cloud or something (I wish we'd use git and I'd finally learn it). We should take the changes by USB from computer to computer.
So me, Mage an Goth are making a basic GUI for this Mathematic-Training App. We use this thing from Eclipse but I forgot the name. It has not enough functionality on surface and I hate things that break complex things up to ease things but leave away so much.
So after a productive hour of building a GUI and centering shit by calculating the top and bottom distance and use margins (hurts me really but Mage was designing, Goth intensively calculating on paper), the bell rings.
Mage wants to save the project on my USB-Stick and bamm💥
A black screen.
I don't know how it happened but it sure had something to do with the USB-port looking like you fucked it with a way to huge🍆. It looked damn broken.
So because we have a nice App called HD-Guard, which fucking wipes the desktop on startup and resets all but the documents/images/videos/music folder —
It's all's gone. Today is day 2 of this project so let's see how today turns out.3 -
A little late but whatever.
About half a year ago, I started working on setting up self hosted (slippy) maps. For one, because of privacy reasons, for two, because it'd be in my own control and I could, with enough knowledge, be entirely in control of how this would work.
While the process has been going on for hours every day for about half a year (with regular exceptions), I'll briefly lay out what I've accomplished.
I started with the OpenMapTiles project and tried to implement it myself. This went well but there were two major pitfalls:
1. It worked postgres database based. This is fine but when you want to have the entire world.... the queries took insanely long (minutes, at lower zoom levels) and quite intimate postgres/tooling knowledge was required, which I don't have.
2. Due to the long queries and such, the performance was so bad that the maps could take minutes to render and when you'd want that in production... yeah, no.
After quite some time I finally let that idea sail and started looking into the MBTiles solution; generating sqlite databases of geojson features. Very fast data serving but the rendering can take quite some time.
After some more months, I finally got the hang of it to the point that I automated 50-70 percent of the entire process. The one problem? It takes a shitload of resources and time to generate a worldwide mbtiles database.
After infinite numbers of trial and error, I figured out that one can devide a 'render' (mbtiles aka sqlite database) into multiple layers (one for building data, one for water, one for roads and so on), so I started doing renders that way.
Result? Styling became way more easy and logical and one could pick specific data to display; only want to display the roads? Its way more simple this way. (Not impossible otherwise but figuring out how that works... Good luck).
Started rendering all the countries, continents and such this way and while this seemed like a great idea; the entire world is at 3-4 percent after about a month. And while 40-70 percent generates 10 times as fast, that's still way too slow.
Then, I figured out that you can fetch data per individual layer/source. Thus, I could render every layer separately which is way faster.
Tried that with a few very tiny datasets and bam, it works. (And still very fast).
So, now, I'm generating all layers per continent. I want to do it world based but figured out that that's just not manageable with my resources/budget.
Next to that, I'm working on an API which will have exactly the features I want/need!13 -
This is why I hate Windows:
For about a month now, I've been learning/working on salesforce, so my Macbook was enough for me.
Today there was a bug in something I built in iur Python backend, and since it has a dependency on windows, I booted the old guy up.
And this is what I see. For about 1.5 hours this went on.
Then it started, but system consuming 100% disk and 80+% CPU. Can't do a thing.
And when zoom finally opened (for a quick meet), the camera turned on halfway down the meeting, and then the system restarted on it's own.
Old man showing that same screen again for more than 30 minutes.
Since I have dual boot on this one, I hard-shutdown it using power button, and now boot into ubuntu 20. This works so beautifully (although it froze for about 5 seconds before popping up the updates panel, something I CHOSE to keep enabled). I try going back to Windows, and it's hell again.
Here I am now trying to set up a ec2 instance and setup the app source there so that I can debug with RDP.
And yeah, Component Object Model is a motherfucking bitch. Person who invented it should die. People who build apps leveraging this should die. Business leaders who say "Hey this app (built with COM) can solve the problem easily, so use this" should die choking on their own phallus. And developers like me who keep using this because "the last guy did this" should die too.
Microsoft and it's products are the death of sane people.
Fucking Gates. Its the same damn hardware.13 -
Before going home, decided to do an upgrade from ubuntu 16.04 to 18.04...
Leave it to do its charm.
*a morning later*
See laptop on off state, "hmm..."
Turning in on, *press power buton*
Booting... Purple-ish screen appear.. Nothing happened for 20 minutes.
"fck."
Hard reboot, going to grub menu,
1. Ubuntu*
2. Advance option
Choose ubuntu.
Booting...
"root mount not found, bla bla bla
Kernel panic..."
"fck."
15 chrome tabs later (on mobile),
Do something on shit...
Finally proceed to login screen.
Insert password, enter.
Loading... Blank... 3 seconds later, tadaaa.. Going back to login screen.
Do it trice, I'm stuck at login screen.
"fck."
20 chrome tabs later,
Finally got in. Have a "what's new" screen.
Ok, feels different... But its slow af. Hmm maybe reboot will do something.
Rebooting...
Login screen, insert password, enter..
3 seconds later..
Bam. Going back to login screen...
"fck."
Another chrome tabs later... Resolved the issue.
And finally I can take a breath, but still has a headache because of little thing likes:
1. Right click not working
2. Workspace not work as expected likes in 16.04
3. Screenshot behavior
4. No animation When moving a window to another workspace.
When almost anything is solved and I'm ready to do my works, I just realised something..
I just wasted 4 hours of my workday.
"fck."9 -
After at least half a year of using a computer that froze or crashed at least every 10 minutes I finally replaced the faulty stick of ram.
Now it works beautifully and I'm dissapointed in myself for not doing it earlier.1 -
Oh, it's finally done and works well!
Oh, let me just optimize that a little... And probably rename this...
5 minutes later:
Shit it does not work now.
10 hours of debugging later:
I'll fix it later
To all new devs:
Commit more regularly -
How to delete 16 days of commits 101 🤯:
First of all, me and my class (computer science in college) were working on a project for around 12 weeks, our “client” is one of our teacher and we literally just finished today to work on the project since our degree terminal projects are starting next week.
So now there's this guy in our class who kinda has the reputation to be stuborn and clumsy; he’s going to do his assigned task, commit, push it and put his task into QA (which is just peer evaluation and testing nothing really complex) and then when we try his functionality and finds out it isn’t working, we tell him and the only thing he always answers is : “but it works on my machine” and then we will need to explicitly ask him to be sure he has all the latest changes (database and codebase) and to see if it still works on his side since it doesn’t work for anyone else.
This actually happened quite a lot in these 12 weeks and you can definitely imagine that of course it would definitely not happen again today when we thought we were finally done with this project…
So another teacher gave us an assignment to create a development environment for our big project so we could try out Docker instead of virtual machines, he made GitHub Classroom repos with a minified version of our project and up to this point everything is fine and clear. That is until 3 hours ago, that our little clumsy friend somehow pushed his Docker related files on the main project, maybe he was trying his Docker setup on the real project no big deal you know EXCEPT IF HE HADN’T NOT PULLED SINCE 16 DAYS 😤.
He was doing maintenance on another project so I can maybe understand but gosh how did he not see the big warning of Git that he wasn’t up to date with master ? And yes we only have a master branch bear with us but hopefully we were able to create a new branch with the up to date project and then merge master.
A couple of us had a gut feeling that this guy would do something that would break the whole project right before we ended, turns out we were right 😅15 -
Well , this isn't a rant or a joke , so I just thought I should post it here in case people are going through a similar situation . So I know this guy , who works at this startup , so he had just joined the company and made a huge impression on the boss ( My friend is fantastic in developing ) , so as great as that sounds , it doesn't . After a year or so , he's been promoted and is now kinda a face for the devs of the company and this made his boss very cocky , like he would take so many projects or requirements of his top clients and place them on the shoulders of my friend and give a bad time limit , which is impossible but he always managed to just finish completing it . Naturally it affected his sleep cycle , his daily life and as a result , his mental health . As time went on and as more and more projects were being placed on him..........he finally broke , he used to miss so many days of work , not return any of my calls or texts , miss lunches , have breakdowns . I became very concerned and didn't want him to end it , I went to his place , spoke to him , found out that he had suicidal thoughts . Fast forward a year later , he's still going to a shrink , everyday but he's better now and after forcing him to talk to his boss and now his boss gives him plenty of time to finish the projects and said to be straightforward with how he feels and so on . I know this isn't what you would expect to find here but I just wanted to say after having this experience , please do not keep quiet , be straightforward with your boss and don't overburden yourself , if you're an introvert , tell it to someone you know , to tell your boss , and if you know anyone in a similar situation , do be out there for them . I'm sorry if this kinda spoils your mood , but people have to be aware . Be careful , lots of love people4
-
Was showing the new guy how to write a fairly simple database query with a couple of joins.
Spent 3 hours trying to figure out why it didn't work.
Finally discovered that I had randomly chosen one of the 3 records (out of a possible 15,000+) that had leading white space.
Ctrl-Z back to the first query I wrote (3 hours ago), and it works perfectly.
New guy learns a more valuable lesson than I originally intended. -
Ever had a day that felt like you're shoveling snow from the driveway? In a blizzard? With thunderstorms & falling unicorns? Like you shovel away one m² & turn around and no footprints visible anymore? And snow built up to your neck?
Today my work day was like that.. xcept shit..shit instead of pretty & puffy snow!!
Working on things a & b, trying to not mess either one up, then comes shit x, coworker was updating production.. ofc something went wrong.. again not testing after the update..then me 'to da rescue'.. :/ hardly patch things up, so it works..in a way.. feature c still missing due to needed workarounds.. going back to a and b.. got disrupted by the same coworker who is nver listening, but always asking too much..
And when I think I finally have the b thing figured out a f-ing blocker from one of our biggest clients.. The whole system is unresponsive.. Needles to say, same guy in support for two companies (their end), so they filed the jira blocker with the wrong customer that doesn't have a SLA so no urgent emails..and then the phone calls.. and then the hell broke loose.. checking what is happening.. After frantic calls from our dba to anyone who even knows that our customer exists if they were doing sth on the db.. noup, not a single one was fucking with the prod db.. The hell! Materialised view created 10 mins ago that blocked everything..set to recreate every 10 minutes..with a query that I am guessing couldn't even select all that data in under 15.. dafaaaq?! Then we kill it..and again it is there.. We found out that customers dbas were testing something on live environment, oblivious that they mamaged to block the entire db..
FML, I'm going pokemon hunting.. :/ codename for ingress n beer..3 -
Windows - how can someone possible get something done?
I gave up and are now installing windows for my son so he can install a game that only exists under windows.
Did a clean install, no network drivers found. Looked under device manager and tried to find out what network card there is on his computer. Unknown device :@
Finally found the manufactures dvd, ofcourse we get some bloatware, killer network manager.
Tried to uninstall it, the drivers was also uninstalled. :O Had to install it again and do some googling and finally found some pure drivers. Uninstalled the f*** Killer software again, and then installed the pure drivers. It works :)
Then I tried the speakers ... :@
Thank god my son is in school and can't hear my language right now.13 -
Was on my first internship, told to analyse and prepare stuff for the Android dev to build an application for a big client. Did it before the end of the internship and team was satisfied with my job.
Because the Android dev had already lot of works on other stuff they let me start the development of the app.
The end of my internship is coming, the app is not finished but the team agreed that my work is not bad and that I should continue to work on it.
I finally get hired to finish the app, when we first publish it 95% of the code was mine and the boss started to stress because he let an intern (that became an employee) build the application from the ground. But the application got quickly its 4.5 stars on the playstore and more than 10.000 downloads.
I quit the job a few time after the publication of the app but I feel proud and happy that this team let me work on one of the biggest project they had as I was only an intern without any professional experience.
This is not "badass" but this is my first and best experience in the professional world ! -
For the last 20 years, there's one thing I've not been able to do reliably:
Share a folder on a windows computer.
Why the fuck can I write /etc/smb.conf from scratch with a blindfold on and make it securely work from all client devices including auth & acl, but when I rightclick and share on windows it's either playing hide and seek on the network (is it hiding behind //hostname/share? No? Maybe in the bushes behind the IP addresses?), or it's protected by mysterious logins requiring you to sacrifice two kittens a day.
Yes, finally it works! One windows update later... aaaand it's gone.
JUST GIVE ME A FUCKING CONF AND A MAN PAGE, MICROSOFT. I DON'T CARE THAT YOU'RE ORALLY PLEASING ALL THESE MALWARE RIDDEN GUISLUTS ON THE SIDE, JUST GIVE ME A FUCKING TEXT FILE TO STORE AND EDIT.4 -
I started learning Golang today and really like it.
The error handling is *excellent*. It always works the same way and is standardized, unlike the hell that NodeJS error handling is (.catch(), try).
Modules confused the fuck out of me. I eventually figured out how they worked, but Go really doesn't try to make it easy to have multiple source folders...
I'll probably be re-writing my Discord Bot in Golang soon. Being able to have just one binary output will make things infinitely easier. Compile-time variables are another feature that's nice and easy to implement.
The goal is only having to upload a single binary to deploy on production from my CI script that has all keys and stuff inside. Feels good to finally throw all that old bad JS code out and starting completely fresh.7 -
Fuck. The entire day to do this shit.
The screen was my first experiment, but because of a bad module (i2c) it didn't worked.
Today I finnaly got it to work.
Starting making everything almost like in the picture, everything mounted (and lots of black hot glue, no wires showing...
Didn't work.
One hour breaking everything apart without damaging the screen... Was a loose wire.
Started again... Didn't work...
The pot is also damaged, sometimes it works, others need to turn it hard.
New pot.
New set of wires.
Soldering everything right, testing all wires so no mistakes this time... But it takes so longgggg... Making everything in modules this time (to reuse without having to sordering again. And finally... It works.
By this time I should have 3 or 4 learning projects finish (I really wanted the screen to adapt all output in text, no serial, no blinking less, everything in modules, code prepared so, when I get my 40+ packages from China I already have a prototype tester ready.
10 hours... Fuck I'm really addicted, or else I would just solder everything together :D28 -
In today's episode of kidding on SystemD, we have a surprise guest star appearance - Apache Foundation HTTPD server, or as we in the Debian ecosystem call it, the Apache webserver!
So, imagine a situation like this - Its friday afternoon, you have just migrated a bunch of web domains under a new, up to date, system. Everything works just fine, until... You try to generate SSL certificates from Lets Encrypt.
Such a mundane task, done more than a thousand times already... Yet... No matter what you do, nothing works. Apache just returns a HTTP status code 403 - Forbidden.
Of course, what many folk would think of first when it came to a 403 error is - Ooooh, a permission issue somewhere in the directory structure!
So you check it... And re-check it to make sure... And even switch over to the user the webserver runs under, yet... You can access the challenge just fine, what the hell!
So you go deeper... And enable the most verbose level of logging apache is capable of - Trace8. That tells you... Not a whole lot more... Apparently, the webserver was unable to find file specified? But... Its right there, you can see it!
So you go another step deeper and start tracing the process' system calls to see exactly where it calls stat/lstat on the file, and you see that it... Calls lstat and... It... Returns -1? What the hell#2!
So, you compile a custom binary that calls lstat on the first argument given and prints out everything it returns... And... It works fine!
Until now, I chose to omit one important detail that might have given away the issue to the more knowledgeable right away. Our webservers have the URL /.well-known/acme-challenge/, used for ACME challenges, aliased somewhere else on the filesystem - To /tmp/challenges.
See the issue already?
Some *bleep* over at the Debian Package Maintainer group decided that Apache could save very sensitive data into /tmp, so, it would be for the best if they changed something that worked for decades, and enabled a SystemD service unit option "PrivateTmp" for the webserver, by default.
What it does is that, anytime a process started with this option enabled writes to /tmp/*, the call gets hijacked or something, and actually makes the write to a private /tmp/something/tmp/ directory, where something... Appeared as a completely random name, with the "apache2.service" glued at the end.
That was also the only reason why I managed fix this issue - On the umpteenth time of checking the directory structure, I noticed a "systemd-private-foobarbas-apache2.service-cookie42" directory there... That contained nothing but a "tmp" directory with 777 as its permission, owned by the process' user and group.
Overriding that unit file option finally fixed the issue completely.
I have just one question - Why? Why change something that worked for decades? I understand that, in case you save something into /tmp, it may be read by 3rd parties or programs, but I am of the opinion that, if you did that, its only and only your fault if you wrote sensitive data into the temporary directory.
And as far as I am aware, by default, Apache does not actually write anything even remotely sensitive into /tmp, so...
Why. WHY!
I wasted 4 hours of my life debugging this! Only to find out its just another SystemD-enabled "feature" now!
And as much as I love kidding on SystemD, this time, I see it more as a fault of the package maintainers, because... I found no default apache2/httpd service file in the apache repo mirror... So...8 -
I learnt something from every single project I made, but this one... it was really different, new language, new library, new hardware.
Problem:
there's an infopoint in a place, that was really hard to use (ball mouse over a monitor)
Solution:
make the screen be touch.
Developing the solution:
- after a bit of research I find out there's a library/project called OpenCV
- there are example programs that detect hands written in C++ (which I know) and Python (which I don't know)
- the whole infopoint works on a raspberry PI, with raspbian (I'm not new to linux, but it's somehow different, plus tons of customization)
So I spend like 3 weeks trying to understand how to make it work, at first, the webcam was on the TV and you could move the mouse just by shaking your hand, but it didn't work too well, so we tried making the webcam look at the screen and then calculate the differences between "no-hands" and "user-hand", but should have been calibrated, wasn't too precise... dropped solution.
put the webcam 30cm above the screen, let it just analyse a few centimeters of sight from the screen and it worked flawlessly, BUT it could just recognise the horizontal axis => had to rework the infopoint UI to make it dumb-easy
It all finally worked, I learnt python, openCV, a bit of photography
Then hated it all and decided to never do that again -
TL;DR Dear boss, firstly, you always get someone to review anything important done by a fucking intern.
Secondly, you do not give access to your fucking client's production server to an intern.
Thirdly, you don't ask your fucking intern to test the intern's work that has not been reviewed by anyone directly on your client's fucking production server.
Last week, the boss and one of the lead devs (the only guy with some serious knowledge about systems and networking) decided to give me (an intern who barely has any work experience) the task of fixing or finding an alternate solution to allowing their support team access to their client machines. Currently they used a reverse SSH tunnel and an intermediary VH but for some reason, that was very unreliable in terms of availability. I suggested using OpenVPN and explained how it would work. Seemed to be a far better idea and they accepted. After several days of working through documentations and guides and everything, I figured out how OpenVPN works and managed to deploy a TEST server and successfully test remote access using two VMs. On seeing my tests, the boss told me that he wanted to test it on the client network. I agreed. Today he comes to me and he tells me to prepare testing for tomorrow and that the client technician is going to give me access to one of their boxes. And then he adds, "It's a working prod server. We'll see if we can make it work on that" and left. I gaped at him for a while and asked another dev guy in the room if what I heard was right. He confirmed. Turns out, the lead dev and the boss's son (who also works here) had had a huge argument since morning on the same issue and finally the dev guy had washed it off his hands and declared that if anything goes wrong from testing it on production, it's entirely the boss's own fault. That's when the boss stepped in and approached me. I ran back to his office and began to explain why prod servers don't top the list of things you can fuck around with. But he simply silenced me saying, "What can go wrong?" and added, "You shouldn't stay still. You should keep moving". Okay, like firstly what the fuck and secondly, what the fuck?.
Even though OpenVPN client is not the scariest thing to install, tomorrow's going to be fun.4 -
VR/AR research.
I used to work as a photographer then got more interested in image processing and that got me into programming.
I somehow just ended up in my current position which is pretty much my dream job. I don't know if I could work as a "normal" programmer. Research projects tend to be extremely hectic and the goal is not to produce a perfect piece of software but to make prototypes to prove a certain concept might work. It is not possible to focus only on single technology and sometimes the technology is not mature at all.
All this means that sometimes this prototype might be a spaghetti code nightmare which works as long as you don't touch anything. But when you get follow up projects you are able to refine the concept and eventually have quite tidy code base.
Currently I'm making projects with Hololens and luckily I have had time to clean up some components from previous projects. It feels quite nice to have working technology and lots of ready made building blocks. I can finally make stable prototypes quite rapidly.
I'll enjoy this situation until some new crappy world changing technology comes along...3 -
Well shit.
Recently refactored some backend code that makes some https requests.
I realized I was repeating myself a lot with the request options so I decided to make a function to generate the options with defaults.
Works great, shortened my requests to almost nothing.
The problem is it wasn't working great.
It took me about an hour to finally figure out that the requests were failing because I forgot to return the options object after I created it.
Sending the request with null options just makes it act as if the options are there, but incorrect, so I was totally lost.
FML1 -
I just have to rant...
7 months ago, I was still a pretty new iOS developer, but finally coming into my own. My boss gave me my first feature ever... a fully custom backend tweaker for our development builds, complete with text fields that devs and testers alike could fill in themselves for whatever they needed to test. I worked harder on that than I’ve ever worked on anything... and I got to make all the decisions on how it looked, behaved, what exactly the user saw/read... everything.
A month ago the most senior dev on my team was asked to update the tool to prepare for a backend migration to a new server. He was then hired to work for Apple, hurried to finish this task, and left forever. (He deserves it, we probably were slowing him down realistically. But that doesn’t forgive the following...)
Unfortunately, he thought it’d be a good idea to remove my entire custom backend tool in the process. Not sure why— maybe he thought it was legacy code or something. He must not have tested either, because the entire backend selector stopped working after that. But that was no problem— I could fix the pre-filled environment buttons just by updating a few values.
It’s the fact that he removed 100+ lines of my custom code from 3 separate classes (including entirely removing one of those classes), for no known reason, and now I have to completely rebuild the feature. Since it was entirely custom, it required no change for our migration in the first place. But he rewrote how the entire view works by writing an entirely new VC, so there is no chance I can just restore my work as it was written.
And in the shared class, he erased every line with the word “custom.” So, so many lines of hard work, now irrelevant and only visible in old defunct versions. And my boss has asked me to “just make it look how it did before the migration.”
I know it’s useless to be angry at a guy who’s long gone, but damn. I am having a real hard time convincing myself to redo all this work. He removed every trace, and all I can think is WHY DID YOU DO THAT YOU FUCKING MONSTER? IT WAS MY GREATEST WORK, AND NOBODY ASKED YOU TO DESTROY IT. THIS WAS NOT EVEN RELATED TO THE TASK YOU WERE GIVEN, AND NOW A SIMPLE TICKET TO RESTRUCTURE A TOOL HAS BECOME A MANDATE TO REBUILD IT FROM SCRATCH.
Thank you for being here, devRant. I would’ve gotten myself into deep trouble long ago if I didn’t have this safe place to blow off steam 🙏4 -
I am a mechanical engineer first and my companies go to sysadmin second. So software developing isnt really my main field of expertise buuttt:
WHY IS SLOOPY SOFTWARE WRITING A VIABLE EXCUSE?
Story:
Yesterday i started to migrate some stuff from our old Win 2008 Server to the new 2016. Turns out there are some MS SQL Express Servers running. Quick check for what they are turns out that they are activly used. So far so good. For other reasons we have a new MSSQL 2017 Core Licence. So i thought, hey it would be nice to just move those 2012, 2008 and 2014 Express Servers to a real one that can use the entire machines capabilities.
After some try & error with exporting one of the softwares (where i had to elevate one the user rights to sysadmin for reasons) the entire system stopped working. I didnt deleted anything or changed anything! Well, i elevated user rights. After 2 hours of support call it turns out that the software stopped working cause i gave the database user sysadmin rights. I dont know enough about MSSQL to judge wether that is logical or not, but it sounds super illogical and i suspect sloopy software writing on the manufacturers part. One way or another, the excuse from the telephone support was "yeah, our software is a very fragile child"
Okay.
After i told all that my coworkers two of them were also "yeah, that is just how the [company] software is, you have to be careful with it"
Apparently it broke in the past for other minor stuff.
As an engineer i cannot build bridges that collapse when you use the left and the right lane at the same time. For an architect it isnt okay to build an house where the front door explodes when you open a window. It is not okay for a power tool to go out in a fireball when you accidently drill plastic with it. But for some weird reasons its socially acceptable for programs to be sloopy, buggy and only working under specific conditions. Since when is it okay for a car only to work when you know specific steps to make it run? Like, throwing your spare key in the gas tank, the kick the left wheel exactly three times and finally tapping the steering wheel 5 times left, 4 times right. What? That would be ridiculous? But that is exactly how that software works. You have to follow a specific step guide to make it work, EVERY TIME.
I. JUST. DONT. GET. IT3 -
I am learning java at school and my teacher asked me to make a work on JTA (java transaction API). There's not a lot of tutos on it on the web so I say to myself "go on, give it a try, you'll only learn by trying."
I finally find how to make the @TransactionType, where to put the @Stateless, my test works, nice. Finally I want to try a case where it shouldn't work, just to be sure the rollback works well. The test goes and... NullPointerException. Wtf ! Normally, my catch is supposed to, well, catch the error !
And finally, I was just stupid. My catch worked great. But I put a "throw e" inside.
Now I wanna hides under blankets, cry, eat cake and never see my coworkers again.2 -
spent 3 weeks with not more than 20 hours sleep per week on programming a mobile Chat Application. after finally 1 more week of bug fixing and testing and redesigning UI, App works like a charm! Most beautiful thing I ever created, my close friends are all astonished.
Happily I uploaded it on Playstore, 2 weeks later -> no downloads :(12 -
When you get so excited that your program finally works you accidentally close I t and it doesn't save :(1
-
Story Time!
Tittle: About Larry.
Fun Game: Tell me if / when in this story you know the plot twist.
Setting: Years ago, non coding job.
I work with Larry a lot, Larry works remote. In technical terms Larry is senior to me and I escalate some technical issues that get assigned to Larry. I've never met Larry in person.
Larry can be hard to work with, but he's plenty good at his job and I don't mind his prickly side. Sometimes it takes telling Larry something a few times before it sinks it, but that's not a big deal. Sometimes it seems like Larry doesn't remember his cases entirely, but he has a lot of cases. Also Larry has good reason for how he works considering the land of scubs who usually escalate to him without any thought / effort.
Larry's escalation team is short staffed and they're trying to hire folks, but that's been like that forever.
So one day I get an email that Larry is going to be out of the office for a few weeks. Nothing unusual there.
My current case that I share with Larry sort of floats in limbo for a while. The customer is kinda slow to respond anyhow and there's nothing that I need Larry for.
Finally I get automated notice that my case has had a new escalation engineer. Laura. Laura is much more positive and happy compared to Larry. Understandably Laura isn't up to date on the case so we go back and forth with some emails and notes in the case.
The case is moving along just fine, we're making progress, but it's slow because of the customer's testing procedures. Then we hit a point where this customer's management pushes on sales for a solution (this customer's management is known for doing this rando like for no reason).
Down the management chain it goes and everyone wants a big conference call to get everyone up to date / discuss next steps (no big deal).
Now I really don't want to do this with Laura and throw her into the deep end with this customer, she doesn't have the background and I'd rather do this call with Larry & Me & Laura. Also according to the original email Larry is due back soon.
I start writing an email to Laura about "Let's try to schedule this for when Larry gets back."
Then I stop ... I don't really know why I stop but when it is a "political case" I want some buy in on next steps from management so I go talk to my manager.
-Plot Twist Incoming-
Long story short, my manager says:
"Laura IS Larry..."
O
M
G
I had no idea. Nobody told me, nobody told ANYBODY, (except a couple managers).
Back up a few months Larry apparently went to his managers and told them he was going to transition, surgery and all, in a few months.
Managers wondering how to address this went to HR and some new hire very young to be a manager HR manager drone logiced out in her bonkers head that "Well it shouldn't matter so don't tell anyone."
ARE YOU FUCKING KIDDING ME!!??
Thank god I didn't send that email...
I did send an email to Laura explaining that I had no idea and hoped I didn't say anything stupid. She was very nice about it and said it was all good.
After that incident made the management rounds (management was already fuming about being told not to tell anyone) things came to another critical point.
Laura was going to visit the company HQ. Laura had been there before, as Larry, everyone knew her as Larry... nobody (outside some managers) knew Laura was Larry either. With nobody knowing shit Laura was going to walk in and meet everyone ...
One manager at HQ finally rebelled and held a meeting to tell his people. He didn't want Laura walking in and someone confused, thinking it was a joke or something horrible happening.
HR found out and went ballistic. They were on a rampage about this other manager, they wanted to interview me about how I found out. I told HR to schedule their meeting through my manager (I knew they didn't want my manager to know they were sniffing around).
Finally the VP in our department called up the HR head and asked WTF was going on / kind of idiots they had over there (word has it legal and the CEO were on the call too).
HR had a change in leadership and then a couple weeks later there were department wide meetings on how to handle such situations and etc.27 -
Finally, after a a few months...
A few months ago I started a personal git gui project for learning purposes. I wanted to learn C and Gtk on Linux. After a few days of coding I wanted to include the glade file in the binary, searched the internet and found old results with no success. Fast forward to today, I start yet another project without finishing my last one (this one is also c and gtk). I'm still having this problem with the damn glade file. So I keep looking for an answer and finds two solutions, none of them worked but when mixing them together it finally works.
Damn it feels good to succeed after trying/working hard on something you've struggled with. This is what keeps my motivation up. That amazing feeling of success... ☺️7 -
Install 18.04 they said. It will be fine they said...
Well.
Apperently it hates my intel graphics card. It was giving me artifacts already during installation. It didnt boot after installation and got stuck on a purple screen with the mouse on it.
Got past that with recovery mode. Googled the solution snd they said "move mouse while booting" yeah that doesn't help.
It also didn't recognize the other monitors connected to it and since it comes without unity now everything was not where I'm used to look for it.
3 hours of grub mangleing, driver installing and a unity installation later, it finally works.
Installed terminator and oh, look, one of the most used short cuts is overwritten by some emoji pick bs.
Ffs.
Longest ubuntu installtion ever and it almost fked up the 16.04 aswell which is in dual boot atm.
And before someone says use Arch: ubuntu is a project requirement and Arch is not supported by the tools we need to use.12 -
You want to change the wifi network to which is your embedded device connected?
It's easy:
- The native process is broken
- ESP is in the correct state, but refuse to communicate with anything
- Restore to default doesn't work
- Flashing default firmware doesn't help
- download the whole NodeJS/NPM
- compile two perl binaries
- bump into 2 year old bug, that your Intel wifi won't connect to the ESP SoftAP
- reinstall the Intel driver, just to find out it's still not fixed
- connect the external Atheros wifi adapter
- connect that shit back to the cloud
And just after little under 4 days of fiddling with GPIO pins it finally works and communicates.2 -
I've finally got a monitor at work that works with Samsung Dex.
Positive things:
- new super cool monitor
- can remove windows now from the dual boot of the laptop since everything I needed it for can be now done on Dex.
Negative things:
- DevRant doesn't work with Dex. It just doesn't load properly. But maybe it will work through a browser. Need to test...3 -
I'm very short tempered at the moment.
A lot like Dr Cox in Scrubs.
And really ... You mother fucking stupid idiotic developers with your tendency to discuss absolutely everything just to not have to work for a dozen more minutes...
But ok. Let's discuss.
But even that seems to be absolutely impossible for you little shitheads.
Instead of discussing solutions, nooooooooo....
We're grown up developers so we discuss how the baddy manager hurt our lil feelings by saying that we're morons for wasting all the fucking time without coming up with a solution.
Now my lil cry babies, once the baddy manager got your pacifiers so at least once in an hour my migraine finally calms down for not hearing your bitching pathetic lil whiny noises...
Face it. Over the years you collected a huge ton of mother fucking tech debt because no one of you actually took a bit of time to use that empty space in your head to think at least a mu further than the dumb jira task you were given.
And yes. That ends badly.
And yes. As it is now in a state of cluster fuck, guess what. You have to work. You get money for it, remember?
And yes. if you would stop moping and bitching and crying and being a pathetic lil piece of shit, you'd realize we could come up with solutions very fast.
But nooo... Let's talk about our feelings.
And how we are over worked.
And how nothing works.
Cause yes. That will be the hail mary that saves us all.
Let me give u a hint: it's a mother fucking waste of time bitches.
I think it's time I put a pacifier not only in your mouth, but arse too. Maybe it helps overcoming the anal and oral phase of childhood so we can at least have something close to adult talk.
*breathes in*
Gooozfraba.3 -
So for the past few days I decided to create my own personal blog because I wanted to start blogging again. Anyways, I setup a basic WP website (sorry wp haters xD) and installed a pretty cool free theme that I tweaked all over the place.
I was thinking of cool things to add while I'm just in that setting up phase and I really admired that whole dark/light mode toggling feature :) so I spent the past day or so creating my own and it works finally, even across different pages! So i thought I'd share. (Please excuse the BS posts, its strictly for testing. Havent actually started writing posts yet xD)
Url: https://notyourcode.com
Heres also a link to this terrible js file I wrote that controls the logic lol (I'll have to refactor quite a bit but it works)
JS: https://notyourcode.com/wpd/...
Any feedback is appreciated as I'm still just developing it :)14 -
Dear devRant,
when my ++'s finally reach 2^32-1, or let it be 2^64-1, the next inc. will better make it -2^32 or -2^64 because tHAT IS HOW IT WORKS AND THAT IS WHAT I WOULD EXPECT4 -
Why are these SAMPLES NOT WORKING!?
It's supposed to just be reading and writing OAuth2 tokens from session.
I'm THIS CLOSE |__| to getting things working and I had to leave work. The fucking worst.
On the bright side, I think I finally understand how OAuth2 works. I need to write an article that actually explains it properly because I've had to read dozens to get a good grasp on it.2 -
It's so frustrating to see how PHP images for Docker are nicely set up, well documented, come with Apache or Nginx, almost ask you to let them pay your bills, while you get almost nothing from Ruby, and when you think you finally made something that works, it behaves like a fucking drunk irish3
-
Well, being the only one in the house who can really solve computer problems:
We have a home nas in our network for filestorage and since a few weeks, we couldn't acces the device through windows explorer, so today I went on a exploration... First I tried the nas in a seperate different network, and it worked immediatly! oke great, try it in our main network again. And 'ofcours' it's not visible. So I go to the router webpage, and the page of our router just really sucks! So it was quite hard to find out if the NAS was attached or not, ad if so, under which IP. Finally found that, tried to connect to the webpage of the NAS, but got a timeout, ping would timeout too! I thought that that might have someting to do with that the NAS would connect via static IP. So I changed that to a dynamic IP, and I could atleast get to the website. After that I could try all the services and all of them worked perfectly, except for samba... And samba is the only service we actually use, so after that I thought that the device not showing up in network view in explorer had something to do with that the nas wouldn't show me a hostname in the router. So I tried to fix that, after an hour of trying to get the hostname to showup in the router, I just thought that I might try to connect to the nas via the IP. So I found via SO that I could just use //192.168.0.104 and I got into the samba server. So I guess that it was actually working all along 😒. After that I didn't want to bother to work with the hostnames, so I just gave the NAS a fixed IP, made a few shortcuts for my housemates and now it all works again.. For now at least...3 -
Well, I really have nothing to rant about these days 😅
What I do have is a request for feedback on a project’s video, m working on the project and will release it open source once it works decently well, and most of all, when the code doesn’t look so atrociously bad 😅😅
It is basically a C/C++ package and project manager.
It can create, build, and run projects which u make, and add library flags and include directories automatically if that library exists in its package list.
It also contains package (=library) manager which can, as of now, install, uninstall, and fetch info of any package should it exist in the package list.
I will be adding package upgrading in the future, although package list updates can be performed.
Also, right now it can only build binary projects. I’ll soon be working to enable creation of library ( static/dynamic ) projects as well.
Finally, it allows for building of packages using CMake or configure, but uses a custom format to build projects.
Here is a video of building a project and installing libcurl on system:
https://asciinema.org/a/155030
Thanks a lot ☺️😊1 -
I think the sleep deprived me is finally cracking under the weight of incompetent assholes.
We just launched a major project in some weird cocktail of Agile slapped with MVP and release to the wild in a waterfall, but it was premature, premature in the sense QA hasn't even finished their side of things, but because some fuck with with "manager" in their title decided they have burnt through the budget with incompetence and scrapped an entire element of the project and outsourced just so they could make a shittier version that doesn't even fucking work.
How hard do you want to fail before you will start listening to the people that now have to work around the fucking clock to clean up this horse shit of a mess.
I'm literally arguing over field mapping with multiple 3rd parties, when the fucking requirements state WTF this is suppose to look like. All because they didn't validate or test their own shit.
Why is EVERY FUCKING cock head in this industry a waste of space and cash! Is it really to much to ask for 1 fucking project to fucking go live that actually fucking works where I don't need to work 2 weeks straight (including weekends) after going live just to be sure that what shit does hit the fan isn't going to create a SEV 1 issue...
Sorry, I'm pissed at the incompetence of others I need to deal with on a daily basis. It's not like this field is insanely hard. A little attention to detail and self validation, verification goes a long way. But clearly that's a rarity.
Once this shit is stable and actually works, I'll be pulling out the mop to clean up half this shit just so it actually works.
Oof, I'm getting to old for this bullshit.4 -
I’m currently working on the profile view in JoyRant, which turns out to be much more work than I thought.
Anyway, after many iterations on the appearance, I’m now finally satisfied about how it looks and works. Especially the category picker (Rants, ++’s, Comments, Favorites).
What do you think? Do you like it?4 -
Sort of follow up to: https://devrant.com/rants/1351833/...
Now I can turn on/off my PC over the Internet. A little hacky but it works like a charm.
I'm using an Arduino IDE compatible ESP-12E with on board WiFi and a homemade optocoupler (LED + photoresistor).
Hopefully more projects like these are coming 🤗4 -
New in my job
Start to work on a abandoned project for one of our client not very happy cause the lack of update
Go for a critical issue which exists since 2 months where everyone was telling me that they passed a huge time working on it with no answer
*check error*
*check code*
The code is so fucking much not DRY so I was able to see the same 4-5 incriminated lines elsewhere
*see that the request is lacking of one parameters just has the error suggests*
*copy paste the missing line*
*it works*
I’m now a hero for them but they become fucking peasants for me
(In addition, when code reviewing, some one had the nerve to tell me that “haha it was nothing much finally, it was easy”
To him : fuck you, eat my 💩) -
Alright sit down boys this is gonna be a good tale (also a long one).
I'm currently developing a wordpress site for a Client. Everythings works well enough, I had a few "wtf is this shit" moments. Now we decided to give him access to the wp site so that he can see and change (I know, I know don't judge me pls), so I set up tunneling with ngrok, but that PIECE OF SHIT WP DIDN'T WORK ANYMORE. You asking why? Oh I'm telling you why, wp uses ONLY absolute paths. Well fuck, I ain't gonna touch that piece of shit php code, so I installed a plugin and shit was working.
In short, after a few fucking HOURS that shit finally worked. Well that would be a great fucking end for our little tale right? Yeeeeaaah no, I shit you not, it gets even better!
After a few days my client gets back at me that he can't enter fucking wp-admin to work on the text an stuff (again pls don't judge me for granting him access to the backend of wp during development). So I checked it out and that piece of shit didn't work. If anyone would happen to know why, I would be grateful bc for the love of spagetti monster I HAVE NO FUCKING CLUE!
So I said to myself well fuck this shit and put it on a webhoster. Uploaded all the files, and migrated the db. Sounds like it finally worked right? Well guess again buddy. So I needed to go to the database, updated values manually for wp to have the correct url and then still needed to force it to refresh every fucking link.
As it finally works now, this tale is also finished then and I really hope that part 2 is never ever comming!
Sorry for the (somewhat) long rant but this is some next generation bullshit. -
My mouses right button kept double clicking. This makes it really hard to play minecraft. It was a cheap logitech mouse from a wireless keyboard/mouse combo. So I went to the store to find a new one. Almost all the wireless mice were gone. Apparently WFH people hit walmart. I didn't want another single wireless mouse. This would mean I need the adapter for the keyboard (for keyboard mouse combo) and the new mouse plugged in. My computer is a laptop so there are not a lot of those slots. So I looked for a bluetooth mouse. Only one there and it was a sucky Razer. I have not liked Razer since they required people to register their software with an account before using their drivers. This really made me avoid this brand like the plague. So I finally settled on a wired gaming mouse. It has a nice long 6ft cord so it works with my setup. It is a G502 Hero. It works really nicely without drivers. I will be testing with drivers tonight. I usually buy el cheapo mice so this is new to me. So far so good.16
-
Today I finally experienced the power of something I learned in university: propositional and predicate logic.
Many developers I know think that such education is useless. Well, today I have proven that it is very useful. On a day to day basis, working on banking software, complexity in purely logic is very low. However, we have a screen that must show or hide elements based on some input values and conditions associated with certain elements. How hard can that be, right? Well, there are many variables to take into account and as such it's absolutely not trivial.
This screen didn't work properly and maintaining the code is hard as there is a lot of logic to show/hide, enable/disable things and so on. After quite some time and attempts by fellow developers, I decided to refactor the whole thing. I'm responsible for the quality of the software and it was quite degrading, so I had to do something.
In order to get things working properly, I defined collections of constants (ui elements) and predicates. Then, I defined for which element what predicates must be true, in order to hide/show, disable/enable etc. I then translated these predicates into code. And guess what? It works! Of course it works. It's logic. But I'm very pleased I finally could actually use some of all the math I studied!5 -
🎼Up and down
🎶 And all the way around
🎶 Crossentropy is a bitch
🎶 Epoch and loss are still the same
🎵
Edit: I left this rant open for half an hour. Finally figured that I should do one hot encoding and labeling doesn't exactly work out the way I was hoping it works out.
But hey, half an hour ago I was angry and desperate. So... ¯\_(ツ)_/¯14 -
Short angry rant
What the fuck is wrong with the SalesForce Authenticator logic?! How in the hell do you fuck up a simple 2FA system this hard?!!
Login -> Waiting for Notification... nothing... -> Reload Page -> Login -> Waiting for Notification... nothing -> Click "Use Code instead"... nothing happens... -> Reload Page -> "Login -> don't even wait for notification and just pres "Use Code instead"... nothing -> Reload Page -> Notice there's a "Use Code" button on this page as well -> Finally be able to log into the fucking Aloha piece of shit...
How TF is it, that Duo is able to send me a push notification within 1 second and it ALWAYS works... and THIS FUCKING SHIT NEVER FUCKING WORKS THE FIRST TIME AND AT WORST JUST DOESN'T WORK AT ALL!!!!!
Fucking hell.... Don't offer me a push notification service if you don't know how to make one... jesus fucking christ... All of Salesforce security is fucking stupid, but at least the others mostly work, but this retarded piece of crap is making me actively surprised when it works on first try... Maybe it's because I'm on a slow connection, but again Duo Mobile doesn't have this problem and works *instantly*... so what sort of retarded monkey coded the SF one I don't know, but I hope they are making better products now, because this is a disgrace to programming and security6 -
*revving chainsaw noises*
Today I started nuking leftover project code.
At the end, some projects shrunk by roughly up to 40 % .
Can anyone explain to me why programmers have such an awful hoarding syndrome?
Why do you keep shit that might unleash complete havoc cause it hasn't been touched since years and noone knows id it still works?
It's like having a leg with gangrene and keeping it cause "it doesn't look that bad".
For fucks sake. Clean up and remove shit when it's not necessary anymore.
Reason why I did a bloody gore massacre in nearly a dozen projects... After all the rework of networking, it's finally evident which projects have a bad / nasty behaviour of "fucked up" connection handling (HTTP 1.1).
And when my gory massacre removal goes life, I think 25-35 % of persistent connections on the loadbalancers will vanish. Maybe even more, since some very nasty stuff was in some projects.
Like "let's implement monitoring without having any clue about how monitoring works and even less clues about how TCP/ HTTP works."
*Bangs devs heads on table*
Stop. Doing. Stupid. Things.
For fucks sake.
:@ :@12 -
After debugging this shit Java program for 2 days fucking straight, finally this shit works! Hallelujah!
Turns out, if you want to enable local DCOM/COM+ on windows, you have to not tell the piece of shit firewall that it should consider the network "public"...
WHY?!?
IT'S FUCKING LOCAL! NOT A SINGLE FUCKING NETWORK PACKET IS SEND! WHY?!?4 -
I dug up my old ledger web app that I wrote when I was in my late twenties, as I realized with a tight budget toward the end of this year, I need to get a good view of future balances. The data was encrypted in gpg text files, but the site itself was unencrypted, with simple httpasswd auth. I dove into the code this week, and fixed a lot of crap that was all terrible practice, but all I knew when I wrote it in the mid-2000s. I grabbed a letsencrypt cert, and implemented cookies and session handling. I moved from the code opening and parsing a large gpg file to storing and retrieving all the data in a Redis backend, for a massive performance gain. Finally, I switched the UI from white to dark. It looks and works great, and most importantly, I have that future view that I needed.1
-
OMG. This weekend, there is Rainbow Six Siege free to play on Steam. I have a desktop PC, but I can't get it to work. Tried Ubi support, but they give shit. So...I was hoping, I could finally try this crap game on my laptop. And here we go...
Normally, I use Linux. Only Linux, because Windows 10 on my laptop is extremely fucking painful. I knew it's going to be torture to install that game on it, but whatever.
OK, firstly, I was surprised, that Windows booted in just about 1 minute. I was like wtf just happened. Everything seemed to be fine and working. I downloaded uPlay, installed it and tried to install the game. Just to be clear, this rant is written from Linux again. And why?
Because FUCKING WINBLOWS desides to FUCKING UPDATE WIFI DRIVERS. 1 minute - internet works, second fucking minute - WIFI IS FUCKING DOWN. Thanks fucking pussy Gates. I really like you. And use this crap daily. Holy shit I would die...2 -
!dev
Sorry if this is a bad read, pretty new to devRant and writing in general.
I can't help but think and think of how much I fucked up my opportunities to completely change my life/financial status a couple of times. Damn.
A few years back (it was 2009, I think) I was playing Diablo II online, helped some random guy get through the hard levels. Normally, in such situation the lower lvl player allowed the higher level guy to grab the valuable boss loot; however this time the guy except sharing the loot with me asked me if I want his spare 2000 bitcoin. I asked if it's of any value, he said "not really".
I said I'd contact him later, when I figure out how this thing works and how to setup a wallet.
Guess what, I was too lazy and forgot about this thing completely. Then we lost contact.
In 2010, I made a comeback to bitcoin, but instead of buying it, I downloaded the bitcoin client, the blockchain (it was 800 mb in size, I remember) and have been contributing by running it on my PC for like a year.
Finally decided to get it ~3 years ago. Bought 2.5 BTC for 400$.
Was holding it, until I fell for the "free OmniseGO" scam and somebody stole them off me.
All of these can't get out of my head.
I visit coinmarketcap literally every hour to see how much I could have now. My girlfriend, friends, family, all fail to cheer me up. I still made a pretty good deal buying 5.5 ETH for 45$ and thats like 2500$ soon, its nice but this much I can make by coding
Shit, what do I do to stop being stressed except for seeing a psychologist.
May my failure make you smile today4 -
Sooooo... I've felt a bit lost during my years as a student and maybe this is a nice place to finally talk about it.
I've had my first programming experiences in school (back then it was delphi, a Pascal variant), then decided after graduating I want to study computer science. I've stuck with it and will finish my masters degree in a few months. (Took me a year longer than the university plans but will likely have a very good grade)
Since i have little programming experience and never coded anything useful (mostly study projects or simple programming tasks) I've always been struggling with depressions, worries of being not good enough and never finding a job etc pp, but in the last few months it got worse since I NEED to apply for jobs now as i graduate next may. I'd really like to improve and found some "learn how to code" websites but the progress seems still slow and meaningless when I compare myself to all those guys out there:
- those comparing several hardware/software pieces casually since they know all the (dis)advantages and specs off by heart
- those who have fierce discussions about languages, libraries, runtimes etc
- those who solve the problems in coding websites with 3 lines and incredibly mathematicsl proofs for why this shortcut works (fastest)
- basically the guys who discuss so many things i've never even heard of
I just feel so lost, useless and like i missed years of learning things everybody else just obviously knows now. Is there any way to catch up? I thought about trying to join a local Chaos Computer Club but they sound like they wouldn't be fond of a noob like me.6 -
I am feeling so powerful right now I can not describe it.
I found out how I can get the methods and params outta LINE.
Now that I finally understand Apache Thrift and how it works with the LINE servers, I can make a thrift file, generate communication files for the LINE servers and use them for any programming language I want. Means that I can switch to a faster language than Python. Finally :)3 -
I recently started learning Erlang. This is the story of how I got trapped into it.
When I code, I usually use my trusty text editor and a terminal to either compile my code or run tests in the language interpreter. The interpreter, erl, works fine, but when I wanted to close it, I ran into a small issue.
Because I never know what the command is to close an interpreter, I usually use the EOF character (^D), that is widely recognized. Except erl does not react to it, not even a tiny message saying it won't close or doesn't recognize the output.
Alright then, let's try quit. That's an atom, it does not behave how I want.
quit() is an undefined shell command, exit() terminates the shell process but the interpreter automatically starts a new one...
But I get the welcome message, telling me to abort with ^G! Some progress, finally... except ^G redirects from Erlang interpreter to user switch command. Damn, another interpreter...
I ended up killing the process from an other terminal.4 -
I've been here for almost a year now but was too lazy to sign up. It was only a commute or lunch timepass thing.
But finally few days ago something so frustrating happened that I actually signed up. I dint post it as it would have been immature but now that the plus icon works I finally can post stuff..!1 -
You know shit is going to hit the fan if the sentence "c++ is the same as java" is said because fuck all the underlying parts of software. It's all the fucking same. Oh and to write a newline in bash we don't use \n or so, we just put an empty echo in there. And fuck this #!/bin/bash line, I'm a teacher. I don't need to know how shit works to teach shit. Let's teach 'em you need stdio for printf even tho it compiles fine without on linux (wtf moment number one, asking em leaves you with "dunno..") and as someone who knows c you look at your terminal questioning everything you ever learned in your whole life. And then we let you look into the binaries with ldd and all the good stuff but we won't explain you why you can see a size difference in the compiled files even tho you included stdio in the second one, and all symbol tables show the exact same thing but dude chill, we don't know what's going on either.
Oh and btw don't use different directory names as we do in our examples. You won't find your own path, there is no tab key you can press to auto-fill shit.
But thats not everything. How about we fill a whole semester with "this is how to printf" but make you write a whole game with unity and c#. (not thaught even the slightest bit until then btw)
Now that you half-assed everything because we put you in a group full of fucks who don't even know what a compiler is but want to tell you you don't know shit and show you their non-working unfinished algorithms in some not-even-syntax-correct java...
...how about we finally go on with Algebra II: complex numbers, how they are going to fuck up your life, how we can do roots of negative numbers all of the sudden and let you do some probability shit no one ever fucking needs. BUT WHY DON'T YOU KNOW EVERYTHING ALREADY HMMMMM, IT'S YOUR SECOND LESSON, YOU WENT TO SCHOOL PLS BE A MATH PRO ASAP CUS YOU NEED IT SO MUCH BUT YOU DON'T NEED TO KNOW PROPER SYNTAX, HOW MEMORY MANAGEMENT WORKS, WHAT A REFERENCE IS AND PLS FINALLY FORGET THE WORD "ALLOCATION" IT DOESN'T PLAY A SINGLE ROLE YOU ARE STUDYING SOFTWARE DEVELOPMENT WHY ARE YOU SO BAD AT ECONOMICS IT MAKES NO SENSE I MEAN YOU HAD A WHOLE SEMESTER OF HOW TO GREET SOMEONE IN ENGLISH, MATHS > ECONOMICS > ENGLISH > FUCKING SHIT > CODING SKILL THATS HOW THE PRIORITIES WORK FOR US WHY DON'T YOU GET IT IT MAKES SO MUCH SENSE BRAH4 -
Finally upgraded my webserver and php modules to support HTTP/2 ^^ Everything works fine.
Found out devrant.com doesn't support it though. @dfox8 -
Finally managed to get my CNN working with proper tensorboard logging. Think I'm starting to understand how it works.
But it got overfitted...4 -
Not really coding, but debugging complex problems. I love it when I have to dive in head-first and dig (very) deep to find answers to super-complex problems. I once went into the internals of a programming language to understand why a library was acting up in a particular scenario. Another time I had to optimize and re-compile from source (after modifying it) so that the application would not leak its memory. (Of course, I contributed it back to the language).
The inner satisfaction that you get after all that hard-work when it finally works, pays off! Bliss!1 -
We got new workstations today and the following happened:
Me: We got your new workstation but your screen doesn't have the right input to use it, so we'll exchange it too.
Her: No! I love that monitor!
Me: Well you won't be able to use the computer if you don't wanna change it.
Her: There has to be a different way!
Me: Okay I'm going to get some adapters and we'll try again.
After literally 30 minutes of searching I finally made it work.
VGA->DVI->HDMI->DisplayPort
That just felt so wrong.
Me: So it works now
Her: Thanks but why does it look so bad?
Me: It's because of the old monitor.
Her: Oh... *10 seconds silence* Then I'll get a new one.2 -
Is it OK to punch a game dev who codes stupid numeric bugs?
So my wife got into Stardew Valley, that admittedly awesome comfort game farming simulator.
She went pretty far in the game, and found some item that was supposed to highly increase the damage she could inflict onto cute little monster thingies.
It didn't work as intended.
Since equipping the piece of shit all her hits did 0 damage. She tossed the item away but the problem persisted. And on and on...
She took to the googles to try and find some explanation, and apparently that is a fairly common bug for mobile devs.
Then she called in the big guns (that is how I'm calling myself in this case, you will see why).
Apparently there is some buggy piece of shitcode somewhere in the game with a numerical insecure routine that overflows the attack modifier. I.e. if it was supposed to increase from 1.990 to 2.010, it actually went all the way down to -0.4.
She was lucky her attacks weren't increasing the monsters' HP.
We found a forum post where some dude said that he managed to edit the game save file and reset the negative-value attack increase modifier variable. Seems easy enough at first, but my wife uses iOS. Nothing is ever so straightforward with apple stuff.
We did get to the save file, she emailed it to me (the file has no extension and no line breaks in it, so we facepalm'd on a couple attempts at editing it directly).
I finally manage to get it into my personal 11-yo laptop... that won't open a single line file that big.
Cue the python terminal. Easy enough to read the file into a string var and search for the buggy XML tag. Edit the value and overwrite into a new file. Send it back to her by email. Figure out how to overwrite the file in iOS.
Some tense moments while the game reloads... and it works!!!! Got some serious hubby goodwill points here.
Srsly, this troubleshoot process is not for technophobes. It is out of reach to pretty much every non-techy user.
And now back to the original question: If I ever manage to find the kid who coded a game-breaking numerically unsafe routine and shipped it as if every test in the planet had waved it bye-bye, can I punch them? Or maybe buy them a beer, let's see how I get to cash that hubby goodwill tonight :)7 -
That awesome feeling you get when your linux project finally works .... and you dont know why but it works.
-
Linux certainly is the best. It works even on my slow 4gb laptop.
One of my family member's laptop running vista went dead today. Checked system, seems like only workaround is using repair disks with iso. Used this chance to finally convince her on moving to ubuntu.
Well, considering there wasn't even any comparison needed for Vista x Linux, she might just need to suit herself using libreoffice instead of winoffice. Just afraid she(not familiar with computers) might be bothered about the sudo here and there-thats something that takes time to get used to for non-programmers.
Well, changing someone's OS really is a great accomplishment. Kudos for myself.3 -
So I have a job at a client to fix their system because the last systemadmin fucked everything up. One of the things I need to do is let the boss work from home.
No problem. I set up a vpn connection to work and everything just works. Except that the home network had the same dhcp range so that had to change.
I login on the router and literally everything is fucking locked. I call them and they send me a new router same fucking problem. So we bought an asus router so I finally can fix it.
QUESS WHAT THE FUCKING GARBAGE DOESNT EVEN HAVE BRIDGE MODE. FUCK KPN AND THEIR MODEMS.1 -
Run dual boot Mac Catalina and Win 10. Got a bunch of Razer shit from wife for Bday... super stoked. Big mat, mouse, keyboard.
Works like a charm on Win.
Works for fuck all on Mac. The app to manage device is no longer supported.
Went waaay down the rabbit hole trying to sniff the packets that were being sent to the devices via USB to sync their colors and patterns.
Finally give up that route.
I have now built a VM for windows to run synergy... then a VM for Linux for Polychomatic because the keyboard is older and not supported by synergy.
And I found if I boot them both then quit them both the settings for the peripherals stay until the next reboot.
But JFC... I literally have to boot three operating systems to pull it off.
Talk about some gift of the magi shit... I was so happy with the gift and at this point it has wasted dozens of hours.
Fuck fucking Razer. Looks cool. Doesn’t work.8 -
Long time stalker, but I finally signed up! Maybe I have dragged it out to not get too addicted, but it seems like that plan has failed.. ;)
Now for the question:
Can anyone recommend a VPN provider (well, functionally proxy) that works in (South) China these days? Because of the holidays the CCP is blocking everything they can to ensure that.. well let's not get political.
Priorities: Reliability > Privacy > Cost (trial or guarantee would be great though)
Thanks :)7 -
This is PART 2/2 of a series of rants over the course of a software engineering course years ago.
We were four team members, two had never failed a class, I’ll refer to them as MT and FT, male and female top students, respectively, and an older student with some real world experience who I’ll refer to as SR.
Rant 6: After the previous drama MT built the groundwork for the project without allowing us to intervene for a week. When he finally disclosed his code he gave us tasks and I was stuck unable to run the new project, due to the friction with MT I asked SR for help which took a couple of days. MT accused us of not wanting to work and claimed he’d just do everything himself. I continued working on the task improving MT’s code and committed the work, which surprised MT and told me I didn’t have to do it. He ended up complimenting my code and complained less about me as a result.
Rant 7: MT kept giving SR flak for not working and took him out of the repo, which I promptly forked just in case he tried anything scummy. SR was indeed working on certain things, but he wasn’t listening to MT’s demands, there was no team coordination. I had to act as a proxy and push some of SR’s changes myself while informing him of the state of things.
Rant 8: When MT finally added SR back and some of the tasks were cleared up, FT didn’t cooperate. She seemed to have zero initiative and always relied on MT to tell her what to do, which didn’t include coordinating with SR to get the front-end templates running. I tried getting them in a group chat but it didn’t work, she just ignored him.
I learned a few things from that.
1. No matter how smart or experienced someone may seem, sometimes people are just petty or take things too personally.
2. Top students are sometimes too focused on their grades and disregard depth of knowledge and work quality.
3. A bad team at college can somehow make something acceptable if everyone works on things that add some kind of value.1 -
Finally made my node production server stable enough that I could focus on writing tests*. I start by setting up docker, mocking cognito, preparing the database and everything. Reading up on Node test suites and following a short tut to set up my first unit test. Didn't go smoothly, but it's local and there are no deadlines so who cares. 4 days later, first assert.equal(1+1, 2) passes and I'm happy.
I start writing all sorts of tests, installing everything required into "devDependancies," and getting the joy of having some tests pass on first try with all asserts set up, feels good!
I decide to make a small update to production, so I add a test, run and see it fail, implement the feature, re-run and, it passes!
I push the feature to develop, test it, and it works as intended. Merge that to master and subsequently to one of my ec2 production servers**, and lo and behold, production server is on a bootloop claiming it "Cannot find module `graphql`". But how? I didn't change any production dependencies, and my package lock json is committed so wth?
I google the issue, but can't find anything relevant. The only thing that I could guess was that some dependencies (including graphql) were referenced*** in both, prod and dev, and were omitted when installed on a prod NODE_ENV, but googling that specific issue yielded no results, and I would have thought npm would be clever enough to see that and would always install those dependencies (spoiler: it didn't for me).
With reduced production capacity (having one server down) I decided to npm uninstall all dev dependencies anyway and see what happens. Aaaaand it works.....
So now I have a working production server, but broken local tests, and I'm not sure why npm is behaving like this...
* Yes I see the irony.
** No staging because $$$, also this is a personal project.
*** I am not directly referencing the same thing twice, it's probably a subdependency somewhere.2 -
!rant
I think I may be ending my distro hopping here (for a while anyway). Linux Lite looks pretty good, seems stable, isn't bloated af, works good OOTB (finally, a distro other than Ubuntu in which WiFi works just fine), and is decently hackable. I've been using it on and off for a bit, finally replaced Manjaro with it.6 -
tldr; Finally my NordVPN subscription comes to an end so I was looking at other VPN providers and I chose Mullvad. So far, it is an amazing experience.
It has been 2 years since I was using NordVPN. It was great at first but soon first problems started to appear. Speeds were not exactly breathtaking and I barely sqeezed more than 40Mb out of it. Another problem was connecting from PC to PC on local network with both of them connected to VPN. I never found a working solution.
Then Tefincom started pushing it literally everywhere. Ads on YouTube (+ partnerships), fake websites redirecting to NordVPN, etc. That was when I decided to just fucking wait until my subscription ends so I can finally delete my account there...
Today is the day. I decided to go Mullvad because it seemed to be really privacy focused (don't kill me - I know I can't have *real* privacy with VPN, but you also can't have that with your own VPN) - they don't know anything about me, no email, no name, no payment data (Bitcoin Cash). Speeds are absolutely f*cking amazing and also local network works!11 -
I just started but I'm already tired.
For some years I have worked in the industry, not a lot, I know right but I really wonder how do you deal with all "not code-related" bullshit.
IT should be a dynamic field but somehow it is stuck inside the business logic which is all about the money and that does not take care of the real matter which is "code engineering".
- Most of the projects I have seen are an utter mess.
- No real structure
- Code is literally thrown somewhere to make stuff works and fix bugs
- Features which should require X amount of time are planned and shipped earlier ignoring best practices.
- The customer changes idea every week
- Nobody wants to pay for a reasonable architecture but prefer to keep financing un-maintainable projects that only God knows where they have been made (presumably in Hell)
- Juniors devs with no real senior following them committing unreasonable stuff
- Seniors devs thinking they are but they aren't.
- Company that keeps delivering projects even if they have not the required amount of people to make it in time.
Seems like nobody wants to stop and take time to think and make the right decisions. I see people running around me like crazy ants.
But, above all, what really kills me deep inside is HR. You are looking for "dynamic" "talented" "cool" devs but you are not willing to pay them enough.
Should I talk about LinkedIn?
Oh, God... Even the worsts companies sound like they are into Fortune 500. I feel so much hypocrisy here.
I have worked for big and small IT companies.
In the end, is all about "inside politics", everything which is getting financed is not because of usefulness but because of "relationship".
I started coding when I was really young.
After ten and more years, I finally take the job of my dreams but everything is shuttering under my feet.
If you have some words of wisdom, I'm here to hear you.
PS.
I'm not a native English speaker, I apologize for any mistake.6 -
FUCK YOU VODAFONE!
My internet broke down the weekend, 4 minutes after I left my house on Friday at 9.04am.
Issue resolved after work at 9pm, broke down half an hour later.
Total silence. Providers status page gave 500 response.
THE NEXT DAY: Woke up because Netflix was working at 8.26am again.
Great, I get up. Can't wait to do anything I want again! I can code, game, watch porn, possibilities are endless!
I get stuff to breakfast. Come back and guess what? NO INTERNET!
Got confirmation of existence of problems at noon. Something with streaming, possibly fixed by Monday.
Okay maybe streaming, but shouldn't the other stuff then work? I process.
Used up my mobile data. Tried again, now it works, but...
.. why.. so.. slow? It was worse than 3g. Time to get out lynx to Google.
It's Sunday. I woke up pissed, got myself a Coffee and tried to get some offline work done. I sipped, closed my eyes for a moment and opened chrome.
IT WORKED! omg, fuck yes! I almost cried I was that happy - can you believe it?
All fine an dandy Monday. So surely the streaming thing will also be gone now, cool.
Today's day is Tuesday. Guess why I am writing this.
Fuck these apprentice nigga cunts graaaaa!!! Or their infrastructure will finally break down.
How is it even possible to do any work on a very important node at a time where probably everyone wants to chill out with the web?7 -
Finally started to learn Node.js and actually set up a small server with node and express and ejs, it honestly works nice but requires so many small things that take a bit to set up, while an apache server running PHP and Mysql would take me 5 minutes max to set up, but either way still trying to make that transition.5
-
LXC, no doubt.
I mean to be fair, LXC is an amazing container runtime once you manage to set it up. But setting it up is the hard bit. Starting off with LXC 2.x, it was a nightmare to find out how to get things like the storage backends working. But with ZFS it ended up being alright. Find some arcane values to stick in the /etc/lxc/default.conf to use ZFS as the backend and then the default storage location on those ZFS pools (I'll get back to that later), and it worked alright. Again, once it works it's great, but setting it up and finding the right configuration keys is absolute hell.
So, LXC 2.x for a while and a few months ago I finally ended up upgrading to 3.x. Every single configuration key changed. Every single one of them, and that's why I had to 1) learn LXC all over again, and 2) redeploy each and every one of my containers. That process is still not entirely completed. ZFS backend was once again a dive into arcane configuration keys found on forums and whatnot. Yeah.. official documentation has none of it. Oh and in 3.x you now also have to dodge the torrent of "just use LXD m8" messages. Yeah, very helpful when LXD is also the ONLY way to reasonably configure it. Absolutely beautiful. Oh and as far as the ZFS default storage location goes (such as ssd/lxc/ct)? Yeah forget about it. There's no configuration option for it anymore, and the default is "lxc". In ZFS lingo that means that LXC has the audacity to demand a whole pool for itself. No. No you don't deserve a whole pool for yourself. But hey at least you can define the storage location to use in the lxc-create command! Every single time you have to define it in lxc-create. I abstracted it away into my own LXC interface, so no big deal really. But yeah... That could absolutely be better. And in 2.x it was actually better.
Oh and btrfs, the filesystem I'd like to use on low memory systems because ZFS' ARC is too much on such systems? Yeah forget about it. I still have no idea how to do it. Thank you LXC and its amazing documentation!
And if you want the icing on the cake for LXC's terrible documentation, see their repo's index page at https://github.com/lxc/lxc/.... Yeah, it's totally still at 2.x... That's how well they maintain that. Even Debian has 3.x now. And if you look at the branches, you'll find that even 4.x is already available and considered stable. -
My Gripe With Implicit Returns
In my experience I've found that wherever possible code should be WYSIWYG in terms of the effects per statement. Intent and the effects thereof should always be explicit per statement, not implicit, otherwise effects not intended will eventually slip in, and be missed.
It's hard to catch, and fix the effects of a statement intent where the statement in question is *implicit* because the effect is a *byproduct* of another statement.
Worse still, this sort of design encourages 'pyramid coding recursion hell', where some users will first decompose their program into respective scopes, and then return and compose them..atomically as possible, meaning execution flow becomes distorted, run time state becomes dependent not on obvious plain-at-sight code, but on the run time state itself. This I've found is a symptom of people who have spent too much time with LISP or other eye-stabbingly fucky abominations. Finally implicit returns encourage a form of thinking where programmers attempt to write code that 'just works' without thinking about how it *looks* or reads. The problem with opaque-programming is that while it may or may not be effortless, much more time is spent in reading, debugging, understanding, and maintaining code than is spent writing it--which is obviously problematic if we have a bunch of invisible returns everywhere, which requires new developers reading it to stop each and every time to decide whether to mentally 'insert' a return statement.
This really isn't a rant, as much as an old bitter gripe from the guy that got stuck with the job of debugging. And admittedly I've admired lisp from afar, but I didn't want to catch the "everything is functional, DOWN WITH THE STATE" fever, I'm no radical.
Just god damn, think of the future programmer who may have to read your code eventually.2 -
I am not a php dev and I have nearly 0 knowledge of php. All I know about php is that xampp is your friend and you have to write that $ everywhere. But that one day I had to setup phpLDAPadmin on apache2.
I have nothing against php, but I just don't want to have anything in common, since I'm just perfectly fine with my java.
So I had to make it work. Fought my way through different incompatible versions of php and phpldapadmin only to see "not found" on phpldapadmin.
I thought, like, wtf?? Especially when index.php of apache2 is displaying just fine? I mean, I can "edit" some php code, but configs and php setups are just something like out of my world. Tried setuping it on different vms - same result. I've buried way too many hours into this with no result. Finally I gave up and contacted a friend of mine which is like php god for me. He did same thing as I did in ~ 10 mins, but the result was the same. Tweaked some configs - same. Scratched his head, sat for 5 more minutes, did something and boom - it works!
I've asked him, what is that php magic and the answer killed me:
"Index.html was missing"
At that moment I just wanted to exit through the window. Sadly, there were no way to open it.
Yes, I am this stupid in php. But I still miss all these wasted hours...2 -
Google bloody captcha.
It works fine, until you have more than one form on a page then the complexity increases by 100000%.
Finally my colleague gets it working then I read an article that says bots use Google own speech recognition service to defeat it. Fun times.3 -
So there I am sitting in front of my laptop, and trying to npm i and I am getting all sorts of sha mismatch errors.
After lot of debug I conclude it is coming from the proxy as it refuses to download and supplies the error page.
It says it's because I'm using the old proxy so they give me the new URL which I set up and it works.
All good until my password expires. I use our bash script to change it. NPM is buggered again throwing the same errors.
Go to IT, tell them the saga begins.
After a countless hours of looking at the log files we notice that the npm registry is set to http instead of the standard https (thanks bash script). so our firewall blocks the download.
Sorted, finally.
Almost. NPM now works fine, but when I go and I play around with node and axios, I get my requests time out. My instinct says its the bloody proxy again.
So I hit up my trusted WIN Support guy and he confirms that the url is not blocked. So he starts monitoring whats going on and turns out, every time I run the node app, node casually ignores the system-wide proxy settings and tries to send the request as the PC rather then my username.
Since the pc's don't have rights on the proxy it is being refused...
Thank fuck for the corporate proxies, without them, I could just develop things not ever learning these quirks of node...3 -
How to run PHP in a container :
1. Begin a docker file for an existing php cron app (when all you know is php, everything looks like a php app)
2. Set the FROM.. Apt get update .. Do composer install
3. Builds the image
4. Discover I need git
5. Add git to apt get install step
6. Builds the image
7. Launch the php script
8. Fatal : use of undefined constant SOL_UDP
9. Opens the source code of the third party. The there's no mention of where that constant is from.
10. Spend many minutes online to find what's missing.
11. Find the PHP sockets page about that option. Digs into the documentation to find out that's missing from the installed PHP.
12. Find out I need to add a step to install the socket extension in my docker file.
13. Build the image again
14. Execute it, finally it works
15. Remember why I hate php
(for brevity I've omitted the even more complex part of having to set up zlib)
How to install node js in a container image:
FROM node:8
ADD package.json
RUN npm install7 -
IDK man, it took me a while to finally learn iptables and now switch to firewalld? Oh come on. It's not that I'm against learning new things, no. It's just that firewalld looks a bit.. crappy. If I get a server provisioned and run
firewall-cmd --add-port=53/udp --permanent
firewall-cmd --reload
and I get my ssh connection killed that's no good news, no sir! I mean come on, how can I rely on a tool this critical when a single line in its config file can make my machine inaccessible. Even better -- this config file is managed by that tool entirely!!! My commands passed all the tool's checks and they worked, but when I wanted to make those commands permanent and reload state from the config -- the tool starts spitting bile and blood and says "fuck off, it's my server now!"
IDK man.. It's just way too fishy. The good ol' iptables works very well and I'm kicking its retard younger brother out of the server.
shoosh you dirty pig firewalld, shoosh!6 -
So I salvaged some computer that was about to be thrown out by IT because it works perfectly fine and would be a waste to lose.
The (current) problem is, there is no built-in wi-fi adapter so I had to order a usb adapter to plug into the machine.
Fortunately enough it supports Linux but cones with a cd with the _source_ of the driver in it and we are supposed to build it. Now what's the problem with that?
First problem: building needs all sorts of build tools, starting from gcc and make. Since it's a fresh install, though, I _cannot_ install those normally because -- you guessed it -- I don't have a WiFi connection, which is why I needed the bloody adapter in the first place, so I spent hours trying to fetch the binaries from the apt register using another computer and bringing them over via USB.
Once that was (more or less) successful, the next problem came around; Second problem: the instructions clearly state to run make, but there is no fucking makefile anywhere so that obviously fails spectacularly. What _is_ there are some bash scripts so I try running those.
Now, just when I think it's finally done (one of the scripts has been running for a while and seems to work) the compiler dies with an error: the fucking driver won't build for the current kernel version. And not just that, but it is clear nobody is using basic things like include guards because gcc kept screaming at me about the same macros being defined over and over due to header file re-inclusion. Like, seriously? Come on!
Long story short the fucking adapter is going back to the seller, let's see if the next one I order more civilized.8 -
Today I had to spend the whole day fixing a stupid bug in a legacy application in a completely different tech stack than I'm used to...
At my company we have an Internet application running where we can upload a word document and using some mailmerge variables magic, can set those vars and receive the personalised word doc back...
Now this is great, when it's working, and is used in various projects we have up and running... Suddenly the application decides to crap out for no apparent reason and guess who drew the short straw....
Anyhow I ask our sys admin for the password to the server, I remote desktop to it, turns out its a fucking Windows 2008 server...
But wait it gets better, the application, a shoddy mess of c# code, is not under any sort of version control, has to be developed on that same server and to top it all of, I have to follow some obscure barely documented deployment precedure to get my changes live....
So after a lot of cursing on the dev (not working at the company any more) who did the original setup, and hours of painstakingly piecing together how it works and what went wrong and how to fix it, I finally managed to get it working....
After this rant, I'm mailing my technical lead about this in the hopes we can get someone to do it right (yes, I'm that naive)1 -
Finally end of the week. All that is left is a little polishing over the weekend for Monday release. Like get the lastest code from all the developers, put it together and hope it somehow works and fix whatever doesn't :-/
-
Let's say you're working on some pretty complex JavaScript code, and it's just not working right, nothing you try seems to fix it and you can't figure out what's going on. So, rather than continuing to bang your head against the desk, you decide to do the smart thing and shut down for the day.
You then come back to it the next day, refreshed and ready to do battle with the code! You start by adding a few simple logging statements to see what the hell is going on.
You then run the code and... IT WORKS PERFECTLY?!
You scratch your head for a while before finally realizing that cache didn't get cleared yesterday, so your changes were never executing.
D'oh!
Do you:
(A) Beat yourself up for missing such a stupid and basic thing despite doing this shit for literally over 25 years now, or:
(B) Do a happy dance because you just got a free day and can effectively start the weekend early knowing you accomplished your goal for the week?
(or, I suppose, both, which is kind of where I land)6 -
I fucking hate web development and fuckton of issues it has. Laravel library not found despite the files exists and composer loaded it in the autoloader, fix: create a config file for the lib, why? Because magic. The code cannot find the provider class without it....
Next, try out smtp mail. Works everywhere, but not with the live smtp server. Fails with Invalid recipients error. 2 hours later, with half of my hair torn out I finally figured out. Can you guess?
Credentials and settings are correct, recipients are also correct. The fucking from address parameter was the culprit because you cannot send emails on behalf another address, logical but fuck that error message. Why is it that hard to respond with an understandable response?2 -
Spent 3 hours on SO and google to find out why a listview is missing data. Finally I delete it from form and recreate it, works flawless on first compile.
-
I love Django. I really do. It's been fun to work with, and wrestle with, and beat my head over repeatedly. I really have enjoyed it. But why in the name of all that is even remotely holy must the URL documentation be so spotty? I finally did get my URL behavior to work, but now that I've created a view function for deleting objects in one of the models, the URL for the editing function breaks. All you do is click "edit" and it brings up this nice little form where you can edit the database entry by querying its ID number and then you can save that ModelForm and everything is fine. So the url scheme is http://foo.com/bar/edit/3/
Should work. Used to work. I swear it used to work, I pulled up an older commit and it works like a charm. Deleting works with that same url scheme.
http://foo.com/bar/delete/3/
deletes the object with id=3 no problem. The two URL schemes in urls.py match perfectly (except one says delete obviously).
But now something has gone and gotten ROYALLY derailed because every time I run that function, that CLEARLY PRESENT 3 is being passed as None. I thought, oh, maybe I rearranged the arguments and am passing in the wrong ID. Nope. Okay, so what if I mixed up the regex on the url? Nope. Matches. WHERE ARE YOU GETTING NONE FROM? I mean, I realize that's the default, but I'M PASSING AN ARGUMENT in.
{% url 'namespace:edit' id=object.id %}
breaks horribly whereas
{% url 'namespace:delete' id= object.id %} deletes the object just fine. Why, Django? We've been wrestling with this for hours. Give me a sign. Tell me what you want from me. I'll give it to you. I will. I promise. -
I feel like writing or telling people about the time I jumped from Windows 7 Ultimate and jumping to Windows 10. (I'm not against 10, but I'm never updating after what had happened to me)
It all starts when none of my games will play due to a possible issue with my graphics card. I look up "3D source game bug" and not many results pop up. I go on Microsoft's Qna areas and ask this question but to my surprise nothing they say would make sense. "Clean the pins of your graphics card, make sure you verify the games on Steam". I verified the games and they checked out as perfectly fine. I don't have access to my graphics card because this is a laptop, sadly not a tower.
Two months pass and my computer is already showing signs of stress, like it didn't want to live in a sense. It was three times slower than when I was on Windows 7 and it was unallocating areas of my main hard drive where I could make virtual hard drives.
Instantly I start looking up Linux distros and find Linux Mint. 17.3 was the current version at the time. I downloaded it and burned it onto a DVD-rom and rebooted my computer. I loaded into the disc and to my surprise it seemed almost like Windows 7 apart from the Linux part. I grab my external hard drive and partition it to hold the Linux distro and leave it plugged in incase Windows 10 does actually fail.
On December 19, a few months after Windows 10 had released. I start my laptop to try and continue my studies in video game development. But to my surprise, Windows 10 had finally crashed permanently. The screen flickered blue and black, and an error box saying Loginui.exe failed to start. I look at it for a solid minute as my computer had just committed suicide in a sense.
I reboot thinking it would fix the error but it didn't. I couldn't log in anymore.
I force shutdown the laptop and turn it back on putting it into safe mode.
To my surprise loginui.exe works and I sign in. I look at my desktop, the space wallpaper I always admired, the sound files, screen shots I had saved.
I go into file explorer and grab everything out of my default hard drive Windows was installed on. Nothing but 400gb got left behind and that was mainly garbage prototypes I had made and Windows itself. I formatted my external hard drive and placed everything on it. Escaping Windows 10 with around 100GB of useful data I looked at the final shutdown button I would look at.
I click it and try to boot into normal Windows 10. But it doesn't work. It flickers and the error pops up once more.
I force it to shutdown and insert the previous Linux Mint disc I made and format the default hard drive through Linux. I was done. 10 gave me a lot of shit. Java wouldn't work, my games has a functional UI but no screen popped up except a black abyss and it wouldn't even let me try to update my graphics card, apparently my AMD Radeon 5450 was up to date at the AMD Radeon 5000's.
I installed Linux Mint and thinking the games would actually play I open steam and Launch Half-Life 2 to check if Linux would be nicer to me than Windows 10 had been.
To my surprise the game ran. The scene from Highway 17 popped on screen and the UI was fully functional. But it was playing at 10-15fps rather than the usual 60-70fps. Keep look at my drivers and see my graphics card isn't in use. I do some research and it turns out I have a Hybrid Laptop.
Intel HD Graphics and an AMD Radeon 5450 and it was using the Intel and not the AMD. Months of testing and attempts of getting the games to work at high frame rates pass and the Damn thing still functions at a low terrible fps. Finally I give up. I ask my mom for a Windows 7 disc and she says we can't afford it. A few months pass and I finally get a Windows 7 installation disc through money I've saved up. Proudly I put it into my optical disc drive and install it to my main hard drive deleting Linux completely. I announced to all my friends my computer was back in working order and I install everything I needed, Steam, Skype, Blender, and Unity as well as all my games. I test Half-Life 2 and it's running exceptionally smoothly, I test Minecraft at max settings and it's working beautifully. The computer was functioning properly once again and my life as a developer started as I modeled things and blender, learned beginners C# and learned a lot of Batch. Today the computer still runs at a great speed and I warn others of what happened to me after I installed Windows 10 to my machine if they are thinking of switching from 7 or 8 on an older machine.
Truly the damage to my data cannot be undone. But the memory of the maintenance, work, tests, all are a memory of how Windows 10 ruined me and every night before the one year anniversary of Windows 10's release, I took out the battery of my laptop and unplugged it from the a.c. power, just so Windows 10 doesn't show it's DLLs, batch scripts, vbs scripts, anything on my computer. But now, after this has happened and I have recovered, I now only have a story to tell5 -
Is it only me that when I finally meet a competent collaugue and we build consistently good products together for an extended period of time that I start seeing him/her as the whole world?
It's so rare finding a really competent collaugue that when I do, after many wonderful works together, I just can't stop compliment him/her until it gets weird.2 -
My app is finally on the Apple App Store.
The rant: how bloody difficult was it to get on there?! They scrutinise EVERYTHING. My promo copy, my screengrabs and also it seems that there is code that works on iPhone that doesn’t work on iPad.
I thought it was designed to be the same for ease of development? However I found a function that works perfectly well on iPhone but breaks iPad.
Anyway I guess in the long run this keeps the App Store’s quality level high and it isn’t the Wild West like the google play store. However it’s still pretty annoying. I can see why devs get angry about Apple’s process.2 -
Im looking for some advice. Im rendering a 3d warehouse with three.js it works fine until I do not have more than 50 locations per level in length, then its slows down horribly. every location is an object, simple square, every level is locations stacked in two rows with a place for the robots to move in the middle, every aisle is an object with levels stacked on each other, and finally the warehouse is aisles stacked next to each other. This seemed the logical approach, its created programmatically. What would be the way to speed this thing up? I don't know the reason of slowing, too many objects or too many polygons?32
-
Finally got my first dev job. I am looking at the code base for my company. And it’s like I know how to code in this language. But I don’t know half of the advanced shit they’re doing. I understand they have more experience than me. But I’m just not sure how to catch up to them. Or be even on the same level as them? I guess just more out of office learning?
I can read what they’re putting in the code and understand how it works. But like how they came up with it I have no clue. I guess I’ll learn over time and have to put in some extra man hours.5 -
A developer couldn't get a application performance monitoring (APM) tool to trace his application. They claimed that their libraries and their configurations were alright and that the APM tool was non-performant.
The developer then argues with sysadmin that the APM tool can't trace the application and that there's nothing wrong with the application or the configurations. When sysadmin questions whether the developer got the tool to work anywhere, they say, "No" and head off to make it work at least in one place. They come back saying that it works on their development environment (which is their local machine). Sysadmin claims that the system configurations on the server instances cannot be matched by the development environment and there could be a lot more factors to be considered for the problem. The sysadmin asks to prove it on a server instance on one of the test environments and then they'd agree that it is a problem with the tool. They also argue that this is not the only application that uses the APM tool and the tool happily traces other applications with no issues.
The developer tries the same configuration on a staging instance and fails. In order to make it work, they silently uninstall the existing version of the APM tool and then compiles an unstable branch of the tool. It finally works with this version.
They go back to the sysadmin and show that it works on the staging environment, but does not on production. After banging their head on the wall for a while, the sysadmin figure that the tool had been swapped out for the unstable branch that was manually compiled. When questioned, the developer responds, "It works with this version on staging, so deploy the same version on production"
WTF? You don't deploy an unstable branch to production. Just because you can't make it work on the stable branch doesn't mean that it is the problem with the tool itself. There's a big difference between a stable branch and a non-stable branch. How would you feel if the sysadmin retorted by asking you to deploy the staging branch of your application to production? -
I swear that Netlify CMS is straight up magic. Finally something that is simple and unopinionated and just works out of the box. After understanding how it works I just plugged it into a hardcoded project and the hardest part was just copy-pasting the content.2
-
Finally got fed up with nvm and npm being messed up somehow and decided to reinstall it. It’s finally finished after 84 years and more text than the Bible and the complete works of William Shakespeare has been scrolling in my terminal as it installs.
Aaaand it’s still just as broken as before. I’m now considering re-imaging the entire machine and starting over again.
I know all the “right answers” as to why and how we use Node but I sometimes wonder how much of that is sunk-cost groupthink as well as “we’ve always done it this way”.
Should _setting up_ to write code and release software take longer than it does to write code and release software?3 -
!rant
Pretty excited today! A buddy of mine wants to try getting into linux, he's mostly done Windows IT Helpdesk and some light Windows SysAdmin work but the company he works for is garbage and he wants/needs a change of pace. He's grabbing himself a raspberry pi 4 model B to use as his learning test bed. I'm grabbing one today or tomorrow so I can help him however I can to try and help get him comfortable with Linux so he can try to escape the hellhole that is his workplace. (I used to work there too, so you can trust me when I say it's fucking shite!)
Gonna start slow and easy and have him get comfortable with the terminal and ssh-ing in using keypairs.
Fuck yeah!!! I'm so excited for him.
He's wanted to get into linux for the last year or so but something at work would always happen to make him comfortable with his job again, like fuckface mcgee would finally get fired. And my dude would be like, "Okay, it's not all bad here, I'll stick it out a bit longer." Then they would just teplace fuckface mcgee with dipshit cockmouth and he'd fall back into a depression about working there. They finally put the final nail in the coffin recently and I think he's really motivated to do whatever he can to GTFO of there this time. -
I finally did it! I changed my laptop from win10 to Ubuntu, but now there is a crackling noise when I use earphones on it.
I have spent hours trying to find a solution but nothing works😭2 -
There were many issues that came about during my entire employment, but I woke up today with some, honestly, quite bizarre questions from my manager that made me open an account here. This is just the latest in many frustrations I have had.
For context, my manager is more of a "tech lead" who maintains a few projects, the number can probably be counted in one hand. So he does have the knowledge to make changes when needed.
A few weeks ago, I was asked to develop a utility tool to retrieve users from Active Directory and insert them into a MSSQL Database, pretty straight forward and there were no other requirements.
I developed it, tested it, pushed it to our repository, then deployed the latest build to the server that had Active Directory, told my manager that I had done so and left it at that.
A few weeks later,
Manager: "Can you update the tool to now support inserting to both MSSQL and MySQL?"
Me: "Sure." (Would've been nice to know that beforehand since I'm already working on something else but I understand that maybe it wasn't in the original scope)
I do that and redeploy it, even wrote documentation explaining what it did and how it worked. And as per his request, a technical documentation as well that explains more in depth how it works. The documents were uploaded as well.
A few days after I have done so,
Manager: "Can you send me the built program with the documentation directly?"
I said nothing and just did as he asked even though I know he could've just retrieved it himself considering I've uploaded and deployed them all.
This morning,
Manager: "When I click on this thing, I receive this error."
Me: "Where are you running the tool?"
Manager: "My own laptop."
Me: "Does your laptop have Active Directory?"
Manager: "Nope, but I am connected to the server with Active Directory."
Me: "Well the tool can only retrieve Active Directory information on a PC with it."
Manager: "Oh you mean it has to run on the PC with Active Directory?"
Me: "Yeah?"
Manager: "Alright. Also, what is the valid value for this configuration? You mentioned it is the Database connection string."
After that I just gave up and stopped responding. Not long after, he sent me a screenshot of the configuration file where he finally figured out what to put in.
A few minutes later,
Manager: "Got this error." And sends a screenshot that tells you what the error is.
Me: "The connection string you set is pointing to the wrong database schema."
Manager: "Oh whoops. Now it works. Anyway, what are these attribute values you retrieve from Active Directory? Also, what is the method you used to connect/query/retrieve the users? I need to document it down for the higher ups."
Me: "The values are the username, name and email? And as mentioned in the technical documentation, it's retrieving using this method."
The 2+ years I have been working with this company has been some of the most frustrating in my entire life. But thankfully, this is the final month I will be working with them.21 -
Finally got Stripe charges to work, then changed it to make subscriptions work in the Django app I was working on for Capstones. At least in theory. Works locally, but hasn’t been merged into our Production branch yet, so there could be something missing.
Still, super happy to have finally crossed it off my mental to-do list. -
I just fucked up real bad:
My phone was giving some error about not being able to install an update. Fair enough, i think to myself, so i try rebooting. Still nothing...
I then remember that i at some point OEM unlocked it for some testing, so i start up adb and see if i can connect during the update process. I can't. This is bad: I can't get into my home environment, nor can i connect with adb
Then i try booting into recovery, but instead of booting to ACTUAL recovery, it boots to some custom made "E-Recovery" made by huawei (my phone is a huawei p9 lite), which only gives me the option to download the update, which crashes, and no way of resetting. However, from here, i am finally able to connect to my internal storage via hisuite to make a backup
Next up: Bootloader
So i next load up the unlocked bootloader to try and manually flash the update. That works great, but it still wont boot normally. So i figure: it must think my device is in fact a different device. At this point i'm pretty fucked: Even though i have my data backed up, i can't manually download the update from huawei's site because i don't have the right keys, and i can't download an OTA because their site sucks and half of the downloads don't work, including the one i need. So now i'm stuck here with a bricked phone because EMUI doesn't know how to install an update.
I then did the stupidest thing i have done to date: i wanted to flash a custom recovery image over the "E-Recovery" in order to do some troubleshooting, but instead of writing
"fastboot (mydeviceid) flash recovery recovery.img"
I wrote
"fastboot (mydeviceid) flash boot recovery.img"
Meaning i flashed my BOOT partition with a custom recovery image that turned out to not be able to run. Great! Now i've totally fucked my boot sequence
I can't call their support line either, because as soon as they realize i've tried to restore it myself, and therefor had my OEM unlocked, they basically just hang up.7 -
Here's the story of me trying to set up Jenkins with Java, Maven and pipelines. I finally got it to work :D Not sure if it's the correct way and all, but fuck it, it works!1
-
I think the « super power » of making everything works the first time, etc.. is really bad, where is the fun ? Where is this moment of happiness when it finally works ? :/
If i had this, I'll never want to be a dev again. -
gradle is infuriating.
firstly there are so limited resources to understand how it's building a java/android code. everything happens by magic and hit+trial
secondly the plugins and the tasks works in mysterious ways. sometime they work when applied in the project root's gradle file, other times they work when applied in module's gradle file, nd other times they need configuration at both levels.
then there are gradle tasks like build ,test, assemble , clean etc. these are less of an action and more of an alias to run a bundle of actions.
then we have 3rd party plugins which attach themselves to these "fat-actions" and run before/after them
and finally we have the fuckup from the java world where the only available code coverage plugin is jacoco and IT FUCKING SUCKS!!! it is a test environment plugin, it should impact test tasks , but somehow it's fucking with the assemble taskin such a manner, that the jars ans aar files generated via plugin are giving runtime errrors. yes , runtime! as if we are back in the messed up js world of "everything is good unless running live"
even if it was a compile time eeror, i would have considered. but runtime?!! fucking runtime error?! i barely understand this shit, there is absolutely no info available as to which classes are being used to create a build and how, and i am supposed to fix this? wtf?!4 -
My DEV Story
After reading it, make a favor by ++d
Thought to be a software engineer in future
Learnt Python's basic modules, AI, and some ML
After getting intermediate in python, I started learning Java as my second language but could not do it because of JDK 8. Now don't ask me why.
Then, just stepped into game development with unity and C#, having a basic knowledge of C# with no experience in making a game myself. This is called ignorant.
After getting no success, I started learning PHP and got the chance to make a website having no content ;)
But it cannot meet my requirements
Soon I got content that AdSense regards as no content, no problem
I started learning Flask, a module in python for making web applications.
It took me 1 month to complete my website, which can convert file formats.
The idea for deploying it to the server
Sign Up to DigitalOcean
Domain Name from GoDaddy (I know NameCheap is better but got some offer from it)
Made a VPS for what I have to pay $5/month
Deploy my Flask App using WSGI server
This is the worst dev experience
.
.
.
.
Why in all the tutorial, they only deploy a flask app which displays Hello World only and not anything else
WSGI or UWSGI Server does not give us permission to save any file or make any directory in it
Every time........ERROR
Totally Fucked Up
Finally, it works on localhost with port 80
I know this is not the professional way to host a website but this option was only left.
What can I do
Now, I cannot issue a free SSL certificate through Let's Encrypt because **Error 98 Address Already In Used**
The address was port 80 on which my Flask App was running
Check it out now - www.fileconvertex.com8 -
think I'm starting to get why the c/c++ people are all crazy
I wanted to upgrade something so I wrote it then had to plug in the new version in 7 different crates. cool well after dozens of different file changes I found like 3 bugs and figured hey ok maybe some small edge case bug fixes and now I'm just frustrated because nothing is working and also did I mention I have like 3 deprecated crates but I haven't had a moment to rest to deprecate them fully and remove them and it's all massively annoying me
I keep just rewriting things because it's easier than changing the static typing system everywhere, but no matter what I do I just end up in more changing of the static typing system, repeat
I think I might just end at a non working codebase and lock myself up for 3 days and take some drugs and see what happens until either I pass out from lack of sleep and wake up not caring, someone finds me and takes me away, or I finally have a working product
things can't be done in chunks I guess
cuz if it works in isolation then you stress test it and it works then you plug it into the live system and heyyo look it doesn't because you didn't stress test these edge cases enough and now everything is broken and who wants to revert like 2 hours of stupid secretary work because StATiC TyPe SysTeM. so what my stress tests need to be the live system? and speaking of tests I keep have to go back to older tests and keep updating them every time the damned static type system updates so I don't want more tests
the irony in all this is suddenly for once in my life I had this funny thought of "whoa, remember when people said coding wasn't for them?". I mean if I keep shooting myself in the foot does end up feeling like a me problem. I still think like a damned computer though. literally the thing i've always been best at so I'm just laughing at the ridiculousness
(maybe it's the brain damage, let's be fair to myself)
wanted to watch a horror movie with the bf for a few days and the guy is a narcoleptic. told him I wanted to today but now look at me, I wanna lock myself in a room until I solve my disaster so how am I supposed to enjoy a movie, and do I just ditch what I'm doing and hope I give a shit later or do I blow him off? fuuuuck why2 -
is it necessary to have cherry picking a part of git branching/release process?
we have 3 branches : develop, release and master.
currently every dev works on feature as follows : they make a branch out of develop, write code, raise pr against develop, get it reviewed and merge back to develop. later the release feature list is generated, and we cherry pick all the release related commits to release branch, and make a prod build out of release branch. finally, the code is moved to master and rags are generated accordingly.
so the major issue with this process is feature blocking. as of now, i have identified 4 scenarios where a feature should not be released :
1. parallel team blocker : say i created a feature x for android that is supposed to go in release 1.2.1 . i got it merged to develop and it will be cherry picked to release on relase day. but on release day it is observed that feature x was not completed by the ios dev and therefore we cannot ship it for android alone.
2. backend blocker : same as above scenario, but instead of ios, this time its the backend which hasn't beem created for the feature x
3. qa blocker : when we create a feature and merge it to develop, we keep on giving builds from develop branch adter every few days. however it could be possible that qa are not able to test it all and on release day, will declare thaf these features cannot be tested and should not be moved to release
4. pm blocker: basically a pm will add all the tickets for sprint in the jira board. but which tickets should be released are decided at the very late days of sprint. so a lot of tasks get merged to develop which are not supposed to go.
so there's the problem. cherry picking is being a major part of release process and i am not liking it. we do squash and merges, so cherry picking is relatively easy, but it still feels a lot riskier.
for 1 and 2 , we sometimes do mute releases : put code in release but comment out all the activation code blocks . but if something is not qa tested or rejected by pm, we can't do a mute release.
what do you folks suggest?9 -
I recommend this to 'myself later'
#MISSING_OLD_RANTS #MY_OLD_RANT
you are in the flow maaan... you fucking rock it... i swear, to GOD!
I'm in the most mindblowing.. thinking out-of-the-box... thinking about the system... everything that just can help recover a little piece of your soul... and resolving the worst bugs you've ever had... and you are just fucking ROCK IT! And you are on the highway to finish it all, but then suddenly a thought kicks in, and won't let you "do ya' thing".
That little piece of shit is now not a man, not a thing, nor anything... just some old tune from your dreams... and NOW! You! You are in the flow... and suddenly know what is your youtube's playlist name... from your saved 170+ playlists...most of them with 30+ saved videos... and you fucking see through that madness now, and THAT contains that tune!!!
You dropp EVERYTHING! YOU ARE IN THE FLOW! And you just solved a "bug" inside you, 'cause if you listen that song, than finally will Soothe Your Pain (haha... https://youtu.be/MJpQx57uoRc )... And you know it... you are in a hurry, and you will forget the name again... so you just go to youtube... and try to search it... "piano"
you are always in a hurry... so -> hotkey Ctrl + T... (y -> auto youtube search) "y_piano" -> result is "personalized"...
yeah, innnntresting...
a lot of really irrelevant youtube videos...
Ok... scroll down...
loading more...
BOOM Dr. Dre ft. Snoop Dogg between Mozart and Chopin...
"ok so personalized..." but not my playlist...
You check your youtube account... playlists... ALL PLAYLIST -> "Ahh finally, maybe a new search implementation!"...
Naaah... just shitty 170+ videos...
"thanks youtube..." No filter, no search... NOTHING...
"Fuck..." ok. fuck... go to old youtube page, you saved just for these situations... (remember... you are clever! and thank me later: https://youtube.com/view_all_playli... )
And it is not looking like it looked back in the day... and a little piece of it warns me that it will be removed soon... :'(
You lost the flow... you desperatly breaks down... What?!?!! that is the worst thing could happen to me... this is the only search option which works atleast a little bit... and it don't bothers anyone... and it will be abandoned, and shut down soon... :'(
So you sadly search that playlist... listen to that tune... turns up the volume... so that I can cry calmly in the corner, and no one can hear it...
And you know, everything you done, is fucked up, you don't even remember where this half sandwich came, in front of you?! nor what is the time?! anything...
You just wasted half an our, from your best fuckig time you can have right now... you could done all your tasks, all your bugs inside you... but you fucking wasted 30+ minutes (btw which is the most valuable thing in this fucking miserable life... and you wasted it to "search the youtube's UI where could you finally SEARCH WITH GOOGLE/YOUTUBE"!!!
And even that song is ruined for you now, 'cause this will be even worst in the future...rant #yt_fucked #google #google_the_search_engine #youtube_search_fucked #rip_yt_utility #my_old_rant #missing_old_rants2 -
Just posted this in another thread, but i think you'll all like it too:
I once had a dev who was allowing his site elements to be embedded everywhere in the world (intentional) and it was vulnerable to clickjacking (not intentional). I told him to restrict frame origin and then implement a whitelist.
My man comes back a month later with this issue of someone in google sites not being able to embed the element. GOOGLE FUCKING SITES!!!!! I didnt even know that shit existed! So natually i go through all the extremely in depth and nuanced explanations first: we start looking at web traffic logs and find out that its not the google site name thats trying to access the element, but one of google's web crawler-type things. Whatever. Whitelist that url. Nothing.
Another weird thing was the way that google sites referenced the iframe was a copy of it stored in a google subsite???? Something like "googleusercontent.com" instead of the actual site we were referencing. Whatever. Whitelisted it. Nothing.
We even looked at other solutions like opening the whitelist completely for a span of time to test to see if we could get it to work without the whitelist, as the dev was convinced that the whitelist was the issue. It STILL didnt work!
Because of this development i got more frustrated because this wasnt tested beforehand, and finally asked the question: do other web template sites have this issue like squarespace or wix?
Nope. Just google sites.
We concluded its not an issue with the whitelist, but merely an issue with either google sites or the way the webapp is designed, but considering it works on LITERALLY ANYTHING ELSE i am unsure that the latter is the answer.2 -
Our owner's other company sells products online (or has the ability to anyways). Their current site is 7+ years old WordPress/Woocommerce and is seriously outdated because the site breaks if you update anything so we've been told to make a new site (finally). They also said they were going to release a whole new line up of products. So the first thing I tried to do was get them to nail down their product line and how shipping was going to be configured. I was told to just use the shipping from the previous site.
Turns out those shipping rates don't use any sort of math or automation at all, there is literally a manually set shipping value for every single product for every single shipping location (30*60) and even values for different quantities. And there's no way to export these rates into a readable table because the plugins they use shove all the data into the postmeta table, I'm forced to go through and put the data into a spreadsheet so that I can attempt to organize it and hopefully find someone way to automate it. Owner claims at one point that he has a similar spreadsheet that's more up to date but for some reason refuses to send it over or put me in touch with the right people in the shipping department.
I've gone through the shipping rates with the old products and the new products and organized them as best I can and each time I've gotten done and shown them the spreadsheet with their products and shipping, they add or change something which requires me to basically wipe the slate clean and start over eating another 50 or so hours of my time, which with everything else really means another month+ to find time to work on it between other projects.
After about a year they finished their products and I finally finished the planning and got approval to build it out for the site. Small victory!!
After about 60 hours plugging these values into the database (only about 1/3 done) I get an email from their head of shipping who tells me the values in my spreadsheet are "terribly inaccurate, in some areas by $100+" and that the data should not be used anywhere.
So after something like a year and a half and 200+ hours of work, the data I've been using to plan all this isn't even accurate. I'm trying not to go crazy here but this kind of shit is unacceptable. When we're done with this I'm going to send the owner an invoice to show him how much money he wasted on this because nothing was planned and he just wanted it built. There's a fucking process for a reason, when you don't follow the process you fuck everything up. If a client had pulled this shit and turned their simple site into this much work they would have been dropped. I get constant emails asking when the new site will be done and every time my answer is "I'm still waiting for x items that I asked for last time you asked where we were." He gets a couple things on the list and sends them back and then goes unresponsive for weeks at a time.
Management has been telling me that I seem more stressed lately but only one of them understands what's going on here when I explain it. The rest say stupid shit like "why don't you automate it" or "make an intern do it." You won't let me hire an intern and even if I did, I'm not sure I could explain how the shipping works now to even trust someone else to do it. I'm hoping when the shipping guy gives me the new sheet that maybe there's some easier solution here because I'm ready to start shooting people.2 -
Finally got some time today to cleanup my inbox after three weeks of almost non-stop emergency. Came home from work, sat down in front of my computer and got a call from unknown number. Answered it and it was my ISP telling me that I have virus in my network and was spamming everybody and they cut off my internet. I know they are pretty useless and only kinda semi-IT literate. Took me an hour to convince them restore my connection with blocked port 25. Suricata log of all my traffic shows that nothing in my network communicated to port 25, the only possibilities are managed switch in front of my router I didn't managed to get into yet which should have managing interface on completely different VLAN and their router. Or mess in their system. My guess is their system is a mess. Will see how it works out tommorrow.
-
Other build tools:
Here is a plugin, use it . Be done.
Scala Build Tool aka SBT:
Build your own plugin.
Everything is scala...
You can create by the way funny endless loops when using the wrong syntax - yet it might compile successfully. And then when you load the plugin, it works. Till it is evaluated - lazy evaluation for the fun.
Error messages are at best cryptic.
*If* you manage to get a working plugin and *if* it runs...
Surprise. Surprise.
You might need to parse the log output of SBT.
Another funny surprise: Log output isn't configurable. You can configure the log level. That's it.
So after a lot of pain stakingly putting together a fucking shitty plugin, you can now grind the rest of your brain with ...
sed.
Cause yeah. You can now use regex to parse an sbt build log and extract the necessary information.
:)
...
So....
Are we there?
Mwahahahhaa.
Only if you haven't forgotten to either disable colored output for SBT... Or take an extra mile with e.g. less -R.
Otherwise you have ASCII control characters in your file. :-)
After getting that shit to work, you now have finally a parseable build log.
Just took days instead of hours.
But that's SBT. :-)6 -
I finally gave up with windows (especially 10)
Used to be behind it and support it but the last bunch of updates is causing more of a headache and dont get me started on the "oh you disabled automatic rebooting..... going to reboot anyway and give you a 10 minute warning while you are asleep".
How bad did it get?
I have built a plan for my linux install that will allow me to play most games via linux (thansk wine and DX2VC) and as i love playing Sea of Thieves, got a few things set up so that when i start the windows vm, it will unload my gpu, give it to the vm. when i shut the vm down, it will reload it back into linux (thanks to joeknock90 if hes on here)
Tested this with my laptop with an external crappy GPU and works surprisingly well
Sources where i got where i am:
https://github.com/joeknock90/...
https://lutris.net/
https://looking-glass.hostfission.com/...
and yes Linus's vid also gave me a little push as well6 -
Damn, mozart, i am trying to install it for the whole day, and now when i am able to finally install it, i dont know how to compile and run a piece of code in it. Why does anyone create such a language that works majorly on emacs, and also has no well enough documentation how to work with it, if by fluke someone installed it.2
-
There is no joy in life
So I finally managed to set up networking on my 3D printer's raspberry pi: now it can connect to my phone's hotspot or to my uni's wifi network, depending on which is available.
Then I set up OpenVPN, using a remote server as a middleman so I can connect to the printer remotely and start/stop/monitor prints from anywhere.
Everything works great, except for one thing: whenever the Pi connects to the uni's network first, OpenVPN fails to start and connect to my server, rendering the printer unavailable (unless I use an ethernet cable, but that's not a viable operation since I need to lift the printer, and it's heavy).
The only for it to work as intended is to either:
a) keep my hotspot active (which kinda defeats the point), or
b) let it connect to my hotspot first (so that OpenVPN can start properly) and then turn off the hotspot, allowing the printer to reconnect to the uni's wifi and reconnect to my vpn.
Why won't things just work the way they're supposed to? 😭10 -
So at work I still haven't gotten enough time to try/learn Docker/Openshift...
Should I just login on weekends to play with it, create some small projects to see how it all works?
One part of me says it my boss really want me to learn it, then he should clear the time for me.
The other part is like "I'm learning this for my own good and it might be fun since I'll finally be doing something new... And then I'll be the smartass on this too"5 -
I feel accomplished. After arguing with my family for a month or so, I finally solved the WiFi issues in my room! (We live in a flat. And the thick, concrete walls eat the signal super well)
I used to have 2 MBs downstream at most, with very common disconnects and general connection issues.
Now, just yesterday, I laid about 50 meters of ethernet cable all the way from my room to the other end of our house. Laid the cable along the top of our walls so that mom did not have to constantly whine how bad it looks.
Biggest issues were doors (Parents refuse to drill into the walls here, they tend to crumble a lot), but ended up running it under the door just tightly enough that the doors don't squeeze it in any way.
It works great! The cable is almost invisible, and now, my downstream is 30 MBps!
The only downside is that I used an old wifi router in my room that supports only 802.11b/g/n, not ac.2 -
Fuckadoodling finally!
After 3 days of digging through the documentation of CraftCMS and Yii Framework I got the hang out of how these Controllers, Actions and other RESTful api stuff works on Craft3.
As some of you may have noticed, I am a big fan of CraftCMS (v2) since it was introduced to me. A few days ago we discussed a new project and the option go for Craft3, as it has been released for some time now.
The changes from v2 to v3 are huge... I didn't expect to almost reach my limit to give up on it!
But since the RESTful routes finally work, with proper data serializing and all, I will now go drink a Whiskey or ten and wish you all an awesome, client-disturbance-free, decadent, beerful weekend!
Cheers mateys!
🎉🎊🍭🥃🥃🥃🍻🍺🥂 -
!rant
Finally (kinda) done with the nicknames addon. I wanted to hook into the sites actual modal menus for the UI, but I don't know JQuery and I somehow doubt modifying the existing javascript of a site from a plugin is possible, so we're stuck with knockoffs for now. But it works, it saves and loads nicknames correctly and displays them everywhere except on the notifications because I didn't add an onload listener to them.3 -
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 -
Let me just say that I've been playing whack a mole with a new feature for while now. And it's becoming very tiring.
TLDR; CTO is changing the way we're going to implement this, every other day.
June 1st,
CEO: let's implement feature AAA,
CTO: we're going to have a call with Andy to tell us all about his product that will make this super easy, call will be June 4th.
Days before June 4th,
Me: Researchs product X, makes demo works flawlessly.
June 4th,
Call all good, few tips from Andy. We come to the pricing section of Product X
CTO: this will not work, pricing doesn't fit on our budget, fair enough.
June 7th -11th
Me: research altenative approach. Makes second demo.
CTO: Works good, seems to have too many moving parts, let's have call with Bob to check Product Y. It should make our lifes easier.
ME: Geee, ok let's check it out.
June 14th,
Call with Bob, all good, product has a fair price, stuff is experimental.
CTO: let's use Product Y, and just use what we get from their api now, and worry about changes later.
Me: Hmmm, that's a bit risky, but ok, you the boss, right?, starts again new demo. API doesn't work as documented.
Lots of trial and error to figure out how the api is working now, finally demo works well,
June 17th,
API changed, now it works as documented, (expected as it is experimental), previous demo doesn't work anymore.
June 18th,
Redoing research. inputs are completely different from Product Y now, need to redo all that is working and do and a lot more of research.
Go live is scheduled for end of next week, I hope that the API is stable now, and that I get to go live on schedule.
It is funny to see, that it would probably been the same if we just waited on the API to stabilize, and check the pricing section before choosing a product? Who knows.
Anyways, I actually feel happy that over the years I developed the patience to work with ever changing situations like this one.4 -
Hmm,
The first one was eons ago. I was coding in Pascal and discovered System interruptions. The “Ahaha” was when I realized it’s easy to store CPU state and invoke whatever the fuck I want on any memory pointer. I loved my 2 silly animations running side by side on 80286.
Most recent : Finally understanding how “Expression” works in C# and how it can be combined into a Lambda and compiler does the whole heavy lifting on types compatibility and more.1 -
I'm trying to stand up a docker container to read a storage queue with dotnet and invoke ffmpeg to convert some videos. For a whole day I fought with this wrapper (FFMpegCore) which kept throwing file not found errors on the ffmpeg binary itself. Locally (windows) it worked fine.
I spent a ton of time trying to install the Debian package, trying to add it to the path manually, trying to just use the wrapper just to generate the arguments I wanted (I'm not an ffmpeg pro, so the fluent API the wrapper has is super useful) and running it manually, nothing worked. Finally, I realized it wasn't getting to the part where I ran it manually: just using the fluent API to get the arguments was invoking ffmpeg and throwing.
I took away the wrapper completely, start ffmpeg manually and it works...
Ay carumba. Things just can't be easy.2 -
My answer to their survey -->
What, if anything, do you most _dislike_ about Firebase In-App Messaging?
Come on, have you sit a normal dev, completely new to this push notification thing and ask him to make run a simple app like the flutter firebase_messaging plugin example? For sure you did not oh dear brain dead moron that found his college degree in a Linux magazine 'Ruby special edition'.
Every-f**kin thing about that Firebase is loose end. I read all Medium articles, your utterly soporific documentation that never ends, I am actually running the flutter plugin example firebase_messaging. Nothing works or is referenced correctly: nothing. You really go blind eyes in life... you guys; right? Oh, there is a flimsy workaround in the 100th post under the Github issue number 10 thousand... lets close the crash report. If I did not change 50 meaningless lines in gradle-what-not files to make your brick-of-puke to work, I did not changed a single one.
I dream of you, looking at all those nonsense config files, with cross side eyes and some small but constant sweat, sweat that stinks piss btw, leaving your eyes because you see the end, the absolute total fuckup coming. The day where all that thick stinky shit will become beyond salvation; blurred by infinite uncontrolled and skewed complexity; your creation, your pathetic brain exposed for us all.
For sure I am not the first one to complain... your whole thing, from the first to last quark that constitute it, is irrelevant; a never ending pile of non sense. Someone with all the world contained sabotage determination would not have done lower. Thank you for making me loose hours down deep your shit show. So appreciated.
The setup is: servers, your crap-as-a-service and some mobile devices. For Christ sake, sending 100 bytes as a little [ beep beep + 'hello kitty' ] is not fucking rocket science. Yet you fuckin push it to be a grinding task ... for eternity!!!
You know what, you should invent and require another, new, useless key-value called 'Registration API Key Plugin ID Service' that we have to generate and sync on two machines, everyday, using something obscure shit like a 'Gradle terminal'. Maybe also you could deprecate another key, rename another one to make things worst and I propose to choose a new hash function that we have to compile ourselves. A good candidate would be a C buggy source code from some random Github hacker... who has injected some platform dependent SIMD code (he works on PowerPC and have not test on x64); you know, the guy you admire because he is so much more lowlife that you and has all the Pokemon on his desk. Well that guy just finished a really really rapid hash function... over GPU in a server less fashion... we have an API for it. Every new user will gain 3ms for every new key. WOW, Imagine the gain over millions of users!!! Push that in the official pipe fucktard!.. What are you waiting for? Wait, no, change the whole service name and infrastructure. Move everything to CLSG (cloud lambda service ... by Google); that is it, brilliant!
And Oh, yeah, to secure the whole void, bury the doc for the new hash under 3000 words, lost between v2, v1 and some other deprecated doc that also have 3000 and are still first result on Google. Finally I think about it, let go the doc, fuck it... a tutorial, for 'weak ass' right.
One last thing, rewrite all your tech in the latest new in house language, split everything in 'femto services' => ( one assembly operation by OS process ) and finally cramp all those in containers... Agile, for sure it has to be Agile. Users will really appreciate the improvements of your mandatory service. -
Finally did it!
Replaced my desktop pc (which I use for gaming) which had Windows 7 with Arch Linux! It was not hard because I already use it on my laptop.
OK it was a bit struggle with nvidia and cinnamon due to missing libraries I had to install which I don't know before.
But it is possible to play games on Arch?
Yes definitely!
CS:GO - works (native, steam)
League of Legends - works (wine)
World of Tanks - works (wine)
All I need is working (:1 -
I finally figured out how fucking JWT authentication works. It felt like I was standing all my life and I just sat down
-
Finally published a demo packaged on npm to learn how it works.
Like it - "Npm loves you" 😜
I'll publish my own package in 2-3 days.
Tip : it seems you can't delete a npm package, you can only unpublish it. -
I think it involves a great amount of determination and time management skills.
I've learnt to manage my time wisely. I pretty much run my whole life on a bullet journal, it works for me.
I might wanna make a bullet journal app one day so that I can finally be happy with a digital bullet journal without excessive features.
And to all out there working on a side project right now, good luck..!1 -
Holy shit.
This was an effort to combine Gitlab, Github and Bitbucket with VSCode and git SSH authentication. SSH agent doesn't work, configured, added some code in .bashrc, seems fine. Then there was still ssh-askpass missing.
"ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory"
WTF VSCode? Why do I need this crap?
However, installed it. Nevertheless, I'm still asked for my password every time when I synchronize using the GUI. Thank God everything was in docker containers/images. So at least there is no garbage left after every failed attempt.
I don't know how, but I finally made it that at least synchronization using the terminal works without a password.
Took me five hours to do this shit.
Now I just report the bug to Microsoft and then straight to McDonalds. I'm starving.1 -
I bought the new dell xps15 57 days ago and now it’s ducked (pun intended).
Last week the screen stopped working. I powered off and back on. Then I get a cpu failure light sequence.
I call dell. To my surprise they have given me next day support for free. The guy comes the next day.
He says he will come between 4-6pm. at 615pm he phones me and says he will be late. I hang out at work to wait for him.
Finally at 730pm he comes and doesn’t have a screwdriver for the laptop. So he leaves to go buy one. 8pm he comes back. It takes him an hour to replace the motherboard by which time I just want to check it works and then go home. It seems good and we both leave the dark office at 930pm.
The next day I notice the sound isn’t working. He also hasn’t closed the laptop properly and there is a dent on the right hand side.
Despite dell giving me next day support it takes a week for them to come back with a solution.
I now have to send it off to them and I’ll be a week without the laptop...
It was incredible when it was working. But laptops aren’t great when they don’t work!
Perhaps I should have got a Mac...4 -
So I get to work on building a client at work for industrial automation. I am building a mini hmi to show customers how our server works. The code uses opcua. The reason I am making a client is because all the opcua hmis on the market are really expensive. There is nothing less than $600. There are hmis for free out there, but none of them say they support opcua. opcua has become a major protocol in the industrial automation industry.
It took me about 2 days to gin together a client that is pretty much abstracted and will be easy to maintain. A lot of that was just learning the opcua library client code.
Now I want to create servers and clients geared toward home automation for fun and profit. I want to take sensor data from arduinos using a simple serial protocol like modbus or other protocols that are supported. Then have an opcua server that collects this data. Then finally have an opcua hmi that I develop talk to these servers. The security model is much better and would be compatible with other vendors clients/servers. I already have a game engine I want to use for the hmi portion. It has tons of widgets for displaying data, graphs, lists, text, etc. It does both 2d and 3d.
This sounds like a project that could really fun, meshes with my work learning, and provides value to people that want to automate their lives.
The other side effect is that the next time I go looking for a simple and cheap hmi that supports opcua, there will be one. -
Im implementing kafka with little to no theory understanding. Now that i have finally managed to implement it Perfrctly, even started kafka, zookeeper and kafka-ui through docker compose and it works perfectly in the backend app, i can finally now see the power this technology withholds, and now i have even more understanding of how it (approximately) works, and Now I'm more willing to learn the theory to understand it under the hood.
Does someone else find it much easier to fuck around and find out when learning something new before being overbloated with boring dry theory?
I fucking hate theory. Any kind of theory. Its boring as shit. But now that i have gone through practical implementation of this and can understand how powerful backend i can build with it, Now I'd have no problems learning theory9 -
After a 3 hour fight with a custom Ajax request I have won the fight of getting a limiter run on the output. My goal was to only display x amount of result from a Json response and I finally got it working by putting everything in a if statement. Might not be the cleanest way but it works.
-
Update on my OneDrive story from a bit back:
(this first part happened a while ago but I forgot making a post)
So I was still having problems with my OneDrive since the email from customer support didn't help at all. I replied saying that their advice wasn't helpful in any way and that I, as an IT student, am familiar with how to delete files. I got another reply.
Great right.
But what did this email say?
It basically explained me how to upload files and stuff and how the sync system works and such. One thing that was in there that might have worked was resetting the 'app', the thing is I wasn't using their windows 10 desktop app but something that I got when installing my windows.
Needless to say, I replied again, saying that I had hope in their app solution but that I (as I stated in a previous email) use a different application so it was all useless.
I GOT ANOTHER EMAIL:
It is actually a technical solution (or so it seems). You must be thinking "wow, he finally got trough the shitty first line support" I know right?! and it feels good.
Well, the 'technical' solution is basically uninstalling onedrive trough cmd prompt and then reinstalling it from the website.
The folder remains in the browser client of OneDrive but I'm going to learn to live with it.
At least my sync issue is gone.
That only took like 3 months and ended with a very silly solution that is way too straightforward causing me not to think about it :p
Thanks for the read.1 -
>finally gets around to installing vsftpd on home server RPi
>doesn't work
hmm.mp2
>configurating
>confusing as fuck template documentation
>man page isn't much better
>gets it working
>goes to log in
User: pi
Password: a
(What? It's a home file/command server isolated from the Internet. Sue me.)
nope.avi
>why
>tries again
nope.svg
>FUCK
>sees small raw-command log in bottom-right of phone FTP client
hmm.flac
>tries again, watches log
PASS *****
>the fuck
>goes to change user pass over SSH
# passwd
"Current password?"
about half a second later
"passwd: auth token manipulation denied"
>the delay tho
>WAIT A SECOND
one time i got past some parental software bullshit on a tablet by abusing the delay between opening a banned app and the redirect to the normal software at like age 7. (Doing so let me enable remote wipe through Google. bye bye software!)
>*inner 7 year old has autistic screech*
# nano temp
a
abcdefghi
abcdefghi
^O Y ^X
# passwd < temp
>fucking works
>logs in to FTP server successfully
>does the one file download that was needed
why and how did that fucking work -
3 weeks back took a bug..
**long rant**
Looked into it and found that it is exist in older version(say V1) as well.
Sent mail to client stating i can fix this in current version (say V2). Since V1 is already released and our current code stream is V2 and so if we fix in V2 , the code will not reach V1 code base.
**explained to client**
Client : I mean if you fix why it won't work in older release.
Me: Explains how code streams will work.
Client : Okay.. but it will support the functionality in V1 , right ?
Me: (*internally* are fucking kidding me? It won't work dumb ass.) No. It won't work in older versions. I am fixing it in V2.
client: okay.. Let's proceed.
Me: Done code changes. Send code to review. (we have to send review to upper level manager).
Manager1 : I didn't liked this part. can you change this ?
Me : sure. Done.
Manager1 : Now i liked it. Sent review to Manager2.
Me: why the fuck ? Are you not sure about my changes are good?
Manager 2: I liked it, but need some log changes.
Me: Fuckkkk...... Let me change this.. Done. Now can I promote those changes?
Manager2: No we need to send review to client manager as well.
Me: Goddammit.. Okay.. sent review.
*After a fucking week..*
Client Manager : Looks good. Push the code.
Me: Finally..
(This process took 18 days which would have been completed in 3 days if there is only one peer review)
Now the other guy from client whose tracking the bugs reported why it took so long to fix it.
I think my client manager is over paid and can't even know how his company code stream works. Fuck you . why client has these lazy ass old fucking "I don't look into my email" type people. God I hate these "I am in rich country" people.2 -
Finally finished the model deployment and it fuckin works!!!
belle bouteille viens ici que j’te caresse ~~~ -
I finally got the lstm to a training and validation loss of < 0.05 for predicting the digits of a semiprime's factors.
I used selu activation with lecun normal initialization on a dense decoder, and compiled the model with Adam as the optimizer using mean squared error.
Selu is self-normalizing, meaning it tends to mean 0 and preserves a standard deviation of one, so it eliminates the exploding/vanishing gradient problem. And I can get away with this specifically because selu *only* works on dense layers.
I chose Adam, even though this isn't a spare problem, because Adam excels on noisy problems and non-stationary objectives (definitely this), and because adam typically doesn't require a lot of hyperparameter tuning its ideal here, especially considering because I don't know what the hyperparameters should be to begin with.
I did work out some general guidelines on training quantity vs validation, etc.
The initial set wasn't huge or anything, roughly 110k pairs for training.
It converged pretty quick all things considered, and to the low loss like I mentioned, but even then the system always outputs the same result, regardless of the input, so obviously I'm doing something incorrectly.
The effectiveness of this approach for training and validation makes me question if I haven't got something wildly wrong. Still exploring though and figuring out how to get my answers back out. I'm hoping I just fucked up the output, and not the input as well. -
I finally managed to get my Wireguard setup to work in both ways! Beforehand I could ping from A to B, but not the other way around.
A network 10.1.0.0/16
B network 10.2.0.0/16
(both actually use multiple /24 subnets, but I reserve a /16 for each site for the sake of simplicity)
Lots of fiddling later this is my configuration:
A interface 10.1.199.1/32
A allowedIPs 10.2.0.0/16
B interface 10.2.199.1/32
B allowed IPs 10.1.0.0/16
ping from 10.1.1.1 to 10.2.1.1 => 172ms
ping from 10.2.1.1 to 10.1.1.1 => 172ms
it works, yay! now to add more sites...2 -
So I finally decided to take the plunge to dualboot my Windows 10, since I'm using Linux applications more and more than Windows applications.
I just had to choose Fedora out of all distros. It sort of worked. When I tried to install, it won't get pass the login screen (kept getting blanks). I rebooted several times and went with "Troubleshooting" and it got me passed the login screen and proceeded to install at the lowest graphical settings, i.e. 800x600
So far so good, I was able to operate stuff that I wanted but I just can't stand working in a really low resolution. My guess is probably incompatibility with nVidia driver. Tried everything, rpmfusion, the negativo17 repo, the current official fedora repo, the If-Not-True-Then-False guide, and bumblebee. None works.
Makes no sense at all. Luckily my Win10 still works. Now I'm stuck on whether to continue trying to get Fedora distro up or try a different distro and start back from square one...3 -
Two years ago we took over this project which has been a nightmare to maintain. It's a set of netcore 2.1 webapps running on an on-prem windows machine. Everyone who has worked on it so far has quit, leading to two episodes of it being passed on with near zero handover.
Its function is fairly simple, so naturally we have been nagging to redo it and cloudlift it.
I was finally given one week to see how far I'd get, and had a poc running in Azure after one day; 4 apps in clean net6, SSO, and managed identities. The only thing lacking was setting up the authentication for third parties.
And... they still don't want "something new" when the old one works. Back to IIS and debugging windows event logs.1 -
Let me tell you about my wonderful weekend. It all started with a game that doesn't run in wine and it ended up in the biggest nightmare of Windows Update and EFI configuration.
1 - let's boot on my Windows partition to play trackmania 2.
2 - Windows Update interrupts me while driving a track.
3 - Update keep failing over and over again.
4 - I keep trying things to fix Windows Update, but with no success.
5 - Let's try system restore, failed
6 - Let's try to do a reset. "You don't have a recovery drive". Oh, right...
7 - Let's try to upgrade Windows 10 to Windows 10, just because. Nope, "we could not determine if your pc can run Windows 10". Wait what....
8 - I guess I'll be reinstalling this trash. "Nope, can't. Don't like that partition I just formatted". Of course you can't...
9 - Had to delete the partition and let it create new ones. It created a new EFI partition. Just why???
10 - Okay that worked. Let's fix grub now.
11 - Maybe not, let's try rEFInd, because it looks fancy.
12 - After rebooting on the live USB for about 50 times and reconfiguring rEFInd without any luck, I realised the install script didn't install fs drivers for ext4. Oh, right... That's why you didn't find any Linux kernel...
13 - It can't boot windows, they're using a different EFI partition. Let's move rEFInd to the new EFI partition windows created for me.
14 - Finally everything works again. So much effort to play a freaking game without being bothered by windows update. And rEFInd abience theme looks beautiful.
I've got to say though, I learned a lot and the Arch wiki is awesome!6 -
Spend all day debugging simple post request. Like really what is going on. Super simple. Eyes start to bleed. Check spelling on everything. Finally find out the access-control-origin isn't set right, other dev said it was whatever so glad I'm moving on. Nope. Same error running the app from Visual Studio. Check code again. Everything works in a browser. Windows, VS, or the emulator is blocking just POST requests. I can do get requests all day.
What hell. I'm so critical of my code I spend hours pouring over something I knew was right instead of looking for network errors. I just need to trust myself I guess.
Oh and Windows Cordova apps don't support ES6 lol.1 -
Spent the last few days trying to solve a weird issue with our CI/CD pipeline for a project. Yesterday i finally gave up and told my coworker that i need a fresh set of eyes to look at this.
I leave for lunch, an hour later I'm back and brought fire and fury to the mix.. Then, 2 hours later i raised my hands and my mouth uttered the glorious words of victory: Fuck yeah, it works.
Mood was still shit though... 1 bug down, 99 life problems remain 😢 -
when the swift language cannot infer the generic type from the invocation, it also doesn't want you to explicily specify generic type in the bracket...
says i have a method:
```
func createDeferred<T>() -> ABC.XYZ.Deferred<T>
```
then if you call it like this:
```
let dfd = createDeferred()
```
It complaints that it cannot infer generic type T, which make sense.
But it also doesn't want you to code it this way:
```
let dfd = createDeferred<Int>("countProperty")
```
if you do so, it mumbles gibberish: "Cannot explicitly specialize a generic function".
What it actually trying to say is, you should put the type somewhere else so that it can show off its smartness to "infer" it from there:
```
let dfd: ABC.XYZ.Deferred<Int> = createDeferred()
```
with a few more typing and findout what exact type it is, it finally works.
the moral of the story is, in order to communicate with the wonderful work apple genius made, you don't tell it what is the answer straight away, that's defiance, you must hide the answer somewhere intricately and let the smarty swifty swift to find it out for you.6 -
So i'm trying to upload a file to an SSH server using node. First I try the obvious putFile method provided by the obvious node-ssh package. On any other server this would work fine but this server doesn't have sftp installed so that doesn't work.
OK, so next I learn how scp works (it runs the command "scp -t" on the remote server, and sends to stdin a command like "C0666 1234 file.txt" and then sends the contents of the file) and I write some javascript code to do this. It's pretty finicky, the first few tries I forget to close the stream right or detect the program finishing. I add some logging and that helps me figure out what the problem is, and finally I get it to not output any errors.
So I log into the server and check and the file isn't there. I try again several times, file still isn't there. I try running scp -t manually on the server, typing in exactly what my program is sending, and it works. This goes on for a while until I realize that I've been sending a file to one server and logging into a different server to check if the file was sent. grrr6 -
Soo I finally uploaded my framework for Java Web last week.
It works great except for forwarding POST requests but meh, I'll fix it later.
Currently it only works for newer Minecraft Spigot version's and BungeeCord, because fucking netty is a piece of shit and Apache commons also... But I'll release a standalone version hopefully next month (maybe even next weekend).
And on the website from Spigot where you can find the link to my GitHub, there were two dicks which tried to steal my code and complained about my obfuscation... The didn't even fucking tried the plugin and gave me 1 star... Fucking pieces of shit fuck...
Anyway: here is the link!
https://spigotmc.org/resources/...3 -
Just wanted to do some scripted image resizing for school in school because the teacher asked me to help her with that.
So I thought: Let's just write a tiny script. Written the script in almost no time (just iterates over all jpg's and resizes them)
30sec.
Now I tried to run it. Didn't have my laptop so I had to somehow run it on their windows PCs. At least it's windows 10, unlike other schools that still run XP and stuff so I thought it might be doable. Well guess what, nope it wasn't.
First tried to install imagemagick, that didn't work as only teacher accounts have admin and the teacher was already pretty scarred once he saw me doing stuff in powershell so I thought I'd better not ask to do this via a teacher account and mess with stuff as admin.
Next method: Installing msys2. That worked at least (after taking forever to install and having to mess with the av software to get it to run).
And there comes the next problem: pacman doesn't connect via the proxy so I can't download any packages. There is free wifi but only for teachers, and students aren't going to get access until the school finally has a faster connection because they'd (understandably) cause this connection to be constantly overloaded. I just happen to have access to this wifi network, too, because at least the guys from the IT dept know how bad using proxies under linux is. So I connect via wifi and it works. At least I thought: After running the script it yields weird errors about unsupported arguments even though the command is exactly the same I have been using for years (already checked typos twice)
Then got the idea of simply installing imagemagick on termux on android and transferring the files onto my phone.
Too bad we aren't allowed to attach our own USBs to the pcs. Luckily I got a rooted phone so I simply activate adb over network and connect to it.
After downloading the platform-tools I can't run them because of AV software. Luckily there is an option to add an exception per executable so I do that. After doing that it works.... nope it doesn't. The wifi only allows 443/tcp and 80/tcp, even for internal network devices.
So that's it. I'm simply going to upload that stuff to my nextcloud and convert it at home.
Windows, I hate you!!!2 -
!rant
Thanks to the urllib documentation wich I find well written in opposition to the Beautifulsoup one
My script finally fucking WORKS
Not a rant sorry but I'm so glad I can finally sleep better thanks to it that I had to mention it -
Finally got Proton to run arbitrary programs with some tinkering. Works fairly well for running nigh anything I throw at it, even some random non-game programs. Might do this more often. (Next up: DXVK)10
-
I justed wanted to add audio to my ionic application...
Why did it take 1 hour to find the module ionic-audio, understand how to use it and finally add sound effects ?? 😖
Well, at least, it works both in the browser and on real devices... Not like many cordova plugins 😭 -
The magic Apple Support:
A few days ago, I suddenly couldn't login to iCloud on my mac. I thought it was something that would be gone if I would try turning it back off and on again. Didn't work. Used the mac without bothering about it. I was too lazy to call the Apple Support and it didn't annoy me that much.
A day later, suddenly Spark (my email client) didnt work either, it asked me all the time to re-login into one of the accounts but "an authentication error occured". At that point I thought it was a problem with the keychain. Because i don't use email that often and the last time I should pay 30€ if I wanted to call Support (out of warranty), I just started using email on my phone.
Yesterday, MS Office (yes I use it and I like this Microsoft Product and I'm an Apple fanboy) wouldn't login either. I didn't call them.
Today, I had finally time to call them. They didn't want to charge me since I selected an Apple-Id Problem (and I think the Support Hotlines are free to call idk). The call from Ireland came 2 times and the connection didn't work (thanks iPhone). The third time, the moment the Support guy said Hello iCloud worked. A few second later Office and Spark worked again too. I don't know how these coincidences happen. Anyway, I am just happy my stuff works again and I don't have to use Google Docs and write my mails on my phone. -
Please help me before I get mad,
First day with Linux Mint.
Objective: Make a 3Tb Hdd Read and Write, Right now I can use it only to Read.
Finally Installed Linux after some bumps (bad ISO).
I have 2 HDDs, the SSD with Linux and a 3Tb HDD
Right now the 3T has 4 partitions, one for windows, 3 for personal use with lots of personal stuff I can't lose.
I've been looking for videos, tutorials and the maximum I got was to had one partition mounted as a folder
<code>
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda1 during installation
UUID=f0a65631-ccec-4aec-bbf5-393f83e230db / ext4 errors=remount-ro 0 1
/swapfile none swap sw 0 0
UUID=F8F07052F07018D8 /mnt/3T_Rodrigo ntfs-3g rw,auto,users,uid=1000,gid=100,dmask=027,fmask=137,utf8 0 0
</code>
What am I missing?
PS.: Next: Make fingerprint work in Linux14 -
First laptop I ever owned (around a decade old) continues to live, just in another form. After the first 6 years, the battery died, half the keyboard doesn't work, and the monitor began to fail.
But it still works, so I have decided to give it new life. Gonna make it a new body, add an SSD, new battery, substitute screen, replace keyboard... Maybe this is too costly. No, it must be done.
Finally install a lightweight Linux distro. It shall be glorious!2 -
Recent VM/Emulation Adventures:
The goal was to get TCP/IP and SSH running on whatever weird VM/emulated machine, and connect to the chatroom at chat.tcp.direct successfully.
Longhorn, somewhere late pre-reset: Crashes right after installer begins "Starting Windows", 0x7b from sum-match ISO. Fail.
TempleOS (well, Shrine, but y'know): Dear god. No. No, I am not writing SSH in HolyC myself *fuck that,* fail.
Slackware: oh ffs i gotta use fdisk to partition this damn thing? and it's not even the good fdisk? Oh, wait... it hangs. Fail.
WinME: shockingly, was *fairly* stable... until it hung up WASAPI and the hypervisor two frames into desktop rendering. Fail.
Mac OS 7: First-boot after install, immediate unknown trap. Just works, eh? Fail.
Amiga: After about 85 resets and 7 hours of constant fighting with WinUAE, I finally got TCP/IP working. (Required 10MB of total RAM and an FPU to connect.) Success!
Win98FE: just... PuTTY and done. Easy. (This was the warmup.) Success...
Other people's achievements so far:
- Minecraft using the new QEMU interface mod thing.
- Hacked smart fridge.
- iPhone, from custom initramfs.6 -
Fuck Swift. Such a garbage language. The last 3 days I tried multiple web server implemented in Swift for mocking API's and none of them worked. Old, not maintained, wrong documentation, wrong code examples and just low quality shit.
Finally I decided to not give a crap and move to use Wiremock and it works out of the box, start and configuration is a breeze and it just plainly works. I should have done that from the beginning.
Btw., as a warning these were the frameworks I used and you should avoid them if possible: Swifter, Embassy, Ambassador and Succulent.1 -
At work, they’re always talking about ICP (ideal customer profile) and I always make a dumb comment about the band.
A couple weeks ago, I finally decided to make a meowji.
I made it on my phone in a moving vehicle, so it took a _while_, but it’s one of my best works, I think.1 -
I’m too dumb to learn frontend frameworks.
I’m a backend developer, not the greatest but I get the work done. I can understand different programming languages even if I don’t write in them, you just understand basic principles and know what’s going on.
I can do some work in HTML, CSS and some JS.
But what the hell is with those popular frontend frameworks. I thought I pretty much understand how it works, so started doing some crap on my own, some pretty responsive navbar with dropdowns to start. Nevermind a million of npm packages to just start working and some weird errors in website source (“JavaScript is not enabled”, I spent few hours trying to fix it, but it’s just there, everything is working fine even with this message there). I have pretty navbar, nice, time to add dropdown.
Nope, not working. Maybe classic css solution?
Nope.
Ok, time to Google. What do I find? A million of npm dependencies that provide dropdowns, for some you need to pay, wtf.
But I want to write one on my own.
Found few tutorials that wasn’t even remotely helpful, it’s like with the online recipes, “when I was growing up on the farm…” and then something that it’s not working.
Finally found some nice looking tutorial, was following that and then.. it ended. It was maybe half of the solution, dude forgot about some components and just left.
I quit, I’m going back to writing jsp, my brain is too smooth for frontend frameworks2 -
// Rant 1
---
Im literally laughing and crying rn
I tried to deploy a backend on aws Fargate for the first time. Never used Fargate until now
After several days of brainwreck of trial and error
After Fucking around to find out
After Multiple failures to deploy the backend app on AWS Fargate
After Multiple times of deleting the whole infrastructure and redoing everything again
After trying to create the infrastructure through terraform, where 60% of it has worked but the remaining parts have failed
After then scraping off terraform and doing everything manually via AWS ui dashboard because im that much desperate now and just want to see my fucking backend work on aws and i dont care how it will be done anymore
I have finally deployed the backend, successfully
I am yet unsure of what the fuck is going on. I followed an article. Basically i deployed the backend using:
- RDS
- ECS
- ECR
- VPC
- ALB
You may wonder am i fucking retarded to fail this hard for just deploying a backend to aws?
No. Its much deeper than you think. I deployed it on a real world production ready app way.
- VPC with 2 public and 2 private subnets. Private subnets used only for RDS. Public for ALB.
- Everything is very well done and secure. 3 security groups: 1 for ALB (port 80), 1 for Fargate (port 8080, the one the backend is running on), 1 for RDS postgres (port 5432). Each one stacked on top and chained
- custom domain name + SSL certificate so i can have a clean version of the fully working backend such as https://api.shitstain.com
- custom ECS cluster
- custom target groups
- task definitions
Etc.
Right now im unsure how all of this is glued together. I have no idea why this works and why my backend is secure and reachable. Well i do know to some extent but not everything.
To know everything, I'll now ask some dumbass questions:
1. What is ECS used for?
2. What is a task definition and why do i need it?
3. What does Fargate do exactly? As far as i understood its a on-demand use of a backend. Almost like serverless backend? Like i get billed only when the backend is used by someone?
4. What is a target group and why do i need it?
5. Ive read somewhere theres a difference between using Fargate and... ECS (or is it something else)? Whats the difference?
Everything else i understand well enough.
In the meantime I'll now start analyzing researching and understanding deeply what happened here and why this works. I'll also turn all of this in terraform. I'll also build a custom gitlab CI/CD to automate all of this shit and deploy to fargate prod app
// Rant 2
---
Im pissing and shitting a lot today. I piss so much and i only drink coffee. But the bigger problem is i can barely manage to hold my piss. It feels like i need to piss asap or im gonna piss myself. I used to be able to easily hold it for hours now i can barely do it for seconds. While i was sleeping with my gf @retoor i woke up by pissing on myself on her bed right next to her! the heavy warmness of my piss woke me up. It was so embarrassing. But she was hardcore sleeping and didnt notice. I immediately got out of bed to take a shower like a walking dead. I thought i was dreaming. I was half conscious and could barely see only to find out it wasnt a dream and i really did piss on myself in her bed! What the fuck! Whats next, to uncontrollably shit on her bed while sleeping?! Hopefully i didnt get some infection. I feel healthy. But maybe all of this is one giant dream im having and all of u are not real9 -
FACEBOOK COMMON!
I get that they released the app because they had a deal with windows 10, but after so much time can't you at least improve it a tiny bit? Even with a webapp from messenger it works faster.
-I got a text
-Open the app
-LOADING
-LOADING| Got tired unlocked phone
-LOADING| turn on wifi
-LOADING| open the conversation
-LOADING CONVERSATION| replied
-FINALLY FINISHED AND I NO LONGER NEED IT
Now how to fix this? First try not to have a IOS imported app, try to add quick reply in the notification. YEP thats a thing! Skype UWP at least has that going for them.1 -
So today was going to be the Sunday when I finally connected my smart TV though my raspberry pi to access my network and have it connect to the internet.
My TV is 6 years old, so it doesn't have built in wireless, it does not recognize normal Wifi dongles so you have to buy a LG special one for ~120$ to get hat to work, so my previos solution: screw that, one chromecast + 1 osmc raspberry pi3 and I can do more than what the software build in the TV could do.
But my wife really wanted to be able to play netflix directly on the TV without using her phone so I thought:
If I connect my TV via LAN cable to my raspberry pi it should be able to forward traffic via the built in wireless on the raspberry and be able to have internet connection.
OK, its Sunday, my wife it out, I haven't done anything with iptables in the last 5+ years but I have google and should be able to figure it out eventually:) time to start this home improvement project!!!
OK, lets just check online if there is someone else who had similar idea as a place to start.
... quick google search:
Hmm, in your OSMC, go to teathering, "wifi to ethernet" and enable.
I try it and it works!
5 min and one short ethernet cable was all that were required.
It feels like I cheated and won the game without any effort, and what should I now do with the rest of the day? -
This is a question with a bit of backstory. Bear with me.
Firstly, i’m back (again😂) now pursuing my software engineer goal at a university.
I had a group project course this spring and me and my group produced a kinda half assed product that could help within sports teams, for a customer at the university (won’t go into details). After the course ended I couldn’t go home to northern Sweden and stayed in my student accomodation for the summer. So I took the chance and offered myself to continue work on the product this summer to make it more usable and functionable, and they hired me (first real devjob!🥰)! Now when I look into the parts of the code that I did not write (our team communcation were bad), I realize I don’t understand fully how it works and therefore feel it’s better for me (also to learn more) to rewrite some parts my old group produced, and to actually make it easier to improve. Now finally the question; how do you feel about taking on a product, scraping some parts to rewrite them, and (in your perspective), improve them?4 -
Finally implemented my first ANN in my own environment (my own Virus Game). That feeling when have tested everything and it works, so you can just relax and put your feet up and. <3
-
Wow I just thought I had lost my good old friend forever - my laptop did not want to turn non anymore and since the main fan is somewhat broken, I thought I'd never see him alive anymore and that he died from overheating thus I opened it, plugged it to the power connector and voila, it works again - whew, that was a shocking moment for me and I guess it's finally time to replace that fan.7
-
[please read my rant, i want attention lol, i am pretty sure you know me ^v^]
My devRant visits have decreased tremendously due to high amounts of school work, but finally I am doing something productive developer stuff!
There is this app that allows you to watch educational videos offline, but that only works in android, but I don't have an android tablet, and I don't want to watch videos in my S8, so I am trying to boot android from usb, stick in my surface pro 6 which i am gonna order soon, download the app there, and watch videos!
I knew OS stuff was complicated but it is way more..... Yeah, complicated than i thought. All those fuzzy words, grub, partition, format, sectors, qemu, etc...
Uhhh
And I have only windows, which is a plus since i can use easy2boot, a godsend utility to make bootable usb with any iso easily (not an ad) , but the minus is that i have limited testing capabilities, forcing me to install virtualbox eith vmeu or whatever that thing is called...
But what I really want to say in this rant which is completely out of control, I'd like to thank the easy2boot support team who was very helpful for me to understand their utility, and a random guy in phoenix os subreddit who told me where to start.
If you read until here thanks! If you have experience booting from usb wih surface, or any windows machine let me know your experience since i want to know more about it, and if i encounter problems, i can look at your comments, thanks!7 -
The whole windows server + ms sql server ordeal is the biggest fucking joke I've ever seen in my time being a dev.
The ms sql dashboard uses a hidden user to access files and stuffs, so I spent 1 hour trying to make the dashboard's explorer to find the database dump file, only to find out that the file need to be owned by the hidden user. So
I spent about 1 hour trying to set the correct owner of the dump file, but to no avail, the explorer still couldn't pick it up. Then I spent another hour to set the correct owner for the containing folder. Finally, a 6 years old answer on SO point out that I should just put the fucking .bak file in their default folder, and voilà, the fucking thing works like a charm.
I can't get why Microsoft has to go out of their way making permission management on their os so fucking convoluted. The fucking usernames are a fucking mess, you have to go through a bunch of form to change just the owner of a file (please don't start me up with that running some command on powershell bullshit, I would rather deal with bad GUI than a badly designed CLI)
If I were to being positive though, Microsoft is actually one of a few tech companies having a good technical decision of moving their shits over Linux. -
One reason I hate working on hardware and prefer software. Spent all weekend trying to get this Canon photo printer to work with a raspberry pi for a photo booth project. Tried multiple cables, compiling the latest cups and gutenprint, etc. Only could get it to print via wifi. Finally, I go to the store and buy a new micro USB cable and it works right away. 😠2
-
Hey fellow devs,
i finally did it! i applied as a junior dev in a software company for inHouse projects. the job interview is today in one week.
little background story for those of you who are just procastinating at this time:
i have started coding when i was in school. just little stuff - nothing special. after i finished school i edjucated in the business field (did not found the english word. something like office person or in our words "user").
after that my company changed the ERP System and i wanted to do that so badly. and i got that job. i worked my ass of to get that baby running. from entering the orders to production to shipping and billing, i made that all happen by myself. as we had some very specific requirements i also wrote applications myself. after about three quarters of a year we switched to the new system and it ran smoothly (company is producing windows and doors). i was so proud when the first windows were finished.
BUT there was one problem. I was alone. no second it person i could talk to. no one i could learn from and no one who could learn from me. i then decided to change the company. same product, same job - but within a team. It was a whole other experience. i really enjoy the exchange with my colleagues. we learn from each other and we solve problems together. we can rely on each other. As i worked there i also wrote applications for inHouse usage and i even launched my own first app (not related to company - private commercial project)
BUT there is one problem. I am still the only dev. so i try to code the lease i can at my current job so that the team still works and the whole system stays maintainable for everyone. I do not feel good holding back the desire to code something. so after two years (and with a lot of talks with my cousin) i finally applied for a job as a "real" developer.
I have no bachelor, so the invitation for the job interview made me so damn happy. i really hope that i can transmit my passion for this job and if everything fits that they take me.
The next rant will then be about the result of my job interview :)
PS: even if i do not get the job. i am proud of myself that i applied!
Thanks for reading, potato potato1 -
Just finished what I consider a "good enough" version of a .gitignore generator in Rust (yeah yeah another one I know).
What a great feeling, even though struggled a lot and I'm completely frustrated that I implemented some things wrong. I have a working version (let's say alpha version) that actually works.
Unfortunately I discovered that there are better ways to implement my "match" expressions (when I was already done...typical shit) and String vs str is still a difficult concept to implement, BUT it is a great experience to finally have something open source that I can say that I made!
I honestly think everyone should have such a side project! I Should've done this earlier! 😑
If you're interested check it out on https://github.com/Ryhazerus/gg.git -
Finally im starting to get hang of how nextjs works. Still no idea how query params work, routing api calls, the proper structure, useEffect vs useState, SSR vs static props, etc but i wrote the messiest spaghetti code youve ever seen, and it works! I built a frankenstein. And its alive. Cleaning this shit up is the least difficult part4
-
!dev (kinda)
Warning: Might contain (be) stupid rambling.
So I got my new toy and want to play around with it. Just in case I have to return it I first want to make a full disk backup, so I try to boot clonezilla. I press the power button and mash F2, F8, F9 - and it boots straight into the windows setup. Nope, not what I wanted. Try again. And again. Eventually I look it up and apparently I have to hammer the ESC key to get where I want to. Alright, now it works. Boot from USB. Failed. Try again. Failed. Check the BIOS, disable secure boot, reboot. I need to type 4 digits to confirm disabling secure boot. Alright. Reboot, try again, failed. Secure boot is on again. Wtf? After some more infuriating tries I see that NumLock is disabled. AAAARGH. BIOS: Enable NumLock on boot, disable secure boot, enable legacy boot. Input the 4 digits - works! Try to boot from USB: Failed! Grab another USB stick, did the clonezilla image, try again: Finally! It! Works!
Format disk, install Qubes OS. Success!2 -
Today I finally finished editing the video for my new song. I have been working on the song itself, recording hundreds of takes of instruments and vocals, for almost four weeks now.
Editing the video took about 3 days, partly because I am using Hitfilm 4 Express for the first time. It's definitely a huge step up from Windows Movie Maker, but I did hit one mindboggling snag which delayed me for more than an hour.
When the editing was done and I exported the finished video, I play it, only to discover that the first second or so of audio is missing. That's kind of important for a music video.
So I try all kinds of things. Reimporting the audio into the project in different resolutions, trying different rendering settings, deleting or adding audio tracks, you name it. And each time the finished video is missing that first second of audio.
And each render takes about 10 minutes to complete, which is a long time to wait for one second of silence!
Out of desperation I start thinking about adding the audio to the video in Windows Movie Maker, just because I know that always works, even if that will degrade the quality.
But before I do that I try one more thing: I add a few seconds of silence at the beginning of the song in Audacity, then import into Hitfilm one more time.
And then it works!
I shall report my findings to Hitfilm shortly :-)4 -
I am using a bunch of vcpkg based cmake projects in visual studio. I realized I don't understand how any of this works from the ground up. So I found this article:
https://learn.microsoft.com/en-us/...
This was an interesting trip getting this to work on a newer version of an auto generated cmake project in vs. It took a bit to understand how to make the vcpkg preset work with the existing generated presets for debug/release x86/x64. Then I had the additional pain of figuring out how to include only the things I actually want from boost. I kept seeing conflicting methods because cmake versions keep changing how it is done.
I am glad to say after much swearing I finally figured out the modern way of using cmake with vcpkg and vs. It is very satisfying when everything downloads, configures, and compiles. I think vcpkg will be not that bad to work with. Still don't understand manifests yet.
Right now my libraries are not version selected. I should probably do that before it decides to install the next latest version of boost or something. -
I know it !
But when it finally works (reSharper) it's really not 'that' bad.
But my poor AMD Ryzen 9 3900X is not good enough I think lol.
About 30 seconds init time.2 -
Began working on an old project at work today. It has been about 6 months since I last touched it and 10 months since I began working here. No one that works here knew how to get the project running on anything other than one specific computer in the office...i work remotely. So instead of remoting in I finally figured out how to run it on my computer!
*crash*
Turns out it only runs on vista.... -
> Be me
> Get exhausted with Rusts borrow checker while making games and decide to switch to another language
> C# looked good, I just made a mod in it for stardew valley.
> Start a new engine based on MonoGame.
> All is going ok? Having minor issues with getting .csproj files set up but other than that fine.
> Get advice to switch to .NET core for higher compatibility.
> Start doing that
> Doesn't work at all, random weird errors all over the place.
> ProjectIsFucked.jpeg
> Delete folders, I didn't have much anyways.
> Make some basic boilerplate for both the engine and the game like 5 times, deleting the folders and starting over because errors.
> Finally get something to almost compile.
> Reinstall .NET
> Compile works.
> Compile again
> Compile fails
> Do dotnet restore
> Compile again
> Compile fails
> Do dotnet restore again
> Compile again
> Compile works
What in the ever loving fuck.
In all seriousness, if anybody knows what in the fuck is happening, I'd appreciate the help: https://stackoverflow.com/questions...4 -
I was new to Android development back then. One of the project requirements was to implement a feature, that will prevent the users from turning off the phone. Even if the users tries to turn off, the phone shouldn't turn off (specially when the phone battery is sealed). So, I tried a method and it works! But later the users reported that the feature doesn't work! I mean, I can clearly see that the feature works in all the phones I have ever tested. But later I realized that the feature worked in Debug APK but not in Release APK. I mean, seriously? It's not even some kind of pro-guard issues that happens with GSON+Parcelable. So, I did it again using a new method. Again, it works in Debug but not in Release. After trying and failing multiple times, finally I found a solution! May be this bug alone took me almost a week to fix it!2
-
So on my new position I get to work on Spark jobs. Never had to work with the infamous big data technologies. I never thought this would get SO frustrating for all the wrong reasons.
I'm currently trying to introduce integration tests for some Spark job I wrote. This isn't trivial though, as the data comes from several HBase tables. Mocking everything simply isn't feasible. So why not use the integrated HBaseTestingUtility? With it you can start a mini cluster that runs all nessecary services in the scope of your test.
Sounds great, eh? WRONG. Firstly the used mapr dependencies get in the way. The baked in configuration tries to automatically authenticate with your local cluster through Kerberos. Of course this doesn't work. And of course there is no way to reconfigure this as it happens IN A FUCKING STATIC BLOCK. AHHHH.
Ok. So after calming down I "simply" had to exclude all mapr dependencies and replace them with vanilla ones. After two days of dependency hell it FINALLY works!
...or does it? Well now we need test data. For that we got a map reduce algorithm that can import dumps. Sounds again, great, eh? WROOOONNNG.
The fucking map reduce mini cluster can't start, as it tries to write a symlink. Now take a wild guess what the sys admin here blocked. Yepp. TWO DAYS OF WORK RENDERED USELESS, BECAUSE OF SOME FUCKING SECURITY SETTING.
This is fine.