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 - "trigger"
-
Happy April Fool's!
- Windows 8 == Best OS
- Apple is fairly priced
- PHP > C++
- Java === JavaScript
- facebook > devrant
- Github useless, use .zip
- Comic Sans best terminal font
- Nobody needs a web developer because Wordpress much better
- Linux is for virgins22 -
Confessions of a Programmer
#1
If a client is an unbearable asshole during the initial communication, I look for every excuse to pad on the hours for the estimate to get paid more. If a client goes above and beyond in their douchbaggery, I tack on an additional $40/hour.
#2
Sometimes I will present an elaborate solution to a client, but really I'm just reading off the features of a plugin or library I'm going to download or buy after the call. Not because I can't build it myself, but because I'd rather spend more time on other/my own projects.
#3
Clients assume because I know one language, I know them all. Rather than turning down the work, I take a crash course to work in that language, or outsource the work and clean it up afterwards, whichever is more practical at the time.
#4
I use cPanel on a dedicated to manage our client websites. I'm not paid enough to bother with setting up everything manually.
#5
Certain projects I build have a 3-day backdoor built into it. If the client doesn't pay upon completion, a unique hash triggered as a GET variable deletes a core file in my work, rendering the work useless. If it wasn't triggered by the 4th day, the file allowing me to trigger this backdoor is removed. This is only used for clients where the project must be launched on their servers, or if there has been a previous issue collecting payment.
#6
I slip in the initial contract that all preceeding phone calls will be monitored and recorded, and that they acknowledge the recordings are admissable in court. This has saved me from losing money twice now.
#7
I have never used an IDE. (I know, I know, it's really inefficient and dumb, but I'm just more comfortable with Sublime. Plus I often find myself mobile and without my computer, so I have to program from my phone.)
#8
Each day resembles a betting spectacle of which work will be late, which will be rushed out and which will never see the light of day.
#9
I have used "sick" and "family emergency" as an excuse to just sleep in far more than I can count.
#10
When a client from hell crosses over the line in their conduct (such as getting very nasty and personal, or sending threats), I anonymously report them to the BBB and on RipOffReport.21 -
I want to stop charging my e-scooter at around 85% because this will increase the battery life. To avoid always having to pull the plug at the right level, I made a stop circuit that goes between charging brick and e-scooter.
There's no processor involved, just a CMOS 555 used as inverting Schmitt Trigger which controls a power mosfet. Also two status LEDs and a start switch. The poti adjusts the cut-off level. Worked on first try, with only manual voltage and tolerance calculations beforehand!27 -
Client: Can you provide some kind of guaranteed timeline that you're going to be able to move our website to our new servers with the optimizations implemented? I know you said it should take a week, but we have 3 weeks to get this moved over and we cannot afford to be double billed. I'm waiting to fire up the new server until you can confirm.
Me: As I said, it SHOULD take about a week, but that's factoring in ONLY the modifications being made for optimization and a QA call to review the website. This does not account for your hosting provider needing to spin up a new server.
We also never offered to move your website over to said new server. I sent detailed instructions for your provider to move a copy of the entire website over and have it configured and ready to point your domain over to, in order to save time and money since your provider won't give us the access necessary to perform a server-to-server transfer. If you are implying that I need to move the website over myself, you will be billed for that migration, however long it takes.
Client: So you're telling me that we paid $950 for 10 hours of work and that DOESN'T include making the changes live?
Me: Why would you think that the 10 hours that we're logged for the process of optimizing your website include additional time that has not been measured? When you build out a custom product for a customer, do you eat the shipping charges to deliver it? That is a rhetorical question of course, because I know you charge for shipping as well. My point is that we charge for delivery just as you do, because it requires our time and manpower.
All of this could have been avoided, but you are the one that enforced the strict requirement that we cannot take the website down for even 1 hour during off-peak times to incorporate the changes we made on our testbed, so we're having to go through this circus in order to deliver the work we performed.
I'm not going to give you a guarantee of any kind because there are too many factors that are not within our control, and we're not going to trap ourselves so you have a scapegoat to throw under the bus if your boss looks to you for accountability. I will reiterate that we estimate it would take about a week to implement, test and run through a full QA together, as we have other clients within our queue and our time must be appropriately blocked out each day. However, the longer you take to pull the trigger on this new server, the longer it will take on my end to get the work scheduled within the queue.
Client: If we get double billed, we're taking that out of what we have remaining to pay you.
Me: On the subject of paying us, you signed a contract acknowledging that you would pay us the remaining 50% after you approved the changes, which you did last week, in order for us to deliver the project. Thank you for the reminder that your remaining balance has not yet been paid. I'll have our CFO resend the invoice for you to remit payment before we proceed any further.
---
I love it when clients give me shit. I just give it right back.6 -
*me, coding at a pub*
*random dude walks up to me*
He: "what are you doing? Programming? What?"
Me: "yup. That's a horizontally and vertically scalable webservice, that's using amqp, rest APIs and encryption to schedule starting, stopping and autoscaling of a total of 90 heroku applications. This webinterface *showing* allows you to trigger starts and stops manually and monitor all processes."
He: "oh, so you are programming a Website? In HTML?"
Me: "euhm........ Yes."
I understand this dude had probably no clue what I was talking about.. Yet I am angry at him. Reducing more than 12k loc to HTML... Go fuck yourself.22 -
Okay i'm done - YOU FUCKING ANDROID STUDIO MORONS. Being at a high level in C++, I tried to do some android coding. THERE ARE FUCKING NO GOOD TUTORIALS, NO GOOD DOCS, HECK, THE SELF GENERATED CODE OF THE IDE IS WRONG: WHAT THE FUCK IS GOING ON YOU FUCKING MORONS?
oh wait, let me first import android.widgets.rant;
or was it android.widgets.devrant.rant; or was it android.dr.rant.RantManager;?
Oh wait, I know lets search the docs?
OH WAIT THE DOCUMENTATION DOESNT HAVE THAT.
NOW HOW ABOUT I JUST TRY THE EXAMPLE CODE? WELL UH-UH! YOU HAVE TO FIND OUT YOURSELF WHAT TO IMPORT IN ORDER FOR IT TO WORK. ALSO, WHAT FUCKING UP WITH THAT PERMISSION SYSTEM? ITS SO BADLY DOCUMENTED!!!
Oh wait, I'm sure that I have to change something in this file... or was it that other file?
GOD
how dare they have style and design guidelines?
MORONS!
I will resort to implement my app idea in godot, idc anymore... I don't want to burn out because I used the "official high standard" tech.
it definitely isn't high standard and definitely not good. Thank you morons@google
THANK YOU FOR NOTHING
A FRAMEWORK WHERE I NEED 2 DAYS TO FIGURE OUT TO ADD EVENT LISTENERS TO MY THINGS IS DEFINITELY NOT ONE I'D LIKE TO USE.
also, whats up with
AudioRecord (int audioSource, int samplerateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes);
ARE WE BACK IN THE C ERA? CAN'T YOU BE BOTHERED TO IMPLEMENT SOME SIMPLE FUCKING ENUMS????
WHATS THE POINT OF AN OOP LANGUAGE IF YOU ARE GOING TO USE IT LIKE C?
Oh wait I found a tutorial ... First trigger: "java scripts". Second trigger: this guy LITTERALLY ONLY TEACHES YOU HOW TO PLACE WIDGETS ON THE CANVAS. THANKS FOR NOTHING SHERLOCK!
Oh btw: did you know that android studio gives the best error messages?
"Error: illegal start of expression"
NO ERROR MESSAGE - NOTHING!
YOU BETTER USE THE IDE OR YOU GO HOME YOU FUCKER!!!
Oh and btw: if you want to read the best documentation - the code itself YOU GOTTA AGREE TO OR TERMS OF SERVICE!!!! WE DONT WANT ANYBODY TO BECOME SUCCESSFUL WITHOUT US KNOWING!!!!!
THANK YOU GOOGLE FOR NOTHING!
YOU FUCKERS!
thanks godot for *atleast* existing. You are the... last pick i'd pick, but :shrug:, I have experienced android studio now.
If anybody has any advice on what to use instead, please go ahead. And you better not tell me how good you are at android studio. I DONT CARE ABOUT WHAT YOU CAN IMPLEMENT IN ANDROID STUDIO. I JUST WANT SOMETHING THAT IS USABLE WITHOUT HAVING TO BE EXTRA CAREFUL WHEN DOING *ANYTHING*!!!!
fuckers.48 -
I'm getting ridiculously pissed off at Intel's Management Engine (etc.), yet again. I'm learning new terrifying things it does, and about more exploits. Anything this nefarious and overreaching and untouchable is evil by its very nature.
(tl;dr at the bottom.)
I also learned that -- as I suspected -- AMD has their own version of the bloody thing. Apparently theirs is a bit less scary than Intel's since you can ostensibly disable it, but i don't believe that because spy agencies exist and people are power-hungry and corrupt as hell when they get it.
For those who don't know what the IME is, it's hardware godmode. It's a black box running obfuscated code on a coprocessor that's built into Intel cpus (all Intell cpus from 2008 on). It runs code continuously, even when the system is in S3 mode or powered off. As long as the psu is supplying current, it's running. It has its own mac and IP address, transmits out-of-band (so the OS can't see its traffic), some chips can even communicate via 3g, and it can accept remote commands, too. It has complete and unfettered access to everything, completely invisible to the OS. It can turn your computer on or off, use all hardware, access and change all data in ram and storage, etc. And all of this is completely transparent: when the IME interrupts, the cpu stores its state, pauses, runs the SMM (system management mode) code, restores the state, and resumes normal operation. Its memory always returns 0xff when read by the os, and all writes fail. So everything about it is completely hidden from the OS, though the OS can trigger the IME/SMM to run various functions through interrupts, too. But this system is also required for the CPU to even function, so killing it bricks your CPU. Which, ofc, you can do via exploits. Or install ring-2 keyloggers. or do fucking anything else you want to.
tl;dr IME is a hardware godmode, and if someone compromises this (and there have been many exploits), their code runs at ring-2 permissions (above kernel (0), above hypervisor (-1)). They can do anything and everything on/to your system, completely invisibly, and can even install persistent malware that lives inside your bloody cpu. And guess who has keys for this? Go on, guess. you're probably right. Are they completely trustworthy? No? You're probably right again.
There is absolutely no reason for this sort of thing to exist, and its existence can only makes things worse. It enables spying of literally all kinds, it enables cpu-resident malware, bricking your physical cpu, reading/modifying anything anywhere, taking control of your hardware, etc. Literal godmode. and some of it cannot be patched, meaning more than a few exploits require replacing your cpu to protect against.
And why does this exist?
Ostensibly to allow sysadmins to remote-manage fleets of computers, which it does. But it allows fucking everything else, too. and keys to it exist. and people are absolutely not trustworthy. especially those in power -- who are most likely to have access to said keys.
The only reason this exists is because fucking power-hungry doucherockets exist.26 -
Me: Hi Guys, theres no docs on our custom push notification / deeplinking implementation. I've tried to work backwards from a QA testing doc to add new links. Can someone tell me if this is all ok? It seems to behave a little weird.
Dev: Looks ok, but we've moved to the braze platform for sending notifications. You'll need to trigger braze notifications now. Test that it works ok with that <confluence-link>
*hour later*
Me: I've tried the debugging tool, both with my payload and one of the samples from the link. It displays on the phone, but tapping it doesn't trigger the deeplinking.
Dev: No it works, try one of these <screenshot of samples I used>
*hour later*
Me: Tried it again on the real device to make sure, as well as on develop and master. Not working with those samples or mine.
Dev: No it does. It comes in here in this library <github link to line of code>
Me: ... Nope, debugged it, it doesn't get passed the next 'if' check on the next line as its missing a key/value. The whole function does nothing.
Dev: Oh do you want to send a braze notification?
Me: ..... you told me I had too .... yes I guess.
Dev: ok for a braze notification it works different, send this <entirely different sample no where on the link>
Me: ...... but ..... this is only for braze notifications ..... why .... all the samples have deeplink url's .... but they don't ....... are you ..... FFS!!!!! !@#?!
(╯°□°)╯︵ ┻━┻
┻━┻ ︵ヽ(`Д´)ノ︵ ┻━┻
(ノಠ益ಠ)ノ彡┻━┻
┌П┐(ಠ_ಠ)1 -
"Hey, about that matter from yesterday..."
"Yes, what about that?"
"We need to talk about that again! How often do you trigger that system?"
"Once."
"You sure?"
"Yes, but i can check it, if you like."
*find references*
"See, only once."
"Can it happen at a random point later one?"
"No."
"Are you sure?"
"Yes"
"Can you check it?"
"Okay."
*shows code"
"Look here, as you can see, it will not happen at other times."
"Do you have an idea why it could happen anyway?"
"Maybe that system does the action without my software telling it to do so, wasn't that specified that way?"
"Yes, but it normally does that roughly 10 seconds after you give the command the first time, so we thought maybe you could say what makes it do the action at other points maybe."
"Did you check that systems sourcecode?"
"No not yet. But did that happen with the older version?"
"No. But we didn't try."
"Did you change something between the versions?"
"Yes, the new feature."
"Could that make a change in behaviour?"
"I don't see how."
"Can you remove that feature for test?"
"We can take the old version."
"No, we need the new version, but without the feature you added."
"That IS the old version, there is no other difference!"
"Are you sure?"
"Would you like to see it in source control?"
"No, ~ okay. What do you think causes the problem?"
"I haven't had any new ideas since we talked yesterday."
"Okay. Mhhh,...okay. Lets talk again later."
YES SURE! BRING IT ON! I'M LOOKING FORWARD TO THAT! PLEASE COME BY OR CALL ME AGAIN! AND BRING THE BOSS WITH YOU, TO SHOW HOW SERIOUS THE MATTER IS! LET ME TELL HIM THE STUFF I TOLD SEVEN TIMES LAST WEEK!2 -
I haven't checked my work email in a month or two.
We use slack, so every time someone needs me they just message me there or text me. It works nicely. I also dislike email in general.
Anyway: I looked at my inbox this morning, and again just now. I've gotten just over 900 emails today.
Why?
Tons of useless alerts on a shoddy as hell codebase. As an example: Every time a coworker uses a tool or lookup with a sub-par query, it ties up the single shared database long enough to generate response time alerts.
As a better example, there are many many many informational alerts that intentionally begin with "500 Internal" specifically to trigger an email alert. Why? I guess they were useful at some point?
There's just so much to fix...
And I guess I don't care enough.
On the bright side: this gives me a great reason to ignore my email!6 -
On a company meeting there was a discussion wether to trigger an event by hover or mouse click for 20 minutes. then..
Me: "There is no mouse click without hover."
-- silence --5 -
Discovered one of the worst db designs ever:
- A cust is inserted in a table.
- The insert trigger is fired, calling a stored proc
- The stored proc being called creates a dynamic sql that builds a create table statement for 8 different tables. These tables will be postfixed with the newly-created cust id and is executed.
When querying info for a cust, a stored proc is used that accepts an id value would be appended to another dynamic sql that creates a select statement across all 8 tables for one customer.
Shoot me now.10 -
I've been reading posts for about 2 months and finally decided to pull the trigger and create an account.4
-
I.
FUCKING.
*HATE*.
THIS.
KIND.
OF.
PEOPLE!!
I KNOW that you don't understand what you're doing or saying, THAT'S WHY I JUST TOLD YOU A VERY SHORT, SIMPLE, AND CLEAR SENTENCE TO SAY WORD-FOR-WORD TO THE OTHER GUY WHO, IF HE'S AT LEAST HALF-COMPETENT SHOULD IMMEDIATELY UNDERSTAND AND RESPOND WITH *FOUR* *WORD* *ANSWER* and instead of that you blabber on for 5 minutes how you don't know what to say to him and how to explain what we need (FUCKIN ADMIN LOGIN YOU BOTH WINEFLY-BRAINED MORONS!), and he blabbers for 5 minutes back something something bullshit someone else and then REMOTES INTO THE COMPUTER, AND DOES A SYSTEM REINSTALL OR REMOVES DUDE'S USER ACCOUNT OR SOME SHIT LIKE THAT BECAUSE MY SKYPE CALL WITH THE DUDE DROPS AND NEXT TIME DUDE IS CALLING ME HE'S CONFUSED ABOUT SYSTEM SETUP SCREENS!!!!!!
WHAT!!!!
THE!!!!!
SHIIIIIITTT!!!!
told him sorry but call the fucker who fucked it up for you, i'm not wasting two hours of my time just because some school "IT admin" thinks the best solution for user not knowing his admin login is to remotely trigger a reinstall or someshit on the machine.5 -
TRIGGER WARNING: ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Don't mind me just using your computer for bitcoin mining and installing malware on your pc because you didn't block js.8
-
I've only experienced a quitting coworker once.
In a previous job a coworker quit with the words directed to the boss in a very loud and aggressive manner: "Ich künde, du verfiggti pissmorchle!!!"*, while throwing around office chairs and swearing all kinds of nasty stuff.
My boss at that time was indeed a fucking wanker. He exploited the shit out of every employee and expected from us that we work overtime for free. No pauses were paid, eventhough he'd had to by law.
I don't have to mention that he was a sexist fucktard and 3 female ex-employees sued him for sexual assault.
Sadly he is still in charge of that wanker company and he "miraculously" dodged every "bullet".
* trigger-safely and roughly translated to: "I quit, you fucking wanker!!!"7 -
Legacy code.
Honestly though, this is some of the better legacy code I've worked with at this company. It's a nifty alert system wherein you can trigger sending messages to subscribers of that alert via whatever means (phone/email) they've entered.
I'll save you the technical analysis of its internals, but suffice to say it's actually pretty nice, with good separation of concerns, internal logic hidden away, dead-simple public interface, etc. documentation is kinda crap, but it exists (!), so that's a nice change.
but.
For some unknown and bloody bizarre reason, the thing breaks when a user wants both sms AND email notifications. Either by themselves work totally fine, but both together? nonono. Email alerts give ArgumentErrors, so something internal isn't correct, and SMS alerts complain about uninitialized Twilio::Error constants.
but.
they both work fine otherwise?
also, the two notification preferences aren't stored on the same object anywhere. if a user wants both, the user creates two AlertContact objects with different info, and when performed, the Alert basically iterates over these and does its thing for each, so there is no knowledge shared between them. totally should work the same regardless.
idfgi.
ALSO.
AND THIS PART REALLY PISSES ME OFF.
WHEN THERE'S AN ERROR, THIS THING DOESN'T LOG IT. IT STRINGIFIES THE ERROR OBJECT (basically just extracting the message) AND INSERTS THAT INTO THE DATABASE INSTEAD. WHAT THE CRAP.
So, I don't get a stack trace, line number, or anything. just the basic error message. instead of my alert text. because of course that makes sense and totally helps debugging.
aklsjfak;sldfj.
legacy code.5 -
What do you think about a digital assistant made by the NSA, for example for people with dementia?
It would be accessible everywhere and it would know everything
and it could result in some nice dialogues:
>> "Okay NSA?"
"Yo, I'm always listening."
>> "I forgot to take some nice pictures from my last vacation, do you have some for me? D:"
"Of course, here ya go."
And you could even trigger it without a keyword.
>> *Walks to the fridge*
"Hey, you've already been at the fridge 45 minutes ago and since then you haven't bought anything."
>> "Thank you NSA"7 -
1. Put headphones
2. Put videogame OST (Chrono Trigger is the best)
3. Start Atom
4. Sacrifice a male virgin to my Code Muse to replenish her mana stock
5. Jerk off seeing a fat granny midget porn
6. Clorophorm and put my coworker to sleep so he doesn't interrupt me to show the FailArm best fails of 2016
7. Atom is still loading, so I curse all the GitHub fuckers
8. Give up and start my emulator to play Chrono Trigger
9. Receive a pull request and realise I need to work and be a productive member of society
10. Goto 110 -
It's all about the little things. Like getting my first cup of coffee of the day while watching all the AWS alarms trigger one by one.
-
Best part about the covid19 manufactured crisis?
Liquor stores deliver. Worst part about liquor stores delivering? Needing to use their shoddy websites.
I've been using a particular store (Total Wines) since they're cheaper than the rest and have better selection; it's quite literally a large warehouse made to look like a store.
Their website tries really hard to look professional, too, but it's just not. It took me two days to order, and not just from lack of time -- though from working 14 hour days, that's a factor.
Signing up was difficult. Your username is an email address, but you can't use comments because the server 500s, making the ajax call produce a wonderfully ambiguous error message. It also fades the page out like it's waiting on something, but that fade is on top of the error modal too. Similar error with the password field, though I don't remember how I triggered it.
Signing up also requires agreeing to subscribe to their newsletter. it's technically an opt-in, but not opting-in doesn't allow you to proceed. Same with opting-in to receiving a text notification when your order is ready for pickup -- you also opt-in to reciving SMS spam.
Another issue: After signing up, you start to navigate through the paginated product list. Every page change scrolls you to the exact middle of the next page. Not deliberatly; the UI loads first, and the browser gets as close as it can to your previous position -- which was below that as the pagination is at the bottom -- and then the products populate after. But regardless of why, there is no worse place to start because now you must scroll in both directions to view the products. If it stayed at the very bottom, it would at least mean you only need to scroll upwards to look at everything on the page. Minor, but increasingly irritating.
Also, they have like 198 pages of spirits alone because each size is unique entry. A 50ml, 350ml, 500ml, 750ml, 1000ml, and 1750ml bottle of e.g. Tito's vodka isn't one product, it's six. and they're sorted seemingly randomly. I think it's by available stock, looking back.
If you fancy a product, you can click on it for a detail page. Said detail page lists the various sizes in a dropdown, but they're not sorted correctly either, and changing sizes triggers a page reload, which leads to another problem:
if you navigate to more than a few pages within a 10 or so second window, the site accuses you of using browser automation. No captcha here, just a "click me for five seconds" button. However, it (usually) also triggers the check on every other tab you have open after its next nagivation.
That product page also randomly doesn't work. I haven't narrowed it down, but it will randomly decide to start failing, and won't stop failing for hours. It renders the page just fine, then immediately replaces it with a blank page. When it's failing, the only way to interact with the page is a perfectly-timed [esc], which can (and usually does) break all other page functionality, too. Absolutely great when you need to re-add everything from a stale copy of your signed-out cart living in another tab. More on that later. And don't forget to slow down to bypass the "browser automation" check, too!
Oh, and if you're using container tabs, make sure to open new tabs in the SAME container, as any request from the same IP without the login cookie will usually trigger that "browser automation" response, too.
The site also randomly signs you out, but allows you to continue amassing your cart. You'd think this is a good thing until you choose to sign in again... which empties your cart. It's like they don't want to make a sale at all.
The site also randomly forgets your name, replacing it with "null." My screen currently says "Hello, null". Hello, cruft!
It took me two days to order.
Mostly from lack of time, as i've been pulling 14 hour shifts lately trying to get everything done. but the sheer number of bugs certainly wasted most of what little time i had left. Now I definitely need a drink.
But maybe putting up with all of this is worthwhile because of their loyalty program? Apparently if you spend $500, you can take $5 off your next purchase! Yay! 1%! And your points expire! There are three levels; maybe it gets better. Level zero is for everyone; $0 requirement. There are also levels at $500 and $2500. That last one is seriously 5x more than the first paid level. and what does it earn you? A 'free' magazine subscription, 'free' classes (they're usually like $20-$50 iirc), and a 'free' grab bag (a $2.99 value!) twice per month. All for spending $2500. What a steal. It reminds me of Candy Crush's 3-star system where the first two stars are trivial, and the third is usually a difficult stretch goal. But here it's just thinly-veiled manipulation with no benefit.
I can tell they're employing some "smarketing" people with big ideas (read: stolen mistakes), but it's just such a fail.
The whole thing is a fail.8 -
F*cking Samsung's alarm clock.
I really needed to wake up early today so I added secondary alarm little bit earlier. It was supposed to ring at 5:20 and second one shall ring 5:30. But Samsung said no.
Update came thru night and phone was restarted in process. Why it can't keep memory unlocked I don't understand, but OK. But it effectively means it was not able to trigger alarm clock. So I woke up at 6:35 and came more than hour late.
Why such basic functionality failed? My old Sony Erricsson T290i can ring even when powered down. Same as my Nokia and after that Lumia with Windows Phone 10. Why can't Samsung just be normal.12 -
Thanks to Devrant I've learned about rubber duck debugging. Never heard of it before! It reminds me of a story many moons ago when I worked for a certain multinational company as a business analyst. The company brought in some consultants who basically stole the work my team was already doing on a big project (a horrendous series of spreadsheets linked to data coming from the core systems) and sold it back to the company for an insane amount of money as their idea.
When they launched the new product, the team I was in was asked to test and review it. It took my colleague ten seconds to bring the whole thing to its knees and trigger a corrupt data export back into the core systems. Bearing in mind this external company somehow managed to charge tens of thousands of pounds. So what did my colleague do? Hack the system? Some kind of complicated sabotage? Nope. He typed "FISH" into one of the spreadsheet cells! Thus the FISH test was born.
That day I learned several things: it's easy to break things with a fish; the importance of validating your input; and the satisfaction of showing up the smug bastards who stole your ideas and work.1 -
For some reason my manager freaked out after her non developer husband told her that each of the web pages for our main service would take months to build. Shit man its just static content with some animations here and there. It is a total of 15 pages and this dude estimated that I (as in yours truly) would only be able to do 2 per month. Bato stfu. Stick to banking (hopefully your time estimates don't suck ass there) and let me woo your woman with my frontend godspeed.
So what did I do?
Simple, asked her to show me one of the design models she already created on photoshop. Saved that thing to my computer and coded it at home. In 2 hours (It was originally one but my dumbass gor tab trigger happy with rm rf autocomplete so I had to do it again...fking dumb) and showed it to her this morning.
Eat a dick dude. The woman is already going apeshit over all the other shit we have to do plus working on her masters and attentind 100+ pointless meetings a day whilst still being able to be the best fucking manager I've ever had. I really don't need her freaking the fuck out over your dumbfuck estimates. Why in the wholy fucking world she listened to your dumbass is beyond me, probably stress made her freak out.
Its cool b.....I got it under control.
Fucking chill woman damn.
**drops mic2 -
Not sure if those are real song names or Spotify is trolling me when I try to trigger a "no results" UI in my app.6
-
I built our slack bot messages so that they are prefixed in BIG LETTERS with whatever system they originate from, i.e.:
"DEVELOP: You are a useless product manager"
"STAGING: You are a useless product manager"
"PRODUCTION: You are a useless product manager"
One of these is when a payment is made on our platform. Our lovely product manager proceeds to message me, "did you just trigger a payment in the test system?".
YES, OBVIOUSLY I DID SEEING AS THE MESSAGE HAS THE GIANT WORD "STAGING" IN FRONT OF IT!!!
https://lmgtfy.app/?q=how+to+read1 -
It was not me doing the screaming but one of my colleagues. He is a super programmer and joined our team early this year as my partner on frontend development.
We're a React/React Native dev house and he has always been uncomfortable with how loose it goes here because of dynamic typing. He has been advocating typescript and Angular since he started and I even allowed him to use typescript on one of the projects.
A month back I started to make jokes about how dead angular was (trigger alert) and he almost lost it. We are good friends so he as been taking it in good spirits.
Last week our boss allowed him a chance to propose a Tech stack for a new project. Naturally he started comparing Angular vs React. I chime in to trigger him again with "why would we work with a bloated zombie framework", he picked up his chair and almost threw it at me while screaming " React is just hacky ". I was laughing so hard and in the end we both did some research. We are proposing Jquery to our boss... (Evil laugh)1 -
[Developed a script that will trigger beeping sound on any laptop activity like a Skype message or incoming email]
Work for home Routine:
9:00 AM: Wake up, turn on Laptop, connect to Internet, Sleep again.3 -
CTO: Trigger email to everyone when internet goes down. Do this by EOD.
Me: OK
Later
How could I send email without internet.
Confused....5 -
!dev
my boss is apparently upset that i don't turn his way when he enters the room, something about hierarchy and respecting authority. while that's a petty bs thing to be upset about, I'm not very good with social cues and conflicts with authority figures trigger me due to past events.
I can't help wonder if this demand for a show of respect is gender biased. it hasn't escaped me that all the people he has an issue with are women and he has a history of chasing his female workers away.
idk, i just don't want to do this shit again. it would really help to have a female perspective on this.18 -
WHAT THE FUCK.
I have to deal with a fucking bug that crashes my app only when I'm NOT looking for it.
I investigate another bug? Then BAM, here it is and crashes the app. And I have to start over again find the right conditions to not trigger it again.
I investigate that bug? Nope, everything runs as smooth as velvet.
It's like a Heisenbug, but the cat is dead in the box AND pissing all over the lab at the same time.3 -
Completely 100% not dev related.
But really I need the opinion of smarter people. Tell me how I don't make fun of the way people look, talk down on others regardless of <whatever>. Try to be as nice as possible to everyone, but the moment I say that I am not attracted to overweight people (women in my case since I am a heterosexual male) am I suddenly fatphobic and hate fat people. First of, phobia means fear, and I can assure people that fat people don't trigger any fear response from my end.
Nor do I disregard them as humans just cuz of them extra kilos. But suddenly because I explain how I can't be sexually attracted to someone that is overweight am I fatphobic?
This shit baffles me.48 -
You want to call a function? STOP!!!
Nowadays it is so amateur and old fashioned! Instead you must:
- Make a soap request
- Write a router to handle soup requests
- Write an XML to define which controller responds to this request
- Write an XML parser on top of another XML parser
- Write a controller to trigger an event in response to the request
- Write an XML which defines the event
- Write an XML that defines the event observer
- Write a plugin which calls event observers
- Write a router which delegates the task of calling event observers to that plugin
- Write an event observer which calls another plugin
- Write a plugin that "Calls a function".
It's better because... it's more Object Oriented!21 -
Hey guys and girls ^~^
I hope this question is ok as it's not entirely dev related.
I'm planning on building a custom cattracking device that i can attach to a cat harness. It obviously has to be very small and light. This is why i had the pi zero in mind.
I want to track my cat via Gps and send location via gsm (and use a trigger if he connects to my wifi to set off an alarm so i can let him in).
My experience with pi's is limited but i have some with arduinos.
Besides that i would need a case which keeps the pi save from dust, humidity and maybe rain but won't interfere too much with the gsm signal.
First: is this even possible?
If yes, what would you recommend?
Are there better ways to do this?
Thanks to all in advance35 -
This will definitely trigger some people.
New smartphone releases aren't 'tech news'.
An implementation of a technology ripped off from other devices (GPS, VR etc..) isn't 'tech news', it's just implementation of an existing technology.
So please, everyone who reads the self-called 'tech news' to look for a new phone release to waste money on - stop calling yourself a 'tech geek' - "Oh my god, I'm such a tech geek, it's embarrassing - this new iPhone was released and I just couldn't wait to get spend my money on it".
Just shut the fuck up - you are willingly dragging a tracking device everywhere you go and you are PAYING for it to look cool and be full of features you won't even fucking use.12 -
Trigger Warning - Don't date JavaScript developers.
They Promise to Callback but they won't. You'll Await in vain. They don't know how to Express themselves and React to such situations.
You might not be happy to hear this, but I'm trying to save you from a Garbage situation1 -
Arduino just Rick Roll'd me. Their buzzer example code plays the tune...so I hooked it up to a photosensor and threw it in a cabinet...next time my wife opens the cabinet, the light flooding in will trigger the song. I have a comfy couch 😂4
-
I'm doing my own sci-fi D&D story and need some new weapons! So why not use programming names? 🤔
So far:
voidpointer
nullifier
destructor
finalizer
One player is also a dev and I want to trigger him as hard as I can 😈6 -
This is an old friend of mine, who recently joined the company I work with, 6 months back. And this is what he pinged me with yesterday.
This should be considered harassment at workplace, and trigger social, psychological, emotional, physical and all other sort of distancing.8 -
Hi
I'm an active user here so I know most of you.
I created a throwaway because I consider this a sensitive subject to me, and don't want people here to think I'm crazy.
I have some form of ocd but I don't know exactly which subtype it is.
It's not really something that makes my life impossible, but it makes me feel awful from time to time.
the way it works is that I imagine accidents happening to me or people I love, and I get triggered more if they are potentially caused by a mistake from me and they feel very vivid in my mind.
It's awful and terrifying.
Being close to anything that could cause harm is a trigger:
heights without any type of fall protection, knives, elevators, escalators, being on a plane
Being close to/in said objects/situations can start a clip in my mind as if I was watching a final destination movie.
This is a stronger obsession if it happens because of my fault, like tripping with my kid in my arms, or fumbling a knife while I cook.
Sometimes I react by curling and doing a painful expression and twitching a bit, even in public.
it's terribly painful.
i look like a crazy person, although considering what I'm writing, i probably am. It's just that I feel very scared of strangers in public noticing what I'm doing and finding out I'm crazy.
sometimes I get scared of the possibility of me being an actual psycho like the ones you see on crime shows.
as far as i know i think im normal in terms of compassion, empathy to others and never had any interest in harming others.
it's just part of the ocd, being hypervigilant of me, obsessing over me causing harm either accidentally or deliberately.
I'm also very scared of puking in public, or even worse, in front of friends.
Specially true if you're eating but you're seated in a spot where there's no way out except if everybody gets up.
I start by becoming self conscious of the possibility of puking, and sometimes I twitch a bit too, while trying to not look too crazy and joping that the next bite doesn't cause me to projectile vomit over people.
I hate this shit.15 -
[wordpress trigger warning]
Had an idiotic colleague who re-implemented the insert image function as a shortcode. A “senior php developer”. No, I’m not kidding.
Him: “But this way we can set a class”
Me: “As you can with the standard mode”
Him “No you can’t”
Me: *shows*
Him (smiling): “well why don’t you remove my stuff then?”7 -
sends me a "screencap.avi" on slack. I download and open it, and it's a video of an IE bug where the width of the scroll bar itself takes up just enough that the content gets enough height to trigger a scroll bar to appear, so the whole page keeps twitching because the scroll bar keeps appearing and disappearing every second. LMAO FML FUCK IE7
-
Fucking non technical managers and their shitty clients to whom they suck their tiny weiners need to realise that I cannot reorder elements every 10 minutes to the shape of their fart comming out of their ass, test it, deploy it, trigger webhook, clear cloudflare cache, and meanwhile be sure that it's written in quality manner for future upkeep with commits that have sense.Hope deadline driven development dies in hell where it belongs
-
I wonder how many bitflips did they trigger last night...
Looks pretty. But much too scarry when you understand what it is.3 -
!rant I pity anyone who may have overheard my interaction with a gecko that managed to sneak inside my house when I went to get a package on my doorstep last night around midnight
“Hey little guy, let’s try to get you to go back outside, okay? Nonononooo not that way, fella. Down the wall. DOWN. DO NOT CLIMB BACK UP. Okay. Yeah, see, there you go. Good job. OH MY GOD DO NOT DO THAT. Listen, I think you’re fucking cute, okay? BUT IF YOU CHARGE AT ME LIKE THAT, YOU TRIGGER MY FEAR RESPONSE AND YOU MAKE IT REALLY HARD FOR ME NOT TO KILL YOU. Hooooooly shit, little dude. You were so almost dead. Okay. Okay, yeah, go out the door. Door. Yesssss.”
closes door, only to realize little dude’s tail is still on this side
“OMG LITTLE DUDE, are you okay?!!” opens door, little dude sneaks back inside
“Noooooo you need to go outside. Come on, you know you want to go outside”
Finally managed coax him out the door and confirmed he’d cleared the doorway before closing and locking it.5 -
Hired a friend who is kindoff a spoiled brat. If me or the rest of the team tell him anything he answers with the team does not know enough to tell him what to do. The slightest words (why is it not done yer etc. seem to trigger his ego and threaten to resign). His skills are also not what i thought they were , they get the job done but thats pretty much it. Should i work to placate his ego or let him resign.10
-
Dear Dark Side #3
Honor the hackers who made your childhood:
Store text in .nfo
Trigger a midi when someone makes a patch
Send ASCII art to your graphics dept6 -
#wk126 yeah I'm late, I was too lazy to post in time.
Made an IFTTT trigger that WakesOnLAN my desktop using my Echo.
"Alexa, trigger my pc."7 -
it's decided, i'm creating a programming language specifically to trigger SJW (like the idea of C+=) which starting to corrupt this industries.
perhaps it's not gonna be huge, so i will blend this with my original idea; a simple language to fix python syntax that a lot of people didn't like who come from C like syntax which transpiled to python code.
maybe it's silly, but this need to be done. at least for my self.11 -
This is a proposal for an entirely free and open source rant like site/app.
devrant today has a couple of problems that I hate:
* Posts in the wrong categories (usually by new users)
* Low effort posts in the "recent" feed
* Good posts in the "algo" feed that are too old
* Longtime bugs
* No official code format in comments, ffs.
* Unimplemented features (like inability to search posts in android, or inability to mute posts in web desktop)
* Lack of admin involvement with the community
but it also has some aspects that I like a lot:
* Admins aren't trigger happy to suspend/ban you
* The avatars are awesome and help to associate users to faces
* The ++ system is good enough
* The community isn't too big so you know pretty much everyone
* There's a lot of variety in the roles and techonologies used by users
* Experienced ranters are usually smart
* Super simple UI
* The comments have only one level (as opposed to reddit comment trees)
This project should try to reimplement the good things while fixing the bad things.
I wrote two posts about a possible manifesto, and an implementation proposal and plan.
https://rantcourse.ddns.net/t/...
https://rantcourse.ddns.net/t/...
I think the ideas outlined there are very aligned to concerns of privacy and freedom users here vouch for.
This project is not meant to **purposefully** replace/kill/make users abandon devrant. People can continue using devrant as much as they want.
I'm hosting a discourse site on a 5$ linode machine to discuss these things. I don't know if it's better than just github.
If you feel that you would like to just use github issues, let me know. I'll create a github org tomorrow, and probably setup gitter for more dynamic discussion.21 -
What would you change if you were the owner of a site like devrant?
I've been in devrant for weeks now and the thing I like the most of it is the community (at least most of it).
If you are going through a bad time, they wish you well.
People here also seem to have very decent work experience.
In general, they seem to be open towards other technologies and honest about their shortcomings.
I also like that the site (for better or worse) is not insanely moderated.
For example, in reddit, it's very easy to get a post removed because it doesn't abide to the rules. They can be rudiculous strict, and mods can be trigger happy.
I'm not denying the existence of any moderation here, but for example I've seen some pretty graphic sexual comments, and I appreciate that anything goes (except being a dick ofc).
And I guess that the fact that the community is so chill has to do with that, there's not a huge need for moderation (unless I'm totally oblivious).
But how do you keep a community like that?
I've seen people complaining about the influx of new users and the spam of shitty memes.
How do you keep devrant cool while letting new people join?
I think a necessary thing is that you separate the people into 'universes' and each universe has a limit of x users. And somehow the users are distributed in a way that the average level of 'user likes the universe they're in' is maximum.
Now, how do you create that? Not sure, maybe you let users vote whether they like the other users or not (such votes being hidden to others ofc) and let users switch unis if they don't like them.
What ideas do you have?8 -
Why do people mix JS vanilla with framework syntax? That's horrible.
Why do people use jQuery anyways? There's no need at all anymore. It is just dumb JS for dumb devs.
Did that trigger you? - well....7 -
!dev
I need to rant about something that has been on my mind lately.
Someone, actually. Friend/romantic interest of mine, from a few years back.
NGL, I liked him. A lot more than I should have. The man had his own issues, but I refused to tolerate his poisonous behavior. Truth be told, didn't want to hate him, even though he was trying his best to get me there. And so, one day I ended up blocking him after a fight. A few months back, I tried to reconnect. Same behavior. But this time around he did say that he was done with me. So instead of sitting through the torture of his "reasons why you suck" presentation, I blocked him again.
Now, I hope he's doing well. Never wanted anything but happiness for him. And as much as I miss him, I think it's better for him to stay away from me too. I mean, if I trigger him that badly, maybe I shouldn't be around him anyways.
Nowadays, I'm staying away from someone else again. Similar scenario. Reason being that I was actually being mistreated, and again I refuse to be tortured to the point of hating the object of my affection.
I wonder if I get attracted to the torture. I'm okay with dying alone tbh, what I'm not okay with is falling for those who don't want my love and much rather kill it.
... Actually, at this point in life I don't even want to fall for anyone anymore. (That is not the same thing as dating someone I like tho. That, I would do) The darker side of me says those who I fall for are all the same type of disappointment, but the brighter side says that I am enough, complete as is, and not everyone needs someone else. idk maybe I'm being a tad narcissistic, or hyper-independant, or flakey and afraid of attachment. But that first friend occasionally pops up in my thoughts, and reminds me that not everyone appreciates when you don't let someone make you hate them.
Oh well. *sigh*6 -
My business partner who claim to be the best Wall Street programmer, probably 160 years ago, decided to improve our core system written in Go.
He dragged a *shortcut* of *whole* local github folder into Vendor(sort of node_modules), Manually changed commit hash in Gopkg.lock, etc,
Next morning I woke up to 24 failed builds on Master; all protobuf redone with his unknown gogo version, database trigger function with changed logics added parameters, and a text message “has anyone experienced build corruption? Works on my mac”
My other business partners said “it’s okay, He’s going through tough divorce needs some distraction”
F M L1 -
!rant
@dfox Does devRant have webhooks? I would like to start processing rants and performing analytics on them but I don't want to tax your servers by polling for them.
All I need is a trigger when a new rant is created.14 -
Idiots. Just... Fucking Idiots.
Junior Frontend dev got a feature to implement. Decided to add a field to a set of mongo collections. I'm the responsible adult for those collections. Talked to the junior - told it, "don't do that, you will lose the data you are adding later". Junior says "will not happen", and goes on to try and prove It is "Right". Problem? Junior is an Idiot. did not trigger the data loss scenario. So... Junior got his TL to talk to the RND manager. And those Idiots Decided that the implementation will go forward as is.
Data loss will happen. QA will not find it. Only the client will experience the data loss, and complain....4 -
Pull-to-refresh is useless.
If you are a mobile app developer, please get rid of pull-to-refresh. Your users will thank you.
I have the impression that mobile app developers choose to implement the pull-to-refresh gimmick just in order to make their app comply with a design trend. It seems like a desperate attempt to appear "modern" and "fancy", not because of the actual usefulness of the gesture.
Pull-to-refresh is one of those things that are well-intended but backfire. It appears helpful on first sight, but turns out to be a burden.
It takes effort and cognitive strain to avoid triggering a pull-to-refresh. The user can't use the app relaxed but has to walk on eggshells.
Every unwanted refresh wastes battery power, mobile data (if it is an Internet-connected app), and can lead to the loss of form data.
To avoid pull-to-refresh, the user has to resort to finger gymnastics like a shorter swipe for scrolling up or swiping slightly up before down. Pull-to-refresh could even be triggered while pinch-zooming in or out near the top of a page, if the touchscreen does not recognize one of the two fingers.
Pull-to-refresh also interferes with the double-tap-swipe zoom gesture. If one of the two taps are not recognized, a swipe-down to zoom in can trigger a pull-to-refresh instead.
To argue "if you don't like pull-to-refresh, just don't use it" is like blaming a person who stepped on a mine, since the person moved and the mine was stationary.
A refresh button can be half a second away in the menu bar, URL bar, or a submenu, where it is unlikely to be pressed accidentally. There is no need for a gesture that does more harm than good.
Using a mobile app with pull-to-refresh feels like having Windows StickyKeys forcibly enabled at all times. The refresh circle animation sticks to the finger.
If the user actually wants to refresh, pull-to-refresh is slower than a refresh button in a menu if the page is not at the top, meaning pull-to-refresh is useless as a shortcut anyway if the page is in any other position than the top.
An alternative to pull-to-refresh is pull-for-details. Samsung did it in some of their apps. Pulling down against the top reveals additional information such as the count and total size of selected items.
If you own a website, add this CSS to make browsing your website on the pre-installed Android web browser not a headache:
html,body { overscroll-behavior: none; }
Why is this necessary? In 2019, Google took the ability to deactivate the pull-to-refresh gesture on their Chrome browser for Android OS away from users. On Chrome for Android, pull-to-refresh can only be disabled on the server side, not the user side. The avalanche of complaints? Neglected.
Good thing several third-party browsers let the user turn off this severe headache.12 -
Oh, $work.
Ticket: Support <shiny new feature> in <seriously dated code> to allow better “searching” (actually: generating reports, not searching)
UI: “Filter on” inputs above a dynamic JS table don’t update said table; they trigger generating a new report.
Seriously dated code: 12 years old. Rails v3-isms. Blocks access without appropriate role; role name buried in secrets configuration files. Code passes data round-trip between server/client/server/model that isn’t ever used. Has two identical reports with slightly different names, used interchangeably. Uh, I guess I’ll update both?
Reports: Heavily, heavily abstracted; zero visibility.
Shiny new feature: Some new magical abstraction layer with no documentation nor comments. Nobody in my team knows how it works. The author… won’t explain, but sent me her .ppt presentation on it (the .ppt, not a recording).
Useless specs for seriously dated code: Tests exclusively factory-generated data; not the controller, filters/lookups, UI, table data, etc.
Seriously dated code and useless spec author: the CISO.
The worst part: I’m not even surprised at any of this.2 -
I don't need you to reiterate what the problem is. I am aware. I was the one who told you what the problem is. Via email and Slack. Why do you keep restating it to me like you are the one who figured out? I know the table isn't syncing with the third party object. I'm trying to figure out WHY. No amount of "I'm pretty sure the sync process is broken" will trigger a solution. Stop coming into my office every 5 minutes with a new "revelation" that wasn't even your own. This isn't my code, and since the owner of said code is not here to fix it, I have to spend some time figuring out how this damn thing works. SO PLEASE, FOR THE LOVE OF GOD, LET ME WORK SO I CAN FIX THIS2
-
Firebase... the kind of hosting you seem to be friends with, but if you're honest, you would really like to kill it by sticking a flamethrower in its ass, happily pulling the trigger, while singing "Oh happy day" in full vocals.
The people who wrote the whole thing must have smoked crystal meth through a hobo's raped intestine to come up with such a turd fest. WTF.
If it wasn't for my boss, I'd have ran far away to nerver hear of this tripper infested crap again!5 -
Today, I was so certain that all the functionalities were implemented to handle some webhook calls from a third-party service. It's a script I wrote that has been running for 2+ years uninterrupted or without any issues.
We got some "complaints/notices" today that some "special" actions weren't registered, so I thought that the third-party service just didn't send those actions via their webhook. After some research I found a part where they explained that those actions trigger the webhook like any other action etc. So..
First thought: "okay, maybe they implemented that at a later stage" (was not the case)
Second thought: "maybe this is not what the client meant" (it was)
Third thought: "Then it should have been implemented" (it wasn't)
Okay, time to look at the code to see where this could get handled but apparently isn't. All the actions look good, nice, clean handeling etc, nicely documented code (gave the 'past-me' mentally a high-five)..
I scroll further down to that specific action and it was quiet obvious why it didn't work.. I just see an empty function with the comment:
"//TODO: maybe handle this action one day. don't know what this does atm, probably unused.. Will take a look at it next week.."
.. :D
I took my 'high-five' back..I just needed to copy-paste some other code and change 1-2 parameters..1 -
DEPRESSION TRIGGER WARNING
Every once in a while, I feel depressed.
From who am i, where am i questions to what will i do in the future to sustain myself...
But what hits me so hard every single time is what will happen if i die...
So i disappear
From here.
As if i never wake up again from my sleep
It is like
Gone
I don't know how to explain but..
It terrifies me
Think about it
You... Poof!
Gone
From this world
And if you have no kids,well,
Gone. Completely
.......
G.O.N.E.12 -
I found this on a wiki with Haskell Humor... it's interesting...
How to Shoot Your Self in the Foot With Haskell: Putting the unsafe in unsafePerformIO!
You shoot the gun, but the bullet gets trapped in the IO monad.
Couldn't match expected type 'Deer' against inferred type 'Foot'.
While compiling your program the compiler produces a type error long enough to overflow a kernel buffer, overwrite the trigger control register and shoot you in the foot.
After trying to decipher the type errors from the compiler, your head explodes.
After you've finally found a way to circumvent the type system and shoot yourself in the foot, Oleg appears out of nothing and shoots you in the foot for coming up with it before him.
You shoot the gun but nothing happens (Haskell is pure, after all).
Your foot is fine, until you try to walk on it, at which point it becomes mangled.
You have a shootFoot function which you've proven correct. QuickCheck validates it for arbitrary you-like values. It will be evaluated only when you end up at the hospital. You hope this doesn't come to pass, as it actually returns a bullet-ridden copy of yourself and you don't want to be garbage-collected.
foreign import ccall "shootparts.h shootfoot" shoot_foot :: Gun -> Programmer -> IO ()
shootSelfInFoot = unsafePerformIO . shoot . foot $ self -- Shoot self in foot 0 or more times depending on evaluation order
No instance for (Target Foot)
arising from use of `shoot' at SelfInflictedInjury.hs:1:0
Possible fix: add an instance declaration for (Target Foot)
In the expression: shoot foot
You go to shoot yourself in the foot but the bullet is in the ST monad and the gun is in the IO monad, so you can't.
You ask Haskell to shoot you in the foot but by the rules of lazy evaluation you don't need the result yet so it doesn't happen.
You decide to shoot yourself in the foot but get distracted devising a ballistics algebra and wondering if you can do the calculations in the type system.
You want to shoot yourself in the foot but realize there is no Gun datatype so use Arrows instead.
You shoot in the direction of your foot, but since you are inside the STM monad you can just retry until you figure out what to do.
You shoot yourself in the foot, but you are perfectly fine as long you just don't evaluate the foot.
You shoot yourself in the foot, but nothing happens unless you start walking.
Don't forget about memory consumption! If you don't look, the bullet causes heap overflow. If you look, the bullet causes stack overflow.
You *appear* to have deliberately shot yourself in the foot, and yet your program actually runs perfectly OK due to lazy evaluation. (So long as you remember to not look at your foot...)
You aim the gun at your foot, pull the trigger and remove the clip. When you look at your undamaged foot, the hammer clicks on an empty barrel.1 -
This will definitely trigger many but the truth regardless of how you feel is the greatest programmers are those who understand both the hardware level and software .. only then are you more than a dev or programmer.. you are an engineer...
I challenge the devs who dis believe to go out and learn to build circuits, write optimized, efficient bare metal code.: no sdk.. no api... no drivers ..remove the unneeded abstraction layers that have blinded you...build it yourself, expand your potential and understanding..
Not only will you become more valuable overall, but you will write better code as you are more conscious of performance and space and physics of the physical layer.
I’m not talking about Arduino or raspie
Those who stand strong that high level abstraction languages and use of third party apis is a sufficient sustainable platform of development are blind to reality.. the more people who only know those levels, the less people pushing the industry of the low level.., which is the foundation of everything in the industry.. without that low level software the high level abstractions and systems cannot run
Why did we have huge technology advancements from 70s to early 2000s.... because more people in our industry understood the hardware layer..: wrote the software at the less abstracted layers..
Yeah it takes longer todo things at that low level abstraction.. but good robust products that change the world and industry don’t take a few week or months to build.....
Take this with what you will... I’m just trying to open the eyes of the blind developers to the true nature and reality of our industry23 -
I have an Android phone. Pixel 2 to be exact, and I love it. Many family members and friends of mine have iPhones. To each their own.
Having said that, I absolutely HAAAATE the stupid iPhone feature that lets users react to text messages. Today all those iPhone users added me to literally 5 different SMS groups (which by themselves are their own sin), chatting up a storm all evening. I already hate group texts, please, leave me alone. But it gets so much worse when my phone blows up with twice as many messages because so-and-so "liked" this message, and so-and-so "laughed" at that message. It sends you their chosen verb alongside the ENTIRE original text AGAIN.
Such a stupid feature, leave Facebook on Facebook, why the hell do text messages need reactions? I don't give a shit that you liked or laughed or loved that so and so said they will be there at 9 o clock.
At least i have the ability to mute notifications for each group otherwise I'd be replying to every group text I get with a trolling big trigger item or something super inappropriate until they stop. Don't want this to continue? Stop group texting me, stop reacting to texts, and don't do it again.9 -
The good: use the hardware watchdog in your application control flow.
The bad: don't use a watchdog.
The ugly: trigger the watchdog from a fucking timer interrupt.3 -
Always test your fucking mocks
I spent 3 weeks debugging every part of the application, except for the mock network connection. The mock network connection didn't trigger closing events on the sender side. -
Anyone else have trigger words that make them excited about programming?
I can come home from a full day of work, hear the word "append" or "include" and then instantly want to down an energy drink do another 8 hours.5 -
!rant
I just saw someone write about how much he hates school and it reminded me of all I am about to say:
I go to a fancy private school in my country full of shitheads and idiots that think that they can rely on their parents money for the rest of their lives, are always concerned about the latest trends (yeezys, dabs, fidget spinners... etc) and it just gets on my nerves as I have to live with all that and have almost no friends since I failed my class two years ago, when I sit in school I can't focus on anything the teacher says which in turn contributes to my shit grades and there is nothing I can do about it. I have been diagnosed with persistent depresseive disorderand bouts of major depression and my mom won't accept to give me adequate medication because she says(although this is not always the case) that antidepressants can trigger the bipolar disorder that runs in my family, and on top of all this shit, ever since I was 7 I have been raised by my single mother after my father died (I never tell people that my father is dead usually because I hate the look of pity I get coming out of their faces) and my mother has been screwed over for all her life because she can't make a good decision or call bullshit even if you put a gun to her head.
And what I hate most about all that is that I have no one to talk to because my mom is one of those religious freaks so I can't talk to her about my real deep thoughts, and every psychologist or counselor I have been to has been shit.
And this is just another chronicle of my miserable fucking existence.11 -
2020 seems to be the year of the "dev who has never seen scale."
TypeA -> "Here's a reasoned explanation for a change I think we should make. Here is the current deficiency analysis, here is the desired resolution, here is the course of action and all calculations leading to the resolution + data. This will have x,y,z beneficial result according to our operational metrics."
TypeD -> "Those were words. Why do you need that? Change is bad, learning is worse. This will just slow me down, development speed is all that matters; there is no chance that a poorly considered/factored/checked design could ever require a ground up rewrite or fuck us utterly in the long term. Why do you make my life harder? We could x -> y -> zBUTI haven't done the math and I really don't see the benefit in x, so z is pointless. What even is scale?"
The consequences of the war caused by the ever-widening gap between engineers and developers is low key terrifying.12 -
I used to think my first relationship was awful. I went through so much and rather it served as a trigger for my childhood trauma as well.
Little did I know that it would be the best the thing that could happen to me. I grew so much and every next woman I met, I realised how fucking amazing my ex is. God I miss her terribly.
But what happened with my recent fuck up, I am devastated. This toxic women brought out the worst in me. I have never been so hateful against myself or anyone else in the world.
I was love bombed and walked into a trap. I quit as soon as I realised what it was.
My values were comprised. My integrity was put to test. My trust was intentionally broken. During the initial days, she tactically identified my vulnerabilities and insecurities. Then used to sadistically trigger me as often as she can and sit there and watch me in suffer pain.
It led me to self harm and being suicidal.
I am so badly wounded that even after few weeks, I am still discovering all the wounds. It will surely take some time along with external support to build a healing environment for myself and overcome this damage.
I am very angry, terribly hurt, lost and confused. This shit developed a phobia in me. I cannot trust anyone anymore. I constantly live in fear of being hurt (physical, mental, and emotional). I am paranoid of that stalker.
I don't think I'll ever be able to start and build a healthy relationship with anyone. I used to be sooooo fucking strong emotionally and mentally. But now not only my trauma relapsed but I got more issues within me.
I really want to live a free, healthy, happy and a fulfilled life. I don't know when time will heal this but right now, I am in terrible pain and hate myself a lot.9 -
Pulled into an 'emergency' meeting with a group of web designers deeply concerned a particular service wasn't going to meet all their requirements.
DevA: "For each page, Its going to be A LOT of work to retrieve all the data and store it's state. Every page load will require a round trip to the service."
DevB: "Yes, we aren't sure how the service should be changed to do what we need."
Mgr: "What is it not doing now? Doesn't the service already returns all the necessary data?"
DevA: "Well...um...its all the boolean fields. Some may be defaulted from the database or false because the user unchecked the box. We have to know which is which"
Me: "Why? Are you doing anything different in the UI? Checkbox will be true or false. What or who set that value is irrelevant"
DevC: "Well, it matters if the user didn't fill out all other other values."
Me: "How so?"
DevA: "Its matters because the values in the other fields. Its going to be A TON of work to figure out."
<mgr goes to the white board>
Mgr: "Lets map this out...what fields are you needing to trigger the state on?"
DevA: "Um...uh...the 'Approved' field...and um...'OK to Contact' field"
Mgr: "Just those two?"
DevA: "Yea..um...there are other fields, but whether or not to show the edit box depends on those two."
Me: "The service already returns data, you only have two fields to check? I don't see a need to change the service at all."
DevA: "Returning all that data, we are going have a serious scaling problem. We'll be hitting the service A LOT. All that javascript could cause performance problems too"
Me: "How much data are we talking about? Name, address, couple of booleans?"
DevA: "I have to serialize the data. All that logic is going to be reeeaaallly complicated. It might be better if the service returned only the data I need."
Me: "$64,000 question, how often is this feature going to be used on the web site? Maybe once? Few hundred a week?"
Mgr: "We have no idea. A lot of the data will be pre-populated and we're only sending out a few thousand invitations. More around the holidays...but honestly, not very many."
Me: "Changing that service only for this particular area of the web site isn't going to happen. Changing the UI is the only course of action."
DevA: "Oh frack I can't wait until this project is over."
DevA...how the funck do still have a job here? You wasted about half-hour of my time with your cry-baby crap. Where is my hammer...no...no..don't go there...ahhh...thanks devrant. Prison sentence diverted.2 -
IHateForALiving: I created a trigger on the model, every time you perform a save it should fire an event. You're calling the same methods I am, and the trigger is NOT firing. Are you sure we are running in the same process?
TheTeamLeader: I'm manually starting this whole piece of code in your same process, there must be something wrong on your side if it's not working
90 minutes of debugging later
TheTeamLeader: there's the thing! Your hooks are registered in a separate process, of course they are not firing
IHateForALiving:rant and that explains everything i'm seeing as target practice for knife throwing your mother used your forehead1 -
Trigger warning:
Emotional !dev love life rant
I think this is not the right place to pour my heart out, but despite its more recent infights I still consider devRant to be a special community to me. And I guess if devRant is my goto place for support that's an issue. But maybe I just need to shout into a void because this is not about you solving this for me.
I have been in this relationship for ~6 years. My first great love. In the beginning, everything was perfect - a love story like from a cheesy movie. We've been through a lot to be together: Long distance, moving countries, a ton of bureaucracy (as she's from another country). So many memories.
It came as a surprise to me when she ended things. It really shouldn't have been. We've talked a lot about the reasons and I now see how much I've taken her for granted and neglected our relationship. I see now how I've been avoiding my problems and how I didn't work on my (mental and physical) health issues as good as I need to - not just for any relationship, but for myself. The regret/shame/guilt of not giving it 100% and of neglecting her weights heavily on me (besides the loss) and I am not sure what is worse.
Besides our relationship withering because of neglecting emotional needs, she also questioned our compability. We certainly have differences and different interests and we're both somewhat uncertain whether we really fit, if we ignore our history/emotions. It is actually a question that popped up in my head before sometimes, but I was too afraid to look into it for fear the answer is no. But here we are and ignoring that didn't help.
For now, we both need time to think about what we really want and whether this includes the other. We agreed that we need some distance to process the feelings. We still live in the same flat but for now she's staying with a friend most of the time and I'll also have a friend's place available soon. If in some time we both feel like we want to be together, we can date again - however she was also clear that she doesn't want to give any false hope and her current vision doesn't include me. If not, well have to hire a divorce lawyer. (Why you need a lawyer for that if both agree is beyond me.)
I am shattered. When it became clear to me that the relationship is over (and I ruined it), I got nauseous to the point that I threw up constantly for 6 hours. For the following 2 days I only cried and haven't eaten. Third day I started cleaning up the flat (long overdue!) - mostly for her tbh but I know it's good for myself, so better do the right thing with wrong motivation than sob all day -
talked to my psychiatrist and she brought some lunch which I could eat. Today (fourth day) she came over and we cooked lunch. I am still feeling terrible but the first days have been the worst I've ever felt and I've been trough quite a bit of (physical & chronic) pain - emotional pain hits different.
Let's see how this works out. In any case I now know very clear that I can't continue like before and need to work on my issues (for my own sake). I want be my best self, even if right now I don't have a lot of energy and am very depressed. I got an appointment with a therapist tomorrow - something I should have done years ago but I was overwhelmed with anxiety and analysis paralysis. I hope the future will be brighter and while I still wish to wake up from this nightmare and realize my faults without this breakup, I also know that I have to face reality.
PS: I do feel better now after writing this out. Thanks for listening, I guess.29 -
I often read articles describing developer epiphanies, where they realized, that it was not Eclipse at fault for a bad coding experience, but rather their lack of knowledge and lack of IDE optimization.
No. Just NO.
Eclipse is just horrendous garbage, nothing else. Here are some examples, where you can optimize Eclipse and your workflow all you like and still Eclipse demonstrates how bad of an IDE it is:
- There is a compilation error in the codebase. Eclipse knows this, as it marks the error. Yet in the Problems tab there is absolutely nothing. Not even after clean. Sometimes it logs errors in the problems tab, sometimes t doesn't. Why? Only the lord knows.
- Apart from the fact that navigating multiple Eclipse windows is plain laughable - why is it that to this day eclipse cannot properly manage windows on multi-desktop setups, e.g. via workspace settings? Example: Use 3 monitors, maximize Eclipse windows of one Eclipse instance on all three. Minimize. Then maximize. The windows are no longer maximized, but spread somehow over the monitors. After reboot it is even more laughable. Windows will be just randomly scrabled and stacked on top of each other. But the fact alone that you cannot navigate individual windows of one instance.. is this 2003?
- When you use a window with e.g. class code on a second monitor and your primary Eclipse window is on the first monitor, then some shortcuts won't trigger. E.g. attempting to select, then run a specific configuration via ALT+R, N, select via arrows, ALT+R won't work. Eclipse cannot deal with ALT+R, as it won't be able to focus the window, where the context menus are. One may think, this has to do with Eclipse requiring specific perspectives for specific shortcuts, as shortcuts are associated with perspectives - but no. Because the perspective for both windows is the same, namely Java. It is just that even though Shortcuts in Eclipse are perspective-bound, but they are also context-sensitive, meaning they require specific IDE inputs to work, regarldless of their perspective settings. Is that not provided, then the shortcut will do absolutely nothing and Eclipse won't tell you why.
- The fact alone that shortcut-workarounds are required to terminate launches, even though there is a button mapping this very functionality. Yes this is the only aspect in this list, where optimizing and adjusting the IDE solves the problem, because I can bind a shortcut for launch selection and then can reliably select ant trigger CTRL+F2. Despite that, how I need to first customize shortcuts and bind one that was not specified prior, just to achieve this most basic functionality - teminating a launch - is beyond me.
Eclipse is just overengineered and horrendous garbage. One could think it is being developed by people using Windows XP and a single 1024x768 desktop, as there is NO WAY these issues don't become apparent when regularily working with the IDE.9 -
# Retrospective as Backend engineer
Once upon a time, I was rejected by a startup who tries to snag me from another company that I was working with.
They are looking for Senior / Supervisor level backend engineer and my profile looks like a fit for them.
So they contacted me, arranged a technical test, system design test, and interview with their lead backend engineer who also happens to be co-founder of the startup.
## The Interview
As usual, they asked me what are my contribution to previous workplace.
I answered them with achievements that I think are the best for each company that I worked with, and how to technologically achieve them.
One of it includes designing and implementing a `CQRS+ES` system in the backend.
With complete capability of what I `brag` as `Time Machine` through replaying event.
## The Rejection
And of course I was rejected by the startup, maybe specifically by the co-founder. As I asked around on the reason of rejection from an insider.
They insisted I am a guy who overengineer thing that are not needed, by doing `CQRS+ES`, and only suitable for RND, non-production stuffs.
Nobody needs that kind of `Time Machine`.
## Ironically
After switching jobs (to another company), becoming fullstack developer, learning about react and redux.
I can reflect back on this past experience and say this:
The same company that says `CQRS+ES` is an over engineering, also uses `React+Redux`.
Never did they realize the concept behind `React+Redux` is very similar to `CQRS+ES`.
- Separation of concern
- CQRS: `Command` is separated from `Query`
- Redux: Side effect / `Action` in `Thunk` separated from the presentation
- Managing State of Application
- ES: Through sequence of `Event` produced by `Command`
- Redux: Through action data produced / dispatched by `Action`
- Replayability
- ES: Through replaying `Event` into the `Applier`
- Redux: Through replay `Action` which trigger dispatch to `Reducer`
---
The same company that says `CQRS` is an over engineering also uses `ElasticSearch+MySQL`.
Never did they realize they are separating `WRITE` database into `MySQL` as their `Single Source Of Truth`, and `READ` database into `ElasticSearch` is also inline with `CQRS` principle.
## Value as Backend Engineer
It's a sad days as Backend Engineer these days. At least in the country I live in.
Seems like being a backend engineer is often under-appreciated.
Company (or people) seems to think of backend engineer is the guy who ONLY makes `CRUD` API endpoint to database.
- I've heard from Fullstack engineer who comes from React background complains about Backend engineers have it easy by only doing CRUD without having to worry about application.
- The same guy fails when given task in Backend to make a simple round-robin ticketing system.
- I've seen company who only hires Fullstack engineer with strong Frontend experience, fails to have basic understanding of how SQL Transaction and Connection Pool works.
- I've seen company Fullstack engineer relies on ORM to do super complex query instead of writing proper SQL, and prefer to translate SQL into ORM query language.
- I've seen company Fullstack engineer with strong React background brags about Uncle Bob clean code but fail to know on how to do basic dependency injection.
- I've heard company who made webapp criticize my way of handling `session` through http secure cookie. Saying it's a bad practice and better to use local storage. Despite my argument of `secure` in the cookie and ability to control cookie via backend.18 -
This is a long post and if someone comments without reading carefully I don't care about that person's opinion.
I have 3 accounts here, and that is a must have for me. Let me explain:
Let's think of people and who they are in layers.
The innermost layers are made of private and intimate things: fears, dreams, shames, basically things that are mostly shared with very close people, like family, best friends, and specially significant others.
On the other hand, outermost layers are the public persona, who you are as a citizen, who you are in your profesion, and so on.
So, you wouldn't normally tell your boss about your favorite sex positions.
Let's also say there can be layers in the middle, and all the layers sometimes overlap, but let's not get too deep into this as I think I got the point across.
Here on I explain the original thesis.
I am a developer, and as such I want to fulfill my needs on dev communities, one of them being devrant.
I wish to learn from other devs, I expose my (sometimes controversial) points of view. I rant about annoying shit in the workplace.
But also, at some level, I wish to be taken seriously as a developer, I wish to build a reputation, and I wish to be accepted, even in a shallow social level. There is a social factor to what we do and it's totally normal.
Now, the problem is that I also would want to express my inner self.
So what I do is I don't use my main account for that, I use another, in fact 2 other accounts.
There are several reasons for that:
* I want to hide intimate shit from trolls.
Imagine I griefpost about a loved one that died, then later found myself in a heated discussion about some language, and then some troll comments something like "I'm glad your x died". i wouldn't react very well.
* I want to keep my posts consistent.
If people become interested in what I post as a dev, then they are going to expect dev related stuff from me. If I start posting like controversial points of view, that's not very cool because I'd be doing like a bait n switch on them.
* I want to maintain a reputation, and I want to not get banned on the main account
Reputation as a profesional is a real thing, and it shouldn't be affected by your personal shit.
Also sometimes you argue, and things get heated, and sometimes you get suspended or banned.
You try your hardest to be respectful, but in some communities, some mods are trigger happy.
By restricting this on your alt account, you're in a way promising that you'll have the upmost behaviour on your dev account because that means being professional.
Now, I said I had 2 other accounts.
The reason for having 2 is because I separate two layers:
In the 2nd account I am open and direct regarding my points of view, and more argumentative, but still trying to be relatively civil. I would also post things that might be controversial or not popular. I try to be real basically.
You can conclude that the 2nd account is the one posting this, since this post could trigger some people.
In the 3rd account, I talk about intimate shit like traumas, fears, emotional pain, things I know I'll get support for (the same support I give others when in need) and are not controversial in any way.
This way I can vent painful things and avoid trolls.
Cool people appreciate it when you're transparent about your shortcoming and dark thoughts.
But it takes one asshole in a high horse to judge you. And sometimes you need to give that asshole the middle finger without being afraid of ruining your reputation
or getting banned,
or being scared of that asshole laughing about your intimate shit (again, I use this account for that)
I know it sounds like I have multiple personalities but I swear I'm ok, and hopefully what I said makes sense. People might say "don't use alt accounts, go to another site", but I find that devrant has some interesting people.
The obvious downside is that you end up knowing people more than what they assume, because you interact with them through different accounts.
This is kinda shady, but I'm not interested in taking advantage of others anyway so...27 -
PSA: If you need to make dummy commits to trigger a pipeline for test purposes, please just use --allow-empty and make an empty one. Don't just add random newlines back and forth in stupid places.6
-
I want a mini replica of a shotgun.
When you pull the trigger I want it to say "Sod off!" in a British accented voice.4 -
Just pulled the trigger on a Librem 5 pre-order. I'm super excited. Android was getting shittier with every release, and ios is even worse(to me), so I was getting distraught about my next phone.5
-
So we have this really annoying bug in our system that customers keep complaining about. I've explained in detail, multiple times, why the part they think is a bug is not a bug and the workaround they keep asking me to apply doesn't make sense, won't fix the issue, and won't even stick (the system will notice that the record they want me to delete has been removed and it will repopulate itself, by design).
I've told them what we need to do as an actual workaround (change a field on the record) and what we need to do to properly fix the bug (change the default value on the record and give proper controls to change this value through the UI). We've had this conversation at least three times now over a period of several months. There is a user story in the backlog to apply the actual fix, but it just keeps getting deprioritized because these people don't care about bug fixes, only new features, new projects, new new new, shiny shiny new.
Today another developer received yet another report of this bug, and offered the suggested workaround of deleting the record. The nontechnical manager pings everyone to let them know that the correct workaround is to delete the record and to thank the other developer for his amazing detective work. I ping the developer in a private channel to let him know why this workaround doesn't work, and he brushes it off, saying that it's not an issue in this case because nobody will ever try to access the record (which is what would trigger it being regenerated).
A couple hours later, we get a report from support that one of the deleted records has been regenerated, and people are complaining about it.
🙄🙄🙄🙄🙄🙄🙄🙄🙄🙄🙄3 -
Existing algos are messed up. The one that personalizes ur feed. FUCKKK.
My YT, Tiktok, IG, Reddit feed are mostly about suicide stories… I just interacted with some posts about anxiety and it led to this. Idk if it’s just me or is this really a trending thing? Coz it’s suicide awareness month??? But dude? That “awareness” might trigger someone contemplating it, like it taps into their confirmation bias.4 -
I didn't WANT to do it, but he left me no choice. He was about to tell everyone the secret that I'd kept for such a long time. I couldn't allow him to do that.
I'm still debating whether it was me who pulled the trigger, I never wanted to, but I did, it changed me.
Now I've been living with his wife, his children, in his house, with his parents and family. I've been to countless reunions and everybody seems to enjoy having me around, claiming that I've 'changed' and become a better person.
My old self seems to have faded away into nothingness, I don't know if I should be happy with that. But I do know one thing,
If such a situation were to come up one more, I'd do it again.1 -
Just got a Google Home. I'm very impressed with it, there's just so many possibilities with it. I just found out I can trigger a HTTP request using my voice (!). So now I need to find out good use cases and build a server.
Ideas?7 -
Unity is the best UI ever! It rocks the UX world.
Windows 10 with unity interface would be purrfect.4 -
Stupid pipeline bullshit.
Yeah i get it, it speeds up development/deployment time, but debugging this shit with secret variables/generated config and only viewable inside kubernetes after everything has been entered into the helm charts through Key Vaults in the pipeline just to see the docker image fail with "no such file found" or similar errors...
This means, a new commit, a new commit message, waiting for the docker build and push to finish, waiting for the release pipeline to trigger, a new helm chart release, waiting for kubernetes deployment and taking a look at the logs...
And another error which shouldn't happen.
Docker, fixes "it runs on my machine"
Kubernetes, fixes "it runs on my docker image"
Helm, fixes "it runs in my kubernetes cluster"
Why is this stuff always so unnecessarily hard to debug?!
I sure hope the devs appreciate my struggle with this... well guess what, they won't.
Anyways, weekend is near and my last day in this company is only four months away.2 -
alias cd='open http://itisamystery.com; cd'
We once tried to add in a sleep in there, so it would delay opening up the website for a few minutes, but it would cd immediately, as to not alert the victim to the trigger.
First time we tried it, it totally did not work as expected. He tried running npm install first thing, and it was like a fork bomb with all of these sleeping threads.
Comment below if you have a good fix! I'm no Linux ninja. Oh, I'd also like to know a good Linux version of this since open is a Mac thing.2 -
Company started automated testing recently, and the devs need to review the test scripts.
The tester assigned to my component writes script to trigger button click and nothing else to verify the result.
I couldn't even. I just left work for the day. -
If you're working on close to hardware things, make sure you run static analysis, and manually inspect the output of your compiler if you feel something's off - it may be doing something totally different from what you expect, because of optimization and what not. Also, optimizations don't always trigger as expected. Also, sometimes abstractions can cost a fair amount too (C++ std::string c/dtor, for example, dtors in general), more than you'd expect, and in those cases you might want to re-examine your need for them.
Having said all that, also know how to get the compiler to work for you, hand-optimization at the assembly level isn't usually ideal. I've often been surprised by just how well compilers figure out ways to speed up / compactify code, especially when given hints, and it's way better than having a blob of assembly that's totally unmaintainable.
Learnt this from programming MCUs and stuff for hobby/college team/venture, and from messing around with the Haskell compiler and LLVM optimization passes.3 -
Trigger Warning (2 of them):
Minecraft is the only redeeming piece of software ever written in Java script.7 -
Spent a solid two hours trying to find out why Vuex wasn't trigger update even though I was changing the state. Only to realise in the previous update I was replacing the root state with some garbage value.
man I fucking hate my life sometimes :( -
Discord...
Okay, I have a lot to rant about discord, but today, exceptionally, to the point.
I have my dedicated server. It has uptime last 3 years better than 99,99% (was down 15ish minutes for maintainance and RAM upgrade and like 10 minutes down becouse hoster's generators failed to trigger when there was outage)
This year it was up 24/7/365.
Why am I saying it?
Well, my TS3 server is up 100% of time this year. Yet still everyone moves to discord and suffers brutal audio quality and audio lags, and outages like right now. Its not first time this year and recently discord was acting up before. Today they scored bigger downtime than my dedi server (thats not redundant, not distributed nor any fancy "uptime helpers") last 3 years.
Why the fuck people prefer discord to ts3 other that it allows to upload images more conviniently? Okay, it looks nicer, and is like 10 times heavier on machine, but other than that? Its beyond me.
E: fix typo
E2: fix typo28 -
Game development is a nightmare when your first starting out because you tend to neglect on keeping a small book on event notes.
Such as which event triggers what, and what events to turn off when the player starts the game.
You tend to get events that either don't start when player is far into game because you forgot to turn the event trigger on for something much for earlier in the game.
Live and Learn2 -
C# has become shit.
I work since 2013 with C# (and the whole .NET stack) and I was so happy with it.
Compared to Java it was much lean, compared to all shitty new edge framework that looked like a unfinished midschool project, it was solid and mature.
It had his problems,. but compared to everything else that I tried, it was the quickes and most robust solution.
All went in a downhill leading to a rotten shit lake when all this javascript frenzy began to pop up and everyone wanted to get on the trendy bandwagon.
First they introduced MVC, then .NET Core, now .NET 5-6-7-8.
Now I'm literally engulfed with all these tiny bits of terror javascript provoked and they've implemented in all the parts of their framework.
Everything has to be null checked at compilation time, everything pops up errors "this might be nulll heyyyyy it's important put a ! or a ? you silly!!!" everywhere.
There are JS-ish constructs and syntax shit everywhere.
It's unbearable.
I avoid js like a plague whenever I can (and you know it's not a luxury you get often in the current state of a developer life) and they're slowly turning in some shit js hybrid deformed creature
I miss 2013-2018, when it wass all up to me to decide what to do with code and I did some big projects for big companies (200-300k lines of code without unit tests and yes for me it's a lot) without all this hassle.
I literally feel the need c# had to have some compiler rule you can quickly switch called "Senior developer mode" that doesn't trigger alarms and bells for every little stupid thing.
I'm sure you can' turn on/off these craps by some hidden settings somewhere, but heck I feel the need to be an option, so whoever keeps it on should see a big red label on top of the IDE saying "YOU HAVE RETARDED DEV MODE ON"
So they get a reminder that if they use it they are either some fresh junior dev or they are mentally challenged.20 -
2nd part to https://devrant.com/rants/1986137/...
The story goes on...
After I found more bugs that seem to be related to the communication break, and took a closer look, I sent detailed logs of my research and today we had a conference call.
"We have 2,5 million user, our system is widely-used and there is no plan to change it" they said.
And "We cannot reproduce the issue, but even if there is one, you will have to work around the problem, because we cannot make changes on our side" was one answer
As well as "If we would make changes, we will have to re-certify everything"
So I said we told 'em about the issue to let them improve their system. And I can work around it, I already figured out a solution for my side, but if there is a bug, they'd better fix it for future releases.
And with my additional research I have a bad vibe of some kind of memory leak involved on their "certified" implementation, and that could trigger various other problems.
But it is as always, if I try to be nice, I just get kicked in the ass. I should really be more of an asshole. -
There is a special place in hell for people that use Boostrap, only to destroy it and recreate to destroy it and recreate for "customisation purpose"
I just spent a whole day figuring out what the fuck was going on with the collapse system that wouldn't trigger or was dying to trying to, only to discover that someone played the smartass by adding or removing a class when the collapse was triggered, so it would put everything in display:none
FUN FACT : ARIA-DISPLAY="TRUE/FALSE" HAS THIS EXACT PURPOSE, FUCKHEAD4 -
******TRIGGER WARNING******
So my friens doesn't belive that spotify has a better sound than YouTube...LMAO8 -
Recently I keep watching videos about these beasts.
The shipping cost is absolutely bananas🤦♂️
But I really want to get one in Mac layout.
Should I pull the trigger?7 -
Can we just take a minute to recognize that clicking on the uninstall button in Windows 10 not actually uninstalling the app and instead opening an uninstall program page, where I need to look up the app again and it sometimes may not even be registered there, is one of the most fucking retarded as fuck piece of shit design decisions in the history of programming design?
How fucking hard is it to just trigger the uninstall for the fucking app? Why the fuck is there an uninstall option in the first place you wet waffle of a designer.5 -
!rant
<no trolls tag>
I suffer with anxiety.
I took pills (pristiq), but side effects almost ended with my marriage.
And now I'm having more problems. Even a message from my boss trigger me and I can't think properly.
I have a good job and small mini projects and I enjoy playing games
How do you deal with anxiety?6 -
I'm not getting why you guys complain about being judged for "hacking" while using the terminal.
In my case I'd occasionally like to open a terminal in my lubuntu (or archlinux in my previous times where the laptop was running smooth and i had to learn everything about how an OS works and spending most of the time searching about errors to find more desperate people and no answers but the community's hopefully growing and it's the best distro if you're an experienced linux user but not in my case so i had to use lubuntu for now until mastering it) to trigger those around me and try to prove them wrong afterwards.
I'll hit the airport for fun when i have time.3 -
So I'm on my morning stroll. Walking, enjoying, watching the world around me.. It's nice how cherries blossom. They smell very tempting to stop there and enjoy the moment. Some flowers under the cherry...
Why do plants blossom again? Oh yeah, that's right, to exchange some speciments in order to grow fruit and seeds. To have their offspring. Just like every other living macroorganism [with a few exceptions ofc]. Life has no other way to survive but to exchange genetic material between two parties and only then trigger growth of the new life.
And that is a very strict rule. No more, no less: it takes exactly 2 organisms to make new life. But why is that? If my memory serves, theory of evolution says that life is like business: cut the losses and let the profits run. Over time it discards everything not required for the organism in order to save energy, and only successful new "investments" remain in the genome. The unsuccessful ones die before they proliferate, so the bad genes shall not survive.
It also says that very simple things, very simple changes lead to very complex outcomes. Us. Life.
But what is simple about life having to need 2 other lives? Exactly 2. It's either simple or efficient, depends on perspective. BUT IT IS NOT BOTH. Look at cells. They just split in half and multiply. Dead simple. It takes one of them to make another one. But with mammals, birds, reptiles, plants and other macroorganisms [excpt fungi] this is not the case! Why?!? I can't think of any scenario where two generic microorganisms, following some dead simple mutations, would come up w/ something that inefficient and overly complex. Like they're living on their own, multiplying by division, and smth very simple happens and they can no longer divide, only mate in pairs. The primitive, efficient and simple mechanism gets terminated and replaced with a different one, incredibly complex one!
Sure, we have protozoa which have similar reproductive mechanisms. They exchange genetic material to multiply.
But look at our, human cells. They dont need that! Look at some reptiles, some plants that only take one to make another. They don't pair as well! It's simple. Efficient. Why do protozoa need 2 for the species to survive?
It's not simple and efficient [tho helps us adapt, but its not my point for now]. See, things like this make ne wonder. What if we, the life, are not as accidental as we think? What if this whole mechanism was set off by someone or something billions of years ago? That's mean there are much older, much more superior cognitive organisms than us. What if protozoa was version 3 of new life [the first two did not survive]? Viruses - v2? Sea creatures - v3, reptiles - v4, and so on until they came up with us, mammals? That'd surely mean we are not alone in this universe. Are they watching us? Will they create a new species any time soon? What's our purpose, are we just an experiment?
And so, from cherry blossoms to existensial dilemma, my stroll is over. Time for breakfast :)1 -
I need guidance about my current situation.
I am perfectionist believing in OOP, preventing memory leak in advance, following clean code, best practices, constantly learning about new libraries to reduce custom implementation & improve efficiency.
So even a single bad variable name can trigger my nerves.
I am currently working in a half billion $ IT service company on a maintenance project of 8 year old Android app of security domain product of 1 of the top enterprise company of the world, which sold it to the many leading companies in the world in Govt service, banking, insurance sectors.
It's code quality is such a bad that I get panic attacks & nightmares daily.
Issues are like
- No apk obfuscation, source's everything is openbook, anybody can just unzip apk & open it in Android Studio to see the source.
- logs everywhere about method name invoked,
- static IV & salt for encryption.
- thousands of line code in God classes.
- Irrelevant method names compared to it's functionality.
- Even single item having list takes 2-3 seconds to load
- Lag in navigation between different features' screens.
- For even single thing like different dimension values for different density whole 100+ lines separate layout files for 6 types of densities are written.
- No modularized packages, every class is in single package & there are around 100+ classes.
Owner of the code, my team lead, is too terrified to change even single thing as he don't have coding maturity & no understanding of memory leak, clean code, OOP, in short typical IT 'service' company mentality.
Client is ill-informed or cost-cutting centric so no code review done by them in 8 years.
Feeling much frustrated as I can see it's like a bomb is waiting to blast anytime when some blackhat cracker will take advantage of this.
Need suggestions about this to tackle the situation.10 -
My Vega56 gpu is mining a bit faster than usual after the last reset. Not by a huge amount, but a little faster. Enough for it to be noticeable.
I don't wanna touch it. I just wanna let it sit there and happily chew away those hashes.
But I will have to touch it eventually, if I wanna turn my monitor off. If I wanna go to sleep.
Doing that will trigger a restart of the miner.
And I will never know if it will have that extra lil speed bump ever again.
Why is life so cruel4 -
I need some opinions on Rx and MVVM. Its being done in iOS, but I think its fairly general programming question.
The small team I joined is using Rx (I've never used it before) and I'm trying to learn and catch up to them. Looking at the code, I think there are thousands of lines of over-engineered code that could be done so much simpler. From a non Rx point of view, I think we are following some bad practises, from an Rx point of view the guys are saying this is what Rx needs to be. I'm trying to discuss this with them, but they are shooting me down saying I just don't know enough about Rx. Maybe thats true, maybe I just don't get it, but they aren't exactly explaining it, just telling me i'm wrong and they are right. I need another set of eyes on this to see if it is just me.
One of the main points is that there are many places where network errors shouldn't complete the observable (i.e. can't call onError), I understand this concept. I read a response from the RxSwift maintainers that said the way to handle this was to wrap your response type in a class with a generic type (e.g. Result<T>) that contained a property to denote a success or error and maybe an error message. This way errors (such as incorrect password) won't cause it to complete, everything goes through onNext and users can retry / go again, makes sense.
The guys are saying that this breaks Rx principals and MVVM. Instead we need separate observables for every type of response. So we have viewModels that contain:
- isSuccessObservable
- isErrorObservable
- isLoadingObservable
- isRefreshingObservable
- etc. (some have close to 10 different observables)
To me this is overkill to have so many streams all frequently only ever delivering 1 or none messages. I would have aimed for 1 observable, that returns an object holding properties for each of these things, and sending several messages. Is that not what streams are suppose to do? Then the local code can use filters as part of the subscriptions. The major benefit of having 1 is that it becomes easier to make it generic and abstract away, which brings us to point 2.
Currently, due to each viewModel having different numbers of observables and methods of different names (but effectively doing the same thing) the guys create a new custom protocol (equivalent of a java interface) for each viewModel with its N observables. The viewModel creates local variables of PublishSubject, BehavorSubject, Driver etc. Then it implements the procotol / interface and casts all the local's back as observables. e.g.
protocol CarViewModelType {
isSuccessObservable: Observable<Car>
isErrorObservable: Observable<String>
isLoadingObservable: Observable<Void>
}
class CarViewModel {
isSuccessSubject: PublishSubject<Car>
isErrorSubject: PublishSubject<String>
isLoadingSubject: PublishSubject<Void>
// other stuff
}
extension CarViewModel: CarViewModelType {
isSuccessObservable {
return isSuccessSubject.asObservable()
}
isErrorObservable {
return isSuccessSubject.asObservable()
}
isLoadingObservable {
return isSuccessSubject.asObservable()
}
}
This has to be created by hand, for every viewModel, of which there is one for every screen and there is 40+ screens. This same structure is copy / pasted into every viewModel. As mentioned above I would like to make this all generic. Have a generic protocol for all viewModels to define 1 Observable, 1 local variable of generic type and handle the cast back automatically. The method to trigger all the business logic could also have its name standardised ("load", "fetch", "processData" etc.). Maybe we could also figure out a few other bits too. This would remove a lot of code, as well as making the code more readable (less messy), and make unit testing much easier. While it could never do everything automatically we could test the basic responses of each viewModel and have at least some testing done by default and not have everything be very boilerplate-y and copy / paste nature.
The guys think that subscribing to isSuccess and / or isError is perfect Rx + MVVM. But for some reason subscribing to status.filter(success) or status.filter(!success) is a sin of unimaginable proportions. Also the idea of multiple buttons and events all "reacting" to the same method named e.g. "load", is bad Rx (why if they all need to do the same thing?)
My thoughts on this are:
- To me its indentical in meaning and architecture, one way is just significantly less code.
- Lets say I agree its not textbook, is it not worth bending the rules to reduce code.
- We are already breaking the rules of MVVM to introduce coordinators (which I hate, as they are adding even more unnecessary code), so why is breaking it to reduce code such a no no.
Any thoughts on the above? Am I way off the mark or is this classic Rx?16 -
Just finished a app for mapping printers based purely on convention in a Citrix environment, no manual config needed. Chief of operations said "it's fixing stuff like this that should trigger a bonus, too bad we're the government". (Yay, thanks for rubbing it in).
Then I responded "I'll get my reward in heaven as usual, then". CIO says: "but you're not going there...."
Guess I just need a fire extinguisher then. Thanks boss.1 -
I’m currently working with a devops team in the company to migrate our old ass jboss servers architecture to kubernetes.
They’ve been working in this for about a year now, and it was supposed to be delivered a few months back, no one knew what’s going on and last week they manage to have something to see at least.
I’ve never seen anything so bad in my short life as a developer, at the point that the main devops guy can’t even understand his own documentation to add ci/cd to a project.
It goes from trigger manually pipelines in multiple branches for configuration and secrets, a million unnecessary env variables to set, to docker images lacking almost all requisites necessary to run the apps.
You can clearly see the dude goes around internet copy pasting stuff without actually understanding what going on behind as every time you ask him for the guts of the architecture he changes the topic.
And the worst of all this, as my team is their counterpart on development we’ve fighting for weeks to make them understand that is impossible the proceed with this process with over 100 apps and 50+ developers.
Long story short, last two weeks I’ve been fixing the “dev ops” guy mess in terms of processes and documentation but I think this is gonna end really bad, not to sound cocky or anything but developers level is really low, add docker and k8s in top of that and you have a recipe for disaster.
Still enjoying as I have no fault there, and dude got busted.9 -
Someone figured out how to make LLMs obey context free grammars, so that opens up the possibility of really fine-grained control of generation and the structure of outputs.
And I was thinking, what if we did the same for something that consumed and validated tokens?
The thinking is that the option to backtrack already exists, so if an input is invalid, the system can backtrack and regenerate - mostly this is implemented through something called 'temperature', or 'top-k', where the system generates multiple next tokens, and then typically selects from a subsample of them, usually the highest scoring one.
But it occurs to me that a process could be run in front of that, that asks conditions the input based on a grammar, and takes as input the output of the base process. The instruction prompt to it would be a simple binary filter:
"If the next token conforms to the provided grammar, output it to stream, otherwise trigger backtracking in the LLM that gave you the input."
This is very much a compliance thing, but could be used for finer-grained control over how a machine examines its own output, rather than the current system where you simply feed-in as input its own output like we do now for systems able to continuously produce new output (such as the planners some people have built)
link here:
https://news.ycombinator.com/item/...5 -
Load a medium post. Wait for the entire junk to download. Or stop the loading if you just want to read the text content
But Medium has other ideas. Hook to the cancel event, show a useless page which only has the reload link. And why would it trigger the HTTP 500 status code to be sent? 🤔9 -
I started fully exploring different aspects of tech in a middle school technology class where the teacher gave me a good grade as long as I did something that could be useful or interesting. I learned how to design webpages by playing with inspect element, and then decided to make my own with Notepad. One of my friends showed me how to use Sublime Text, and I found that I loved programming. Other things I did in there included using two desktops with NIC's wired directly to each other with an old version of Synergy and a VNC server, and at one point, I built a server node out of old dell Optiplex desktops the school had piled in a storage room.
Last year in high school, I took a class on VB.net and made some money afterwards by freelance refreshing legacy spaghetti, and got burned pretty badly by a person offering $25,000 for a major POS to backend CMS integration rewrite. The person told me that I had finished second, and that another dev had gotten the reward, but that he liked my code. A few days later, I was notified through a *cough*very convoluted*cough* system of mine by a trigger that ran once during startup in a production environment and reported the version number as well as a few other bits, and I was able to see that *cough*someone*cough* had been using my code. I stopped programming for at least six months straight because I didn't want to go back.
This year in high school, I'm taking the engineering class I didn't get into last year, and I realized that Autodesk Inventor supports VBA. I got back into programming with a lot of copy-paste and click-once "installers" to get my modelling assignments done faster than my classmates. Last week, one of my friends asked me to help him fix his VB program, which I did, and now I'm hooked again.
I've always been an engineer at heart, but now I'm conflicted with going into I.T., mechanical or robotical engineering, or being a software developer.
A little long, but that's how I got to where I am now. (I still detest those who take advantage of defenseless programmers. There's a special place for them.)7 -
Pinterest, one of the most wonderful and elegantly designed products has gone to rats.
The performance was smooth, the UX was kickass, the content was lit.
I once watched Ben's interview and absolutely loved his thought process on how he identified a problem and went ahead to build a solution for it.
Unlike Facebook/Instagram, which are designed to make you compete for dopamine shots and trigger jealousy, Pinterest was kind of different where you have a custom feed and yet no comparison or showing off. Cool right?
However, towards the end of the interview, Ben did mention that they are going (or already bagged) another round of cash. I was sceptical of why that was needed when they already had good reach, scaled product, and overall a stable ecosystem. They could instead focus on exit plans.
Pinterst has become a piece of garbage now. Cluttered with all the original features, which made it different, have been taken away. Moreover, not only the product is complicated and difficult to understand (let alone use), it is bloated with ads. The amount of ads and redirection of every search result to their shopping tab is just nauseating.
Feed has same content for days, if not weeks. You can no way customise the content been showcased and no matter how many times you report unwanted or inappropriate images, shit still shows up. The algo is rusted now.
Remember kids, this is NOT how you build and grow products. Lesson learned, capitalism has the power to destroy everything.12 -
I usually never put stickers on my laptop, as they usually fade away and leave nasty residue after a while, therefore I fucking hate having discovered stickermule, I have right now ~100$ worth of stickers favorited, I really have to hold back to not just pull the trigger on them and finally smash my laptop full of them, including my devrant stickers, that have been laying here for a long time now. 😫1
-
I haven't killed a process in a long time so I typed, "man kill".
Why do I feel so triggered right now?3 -
Started making an Android app for the first time a few days ago and wanted a button in a fragment to trigger a function. Easy enough right? Well not for me...
-Thought if the button is in fragment_xyz.xml the function should be in xyz.kt right?
-Wrote the function and told the button to run it when clicked.
-Tested the button and the app crahsed.
-Spent 3+ hours trying to find the bug.
-Eh fuck it might as well copy paste it from the fragments file to the action the viewpager showing the fragment is on.
-Works perfectly fine first try.
-😑
I spent three fucking hours googling that and trying to debug that while I could have been doing so much more on ither parts of the app...
I mean at least I know now for the future? -
I have an unreasonable phobia of bugs, but I never really feared wasps. I still don't, actually. They mostly just mind their own, sure they carry a weapon, but if I remain calm they aren't as trigger-happy as most policemen.
BUT GOD DAMN IT, if this FUCKING STRIPED DUMBASS decides to crawl under my wrist while I'm typing, hidden completely from view, in total silence, standing on a hard surface with something obviously alive above its head, I feel like it DESERVES to get squished and it should take it without a retaliatory strike against the densest collection of nerve endings on exposed skin on a human body. FUCK. I can't even type right, pure anger fuelled me through this rant.3 -
The Coding Apocalypse: A Dev's Rant
June 14, 2024
Okay, gather ’round, fellow code warriors, because it’s time for a good ol' developer rant. If you're reading this, chances are you’ve already faced the dragon that is modern software development, and you’re somehow still using "Agile" as a life preserver while the ship is sinking. So let's dive into the chaos that our world has become.
Here’s the thing: We’re living in a paradox where every other day there's a shiny new framework promising to be the “ultimate solution” while ignoring that it's just recoil from the last big mess. I mean, can we talk about JavaScript for a second? I’m pretty sure if you stand still long enough, a new JavaScript framework will spontaneously generate from the void. Do we really need another one?
And don’t get me started on Sprint Planning. It’s like playing Tetris with stones while blindfolded, hoping that all the blocks land perfectly. Spoiler: They don’t. The product manager’s eyes glaze over as they nod approvingly to your estimates, secretly extending deadlines in their minds. The 'flexible' deadlines then become rigid, unattainable goals, and who gets the heat? The devs, of course.
Also, can we address the insanity of microservices? Sure, splitting a monolith into microservices sounds fun—until you’re drowning in API calls and Docker containers. Debugging a distributed system is like trying to untangle a pair of headphones made of spaghetti.
Oh, and if one more person asks if we’re "leveraging AI" and "blockchain technology" for our simple CRUD app, I might lose it. Sometimes, folks, the wheel doesn’t need reinventing. It just needs a little grease.
Finally, remote work. Blessing and curse. Sure, I enjoy the freedom of working in my PJs, but the endless Zoom calls are killing my soul. Breakout rooms? More like breakdown rooms. The Slack notifications? Let’s just say my sound settings have a hair trigger on mute these days.
So here’s to us, the devs. The ones who stare into the abyss of JIRA tickets and laugh in the face of mounting tech debt. May your coffee be strong, your code refactored, and your deployments ever in your favor.
End rant. Back to the trenches. 🚀💻6 -
Have u guys ever wonder, all those devs we rant about (mostly senior developer), how it feels like to be them? Today I realized, I am most probably becoming like one.
I joined devops 7 month back(around one and half year in industry). Right now, I am 2nd senior member in project. I have done deployment on multiple environments more than 100 times. But till today, I never knew how the deployment is being done. I knew to trigger job but I never knew how it worked. Today when a junior asked me, then I learn ansible, then I understand whole deployment process.(and remember I am 2nd senior most with 7 month in project)
Sometime I wonder, till now I always had good rating and most responsible title. But how much is that because of my technical knowledge? Sometime it feels like I have very good luck. But man, it's very depressing. Sometime it feels like my junior don't get enough limelight because I am in their way although they have good knowledge but they lack the though process for now. Most of the time my senior present me as role model to juniors, and it's very embarrassing for me(this will not continue on as I talked to my seniors) . I did work on good projects from time I joined company. And never had any issue and always deliver what needed. But I still can't write code in Java to take input or do for each on array in javascript without seeing stackoverflow once.
Now I fear that someday I will write piece shit of code and whole efficiency of project will go down cause of me. Atleast, the person who will get to fix it will get a chance to have good rant here. I tried open source projects to understand how to write good code but I always have hard time understanding new-projects which I never worked on.
Then there is reputation on Indian devs. This is my another Fear. That someday cause of me, my fellow devs will get bad reputation as well.
This coming year, my goal is to fill up all the holes but I don't know why my fingers are crossed.
Sorry, I had to bring this out somewhere. And please ignore my grammatical mistakes.3 -
Does anyone else feel bored of sleeping ?
Purposely closing my eyes and dozing off to sleep is something I cannot do... It's just boring.
I tire myself out until my weakness kicks in to give me a couple hours of sleep. This has been affecting my health, concentration and ultimately work and I don't know how to tackle this problem.
Trying to sleep is easier said than done, staring into a blank empty space is a huge anxiety trigger for me on top of being a less exciting thing to do.23 -
I’m doing my last two days at my current job. (I resigned to go work full-time on a startup project.)
While doing some last commits, I couldn’t resist to not put an easter egg in my current running project (an e-commerce web application)... I’m hoping to be able to trigger it in the future when it’s being used by a dozen of our clients.. 🌝 Hopefully, my follow-up dev will get the joke and won’t remove these lines of code.. -
Under the guise of being security conscious, our section had a informal "doughnut charter" whereby if you leave your computer unlocked and someone managed to send an email to the section (cc'ing you) shouting everyone doughnuts then you must comply with the "promise". I was referred to at the time as the "god of email" and everyone knew not to do it to me or I would retaliate. This is because it happened once before. In that case, I set up a secure hidden rule in the person's email so that if they received a doughnut email they would automatically send a doughnut email from them... this also meant it was possible to trigger it at any time. They quickly begged for it to be removed. From then on, no dared touch my unlocked computer. When we got a new boss he was informed of the charter and was repeatedly warned not to 'doughnut' me but one day he ignored the warnings. In his case I set up a rule so that if he sent any email, he also sent out a doughnut email as well. Over the next four days he sent sooo many doughnut emails... He went from happy, to frustrated, to angry and then simply desperate. No one dared tell him I was my doing... He eventually came out of his office and begged for it to stop... Seeing his desperation, I stopped it. He was very appreciative but never put two-and-two together (that his actions caused it). He didn't find out till three months later that I was the one who did it to him. That was the second and last time I was ever doughnut'd.
-
Friday, forced deploy day for last & current months work. Been stockpiled due to holiday.
Yesterday boss demoed the product to clients so they expect to test today.
Early o'fuck this morning, a coworker managed to drop all secrets and env vars from CI pipelines and trigger a deploy leaving production broken...
It's gonna be a long and busy Friday... -
My company just pulled the trigger on wfh. They just sent out an email saying tomorrow's the last day any of the offices in the region are open. Come in and get your shit. See you on teams.
Most of us have been working from home for a while anyway but there's been a few holdouts wondering why no one's coming in. It'll be interesting to see their reaction. On teams. -
Why old video games, kinda PS1 aesthetics, feel so much more magic and fun, and modern games feel like dystopia depression?
It has to do with child memories? I think there is something more to that. E.g. Colin mcrae 2.0 although has worst physics compared to later titles like Need For Speed, is so much more fun to play and get hooked to it (if example does not work for you, replace it accordingly).
I think there is something to do with the lower quality graphics that trigger imagination, but i am not sure. What is your opinion ?8 -
fuck.. FUCK FUCK FUCK!!!
I'mma fakin EXPLODE!
It was supposed to be a week, maybe two weeks long gig MAX. Now I'm on my 3rd (or 4th) week and still got plenty on my plate. I'm freaking STRESSED. Yelling at people for no reason, just because they interrupt my train of thought, raise a hand, walk by, breathe, stay quiet or simply are.
FUCK!
Pressure from all the fronts, and no time to rest. Sleeping 3-5 hours, falling asleep with this nonsense and breaking the day with it too.
And now I'm fucking FINALLY CLOSE, I can see the light at the end of the tunne<<<<<TTTOOOOOOOOOOOOOTTTTT>>>>>>>
All that was left was to finish up configuring a firewall and set up alerting. I got storage sorted out, customized a CSI provider to make it work across the cluster, raised, idk, a gazillion issues in GH in various repositories I depend on, practically debugged their issues and reported them.
Today I'm on firewall. Liason with the client is pressured by the client bcz I'm already overdue. He propagates that pressure on to me. I have work. I have family, I have this side gig. I have people nagging me to rest. I have other commitments (you know.. eating (I practically finish my meal in under 3 minutes; incl. the 2min in the µ-wave), shitting (I plan it ahead so I could google issues on my phone while there), etc.)
A fucking firewall was left... I configured it as it should be, and... the cluster stopped...clustering. inter-node comms stopped. `lsof` shows that for some reason nodes are accessing LAN IPs through their WAN NIC (go figure!!!) -- that's why they don't work!!
Sooo.. my colleagues suggest me to make it faster/quicker and more secure -- disable public IPs and use a private LB. I spent this whole day trying to implement it. I set up bastion hosts, managed to hack private SSH key into them upon setup, FINALLY managed to make ssh work and the user_data script to trigger, only to find out that...
~]# ping 1.1.1.1
ping: connect: Network is unreachable
~]#
... there's no nat.
THERE"S NO FUCKING NAT!!!
HOW CAN THERE BE NO NAT!?!?!????? MY HOME LAPTOP HAS A NAT, MY PHONE HAS A NAT, EVEN MY CAT HAS A MOTHER HUGGING NAT, AND THIS FUCKING INFRA HAS NO FUCKING NAT???????????????????????
ALready under loads of pressure, and the whole day is wasted. And now I'll be spending time to fucking UNDO everything I did today. Not try something new. But UNDO. And hour or more for just that...
I don't usually drink, but recently that bottom shelf bottle of Captain Morgan that smells and tastes like a bottle of medical spirit starts to feel very tempting.
Soo.. how's your dayrant overdue tired no nat hcloud why there's no nat???? fuck frustrated waiting for concrete to settle angry hetzner need an outlet2 -
Who else hates weekly 1:1 meetings with managers? I’m the kind of person where if I have a problem or need to talk about something, I’ll do as much as I can first and then I’ll set up a meeting. No need to force it with a recurring meeting where we just reiterate the stuff we already discussed as needed during the week or, lacking that, engaging in small talk to fill the time. At this company, where I’m at in the hierarchy, and with me being a straight, white, old male in a team full of diversity hires, there is zero point at all to discussing potential promotion opportunities. We both know that’s not happening for anyone like me. If you want to have that discussion to keep up appearances, just put a gun in my hand and a round in the chamber and tell me to point it at my head and pull the trigger. Because we both know that’s what this world wants me to do and that is the only way I’ll be moving “up” anywhere in this universe at my age and with my “privilege”.
-
Today I played with GitHub Actions. Since I couldn't test anything without making a commit and pushing it to GitHub to trigger the workflow, my commit history now chronicles my slow descent into madness. Thank God it's a private repo. I'm gonna squash it if I ever make it public.
This gem is from hour two of my four-hour struggle:6 -
Jenkins' triggerManualBuild randomly but if so then consistently produces 500 errors for certain newly created jobs. I haven't really found a pattern, yet I was bit by it in the past already. I used to "solve" it by deleting the offending job and re-creating it.
Now, I have this annoying issue again, and no matter how often I re-create that shitty one-liner job in the pipeline, it won't trigger. (The job itself is fine. It's the actual trigger that is broken.)
It's not like it's important or anything, as this is basically only the "push to production" step.
FML. And fuck me for stating: "Creating a delivery pipeline should be straightforward. I therefore consider 1 storypoint enough."4 -
Hey Guys
Today I'm bringing a tool for you guys, mount servers with old phones Or have servers in your phone for testing.
Tool: Servers Ultimate Pro
Web:: https://icecoldapps.com/app/...
Note1.: Doesn't handle well above android 6+, So test one of the free servers you're intending to use before buying.
Note2.: This App costs around 10€/$ but you can get single App servers for free (I think even html + php + mysql package for free).
Not promotional, I'm just a user that loves this App.
I already talked about this a few times (usually I just call the cell phone I'm using my web server), but as a noob I don't even knot the possibilities.
This App comes with more then 70 protocols (60+ servers and a mix of servers).
From ssh, ftp, html (nginx, lightppd, Apache, simple) with php and mysql, Webdav...
<quote>
Run over 60 servers with over 70 protocols!
Now you can run a CVS, DC Hub, DHCP, UPnP, DNS, Dynamic DNS, eDonkey, Email (POP3 / SMTP), FTP Proxy, FTP, FTPS, Flash Policy, Git, Gopher, HTTP Snoop, ICAP, IRC Bot, IRC, ISCSI, Icecast, LPD, Load Balancer, MQTT, Memcached, MongoDB, MySQL, NFS, NTP, NZB Client, Napster, PHP and Lighttpd, PXE, Port Forwarder, Proxy, RTMP, Remote Control, Rsync, SMB/CIFS, SMPP, SMS, Socks, SFTP, SSH, Server Monitor, Stomp, Styx, Syslog, TFTP, Telnet, Test, Time, Torrent Client, Torrent Tracker, Trigger, UPnP Port Mapper, VNC, Wake On Lan, Web, WebDAV, WebSocket, X11 and/or XMPP server!
</quote>8 -
Today, in "Typos that wasted hours of debugging"...
PHP...
>:(
PHP is such a bitch when it comes to unset variables, why didn't it trigger a warning or something when I tried to $typo[$index]?? I may be missing something and my head starts to ache.
Fixed tho', lesson learned.4 -
Happy 2023, may all your gym memberships be worth while, this time🙃
On a serious note though, what's your goto blogging platform these days?
Beyond Wordpress because well, let's not trigger PTSD for some of us, what are you gals and guys using in 2023?4 -
Sending approximatively a 100 PRs to trigger a reaction of my colleague.. Like "it would be great don't you think so..?"
I didn't get one (PR) back... -
Hey dfox, it would be nice if edits done within, let's say, 20 seconds of posting wouldn't trigger the "edited" label.
I often notice some error (usually autocomplete) moments after posting and having the post marked as edited kinda gives off the wrong vibe.5 -
What the fuck?? Just spending 3 fucking hours to make a trigger in MySQL... and discovering now in website of this fucking DBMS there is "Cascaded foreign key actions do not activate triggers." Why??????
-
Today i faced a "bug" which caused an element not to trigger a Bootstrap 3 accordion by klicking on it. Only on iOS/iPhone - Desktop and Android worked fine.
The actual problem was that almost the same structure worked fine on another website...
took me about 3 hours to figure out that the element which was supposed to trigger the accordion needs the css property 'cursor: pointer;'.
why the hell does a touch device, which got no coursor, need this property?!3 -
Finding a bug that wont trigger an error but will deliver incorrect results, but only in certain circumstances and has only come apparent after the site has bern live for 6 months.
You turn in to a detective trying to determine what triggered the wrong result, what the client changed/added/edited in the cms and work from there.
After much investigation it dawns on you, you then find the bit responsible in your shit code and fix it.
Then feel extremely elated at how cool you are, but no-one gives a shit.
Back to work.
That’s why I play bass guitar, do some cool licks on stage and its instant gratification, glad I have that... and devRant community.
maybe I should learn how to code properly as well.1 -
So I'm working on some communications app which bridges the main server/database with some equipment on the field. Now this equipment works in a redundancy pair: two cpus, A and B, both connected via ethernet, one active, the other standby/replicating and no comms on it. One obvious requirement is that when this equipment swaps the active cpus the comms app should switch as well. Fair enough, going with this into testing phase.
This guy, from qa, got some instructions from someone else:
1. Trigger the soft switch from equipment so that cpus got swapped.
2. Remove the ethernet cable from the standby unit.
3. Observe the communications.
And the test goes like: cpu A is active, B is standby. Switch is triggered, B becomes active, A goes into standby. The cable is pulled out from cpu B.
Test result: failed, no comms ever4 -
I worked at my previous job about 8 years (hired out of school) and wasn't actively looking for a new one; I had a lot of freedom and liked my boss and colleagues, but the pay was mediocre and I was under a lot of pressure because I was the sole architect, engineer, and programmer for a good number of important applications.
Anyway, my brother-in-law told me that his employer was looking for a developer and that previous candidates fell through, and that the pay was a lot more and they're good about raises (which was like pulling teeth at my then-current job) so I applied and went for an interview.
They basically gave me an offer on the spot and wanted me to start in 2 weeks. I told them that it would be hard since I'd basically be cutting my boss's Achilles by leaving so soon and suddenly (just hiring someone would take at least a month, not counting getting applicants), but they were adamant, as the position had been vacant for a few months at that point. I got them to agree to 3 weeks and pulled the trigger, but offered to help out in my old position for a few months cause we had a big project in progress I was leading.
So the new job is great: it's a much younger office and I'm having more fun and there's a lot less pressure. Meanwhile, at the old job, the project I was leading got scrapped and the asked me to do other odds and ends until, after screwing something up I basically told them I'm done. They got a new guy quickly due to a lucky turn of events, but he couldn't pick up where I left off on a lot of projects: they're going to rewrite one because of it. My one colleague still likes to point out that I left without them having knowledge of my code (besides that I always said I'd answer questions, plus it's been 6 months now and my code is all on a TFS instance they all have access to).
I still feel a bit guilty even though I have no reason to. -
YGGG IM SO CLOSE I CAN ALMOST TASTE IT.
Register allocation pretty much done: you can still juggle registers manually if you want, but you don't have to -- declaring a variable and using it as operand instead of a register is implicitly telling the compiler to handle it for you.
Whats more, spilling to stack is done automatically, keeping track of whether a value is or isnt required so its only done when absolutely necessary. And variables are handled differently depending on wheter they are input, output, or both, so we can eliminate making redundant copies in some cases.
Its a thing of beauty, defenestrating the difficult aspects of assembly, while still writting pure assembly... well, for the most part. There's some C-like sugar that's just too convenient for me not to include.
(x,y)=*F arg0,argN. This piece of shit is the distillation of my very profound meditations on fuckerous thoughtlessness, so let me break it down:
- (x,y)=; fuck you in the ass I can return as many values as I want. You dont need the parens if theres only a single return.
- *F args; some may have thought I was dereferencing a pointer but Im calling F and passing it arguments; the asterisk indicates I want to jump to a symbol rather than read its address or the value stored at it.
To the virtual machine, this is three instructions:
- bind x,y; overwrite these values with Fs output.
- pass arg0,argN; setup the damn parameters.
- call F; you know this one, so perform the deed.
Everything else is generated; these are macro-instructions with some logic attached to them, and theres a step in the compilation dedicated to walking the stupid program for the seventh fucking time that handles the expansion and optimization.
So whats left? Ah shit, classes. Disinfect and open wide mother fucker we're doing OOP without a condom.
Now, obviously, we have to sanitize a lot of what OOP stands for. In general, you can consider every textbook shit, so much so that wiping your ass with their pages would defeat the point of wiping your ass.
Lets say, for simplicity, that every program is a data transform (see: computation) broken down into a multitude of classes that represent the layout and quantity of memory required at different steps, plus the operations performed on said memory.
That is most if not all of the paradigm's merit right there. Everything else that I thought to have found use for was in the end nothing but deranged ways of deriving one thing from another. Telling you I want the size of this worth of space is such an act, and is indeed useful; telling you I want to utilize this as base for that when this itself cannot be directly used is theoretically a poorly worded and overly verbose bitch slap.
Plainly, fucktoys and abstract classes are a mistake, autocorrect these fucking misspelled testicle sax.
None of the remaining deeper lore, or rather sleazy fanfiction, that forms the larger cannon of object oriented as taught by my colleagues makes sufficient sense at this level for me to even consider dumping a steaming fat shit down it's execrable throat, and so I will spare you bearing witness to the inevitable forced coprophagia.
This is what we're left with: structures and procedures. Easy as gobblin pie.
Any F taking pointer-to-struc as it's first argument that is declared within the same namespace can be fetched by an instance of the structure in question. The sugar: x ->* F arg0,argN
Where ->* stands for failed abortion. No, the arrow by itself means fetch me a symbol; the asterisk wants to jump there. So fetch and do. We make it work for all symbols just to be dicks about it.
Anyway, invoking anything like this passes the caller to the callee. If you use the name of the struc rather than a pointer, you get it as a string. Because fuck you, I like Perl.
What else is there to discuss? My mind seems blank, but it is truly blank.
Allocating multitudes of structures, with same or different types, should be done in one go whenever possible. I know I want to do this, and I know whichever way we settle for has to be intuitive, else this entire project has failed.
So my version of new always takes an argument, dont you just love slurping diarrhea. If zero it means call malloc for this one, else it's an address where this instance is to be stored.
What's the big idea? Only the topmost instance in any given hierarchy will trigger an allocation. My compiler could easily perform this analysis because I am unemployed.
So where do you want it on the stack on the heap yyou want to reutilize any piece of ass, where buttocks stands for some adequately sized space in memory -- entirely within the realm of possibility. Furthermore, evicting shit you don't need and replacing it with something else.
Let me tell you, I will give your every object an allocator if you give the chance. I will -- nevermind. This is not for your orifices, porridges, oranges, morpheousness.
Walruses.16 -
That moment where this.prop wasn't defined when you know it should be, and then you realize you got trigger-happy with arrow functions. :P
-
Spent quite some time debugging an odd problem.
A null check failed to trigger correctly, and when checking in eclipse I saw the null value.
Much digging later I finally noticed that the value wasn't null, it was "null", but eclipse doesn't quote strings...
The problem was that somebody at one time decided to convert an Integer to String by prepending an empty string...
Integer val=getInt()
return "" + val; -
I am slowly turning my home into an automated smart home, however. I have found a lot of responding devices (media players, sockets, etc..) but no trigger devices (buttons, sensors) I can work with.
Am I looking in the wrong place or do I really have to build something myself using arduino?
My setup is the following: I have a central server in my home that hosts a bunch of docker services that all server a certain purpose. All smart devices have static ips so that server can address them quickly. So it is capable of controlling many things. However, now I want to trigger certain actions through a hardware button. It seems I cannot find such a device....
Any other hads on here?6 -
I was watching a video for some dev related tool.
It noted that "if you connect A and B it will automatically find the most efficient path between A and B".
I couldn't help but think about how that line might trigger a lot of well meaning devs to harass these poor people with tickets about "ackshually if you go through these 400 steps it doesn't always pick the 'most efficient' path!"
As another dev I'd be tempted to say "it does a pretty good job picking a reasonably efficient path... mostly, please don't tell me when it doesn't".
But that's why I'm not in marketing.3 -
Trying to setup a fucking google tag manager to get the fucking google analytics working.
Few years ago it was a 10 minutes work. Now I'm already at 4 hours. Fucking sick
WHY I say why I have two fucking equals accounts, FUCKING THE SAME.
And one is working the other one doesn't give a shit about my analytics.
Ehi, Tag manager, I just set up a Tag called "YourMother" related with its trigger called "Fuck" using same extra variable called "anal"
Can you just show it in my anal-ytics, fucking please?9 -
I'm worried that this question will probably get downvoted on SO and I cannot post from my account as well, so here it is..
How to play youtube embedded video in mobile over a custom button / svg / image ?
One idea I'm currently working on is to trigger &autoplay=1 onclick but it is only appending that parameter to existing URL?
Please let me know if you have any thoughts, and I'm doing this for only mobile devices only
P.S I cannot use YouTube API11 -
Windows update service on servers...that trigger a 15 minute countdown to reboot when you log in. Even under business hours.1
-
So, I made this: https://github.com/PythonTryHard/...
Aside from the JS code that may trigger the JS devs, I think I did good. Maybe a bit too overboard with the comments.
What do you think guys?2 -
How can I block the Facebook Messenger Group Call on iPhone? We have a family FB group chat and my parents are trigger happy on group calls.
I already tried googling but can't find a way to block the FB Messenger group call.5 -
!tech
i was feeling very disturbed thinking about this thing, so just wanna share here. trigger warning : this is about 2 recent news (1 national and1 international) about crimes against women and its affect on me, a male , somewhat privileged guy with rarely any women in life.
news 1 : some lady in iran getting killed by police due to religious laws . news 2 : a receptionist girl in india getting killed for not providing sexual services to hotel people .
i will come back to first news in a bit, but second news has shaken me to the very core. i saw a post where her dead corpse was being taken up by her acquitances and she is just ... lifeless, hands going sideways, face hung at one side, mouth open... damn :'(
read more here : https://indiatoday.in/india/story/...
i am not at all related to this news, but somehow, i as a guy feel disgusted and being responsible for this sad event. this is not an act of power or lust , this is an act of a horrible mentality.
i come from the city where the world's most number of hate crime and crime against women take place. and pathetic politicians and people of power blame it on women's dressing and mens "naive nature" and , "boys being boys, accidentally making mistakes" . little did anyone know that this mentality has been cooking in the streets for last so many years.
i am a single child with no siblings or grandparents, my relatives rarely visit me and my last 24 years on earth rarely involved any female companionship apart from my mom.
i like girls, i find them cute. i really want to be with someone, to have a consensus relationship. but the talks among my homie groups and other male friends have gone toxic to the level that a national issue syarted feeling relatable.
the feeling of getting affection from someone has somehow turned into a lust, a "game", a "service". one guy( who recently shifted to other state) would use to tell us how he would visit " red light areas" , another one(also left) once tried to ask for that "service" in a camp where we were staying during a trip, and used to tell how he would hook up with girls on Instagram.
we used to laugh at those things, find them interesting and enjoyable. i would think about them in deep, thinking that this is something possible, a transactional access to sex, with me now earning enough to afford it.
now, seeing this news i feel so shitty and being a horrible human. those thoughts were not originally mine, but i didn't opposed them. rather i laughed on it , and thought that once am even more powerful financially and politically, could even entertain that approach.
As a guy, i want to say i am deeply, terribly sorry.
This mentality needs to be changed. my homie group is not just the only group of males that has such vile thoughts having openly propagated. every park, every company meeting , every library, every gym, anywhere i go, i can just show up a coffee cup and shout "women,huh" and can get a laughter followed by several low voices whospers on which girl is a "s***" there .
there are multiple points of failure in our society that are causing these. the news 1 from the start of this rant is the very first : role of government and religion on controlling "dresses and behaviour" of women
another comes the role of sex, culture and gender education in institution. institutions in my areas are so fucked up: they teach how plants fuck and bees suck honey to a puberty hit student, but doesn't teach consent, relations and personal behavior at any age. my school would even try to sometimes make all girls sit in a seperate row and other times would force guys to sit with girls. don't know what they got for this authoritative behaviour, but that sure didn't impacted our brains very rightly.
lastly this needs to be made clear in evevry guy's mind that paid prostitution, forced prostitution and consensus relationship are 3 different things, and only a respectable , consensus relationship is something you should think about and prepare for.7 -
Okay new Rant
INSERT TRIGGER WARNING HERE
OSX still sucks I have been using the bloody darn thing for last 8 months still I found things that are obnoxiously trivial missing.
Latest incident I was trying to plug in my android phone(soft bricked) in recovery mode and I had to push a file with ADB (i save this mutherfuker for another day). So back to the original topic now I plug it in and but turns out it doesn't recognize my device now as a preliminary check I decide to check my USB cable and my DONGLE both seem to be working fine now I try rebooting back into recovery. Now after scrapping the internet for a few hours I find that this problem is caused because sometimes due to a recurrent bug in OSX the operating system sometimes fails to recognize the difference in between directories "Adam"(just an example) and "adam" which in turn can interfere with some of the flags used while checking if a device might be connected.
I mean this is fucked why the fuck can you not simply use your device as an external storage that would have made the process easier by a fucking lot.
I think the people at Apple are going the destroy a UNIX powerhouse just to make their OS more CUPCAKE friendly.
And all of this is in addition to the problems with AFS.
I just wish I had not bought mac for development5 -
A very long rant.. but I'm looking to share some experiences, maybe a different perspective.. huge changes at the company.
So my company is starting our microservices journey (we have a 359 retail websites at this moment)
First question was: What to build first?
The first thing we had to do was to decide what we wanted to build as our first microservice. We went looking for a microservice that can be used read only, consumers could easily implement without overhauling production software and is isolated from other processes.
We’ve ended up with building a catalog service as our first microservice. That catalog service provides consumers of the microservice information of our catalog and its most essential information about items in the catalog.
By starting with building the catalog service the team could focus on building the microservice without any time pressure. The initial functionalities of the catalog service were being created to replace existing functionality which were working fine.
Because we choose such an isolated functionality we were able to introduce the new catalog service into production step by step. Instead of replacing the search functionality of the webshops using a big-bang approach, we choose A/B split testing to measure our changes and gradually increase the load of the microservice.
Next step: Choosing a datastore
The search engine that was in production when we started this project was making user of Solr. Due to the use of Lucene it was performing very well as a search engine, but from engineering perspective it lacked some functionalities. It came short if you wanted to run it in a cluster environment, configuring it was hard and not user friendly and last but not least, development of Solr seemed to be grinded to a halt.
Elasticsearch started entering the scene as a competitor for Solr and brought interesting features. Still using Lucene, which we were happy with, it was build with clustering in mind and being provided out of the box. Managing Elasticsearch was easy since there are REST APIs for configuration and as a fallback there are YAML configurations available.
We decided to use Elasticsearch since it provides us the strengths and capabilities of Lucene with the added joy of easy configuration, clustering and a lively community driving the project.
Even bigger challenge? Which programming language will we use
The team responsible for developing this first microservice consists out of a group web developers. So when looking for a programming language for the microservice, we went searching for a language close to their hearts and expertise. At that time a typical web developer at least had knowledge of PHP and Javascript.
What we’ve noticed during researching various languages is that almost all actions done by the catalog service will boil down to the following paradigm:
- Execute a HTTP call to fetch some JSON
- Transform JSON to a desired output
- Respond with the transformed JSON
Actions that easily can be done in a parallel and asynchronous manner and mainly consists out of transforming JSON from the source to a desired output. The programming language used for the catalog service should hold strong qualifications for those kind of actions.
Another thing to notice is that some functionalities that will be built using the catalog service will result into a high level of concurrent requests. For example the type-ahead functionality will trigger several requests to the catalog service per usage of a user.
To us, PHP and .NET at that time weren’t sufficient enough to us for building the catalog service based on the requirements we’ve set. Eventually we’ve decided to use Node.js which is better suited for the things we are looking for as described earlier. Node.js provides a non-blocking I/O model and being event driven helps us developing a high performance microservice.
The leap to start programming Node.js is relatively small since it basically is Javascript. A language that is familiar for the developers around that time. While Node.js is displaying some new concepts it is relatively easy for a developer to start using it.
The beauty of microservices and the isolation it provides, is that you can choose the best tool for that particular microservice. Not all microservices will be developed using Node.js and Elasticsearch. All kinds of combinations might arise and this is what makes the microservices architecture so flexible.
Even when Node.js or Elasticsearch turns out to be a bad choice for the catalog service it is relatively easy to switch that choice for magic ‘X’ or component ‘Z’. By focussing on creating a solid API the components that are driving that API don’t matter that much. It should do what you ask of it and when it is lacking you just replace it.
Many more headaches to come later this year ;)3 -
In my first few months of my first dev job, I written this fragile piece of code in, trigger warning, PHP that sent out email reports to my clients. It was a two men team, and we have no clue about TDD or how to do unit testing for such code. We would just run that piece of code manually do send out dummy emails to ensure things were working.
One day the code broke. I was told by my boss to fix it. Spent the entire day trying to fix but couldn't get anything done. Finally at around 7pm my boss came by and asked why is it I couldn't get it fixed. He helped me troubleshoot and fixed it. And subsequently told me "c'mon man you're better than this."
It turns out that he changed a part of a code that was supposed return an array of strings to an array of objects, adding a second attribute that wasn't even in use.
So what that meant is that he changed a piece of working code, to include a property he didn't need, committed and push to production without even manually testing it. AND TALKED SHIT TO ME.
That was the day I learned git blame and began my journey on TDD. -
My current project, it's been a 4 month slog working with a client service team who said they read the spec but didn't, said they reviewed the wireframes but didn't , let us work for 2 months off course ( ignoring our nightly builds links and logins all the while but acting as though all was GREAT) before sending us a series of what I can only describe as 'WTF is this?' emails, this wasn't what we expected.... *Queue wind blowing and tumbleweed moments*.. A serious left turn and some back and forth trying of gently ( but eventually 'less' gently) educating them on what processes are, and why we have them... We're now at Beta day T-7 days somehow nearing stable and ... Today.... Today I get an email with another 4 weeks worth of change requests .... Using rage trigger classics like " maybe we forgot to mention... " And " didn't we discuss X?...." The hardest part is trying g to keep my team's morale up, nothing worse than having you deadline victory shot dead with " it's not quite Carling though is it?"
Add on too they failed to send us any content until a month ago ( 3 months late).... Yeah, this one has had me closer than ever to the edge of the cliff...2 -
Wanted to try a new alerting based on a new Prometheus metric we added. To trigger an alert we killed the dev stage db of the service. Alert didn't get triggered. The reason was that the metrics endpoint suddenly needs exactly 60s for a response if the db is killed and prometheus timeout is 20s.
And to top it off, this behavior happens for each service we developed (that has a db) .
Well at least the new alerting already helped find a bug.2 -
Embedded database is so lack of choice. SQLite, might be best, if you want stability / ACIDity.
Again, SQL means normalize everything, if I've ever want to index it...
Then, ON DELETE CASCADE? TRIGGER? Also, MANY-to-MANY kills.6 -
"This component is still using this thing which it shouldn't use." (Changing it won't reflect on the user in any way nor will it trigger a crash. It'd be nice to change it but who cares.)
"Feel free to update it."
Happy 1st birthday to low priority tech debt baby. May you grow up to have a long and fulfilling life.1 -
Recently I've had a lot of realistic dreams and it's awful. For example, yesterday I dreamed that I have a SoftEng lecture on Monday at 9am. The day before I dreamed that Russia defeated Ukraine and are now neighbors with Hungary. On both occasions I was later convinced that the memory fragments were true until I either received conflicting news or some unrelated trigger reminded me of the later, unrealistic parts of the dream.
I can sort of deal with the possibility that my current life is a dream and I'll eventually wake up and start over from an unspecified morning, but the possibility that while living in reality an arbitrary subset of my memories comes from dreams is much worse3 -
Several years ago I spent over two months working out how to integrate Text To Speech and Speech To Text (TTS/STT) into any windows program I wrote in Delphi, originally for a powerful flat-file search engine. Does anyone know if TTS/STT is useful on windows 10+ or have any use?
I was thinking about redeveloping the search engine into a stand alone program which can be used as a fast and light query tool with trigger functions, it can be made into a "reply bot" or used with a server like Apache, but without the old IBM mainframe mentality being readopted as "AI" and "social media" everywhere today. low-level Independent and secure droid like systems sound more fun to develop. -
I wish Slack had a block feature. On a social Slack, someone lashed out me and started accusing me of horrible things. Admins did nothing after I complained and said my anger wasn’t in proportion to the situation. Fuck that.
The lasher out accused me of ableism, povertyism, and condoning human rights violations. It was so outrageous that even a bystander tried to intervene because lasher out was clearly acting out on a trigger and I had not done anything to deserve it.
I had this problem with the lasher out before, but this time they went too far.
So I have one less social platform to engage with. Good riddance. I’m not participating in a place that is not a safe space.
I thought Facebook would be the one I unplugged first.11 -
So, I told the interviewer that my frontend skills are bad. He said that I should not worry as the tests where backend centered, good. Later, I got the job, now the interviewer, which happens to be the head of tech in the company I work for, has assigned me two tasks involving 99% of work on the frontend.
FFS, I've been searching on Internet and reading Kendo UI documentation for 4 hours to figure how to trigger the KendoGrid editable popup with populated data to enable the user to update such data. AAAAARGH!!!1 -
Sometimes I trigger this innate desire to learn a language, just so that I be able to talk to the people I adore in their first language.
-
Odd question to a dev community who are naturally socially awkward that talks to their ducks.
Even then, for those of us who do have a social life, we just chill when we need to. Anyone who "tries" to balance their life would find it very stressful. Just go with it. Do what you need to do at that scheduled time and when time is up, do the other thing that you promised yourself.
Others: "Easier said than done! You don't have to push releases and squash bugs in critical moments!"
Then that's a trigger to the question, "Do you even live, bro? There's more to life than just dev all day err'day."
Don't think too much. -
Duuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuck off you bloody infamous basterds flattening their fat asses at Microsoft.
I wasted half of my dev day to configure my wcf rest-api to return an enumeration property as string instead of enum index as integer.
There is actually no out-of-the-box attribute option to trigger the unholy built-in json serializer to shit out the currently set enum value as a pile of characters clenched together into a string.
I could vomit of pure happiness.
And yes.
I know about that StringEnumConverter that can be used in the JsonConvert Attribute.
Problem is, that this shit isn't triggered, no matter what I do, since the package from Newtonsoft isn't used by my wcf service as a standard serializer.
And there is no simple and stable way to replace the standard json serializer.
Christ, almighty!
:/ -
Test engineers not even checking their tests and logs..... Just straight up sending a trouble report. Then I have to waste one hour checking the log and lo and behold their tests do not even work to trigger the behaviour that's supposed to be tested. Morons.
-
Does chat gpt recognize german and use german to respond me or does german just trigger it's nodes in a way the answer must be german?
What if you mix 3 languages in your message?7 -
Wish me luck. Starting today on building a modular CCTV camera and alarm system for my home.
Gonna try to integrate accelerometers on the windows to detect when the glass vibrates too much or for too long, as opposed to sonic glassbreak sensors, which also trigger upon my son crying. -
Those who know x86 assembly and real mode, what'd I do wrong here?
mov cx,0000
.loop
mov ax,e823
mov bx,1
add cx,1
int 15 ; supposed to be undocumented CMOS raw write on my mobo if bx!=0,ax=e823
test cx,00ff
jne .loop
ret
The JNE doesn't ever trigger, so I end up always returning no matter what cx is. I'm testing if the undocumented writes actually work, and cl is supposed to be 00-FF as it's the address to write bx to in CMOS. I'm running in real mode, if it matters.8 -
when i create a jwt access token and if im using a refresh token
this access token expires every 15 min
am i supposed to code a whole separate route in the backend api for the refresh token so i can make a request to the whole route to trigger the refresh token and generate a new access token?
or should the backend automatically trigger refresh token whenever it receives a request and realizes the access token has expired?3 -
Fixing a faulty plugin modification from a former developer, and no documentation, plugin provider wants payment for support...
Me crying on the side near to pull the trigger -
TL:DR I wanna scare the shit out of intruders, do you recommend Arduino or Raspberry Pi?
So, I live in a place kinda like a college, but everyone get their own room. There's staff 24/7, and obviously, I really dislike some of them. Otheres I just like to joke with.
Sometimes, I've thought of putting together a "system" which will probably make them shit a brick.
The way I would do this, is have an Arduino or Raspberry Pi connected to a sensor, which will trigger an airhorn somehow. Yes, and airhorn. They should shit bricks, remember?
That's the beginning tho. Later, if this ever becomes something, I plan on adding some system so it wont trigger when I open the door, along with flashing red lights when intruders opens the door.
I attached a picture. The smaller rectangle is my closet. First circle is the sensor, which I assume can just tell when the door moves, if I place it correctly.
The rectangle is the Arduino or Raspberry Pi, which should control it all as you probably already know.
The second circle is the airhorn. Not sure how I'm gonna trigger that yet.
So, does any of you have some advice or recommendations on how I can make this dream become true? Or even additional components to make it more efficient?
Last and most importantly, would Arduino or Raspberry Pi be best for this, is there a specific model thats better fit?10 -
Telegram or Signal? Got essentially blocked from Messenger because I was stupid enough to fold to peer pressure to get it for robotics and since I enabled it with a GV number they stopped allowing its use for specifically security checks while allowing it even to reset a password, and I somehow got a security check triggered, with no customer support and no ability to call with code, so I'm looking to switch. Even if I get Facebook back, I want to move to something at least that doesn't randomly trigger security checks and then has no customer support.rant messaging apps messenger fuck telegram mistake signal facebook no customer support why did i move all my chats there peer pressure i'm stupid12
-
Not a webdev so I don't care about how a website looks, but logical failures can really trigger me at times.
E.g. this German federal page you had a bunch of options to fill in your employment status. Though being incomplete it forced you to choose one from the list and then at the end you have to checkmark that you filled in everything correctly reminding you there might be legal consequences otherwise. Thanks.
Amusingly on the same page their enum to string converter seemed broken or they just didn't care. So options to choose from read like: Enum_marital_status_unwed_coupled
Fucked up the screen shot so I can't show, but made me chuckle.2 -
Wanted to add alerting for systemd services in Prometheus today, which spontaneously turned out to be a huge pain in the lower human backend.
For some reason, on Ubuntu 16.04 systemd adds services without unit files for software, that isn't even installed on the damn server (in this case for mysql-server / mysql-common and mysql-client are installed) and lists them as "not-found" and "inactive". The prometheus node exporter that we use, has a little bug in the systemd collector that makes sure that the states of *all* services are collected - even those without a unit file.
so those metrics are pulled by prometheus and now I have to take with those faulty metrics in the condition logic of the alert, because I'm trying to trigger that one on a service which is listed with state "active" = 0 or "failed" = 1.
now guess. right! If the unit file doesn't exist, the regarded systemd service is marked as "inactive", which is another possible state of the metrics in the node exporter. the problem is that the value 1 for state "inactive" means, that "active" has the value 0 (not even wrong) and the alert is triggered.
so systemd fucks up somehow, the node exporter collector fucks up because systemd fucked up and I have to unfuck this with some crazy horse shit logic. w.t.f. to that.
the only good news is, that it works like a charm on Ubuntu 18.04, as far, as I can tell.
while writing this little rant, I thought of a solution.
I could try to change the alert condition to state "active" = 0 AND "failed" = 1.. but that will wait till tomorrow.
one does not simply patch monitoring conditions at midnight..3 -
I just wrote an error handler in php (would trigger only if the user's stupid enough):
if (!$detail_trans && !header_moved) {
die("asshole");
}1 -
Any advice on how to deal with gatekeeping developers? How to deal with red tape?
I work with people that are resistant to code and process change. Continuous pedantic pushback on nearly anything; one raised a fuss over metrics not being satisfactory at a 5% threshold for alerting stating that 4.99% metrics variance wouldn't trigger an alert.
It's genuinely as though my coworkers are all scared of code based on the way they behave. They don't seem to code very often either.
I'm someone that codes quickly but I have to constantly write proposals for quite literally any change to the codebase. Even IF there were issues we could always rollback (and even then we have metrics, alerts, canary rollouts, feature flags, etc etc). As a quick aside, my pace isn't related to the pushback nor experience/skill level. Just affects my morale and mental heth to be blocked.
I can communicate effectively and I try to be as clear as possible in my proposals but this is absolutely driving me up the wall and killing my motivation.
This is a faang-level company and I would've expected better.
Any advice on how to best navigate this? Is this the norm???4 -
mann... either i am dumb or my team is a bunch of excited monkeys.
for last 6 months my senior and this contract dev (both in Android) have been fussing about adding coroutine flows in our codebase: how our codebase "needs" it and how flows will help our codebase become "better"
when i asked them why, they gave me even more shit about hot flows cold flows, state flows, and how ots the latest "solution" from google.
So today, while going through another existential crises in my free time, i decided to understand what these "flows" are.
and from what i understand, it is mainly for cases in which there os actively changing data and we want to get latest updates without any event or trigger, like those streaming datas , chat messages, location etc.
but we are a freaking insurance app! user presses a button and we make an api call! what is the fucking problem here that isn't being solved by good old livedata and coroutines? There isn't any "live" api in app as far as i know and even if there is the code should be modified for 1 such api.
why fuck the whole codebase for a usecase that isn't applicable for 99% of APIs?
also, if a flow is going to auto trigger and call api, how are we supposed to control it? like say there is a offers api(there isn't) which gives us the latest offer products to show user for 5 seconds then refresh. for this i will simply returrn
flow{
while(true){
emit (offer api results)
delay(5000)
}
}
but this is an infinite polling api! how to stop it when say user pressed a cross button or did some other interaction?
it seems useless as fuck.. i can achieve a more controllable polling using the same while loop in different location or some other solution that won't require me adding this wierd api5 -
Just after feature launch, major bug on production and now I am getting yelled at by my lead as the issue happens to be with the PR i was responsible for reviewing yesterday. Somehow a logic error got past my review. But considering how large the project is it wasn't possible for me to test out every possible scenario myself. They should have had QA handle that. Also, that was my first code review. I can't understand why my boss has such unrealistic expectations. Bugs are expected at this stage. I feel like he just puts too much pressure on me for no other ther reason other than to just trigger my imposter syndrome. That way, I feel like a bad developer even though I am working my ass off. And he gets to avoid giving me a raise. Cant believe I rejected multiple offers to stay at this company. I don't even know why am I still working for this company anymore.4
-
Well guys I finally pulled trigger and got a new job, I start pretty soon. The thing is they want me to move across the country to carlsbad california. It's a sweet place to live and have seen it. I don't have to move for about 6 months though.
Does anyone know of some good best practices for moving across the country? Any reasonable companies that don't want 12000 dollars to do it? I have two cars and a 2 bedroom apartment.
Any suggestions on how to move the cars without driving across America and spending 3 days doing it?
Should I ship one car and make a vacation out of the destination travel?
Guess I should mention I'm moving from Houston
Thanks, any help is appreciated!2 -
Can anyone help me in jquery?
I'm doing a loop of trigger which are 13 in count, but every trigger event contains ajax call and what my problem is that it doesn't wait for ajax response and keep hitting trigger until last trigger fires.
so I'm having my ajax response only on last one.
What can I do for this?9 -
Looks like someone has an itchy trigger finger when pushing to prod https://techcrunch.com/2016/09/...
-
Sorry in advance if it's not the right kind of post
I was thinking about a feature that will ease the interaction between people
Can a ignore/mute option like the one in dota 2 be a thing in devrant ?
Like once i ignore someone, i dont see any of his messages ever in any topic
It's mostly a user side filter thing
This way everyone can speak without the drama that come with conflictual subjects
The offender can still speak his mind and everyone expect those who ignored him can see his messages
The user who ignored someone can still live in a fairytale feed where he see things that wont trigger him
Win win 🤔3 -
My vague naive extreme understanding of interview questions are on a spectrum from situation a to situation b.
But what should the industry be doing? Is the industry just going wrong blindly copying big N companies hiring process without the same rationale? (e.g. they need computer scientists able to deal with problems specific to them at their size and that often means creating new tech, unreal problem solving abilities and cuh-rayzee knowledge)
a) stupid fucking theoretical shit that some people argue you won't ever need to be doing in practice for most companies, while giving you no ability to google, leetcode hard problems kind of stuff
b) practical work similar to what you'd be doing on the job, small bugs, tasks, pair programming on site with your potential future coworkers
Lots of people hate option a because it's puzzle/problem solving that isn't always closely related to what's on the job. Whiteboarding is arguably very much a separate skill. (Arguably unless it's like a big N company where you want computer scientists to deal with specific problems that aren't seen elsewhere, and you're making new tech to deal with your specific problems.)
We could go to the extreme of Option b, but it tends to trigger people into shitfits of "NO, HOW DARE YOU MAKE ME DO REAL WORK, BUT NOT PAY ME FOR IT AT THE INTERVIEW STAGE"
That's before we get into how to execute option b whether or not it's being given as a take home assignment (which is a huge pain in the ass and time sink, among other issues) vs a few hours at the potential workplace working with some of the future potential coworkers and soaking in the work environment (you have to figure out how to take the time off then)
Is it really just poor execution overall for the wrong use cases for the majority of the industry? What should the industry be doing in which cases.
Then this is all before HR screening with shit like where they might ask for more years of swift experience than its existed. -
I can't wait for the release of Snips Air sometime in 2019 so that I can stop using my Google home. It's not even the privacy concern that bugs me, it's the stupid shit like alarm management. To preface, I've had a Google home since late last year and since I got it the alarms have been nothing but trouble. More than half the time when I ask it when my next alarm is, it will respond with "You have an alarm for Friday at 7pm that is going off right now" (At the time of this response it was Tuesday). Then snoozing sometimes just doesn't work, I told it to snooze for 10 minutes, it worked just fine. Then today I made the mistake of asking it to snooze a second time which responded with "Sure, snoozing for 5 minutes", I wake up 45 minutes later, and ask "Hey Google, when's my next alarm?", it responds "You have an alarm today for 7:00 snoozed until 7:15". I have an exam today so luckily I didn't sleep in too late but againg this isn't the first occurence. To prevent this I normally just have a backup alarm on my phone and the one on my phone will wake me up in case something happens. On top of that though I've had rarer cases where it will delete all my alarms and I'll have to go command by command reminding of each alarm. That's just alarms though, I also have it control several IoT devices, and me having to use IFTTT requires the utmost precision in my phrasing otherwise it won't understand ( although this issue is mainly due to how the assistant service trigger on IFTTT is configured ). It still does much better than Siri ( at least my home can set alarms unlike my mac ), I have yet to try Alexa though. Of course my last problem is the hotword, saying "Hey Google" is much better than "Ok Google" but it's still excessive when I have to repeat it for each individual command. This is why I'm so excited for snips air, a set of devices that look pretty great, hackable, and as a bonus much more private that the current options. I realize that I could get a dev kit or set up snips on a pi but the dev kit isn't exactly visually appealing and I doubt I could get something that looks or functions half decent on the pi.1
-
!Rant .. I need some quick help and didnt know where to go.. so fellow ranters please help...
So I have created an sql trigger which is supposed to add a kill to a doctor whenever one of his patients changes state to "killed" . But I dont know how to just get the one row that is updated. As it looks now : The doctor get patientKilled ++ for every patient he ever had before as well... How can I solve this ?
USE [AD17_Hospital]
GO
/****** Object: Trigger [dbo].[PatientKilled] Script Date: 2017-10-21 19:51:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[PatientKilled] ON [dbo].[Patient]
AFTER UPDATE
AS
BEGIN
declare
SET NOCOUNT ON;
UPDATE Doctor set PatientsKilled+=1
FROM Doctor d
INNER JOIN inserted p
ON d.DoctorId= p.DoctorId
where p.PatientState='Killed'
END4 -
How to trigger pedants
Write this on a whiteboard:
"There are 3 types of people.
Those that can count,
and those that can't."
By the end of the day someone will have to add a 3rd type.2 -
Ok just wanna share things that got me stuck for hours on my recent project and their solution. I hope it’s gonna help someone.
To start with, when I was implementing svg to png, i set an image object’s source with a data url. Normally this is going to trigger the onload hook. However for some fucked up reason it never triggered. The solution is to use setAttribute function and then the hook will be triggered.
Second, you can get rounded triangle by setting stroke width and set stroke linejoin and line cap as round. But remember, if stroke width is 6, then it’s 3 inside and 3 outside.
Third, if you have a rotation of svg element, and later on you want to manually compute the rotated point’s position, it’s most likely some vanilla code is not going to work. You see, when you rotate for x degree, it is actually rotating -x degree. I’m not sure if it’s a bug of my code, but it’s there.
And now the worst thing: if you look up how transform on svg is performed, stackoverflow is going to tell you it’s by order. But that’s somehow not true for my project. If I do set transform to do translation then rotation, the order it was applied is actually reversed. It’s rotation first then translation, like ffs why? Who the fuck said it was in order? It’s clearly in reverse fucking order.
Ok last thing, you can scale svg around it’s center, but absolutely don’t do that because it’s gonna fuck up tanslation and rotation applied to this svg. If you need to scale, translate it first then scale it will be better.
Anyway just some things i encountered. I’m gonna stay away from svg for at least two months now1 -
I have a doubt regarding blockchain. I understand how it works, but couldnot make use of it.
I am currently working on a platform which let client to assign task to their employee
Now I am planning to make use of blockchain on existing platform, to somehow set up a mechanism to authenticate that employee had completed the task, as a certification to the employee. I just cannot figure out how
I thought of an implementation, ( if its possible ) where client will trigger the smart contract with some employee-specific data, and the smart contract will generate a custom token, which will then be sent to the employee's account. This token will be non transferable1 -
Dev ranting about US foreign policy. Trigger warning!
US has a track record of funding the bloodiest regimes, funding terrorists and then using it to create problems for neighbouring regions. I'll tell you step by step how that's done.
1. Look for opposition in non-aligned/sovereign or even-allied country but opposing viewpoints. (Remember spying on German chancellor, Merkel?)
2. Covertly provide them support (providing fundings, potentially arming them).
3. Slow media propaganda, claim the country is undemocratic.
4. Opposition might stir things up.
5. Paint the current leadership in the sovereign country same as Hitler.
6. Continuous bombardment of propaganda using MSM like CNN, MSNBC, Fox, France24, or bribed insiders.
7. Once the regime is finally toppled, black out the media, and see deals can be made with the opposition (Oil, Military bases, or whatever)
8. Reality: these countries are worse now, but no media coverage because exploitation is complete and no-one gives a shit about democracy or whatever. (If you watch few videos about Iraq, Libya their own people says they shouldn't have toppled their leader.).21 -
To the ones using GitLab CI/CD:
Is there a way to trigger a pipeline run on a specific commit? Like in a situation where you're deploying every commit to master into prod, and you need to roll back, but without reverting the commit history.14 -
Back when I was starting out in a full stack role, I worked on a fairly big chunk of functionality that would trigger off a few entry points. It was wonderful for a few months. As we approached go live, our QA team started reporting weird intermittent issues. The logic wouldn't "trigger" the first time, but would on subsequent saves. Worse yet, the state required resetting of data every time we needed to test. Three weeks later, it boiled down to a 2 second time difference between the database's GETDATE() values and the new Date() object we passed in from our application.
I'll never forget that one system should be the source of truth again. -
Trying to figure out how the below code works. Everything is straight forward. The code works as I ran it in qbasic in dos emulator.
But for the life of me I cannot figure out wth cap1 and cap2 are. I debugged the code and saw values being set, but I cannot figure out where the data is coming from. I assume it is somehow related to the function declarations. Been 20 years since I did anything with qbasic. Maybe some other old fogie can tell me what is going on here:
DECLARE FUNCTION integrate (sample, cap, tc)
DECLARE FUNCTION differentiate (sample, cap, tc)
COMMON SHARED accumulator
CONST pi = 3.14159
SCREEN 9: CLS
FOR timeConstant = 10 TO 600 STEP 100
accumulator = 0
FOR a = 0 TO 22 STEP .01
wave = 0
FOR h = 1 TO 10
wave = wave + SIN(a * h) / h
NEXT h
lopass = integrate(wave, cap1, timeConstant)
IF wave > lopass THEN
trigger = 1
ELSE
trigger = 0
END IF
hipass = differentiate(trigger, cap2, 20)
PSET (a * 30, 50 - wave * 20), 15
PSET (a * 30, 50 - lopass * 20), 14
PSET (a * 30, 100 + timeConstant / 4 - trigger * 15), 2
PSET (a * 30, 270 - hipass * 20), 15
NEXT a
NEXT timeConstant
END
FUNCTION differentiate (sample, accumulator, tc) STATIC
fsample = tc
leakage = 1 - EXP(-2 * pi * 1 / fsample)
capAvg = leakage * accumulator
accumulator = accumulator - capAvg + sample
differentiate = sample - capAvg
END FUNCTION
FUNCTION integrate (sample, accumulator, tc) STATIC
fsample = tc
leakage = 1 - EXP(-2 * pi * 1 / fsample)
capAvg = leakage * accumulator
accumulator = accumulator - capAvg + sample
integrate = capAvg
END FUNCTION
The output looks like the image.10 -
Can anyone recommend any tutorials and assets to use when making movies/animations in unity?
Looking to turn my book series/potential game into a little series if i can get the hang of it.
I already know im going to use cinemachine for my camera system and I'll build my own audio management and trigger systems (Hopefully).
And a side note, does anyone know of anyone who would do some 3D character modeling if i was able to provide some character concept art and have a chat with them? -
Working on programming a user interface so a user can select a line in a graph. I have a rotated mouse area to match that of the line to be selected. This mouse area can detect when a mouse enters the area. This seems to be working well. But then I noticed it was lopsided. Entering the area from one direction was not showing entry as soon as from another direction. Then I realized that the black border of the mouse was not being used to trigger entry into the area. It is the white area of the mouse tip that triggers this. The black area is only to provide contrast so you can see the mouse.
So on a mouse, and in mouse point selection on Ubuntu, the black border of the mouse only servers to provide contrast to the controlling white area of the mouse.
🍿🍿🍿4 -
haha I just thought of the perfect training device.
so many guns can have hair triggers. why not create a wifi enabled composite replica of guns someone is training with and get them all excited and psyched out and add a tracker to the trigger that opens a simple circuit and reports 'weapon fire' and gun orientation to the computer to help with training and reinforcing the training of proper weapons handling during apprehension or holding of a person so you can take control without shooting them accidentally in war or law enforcement actions, you could add a system that plays a very alarming bad noise when someone in the scenario is accidentally shot or you accidentally shoot the person being apprehended :P you know like you hold a pair of scissors with the point away, train them to hold their finger somewhere when handling a certain way to prevent misfire.
yes i'm thinking about shooting certain people or holding pedo money bags hostage atm. -
Long time no see!
I'm thinking about creating a Youtube channel to create some funny dev projects.
The first one is going to be: "Creating the DevOps nightmare", where I'll create a server health-checker to run on my raspberry-pi, and if the checked fails it'll trigger an API to call him with the voice of my boss, saying that if he doesn't fix that, he will be fired.
What do you guys think?2 -
Started developing an interest in programming after creating warcraft 3 maps using the world editor. I still remember those days where I used the gui trigger editor, where I don't even know the difference between local and global variables, preventing memory leaks by using leak check and etc. Creating new skills using triggers was so exciting. Then I discovered JASS, but I didn't really learn or use much about it. Now I'm working in Unity3D and it is awesome!2
-
I was setting up a CI build machine. Builds were supposed to be ran in disposable containers, but I needed a way to trigger a task on the host from inside the container. I didn't want to give containers shell access to host - kinda misses the point.
Solution: a server running on the host and listening for predefined commands on a named pipe. The pipe was bound into containers which would simply echo commands into it. Very simple and effective.
The hacky part? The server was an 8-line bash script.1 -
Guys, about Continuous Integration/Delivery using SVN as repo... What is the best approach? It would be nice if it could trigger the files that should come to prod by commit message or something like that...
Thank you.3 -
Random learnings/realisations/hypothesis:
i have found a sense of happiness in weird symbiotic environment : being rich in a poor environment and live with a poor-but-secretely-rich lifestyle.
i call it the "sheep-hoodie" lifestyle: being a wolf in a herd of sheeps but not with a sheep's skin glued to your body. rather a hoodie so you can be a friendly wolf , ferocious wolf and a friendly sheep whenever you want to.
my 1 group of friends are in a sheep phase : struggling in their life , crunched on money, not saving a lot or focused on savings and stuff. At least that's what shows up from their discussions. however when we are together, i see that we are always supporting each other, and sharing resources/helping each other while having fun
my another group of friends have a wolf lifestyle:
they are insanely rich, if you want to party/do something with them at 'their' level, you gotta have a lot of cash to burn . they are wolves because they know how to sell their stuff, whom to sell and how to retain the info for success. i don't enjoy much with them as their solutions to life problems end up with something that involves a lot of money than effort.
So my lifestyle is to earn like them, but live like my broke friends. they think that am earning 20% of what i earn now, and am also in lots of debts and family crisis. someday my lie is gonna burst when i buy expensive stuff lol
--------
#2
i have realised that i have an OCD for silence and psychotic reaction to noise . for me ,
Silent Environment >> sex >> any relationship.
I might react so aggressively to noise while trying to focus that i may end up breaking the closest of relations with anyone
--------------
#3
thinking of having 3 twitter accounts just to fix the problem of devrant not saving content of dormant accounts :
- professional : an id where i will share my professionally stupid questions, achievements, debates etc
- personal/partial-anon : an id where i will share my personal thoughts and stuff. it might also include devrant screenshots / embarrising content that i make here
- true-anon : a full anonymous account for my(some) extreme thoughts, trigger content and explicit researches
my current twitter feed is a mix of first 2, but making 2 seperate accounts might give me more freedom(the level of devrant) to express myself than what i do now (as my followers are also interesting people but mostly related to tech)
guess i should move my tech content there than my personal content.
------------------------------
#4
making an early opinion about something should only be done to research for truth/content/conversion/hype . final opinion should always be made after you trust something with a research. for eg, initial opinion of Elon Musk was he being a bad guy, but now after seeing his crazy ideas and approach towards twitter, he looks like someone who can truly make it a money minting machine.
------------------------------
#5
A simple perception towards making money as not being a bad thing does wonders at a management level and life .
liberal opinion of twitter layoff and later changes were emotional and blaming, but thinking from a business approach, his company partners(and whoever he likes) now have special golden badges to feel like VVIP and have an orgasm, while he gave a dummy melon to every person on earth to pay for feeling like a VIP and have an orgasm.
a brilliant tactic to make money without anyone calling the minting of money as BAD. genius
------------------------------
#6
was randomly checkin Insta, saw an ex-collegue share a random deep thought quote, and i realised that i might have known her for just a week or 2 in college, but she had a very nice nature.
However, she was the daughter of a very rich ass dad and had almost everything in life. she gave a bit spoilt(for me) look, like someone who did ciggs or drink, but her talks then and our chats later just on chat gave me a very nice hustler vibe (the type of people i like: hustling and professional)
I indirectly asked her on a date and she agreed. so, this is something very interesting for me, as i am hopelessly single and full of judgemental opinions/ strict rules. share your tips and notes on how to have a successful date, and stuff that one must NOT do . much grateful if you do not come under rule 29 of internet and share your POV -
i was watching a video on how whatsapp can't make enough profits coz its free and even though its a clear lie (the cartel money made by selling user data will obviously not show up in legal books), i had a thought. can any good consumer software be ever kept free for usage?
Say i made a very awesome chat app. it has 0 bugs, it does the basic tasks of sending /receiving data and media correctly and do not require any maintenence .It also is optimising a lot of cloud cost by keeping user data in their own devices and only transmitting data on triggers.
i still would require a server to keep the trigger architecture alive. and all the servers in the world are maintained by for profit corporates which will charge a premium for their services. so free products are a fallacy as someone is paying for it. it will be an investor, a different business or we the consumer (either directly as subscription , or indirectly via ads or personal data)
So i guess this realisation is going to hit soon to a lot of tiktok and insta influenza kids5 -
Vivaldi browser seemed a good idea to escape Google's misfeatures without swapping it for Microsoft extensions (Edge) or Firefox / Gecko idiosyncrasies (size / magnification issues on Ubuntu, slow Android version, clunky UI). But there are some ongoing issues that I never experienced in any other user agent (maybe I will when switching to Chromium), like URL completion (port URLs without a protocol aren't prepended with https but trigger a xdg-open dialog, autocomplete prefers obscure deep links with long paths instead of the base URL, browsers seems to forget login passwords by default, etc.) - so Chromium seems like the obvious choice. But there seem to be no more Chromium builds for Android? Anyone else disappointed by Vivaldi has a preferred solution?4
-
In your guys' opinion, what's the best services to run/hosting use of a Linux server? 🤔 I'm thinking of standing one up to tinker with but I want some useful functionality in mind before I pull the trigger.2
-
Sveltekit's progressive enhancement on forms is an obstacle more than a tool.
Submit buttons stop working when they want.
Other buttons in the forms may trigger an action via POST if their type is not defined.
Everything with no feedback whatsoever. At least tell me I'm an idiot in the form or let me know why a button type="submit" does nothing to send the form data 🤦1 -
It’s been a while since I have posted here but I felt like I want to rant without any thought of being judged.
I had take a break from work and it was working well for me. I had my ups and downs. I was always working on something but on the outside everyone just assumed that I did nothing.
I had other personal incidents that affected me. I started to get trigger with my environment and how much ever effort I made to make it lower it was still triggering.
For that reason I thought to pick up course in a different country and work on myself w/o these triggers existing.
Even though I have a plan to get started to work on things. There is this huge heaviness in my head that doesn’t seem to go away. It makes me doubt wether I am good enough to be a developer.
The previous two companies that I worked for keep reaching out to me to join them back but it still doesn’t feel like enough.
I think I am just scared to fail at this point.
Plus with everyone constantly asking me about the recession it’s adding up to my cloudy head.
I know this cloudy feeling is temporary but it’s this that stops me from being an optimal person and that mildly infuriates me. -
I let my ML friend (great bloke, all the following shit giving is with love) use my chatgpt plus account so he could try gpt4, bc he thought “chatgpt” is “overhyped”. meanwhile I'm getting it to pump out 50 line pSQL trigger functions like it's a Tuesday. no flex its literally like ordering pancakes.
ana he logs in proceeds to get frustrated with it and says it's shit. somehow he managed to select gpt 3.5 instead of 4.
it took me showing him THIS USELESS example that basically has almost nothing to do with gpt 3.5->4 jump (plus get access to a sandbox, cool) for him to realize that wow maybe just maybe this ain't a major version bump -
Read an article about "Who is gonna grab the position of Google ". Nice jnsight about how a giant like Google can lose control of Android , due to proliferation of cross platform apllications . Instilled fear in my mind due to my lack of mobile developement knowledge . Interesting perspective on how cross platform developement can trigger downfall of Android..2
-
js = pia I wish you could manually trigger validation of a field using Parsleyjs ...always looking for a clean workaround
-
So Saturday I was doing mildly athletic (basically just moving my body) and I started to have a headache inside my head. Every time my heart rate increased I could feel my headache getting stronger in my skull. I don't know if I have ever had a migraine before. Someone told me it could be a migraine. I took an aspirin in case there was a clot and some other pain reliever. Well, it still hurt this way on Sunday and in the morning on Monday. I setup doctor appointment for later this week. Now it acts like it might be going away. So it won't hurt when I go see the doctor maybe. The only reason I wanted to see the doctor was because it stayed for almost 3 days. If it doesn't stay maybe there is no issue?
I wonder if my walks I take during the day will trigger this. I have heard food dyes can cause issues. Someone at work brought in candy with dyes in it. But I have not made great effort to remove dyes from my diet. So I dunno. Can you get migraines later in life? It always seemed like either you had them or you didn't.2 -
Turns out... Angular doesnt have a fucking library or a way to communicate directly with kafka that's built on a separate backend!
I would have to either call a REST route to the backend which then forwards transmitting the "real time" request to kafka broker. Or transmit a socketio real time event to trigger kafka.
What kind of BULLSHIT is this? Why the fuck would i use kafka at all then in this case? I could replace it and cut the shit with socketio! Ridiculous!5 -
Ok. Wtf?!?
Our platform architect gives a damn about continuous delivery.
Today I asked the architects for help, because bamboo is not able to trigger a deployment plan by changes in repository branch pattern release/x.x.x.
He cancelled my question with the statement "if we have the Kubernetes environment, we have more valuable things to work on".
Generally CD is no rocket-science and it is achievable with reasonable effort! -
Hey is there any iOS dev who can help me with this?
Is there any way to trigger a context menu in UIKit with only tapping the view instead of tap and holding? 🤔 -
In Spring/Boot if you annotate a class as a Service is it started on a different thread? I used @PostConstruct to start listening to a connection.
The class with main () seems to just load Beans defined in the AppConfig?
I need it to start a thread that listens to a Mongo Changestream and trigger some action on each.
I noticed a log line under the watch() is never reached so seems it's blocking...8