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 - "reverse engineering myself"
-
Finally got myself a Lytro Illum!
I,v been wanting to buy one since it came out but the company who made it closed down in 2015..
Thoose fuckers just thrown everything in the trash and set it on fire, software, firmware, mobile app etc.. no open source, no archives, your expensive camera is now a paper weight! You’r welcome!
So i got myself a new hobby, started reverse-engineering the fuck out of it, luckily it’s based on android (api17), i have adb and it’s running a hidden DHCP server too so it’s coming along nicely :D
I’m planning to make a camera control mobile app for it and maybe some faster image processing, wifi sharing etc..
I love beeing in home office :D19 -
So, a rather unfortunate bug on the Minecraft website.
Minecraft allows you to change your name every 30 days. I was reverse engineering their API so I could use it personally.
On the username change form there are two fields: your desired username, and your password.
To protect myself from actually changing my name, I purposefully put in password123 so that it would fail. Then, I clicked "Change name" to monitor the network traffic.
Well that's when two unfortunate things combined.
#1: I used my last name to test. It's a unique word that is relatively short and very easy for me to type out of habit.
#2: That password field doesn't actually get validated.
So imagine my shock when I clicked "change username" and it WORKED.
And now my username is doxxing me for at least 30 days + the permanent name history
FUCK me5 -
I often times write code and think to myself "I don't have to comment this, it's obvious what is going on", only to find myself back at the same code, figuring out wtf it does...1
-
why... WHY do I always attract all sorts of weird problems...
I feel like it makes me look incompetent :/
Like this side-gig. I had a client who brought us essentially half a rack (20 blade servers, 7 units of network equipment) and asked us to spin it up. No passwords, no topology - nothing. It was my first such "project".
So I'm setting it all up, using chatgpt and notions of vlan theory from college years ago. I managed to make smth work. Went away for the rest of the day. Hours later I come back -- no longer can connect to ovpn running on a MikroTik router. wtf... connect to office router's vpn, winbox via mac to the router to see wtf. Everything seems alright, except when I try to `/ip route print` it just hangs there. Tried a few times. -- same result. As if routes just got borked while noone was touching it. Found someone who's working with networks wtf, he said he's NEVER seen this happening. A router reboot sorted this out. That's weird problem #1.
I finished reverse-engineering and re-setting up the networking, sketched a topology with patching scheme and asked colleagues to take it all to the DC. They did it, connected it all up. 5 nodes aren't accessible via network. So I connect remotely to the router's openvpn and try to see what's up. Indeed, some servers are reachable, others aren't; even though MT switch (router's downlink) sees those servers plugged in with link up, servers don't see the link. I noticed some ports aren't trunking some VLANs. I started adding those ports when the winbox connection dropped out of the blue. 5-4-3-2-1-reconnecting... it reconnected. Yayy!! But wait, where is everything...? All interfaces -- gone (physical ones too). All IPs -- gone. All routes -- gone. Everything's gone. Half a minute later I'm disconnected again. The switch IP is no longer pingable. Servers plugged into it aren't reachable either. That's weird problem #2.
Then I figured I might try to see whether I can see anything from the router level. Try to ssh to it -- attempt was dropped, as if 22/tcp was closed. wtf? It was working in the office. winbox into it -- yayy, that works. Try to open a terminal via winbox -- a dialog pops up "Terminal <1> - not permitted (9)". wtf..? I Google this error up, it says that user is a member of group that does not have telnet and ssh permission. Indeed, I loog into groups -- the group 'admin' does not have them. Try to add them -- also not permitted. And I'm the 'admin' user, a single user in the router after a factory reset. How the hell else do I change permissions if even admin is flipped a finger.
That's weird problem #3
And now I look like an incompetent prick with two left hands who is only breaking shit.
And it's been like that my whole career
Why... How... ffs, that's getting annoying. Maybe I should downgrade myself to a QA. Problems find me themselves, I don't even have to look for them2 -
🚀 “I Wanted GitHub Copilot in My Pocket — So I Built It Myself”
For years, I’ve had this weird habit of coding from random places — cafés, buses, hospital waiting rooms, you name it. But every time inspiration hit, I found myself thinking the same thing:
“Man, I wish I could just use Copilot on my phone.”
It’s 2025. We’ve got AI writing novels, generating music, and summarizing 500-page research papers in 2 seconds — yet somehow, GitHub Copilot still refuses to leave the comfort of VS Code on desktop.
So I decided to fix that.
💡 The Idea
It started as frustration — a “wouldn’t it be cool if” moment. I was halfway through an idea for a small project on a train, and my brain screamed:
“Why can’t I just ask Copilot to finish this function right now?”
VS Code was sitting at home, my laptop was dead, and all I had was my phone.
That night, I scribbled this into my notes app:
“Bridge Copilot from VS Code → phone → secure channel → no cloud.”
At the time, it sounded insane. Who even wants to make their life harder by reverse-engineering Copilot responses and piping them into React Native?
Apparently — me.
🧩 The Architecture (aka “How to Lose Sleep in 4 Easy Steps”)
The system ended up like this:
VS Code Extension <-> WebSocket <-> Discovery API (Go + Redis) <-> React Native App
Here’s how it works:
The VS Code extension runs locally, listening to Copilot’s output stream.
A Go backend acts as a matchmaker — helping my phone and PC find each other securely.
The mobile app connects via WebSocket and authenticates with a 6-digit pairing code.
Once paired, they talk directly. No repo data leaves your machine.
It’s like a tiny encrypted tunnel between your phone and VS Code — only it’s not VPN magic, just some careful WebSocket dancing and token rotation.
🛠️ The Stack
Frontend (Mobile): React Native (Expo)
Backend: Go + Redis for connection brokering
VS Code Extension: TypeScript
Security: JWT + rotating session keys
AI Layer: GitHub Copilot (local interface)
🧠 The Challenges
There’s a difference between an “idea” and a “12-hour debugging nightmare that makes you question your life choices.”
Cross-Network Discovery:
How to connect phone and desktop on different networks?
→ A lightweight Redis broker that just handles handshakes.
Security:
I wasn’t making a mini TeamViewer for hackers.
→ Added expiring pairing codes, user-approval dialogs, and local-only token storage.
Copilot Response Streaming:
Copilot doesn’t have a nice public API.
→ Hooked into VS Code’s Copilot output and streamed it over WebSocket.
(Yes, 2% genius and 98% madness.)
UX:
The first version had a 10-second delay.
After optimizing WebSocket batching and Redis latency, it’s now near-instant.
🤯 The “Holy Sh*t, It Works” Moment
The first time my phone sent a prompt — and my VS Code actually answered with Copilot’s suggestion — I legit screamed.
Like, full-on victory dance in the middle of the night.
There’s something surreal about watching your phone chat with your desktop like they’re old coding buddies.
Now I can literally say:
“Copilot, write me a REST API,”
and my phone responds with fully generated code pulled from my local VS Code instance.
No VPN. No cloud syncing. Just pure, geeky magic.
⚡ The Lessons
The hardest problems aren’t technical — they’re psychological.
Fighting “this is impossible” is the real challenge.
Speed matters more than perfection.
Devs don’t want beauty; they want responsiveness. Anything over 1s feels broken.
Security must never be an afterthought.
I treated this like a bank tunnel between devices, not a toy.
Build for yourself first.
I didn’t make this for investors or glory — I made it because I wanted it.
That’s the best reason to build anything.
🧭 The Future
Now that it’s working, I’m turning this experiment into something shareable.
The dream: an app that lets every developer carry Copilot wherever they go — safely and instantly.
Imagine debugging on your couch, or editing code in bed, or just whispering to your AI assistant while waiting for coffee.
Phones today are more powerful than early NASA computers.
Why shouldn’t they also be your code editor sidekick?
So yeah, that’s my story.
I built VSCoder Copilot — because I wanted to code from anywhere, and I refused to wait for permission.
If you’ve ever built something just to scratch your own itch, you already know this feeling.
That mix of frustration, caffeine, and late-night triumph that reminds you why you fell in love with coding in the first place.
Because at the end of the day, that’s what we do:
We make ideas real — one ridiculous hack at a time. 💻🔥9