Details
-
AboutFor the moment, CS student. For the future, heck if I know...
Joined devRant on 4/28/2017
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
-
I feel totally empty inside, it's 3:30 AM, but I got emoji's working in the Linux terminal AND Windows terminal using the same c code.
What you're looking at here is Linux (top left), Windows (starting slightly right of the top left), and the source code for both platforms. It also runs until you press the 'q' key so just displaying an Emoji would be much less code.
It took literally all day of learning about Unicode, Unicode in c, Unicode in ncurses, Unicode in Linux, and Unicode in Windows. But fuck me, I did it.
Only the new Windows Terminal (Preview) renders emoji. The old CMD.exe and powershell.exe will only render what their fonts offer, which isn't much. This got me stuck for a while.
Check out the lib here... leave a star for my ego.
https://github.com/AlgoRythm-Dylan/...5 -
Story time! Promised this, so making good on the promise. Eh-hem.
Misunderstandings [A slice of life short play that actually happened]
Dramatis Personae (anonymized, bc of course):
Moi ........ me, myself and possibly some lint
Robert ..... co-architect
Daisy ...... line dev
Lisa ....... also line dev
Prologue: the beginninning
[A project is starting up, new devs are coming on, including the two individuals who drive this story.
Daisy, of Indian origin, an exceptional dev and lovely person. Mother, wife, very conservative by upbringing in her early 40s.
Lisa, also exceptional dev, lovely person. Mother, also wife, self-made immigrant with liberal views derived from personal pride and self-bootstrapping]
Enter the office, We introduce everyone, off to a nice start, everyone is happy and excited to be working on [large bank project].
Lisa and Daisy form a friendship of commonality, they have similar backgrounds by all appearances and similar concerns due to children the same age and shared employment. They seem to become fast friends and things proceed normally for some months. Smooth sailing, all is well.
The fuse is lit.
Scene: Lunchtime gossip
[Robert, middle 40s architect adjacent Moi, also architect, age is my own damn business [old, so very old].]
Robert: "So, it seems like Daisy and Lisa are getting along great."
Moi: *snerfs a little, almost chokes on enchilada* Yes, yes they are, It's nice to see...
Robert: *eyebrow, having learned to read my expressions* "Aaaaaaand..."
Moi: "I adore both of them, but they are primarily friends because they don't actually understand most of what the other says"
[Lisa has a thick Taiwanese accent, Daisy has a standard northern indian accent. Never the two shall meet]
Robert: "Are you sure, they seem to have a lot of conversations?"
Moi: "Positive, you weren't at lunch with the three of us. They're polar opposite in terms of values, it'll be fine so long as that never comes up"
Robert: "I'm not even digging into that"
Moi: *flan*
Sizzle.
Scene: This is bat country
[More months pass, everything is fine, project is humming along nicely, save a few blips of personality conflicts. Moi takes a vacation. A gas station, somewhere in the middle of Wyoming, a snowstorm, a sports car full of luggage]
*phone rings*
Moi: *looks down, sees it's Robert, eyebrow raises, answer* What's on fire?
Robert: "We had to let Lisa go"
Moi: "Ah, they finally understood each other."
Robert: "Yes..." *deep sigh*
[Fade to flashback]
Bang.
Scene: The office, Lisa's desk
[Daisy and Lisa are discussing non-descript conversation. Daisy broaches the subject of Lisa's past divorce and being a single mother]
Daisy: "It must have been hard, how did you manage?"
Lisa: "I had my daughter, she was my motivation. We made it here, I met my current partner"
Daisy: "That's good! It is so hard, coming to something new. I could never imagine leaving my husband."
Lisa: "He left us, we weren't important, I don't want to marry every again"
Daisy: "Surely you do though? Marriage is great for a woman, my parents found a great husband for me."
Lisa: "Haha, lucky you. Most indian marriage is like prostitution."
[At this moment, Daisy's demeanor takes a nose dive. Whatever was actually said, what she heard was, "Indian marriage is prostitution"]
Daisy: *tears begin pouring down her face, she flings herself back in her chair, head shaking violently she screams* "I AM AN HONORABLE WOMAN!"
[Daisy runs out of the room, straight to HR. Lisa sits there, stunned, not really understanding what just happened or the consequences]
Scene: Back in bat country
[Robert finishes the story, the emotions are a mixture of hilarity at the absurdity of the situation and frustration in the work void it has created]
Moi: "Satan, well. Fuck me. Fuck us. Fuck. Is Daisy alright, is she at least staying? We can't lose two devs at the same time."
Robert: "She got a few days off, she seems fine now, but she's... yeah, I never laughed so hard"
Moi: *double facepalm* "Yeah, the word choice was a bit outrageous. It's not like we didn't know it was coming. I'm going to get back on the road."
Robert: "Alright, enjoy yourself, I'll try and prevent any other forest fires."19 -
Had to wirte and optimize a C++ program that finds for 1000x1000x1000 grid points the 100 nearest points for each (with an additional factor to make it more complicated).
It had to run in under 18 minutes to pass. No matter what I did I couldn't get it fast enough. I tried kd-trees, caching of certain points, optimizing distamce calculations by ommiting any irrelevant factor, saving points' calculated squares etc etc. When Ibwas down to 20 minutes, I realized, that my makefile had an error and ignored the - O3 flag...
Well, it actually ran 5 minutes with -O3.8 -
Uh-oh shit went wrong with umpteen thousand jobs in a pointer heavy, multi-threaded application in raw C. Fuck, some pointer gone wild?!
30 minutes later, after trying to find out how many jobs it takes to start failing. Noticed that it's about the default settings. Wait what? That's where the realloc'ing should kick in, check that.
Aahhhh. Maybe I shouldn't zero the whole buffer after realloc, just the new part. D'uh! -
Tl;dr; even password as simple as 123! Could be too dificult to use for unauth access. Even if you write it down for someone! Some minor HID config changes could be unbeatable for some people.
I always leave my lappy at the office and I leave it turned on and connected so I could connect to it from home if I really need to. The holiday is not an exception. I left it connected too.
Forba few weeks I was trying to connect to it from home to doublecheck xpra command I was using. Without any luck. The lappy was unreachable all this time :/
today some people came in the office. I reached out to one of them I trust the most to check on my lappy. And he says it's charger is unplugged. Fucking janitors...
I ask to plug it back in and turn it on. LUKS password prompt pops up. I send him the pw via sms along with a note that I'm using non-EN kbd layout. He confirms he'll manage.
20 minutes later he pings me "are you sure the pw is correct?". Yes it is! 5 more minutes later he pings me "... Is this how you type numbers and symbols with your layout?" nope, it's the other way around!
10 more minutes later he plugs in his own kbd, still fails. Sets up my layout in his lappy, spends a few minutes using it, plugs it back to my lappy and FINALLY enters the pw correctly.
Come on dude.. 😁2 -
Either I bumped my head really hard, I’ve died and I’m in hell, or something crazy because I’m actually kinda enjoying Java.19
-
[Client]
We've noticed we gave you the wrong product prices for our new online shop.
[Dev]
Yeah, just login to the backend and fix them.
[Client]
But we don't want to use your fancy backend, we'll be using anyway soon - we want EXCEL!
Could you send us an EXCEL, so we can fix that?
How much will this cost?
[Dev]
Sure... here you are.
Not that much, takes about an hour.
[Client]
Great, you'll hear from us in a few days.
(a few months later...)
[Client]
We've finally managed to update the EXCEL. And btw, we've also added a bunch of columns with product pictures and new properties, highlighted products to delete red, inserted some comments with manual instructions and basically destroyed the entire data structure of this table.
Before I forget... also make sure to get this finished today, we have to go live ASAP. Our marketing campaign is already live.
[Dev]
Well, I'm sorry to say this, but this is not possible.
I'm currently working on another project and it will take me hours to clean up the data you sent me, before even starting to build an import tool for the new data you provided. Better stop the campaign and I'll do my best to get this done by the end of the week. Also it may be a bit costly.
(angry client calls immediately...)
(dev transfers to manager...)
(client transfers to client's boss...)
[Manager]
Ok Dev, I think I was able to explain it to them. However, it would be great if you spend day and night to get this thing out ASAP.
[Dev]
No problem...
I'll just do it by hand to get this out immediately.
(few days later; nearly done, exhausted)
[Client]
Hey Dev, here's another EXCEL.
We've just noticed there were a bunch of errors in the previous one. Please use this instead...13 -
I'm really down.
I spent 10 years building on an application worth 800K$ revenue per year.
I tried to build a technical team. All left, because of fights with stupid account managers, CEO, business managers.
I was left alone for almost one year alone, working like 60-70 hours per week to keep the things going and adapt to more customers.
And looking for potential partners to outsource things.
Now out of the blue, 3 weeks before my summer holiday, investors introduce me to a "partner" that will rent to us a "developer" for 2 months. from tomorrow.
What the fuck I'm gonna do with him in 2 weeks I don't know.
Actually I understand that this "partner" will take over the whole project.
They used the word "to help me", but actually during the meeting they said to fix things that are not working, and to develop new features because the project is blocked.
Of course there are bugs, I have no developers with me and hundred of features and integrations to maintain. And of course everything is blocked because I have to think hard about priorities.
I feel humiliated in the worst way.
I don't know what will be my future position.
I wasted time contacting potential partners and the answer was always "there are no money".
The business strategist, entered one year ago and said "no more IT investment".
Basically as cofounder and cto (of myself), they will not fire me, if I stay silent. If I accept to be a puppet. And eat, eat eat a lot of shit. I'll grow fat from the shit I'll eat.
I feel I've lost all my hard work, and I'm alone.40 -
Shared screen with a client over Skype. Showed them in Postman that their API wasn't working as expected. It was expecting a json. Instead it was giving error code 400 instead of 200.
Message :
"Error: No error. All OK"
I'll never forget the words of the client:
"Don't use all this fancy software, you don't know how to call APIs, open Internet Explorer or chrome and paste it in the bar. You'll see All OK, means all is okay."
*insert you dense mf meme here*20 -
I'm task to amend the code smell in the project. I literally can cry a river.
I see such thing as i = i++; - It's flag out as a bug.
I have also seen check in classes. With un-used variables. I literally cried.
In the past, i ask why do i got to care about code quality. I actually start to get angry like the team leads in my project.7 -
I just went to SO to browse questions and learn something or help someone...
And then...
THE FREAKING PRINTSCREEN OF IDE
INSTEAD OF COPYING THE CODE
And you know what's worse?
There was also a PHOTO of the output from the console.2 -
So I just fixed about a year or so old bug by removing my solution entirely.
As very few of you will know, I work on/ off on a project called TG which accelerates cmd.exe
One of my oldest bugs in this project is that the buffer resizes real weird. If you adjust both the height and width at the same time, it goes into this weird infinite loop business.
As it turns out, cmd.exe handles that by itself just fine. I just removed my resize listeners and now everything is running smooth.
feelsgood(?)man.jpg -
This is a friend's story:
So I've been trying to upload a free sticker pack for iMessage to AppStore for a while now. Why "trying"? because it keeps getting declined for the silliest reasons. It's nothing complex: just a bunch of our company's stickers about dev life. "Stickers for devs, from devs."
The first time Apple has declined the app because of the overall design, the second time it was because we used iMessage in the title. But this time it makes no sense at all. This is the message I got from Apple:
"Your app contains references to test, trial, demo, beta, pre-release or other incomplete content.
Specifically, some of your app’s stickers have “beta” references."
Huh? Check out the pic - one of our dev-related stickers says "still in beta". I guess Apple took that way too literally. Good thing they didn't tell me my app was too buggy because it has a sticker of a bug which says "it's not a bug, it's a feature"...
On second thought, what if AppStore is a modern-day Genie? Maybe I should add a sticker that says "Apple owns me $20 million in stock"? Or just one that says "Apple approves this sticker pack".
#Thisneverhappens_on_googleplay #appstore_make_a_wish #rookout8 -
I was so tired of my job and I wanted to do something of my own. So, I thought why not just follow my heart, I love to travel so I just got into blogging and all with www.blacknwhiteboxes.com and now I have a company of my own where I help people plan trek.1
-
Warning: Long rant ahead!
So we built an amazing system for managing swarms of drones, and we have flown hundreds of hours, testing, etc.
Comes a client and says, that he wants to buy our system, but he wants to integrate it in a bigger system that is supposed to orchestrate many small systems.
Sounds like a deal.
So they send me on a week course (see previous rant: https://devrant.com/rants/2049071/...) to learn how to integrate our system in theirs.
I was sure that they have some API or something and it should be a breeze. but apparently they give us an SDK that includes all their files, and we have to build and run their entire system, and then build our own API inside of it!
And the reason we needed a week-long course, was to know all the paths where the XML configuration files exist!
So for the last month, I am hacking away inside this huge program, navigating thousands of files in a language I don't know, in order to build an API for their system, so that I can use it on our side.
Yesterday they informed us that a new version is available.
And sure enough, waiting in my inbox this morning was a link to download a new SDK.
No Changelog, No Instructions, Just a zip file with over 25,000 files.
So I phone my contact in their company to ask how exactly I am supposed to update their files, and his answer was: diff them!
WHAT! 25,000 files, half of them built by the c++ compiler, tens of configuration files scattered in different places, linking all the new libraries from scratch, are they crazy or what?
And then he tells me that they are working for 15 years this way. That's why everyone hates them I guess.
going to have a long day...
P.S. many more rants to come from this integration.4 -
Today I've been mocked by a fucking coffee machine.
So I was at a small train station, everything was already closed except for a small coffee machine
Dumb I, for whatever fucking reason, decided it'd be a great idea to get a highly overpriced cup there.
Now, the fucker made me the drink but instead of giving change, it started "shooting" coins in my direction (there was no flap on change box)
As I'm picking up my change, this abomination of a machine performs a cleanup, spitting some shit into my drink
I couldnt drink it obviously .. threw the overprices drink away, bought another one... Got shot with coins again... Whata pain... Just to figure out... There's no more cups 😭😭
It made the drink into the tray...
AaaAaAAAaaaaAAA
Fml4 -
Me: *hours of coding, develops a feature*
Code: I'm working..
Me: Oh good.. will monitor you for sometime.
Code: Ok, I'm done. I'll stop working now.
Me: WTF
Me: *sits for hours to solve bugs*
And when almost done,
VPN: Someone's having a good day, I'll disconnect you now.
Me: WTF
Me: *tries switching on/off VPN couple of times..*
When it starts to connect,
WIFI: Oh wait!! It's my turn to bid goodbye now. Have a nice day sir
Me: Of course !! The wifi
Me: *restarts router/ troubleshoot etc*
When wifi says connected...
Battery: Good job with wifi.. I'm down now..what you gonna do?
Me: Are you fucking kidding me???
Me: *connects charger, wait for laptop to switch on*
Windows: Updating....
Me: *jumps out window*13 -
What features would you want in a logger?
Here's what I'm planning so far:
- Tagged entries for easy scanning of log file
- Support for indenting to group similar sequential entries
- Multiple entry types (normal, info, event, warning, error, fatal, debug, verbose)
- Meta entries, so the logger logging about itself, e.g. disk i/o failures.
- Ability to add custom entry types, including tag, log-level, etc.
- Customizable timestamp function
- Support for JS's async nature -- this equates to passing a unique key per 'thread'; the logger will re-write all the parent blocks for context, if necessary. if that sounds confusing, it's okay; just trust that it makes sense.
- Caching, retries, etc. in the event of disk i/o issues.
- Support for custom writers, allowing you to e.g. write logs to an API rather than console or disk.
How about these features?
- Multiple (named) logs with separate writers (console, disk, etc.)
- Ability to individually enable/disable writing of specific entry types. (want verbose but not info? sure thing, weirdo!)
- Multiple writers per log. Combined with the above, this would allow you to write specific entry types (e.g. error, warning, fatal) to stderr instead of stdout, or to different apis.
- Ability to write the same log entry to multiple logs simultaneously
What do you think of these features?
What other features would you want?
I'm open to suggestions!18