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 - "wk6"
-
In my college days i was designing a bootloader for avr microcontroller , i had the idea to flash code wirelessly to avr over bluetooth and also cross compile the compiler for android device so that you can code on android, every thing went well just one thing didn't, i saw that code of certain size is executing properly , greater than that size gives me wired outputs so i have to dump hex from the avr (that is flashed the by bootloader) and compaire it with the original hex of code it got messy as you can see, most fun part of this bug is that error can be anywhere cross compiler may be fucked up , the bootloader may be fucked up , or it may be my bluetooth module , after 14 hours of staring at the hex code i figured out the mess in bootloader instruction that was changing the page address for flashing .
when it worked it was 3am in night i literally burst into tears of joy next day bought myself a cake to celebrate6 -
Once upon a time as a developer for Palm handhelds I wrote an application in C which had to print via a Bluetooth printer.
When connected by wire everything was perfect, switching to BT it kept crashing for weeks without me finding the source of the problem.
Then came the day of my companies summer party. I've been the last guy to sit in front of the PC, investigating my problem, when at about 9 PM my boss came and told me, I should grab something to eat. So I went down, drank three beer and got back to work.
At about 9:45 PM the damn wrong * was replaced by the correct & and everything was fine.
PointerIssuesSolvedByBeer++; -
1996, my colleagues trying to port Chorus microkernel on Cray supercomputer. System crashes every ~5 days with no apparent reason. After weeks of investigation someone notices one of the network cables slightly longer than others ... after ~5 days and speed of light the Cray would miss a clock tick and crashes. Replaced network cable and it works fine!
Don't mess with supercomputers ...2 -
It happened 2 nights ago.
We had a whatsapp project for the distributed application programming class, my project mate and me were coding for 2 weeks whole day to finish it, especially with the end-to-end encryption feature that teacher asked, till 2 nights ago the project was trash, the private chat wasn't working and and nothing else is done we had only the UI, we was really doomed especially we had 1 more day to deliver the software, and we decided to deliver the project as a trash and get marks from the UI and the presentation.....
Till the night before deadline at 8 pm
I wanted to try fix some interface pictures and to make it better......
The next thing it was 6 am and the project is full working..
When I told my project mate he was not believing, I had to swear multiple times fot him and hat to go and show him the project by the eye.
We delivered the prohect and got 22/25 😁😁😁
It was incredible I didn't believe my self at first place.
Sory for the long story 😓.3 -
I've been pleading for nearly 3 years with our IT department to allow the web team (me and one other guy) to access the SQL Server on location via VPN so we could query MSSQL tables directly (read-only mind you) rather than depend on them to give us a 100,000+ row CSV file every 24 hours in order to display pricing and inventory per store location on our website.
Their mindset has always been that this would be a security hole and we'd be jeopardizing the company. (Give me a break! There are about a dozen other ways our network could be compromised in comparison to this, but they're so deeply forged in M$ server and active directories that they don't even have a clue what any decent script kiddie with a port sniffer and *nix could do. I digress...)
So after three years of pleading with the old IT director, (I like the guy, but keep in mind that I had to teach him CTRL+C, CTRL+V when we first started building the initial CSV. I'm not making that up.) he retired and the new guy gave me the keys.
Worked for a week with my IT department to get Openswan (ipsec) tunnel set up between my Ubuntu web server and their SQL Server (Microsoft). After a few days of pulling my hair out along with our web hosting admins and our IT Dept staff, we got them talking.
After that, I was able to install a dreamfactory instance on my web server and now we have REST endpoints for all tables related to inventory, products, pricing, and availability!
Good things come to those who are patient. Now if I could get them to give us back Dropbox without having to socks5 proxy throug the web server, i'd be set. I'll rant about that next.
http://tapsla.sh/e0jvJck7 -
This probably isn't the coolest bug I've ever solved, but surely the one with the biggest faceplam
So I was building a Bluetooth smart watch that pairs with your Android device for the final year bachelor's project. The submission was in a 2 days and it was all ready and it suddenly stopped working.. Spent hours trying to fix it, even tried to get a replacement Bluetooth module (was out of stock -_-).. After a day's worth of freaking out I discovered that Android phones (at least the OnePlus X) don't connect to Bluetooth modules when their battery is below 15% -_- and since I was freaking out I would let the phone charge a bit and get back to debugging and it never crossed 15% so it never worked.. One day of debugging attempts later it suddenly struck me that low battery might be an issue.. And voila! It worked after charging the phone
Shouldn't such things be clearly mentioned in documentation :/
(Btw, got full for the project, got a 10/10 GPA for the semester)1 -
had an issue where our clients payment gateway would duplicate the charge (at the gateway...not at the application) before sending it to the bank officially - the bank would detect the duplication then void both charges.
the gateway service admitted this was a bug, the bank it was tied to admitted it was a bug - but they wouldnt fix it. so my solution was to send a special uid with the original transaction (put it in a special field) and had the bank track that one as the "known good"
the funny thing? next version of the gateway api included this as a feature, but i got no credit.1 -
I was supporting a legacy CRM app which front end used Visual Basic 6 and almost the entire business logic was written on SQL store procedures.
A "feature" of the product was the open code, anyone with admin access could modify forms, code and store procedures.
We also sold "official" (and expensive) consulting services to modify the code.
A long time customer owned this thing and it was heavily customized. They had hired us to change something, hired a third party to make other changes and decided to modify some stuff themselves because, why not?
Suddenly they came to product support asking to fix a bug. The problem happened on a non customized form.
After reviewing, I realized the form used several of the modified store procedures in the business layer. I tried saying we don't support custom code but my boss was being pushed and said "look into it"
All 3 parties denied responsibility and said their changes were NOT the problem (of course). Neither of them commented or documented their changes.
The customer started to threaten to sue us.
I spent 5 full days following every field on the form through the nested and recurrent SQL store procedures and turns out it was a very simple error. A failed insert statement.
I was puzzled of why the thing didn't throw any error even while debugging. Turns out in SQL 2003 (this was a while ago) someone used a print line statement and SQL stopped throwing errors to the console. I can only assume "printing" in SQL empties the buffered error which would be shown in the console.
I removed the print statement and the error showed up, we fixed it and didn't get sued
:)4 -
One of the more memorable computer problems I solved were when I added some lego blocks to solve a recurring windows bluescreen
A friend had a Pentium 3 (slot 1) that kept throwing him several bluescrens per day so I decided to help
I open up the computer and saw that the processor were not properly securred in it's place and the plastic pieces that should have holding it in place were gone, so I improvised pressing in some lego pieces that I found somewhere to secure that the processor didn't move if someone were walking close to the computer and after that he didn't have any more bluescreens than the rest of us4 -
Our team was having a problem with very slow response times from a 3rd party web service they were contacting to get some device stats. No issues on the other end, but it had already been weeks. They ask me to take a look at it.
I take a few days, do a couple of benchmarks and tests and I isolate the section of code responsible. Turns out, the method they were calling would timeout if the device was offline. We ask the vendor, and they confirm this. They tell us to call methodX to check if it was up.
After having done that, lookup now only took seconds. They were annoyed that it wasn't documented but was just glad it was fixed.2 -
colleague: AWS is facing some network issue.
me: But I see you are able to SSH into EC2 instances.
colleague: Well, I am running my nodejs app on 8080 but can't access it over the Internet. Works fine on my laptop though.
me: ec2_prod ~# netstat | grep node
lolol -> 127.0.0.1:8080 node
Turns out it was running on localhost IP. Worked fine on his laptop though.3 -
There was an error in one of my Java file. Impossible to find it. I commented all the code and the error remain. I commented the import of that class and no more error. How the f**** is possible that a empty class give an error ?
I opened the file in another text editor and found out that the last character was a symbol that wasn't recognize or display in other text editor.
I was really proud (and confused)3 -
Set up a mail server for our office using one of those all-in-one mail server installations. It would keep denying connections every few days, so me, being the inexperienced shit I was, setup a cron job to restart the server at midnight everyday. It worked and still, to this day, it still works.1
-
My new motherboard (MSI Z170 GAMING AC) reports temps for the memory, CPU, GPU and hard drive in °C. And the motherboard temp in °F.
Almost had a fucking heart attack the first time I opened Speccy for benchmarking. -
A customer was complaining that the twitter feed on their homepage was listing strange tweets containing curses. somehow a JavaScript variable was not assigned correctly and got a value of 'undefined'. because @undefined is an existing twitter handle the code did not crash and went on displaying the wrong tweets.2
-
Hotest bug: a server in Vietnam kept going offline then popping back a few seconds later. While logged on I couldn't find anything wrong, so eventually I decided to go check on it. It turns out the aircon in the server room situated right above the server has started leaking, so the ever-helpful ops people onsite has wrapped the whole rack in plastic, covering all vents. Surprisingly hard to kill, old HP servers...1
-
The coolest bug I ever found:
was a simple button on my first website ~2002 that said "Don't Click Me!" and was supposed to popup a dialog saying "I told you not to click me!" When pressed in IE on my middle school network it would spit the message out of the library printer... Oh to be young again3 -
It was my first month as a driver developer fresh out of grad school, at a semiconductor company. There was an elusive memory alignment bug that had eluded the experts on the team. Of course, they had to assign it to me.
I was looking at the code where alignment was being calculated for nested structures case. I saw something funny: "size_t(object)". I asked the expert where it should have been "sizeof(object)". And, sure enough it was!!
I was super-thrilled to have fixed a bug in my first month, which had troubled the team for a long time! ^_^6 -
In 2010, it was my first client project. Our architect was not from iOS background, we had editable pdfs in our app. Those were pretty rich pdfs with inline HD images. iPads that time were not too fast and couldn't handle big gb pdf loaded into memory. App would crash randomly running out of memory. We fixed it by paginating pdf, it wasn't out of the world but considering it was my first mobile project and no one to guide, I thought it was pretty cool what we did there
-
Coolest bug I ever found was the temperature sensor connected to a raspberry pi giving me -40 as a value.6
-
I dunno about coolest, but I did sort of cement my reputation as the "database guy" in my first job because of this.
My first job was with a group maintaining a series of websites. Because of the nature of the websites, every morning we had to pull the records from one database on one network, sneaker net the data to a database on another network, and import the data via custom data import function.
However, the live site would crash after 100 or so records were imported. The dba at the live site had to script out a custom data partitioning script to do his daily duties, but it definitely messed up his productivity.
Turns out, the custom mass import function had recycled the standard import function, which was only used to import 1 record at a time, and it never closed its database connections, because it never needed to. A one line fix to production code was delivered 6 months later (because that was our release cycle) and I came up with the temporary work around, which was basically removing the connection limit. It would still crash with the work around, but only with multiple days worth of data. So basically only on Monday. Also developed the test set for the import (15k+ records). -
So I took over a project from another dev after he left the company and his project was currently in QA pending release. They were blocking it due to some issues around the persons information not appearing consistently. It turned out he wasn't persisting the persons information in the database with the actual record.
It would be as if when you ordered something on amazon and changed your address for a future shipment all shipments would show the new address. So it turned out QA had no idea how bad the problem was and they had pushed this issue to him to fix but he just wasn't fixing it.
When I reported the problem to my boss and due to the time constraints for release they authorized a contractor to come in to assist. I ended up writing a few classes and one table to persist the data and all of it was solved. I ended up fixing the problem in one weekend. Huge problem and I fixed it in just a few days. -
Worked with a team on a mobile app project. The system needed to contact a system coded in php.
When a call was made to php, it would be stored in a variable $call. Weirdly it never worked. After spending days trying to find the bug, it turned out that a junior Dev had created a variable $call in another file that was being included into the api file.
We partied the day the bug was fixed 😎 -
So on a PowerBuilder app I worked on last year (I know right...), suddenly the business users were reporting that they couldn't edit some of their prices! When they clicked save, the screen would refresh and lose their work.
We had recently upgraded the system to allow them to enter hundreds of prices at a time, much more than there had ever been. But that code wasn't anywhere near this part!
Tracking this down was really fun... By great fortune, I discovered the row the users were editing was the 99th row in the DataWindow. As it turned out, in the distant past (this is PowerBuilder, after all) the returns code "99" had been used as a flag to mean "cancel/refresh the screen".
I of course offered to "fix it right", but the powers that be wanted it fixed cheaply, so we just changed the flag to "9999". 😬1 -
coolest bug our team had was not a actually a bug but a feature that is misused and abused.
tldr: its a feature that became a bug
we have an app that has a "test print" feature to test the printer and the format of the document to be printed. it has the word TEST for fields and all that.
it became a bug when suddenly, the users use that feature to print documents, instead of using the app with the business rules and all, and just manually strike off the TEST words with a pen.
the feature became a bug because it has become a security risk. -
Coolest bugs: anything involving SignalR hubs. what a crazy, upside down world asynchronous web sockets are.4
-
Coolest bug is less of a bug and more of a feature. I've been working on a medical app and I used an open source backend which had almost everything I needed. To be hipaa compliant you have to encrypt all sensitive data - full db encryption was not something this backend was capable of.
So my solution was to encrypt the data on the client side and create a secondary server - that can only be accessed on my app server - to store and retrieve the keys.
If anyone's thinking of working on a HIPAA project - you're welcome -
Just boosted my Starling/Adobe AIR game engine's performance by 60%! active code time per frame @ 60fps reduced from 50% to 19%. Now I have more room for lighting effects :)
-
I made a client who installed w7 on a macbook and used ie7 for years use chrome, so he i don't have to fix his website for Internet Exhauster.1
-
Server behaved weird and I couldn't find out why. Nothing on the logs.
As a personal side project, I've translated the whole project to Scala. Boom! FileNotFoundException. There was an incorrect path somewhere.
I still don't know why Java did not throw.2 -
#wk6 coolest bug: it was first year CS and we were learning data structures. the assignment was a maze solver using stacks. I couldn't figure out the issue I had and went to sleep. my dream that night was in code (one of a few times it's happened) and I woke up mid-night and typed it in and it worked. slept like a baby after that.
-
the word bug has lost all meaning to me because all issues in the repo are labelled "bug"
That being said, the best bugs I fix are the ones where i can say its IEs fault and theres nothing i can do so i dont have to do anything because IE will never be updated -
Most interesting bug caused - created printer driver for vietnamese diacritical marks for old matrix printer without VN support by switching to graphics mode and plotting the dots and dashes. Print speed reduced about 200x and printer shook itself to pieces by rotating the cylinder back and forth. Oh well... Ended up buying two new laser printers instead.1
-
Not the most exciting bug i solved but i was very happy when i solved it!
we were working on a java game for a school project. Te game itself consists of a maze so we used a double array maze[][] to store all the Tiles of the maze. to move players around we used x and y coordinates. When we started playing we couldn't figure out why we could move through walls and go in weird directions. and finally it hit me,
java uses [y][x] , and mathematics uses (x,y)2 -
I wrote driver to a research OS as a university project. The system behave weird in some subtle ways, and I assumed that's my fault, as an inexperienced programmer.
After two sleepless weeks of chasing ghosts, I've realized that for some reason there is a context-switch that *did not* involve the scheduler! Further investigation led to the actual bug: the main trap code in the kernel was maskerading as different process just to be able to work on its virtual address, but never put that mask off!
It could have been found easily by a static analysis tool, given that a non-volatile global variable was only written to and never read; but we didn't use any.2 -
Late for the "coolest bug" party. But: I helped migrate an organization from proprietary software to FOSS and they found a bug. They were used to being "the only ones who ever encountered this problem" (along with a few hundred other customers). Now we sat down and had a look at the code. Found out that the Perl script didn't pass the value in question to the template. An easy fix but it was an eye opening moment for them of the benefits of the FOSS path.
-
Once upon a time aka last week,
Was trying to fix an industrial automation software coded in Codesys. My company's standard library is riddled with bad documentation with a mix of English and German terminology.
Had to find out why a program kept crashing the program upon start up. Long story short and many stressful hours later, I found two functions in the standard library that caused an endless terminal process loop. Had to wrap the function in an 'if statement' so it would only run once. Function should have done this by default. -
A third party jar did nit support multi threading in our project. After the module was multi threaded it got stuck after few runs.
I felt like superman after finding the bug.1 -
we had a lot of date specific background tasks that run. one day one of the major tasks were not doing anything at all. check the builds in jenkins, was being triggered at 8pm as designed , but no output or errors, just success. eventually found out that someone changed the timezone on the remote host executing the job, so the job was infact running in the future where no events existed! needless to say was a simple fix! and mow I use NTP for everything1
-
While fetching data from a cursor, cursor.getString(cursor.getColumnIndex(COL_NAME)); was giving -1.
The issue? Did not call cursor.moveToFirst();
Was stuck on this for 3 days 😓 -
Just delivered most difficult project I had so far, despite all issues managed to deliver (on time). Had help from team but some colleagues only contributed with "I'll tell X and Y to do it".
Told my manager it was really hard for me and sometimes I had to work some hours in the weekends, once even entire weekend with no extra pay, just to meet deadlines.
My manager just told me in my performance review that I didn't deliver on time and compared me to the UX designer that delivers Figma designs on time for like 8 projects and never has to work overtime. I guess dev work is the same as Figma design around here.
Then manager proceeded to tell me that he wants what's best for me.
Safe to say no raise this year.6 -
made our onlineshop look fabolous (= the same as in FF :p) in IE8 when 80% of our traffic came from it
-
not a huge bug, but it was my most recent one. was building a website and I wanted a custom font, so I put in
@font-face {
font-family: "Font";
src: url ("fonts/font.otf") format("opentype");
}
but this wasn't working. looked for about a day (while working on other stuff) finally found an article that said I needed absolute paths to the font rather than relative paths. so /css/fonts/font.otf worked4 -
My coolest bug fix was fixing XSS and CSRF vulnerabilities. It was the starting of my IT career and when I hear these big names, I used to think that it takes a big brain to fix them. But the solutions were rather simple. My architect told me how to solve them and I made my version of the solution and sent it for his review. He just rejected it and told some enhancements to it. The to and fro of these reviews happened for a week.
At some point I felt, why don't he f*****g do it himself. It would take him about 5 minutes.
Finally my code was approved.
Now when I turn back and think about it, I feel I learned a lot from that exercise. -
the coolest bug happend to when developing games, when i get some weird artifact with the characters
-
It could be seen as n bug, when i was busy with file exports from a query on our web system i mannaged to skrew up the bitstream encoding for excel files and with a sysout the code started beeping everytime i exported the file. Managed to fix it by changing it to csv format. So no more beeping :D
-
my maven project was working fine in windows but showing a lot of errors in Ubuntu's eclipse. so,I uploaded my to Github & I cloned it in my ubuntu only to find that I forgot to remove a jar from the classpath. I felt so silly afterwards but yeah,I think that was cool! 😋
-
I wrote a cellular automaton in university (elementary game of life). It was generating shapes but it just didn't work. It seemed like the shapes would degrade as they went until they caved into some mesh of pixels.
Turns out that when counting the number of neighbours around a cell, I was counting from 2 because of an earlier bug.
The really interesting thing about this bug though was that it made sense. There were too many people and the resources ran out, which meant the patterns that would normally survive were dying off early.
It's a bug, but not a bug. -
Was assigned a ticket to figure out why some links disappeared when you navigated back and forth through the web application... After a few hours of digging and a bunch of var_dumps later, I find a gem buried in the newer part of the codebase that basically equated to:
$active = "get active flag from DB later";
I confronted the blamed developer and was told: "That statement is truthy, it works."
Another hour or two of passing session data through the obtuse class structure of this monolithic PHP app and the wonky behavior was fixed. -
When I changed my attitude and stopped feeling like a righteous prick for fixing a few hard bugs. Fixing that one bug in my own software was the coolest and opened the most doors for me by far.
-
API changed ratelimit from 500 to 20, so only when there were not that much signups a user could be allowed to the platform and buy a ticket.
-
The comments on a community site that was live for 6 months were not working. I looked at it and there was some dreadful code that threw an exception every single time, the previous devs solution was to wrap a try/catch & return 😨
-
had a runtime error saying something tried to read an out-of-bounds element in a 2d vector; 1 day later I realize I had in a function assumed that the rows were major order instead of column as major, hence if the grid isn't square, it will read OOB at some point1
-
Worked on an iOS app that had horrendous rotation animation. Instruments to the rescue and worked at a colleague was using a resizable image with insets greater than the size of the image. Meaning when iOS tried to render the image it was doing a bunch of division by zero which was grinding the device to a halt.
-
I declared a boolean variable to be public static in my android activity and assigned a false value to it outside the onCreate.
only one method can change its value to true, so once its executed
the value of the boolean variable was set to true even on a new launch after finishing the activity.
didn't know why but it happened.
solved it by assigning a false value in the onCreate method.