• 0 Posts
  • 906 Comments
Joined 3 years ago
cake
Cake day: June 16th, 2023

help-circle
  • Something I never see mentioned in discussions about privacy and “deleting your data”: all of these websites store information in databases, and databases are (usually) backed up on a regular schedule. This means that the databases in their entirety are written to tape or optical drive or whatever format, in a form where they could be remounted/restored in their entirety if necessary. Even if your data is “deleted” from the current active instance of a database, no company goes into all (or any) of the backed-up copies of that database to delete that same data there (and even when you delete something from the current active instance of a database, the deletions are logged in the audit tables and so are never truly “deleted”).

    So it is impossible in a practical sense to truly delete your personal data, regardless of what any law says. It’s not even possible to make it inaccessible to AI, since most likely when websites sell their data to AI companies, they are selling database backups that predate AI.








  • I used to work for Cisco … or so I’m told. What happened was that my original small-ish company (25 US employees and 100 offshore employees) was acquired by a larger company (about 1000 employees mostly in Scandinavia) that made network equipment and was a minor competitor of Cisco. My original company provided programmer consultants (like me) to various companies and was acquired by the Scandinavian company because they had written a client-customizable Skype clone app that clients were actually unable to customize to their satisfaction.

    I had a fun couple of years customizing this app using a language and framework I had no experience with, while battling with the Scandinavian programmers who hated me and everything I stood for and not only refused to help me but actively sabotaged everything I was doing. Fortunately, these custom versions were for various ISPs and cable companies who offered them as free come-ons to their customers and they were never actually used by anybody. Also I worked remote from home the entire time, which my cats appreciated.

    Then the new company was allegedly acquired by Cisco. I got a new work laptop in the mail, but never visited any kind of Cisco office in person and was never assigned any tasks whatsoever. After six months my manager called me and said that I and everyone else from the original small company was being laid off. I laughed and said of course we were. He was shocked that I was so accepting of it and surprised that I seemed to have known it was coming; apparently my co-workers didn’t think doing fucking nothing for six months was a bad sign. I did actually get a severance package for the first and only time in my career. However, it was almost to the penny equal to the value of the unemployment I could have collected, but the severance meant I wasn’t eligible for unemployment. Oh well, saved me the hassle of pretending to look for another job.

    It was pretty clear that Cisco bought my second company just to dispose of a minor competitor.

    Later I learned that my mother thought I had been working for Sysco (the food services conglomerate) the entire time. I had to go back and check my emails to see if that had actually been the case.











  • I had a coworker on one project that took input as short integer values between 0 and 32767. The values conceptually represented min and max values between 0.0 and 1.0, so one day he changed all the parameters to Float, like in hundreds of places. Since the application then wouldn’t compile, he wrapped all the calls via search-and-replace so that the integer parameters were cast to Float and then clamped between 0.0 and 1.0.

    Viola! the application then compiled. Unfortunately, this application controlled a baseball-throwing machine capable of 125 mph and he decided to test his new version (for the very first time) on an actual baseball field with Little Leaguers on it. The machine’s first throw was supposed to be a soft ground ball to the shortstop, but was instead a 125 mph knuckleball a foot above the kid’s head. This lead to the only time in my programming career when I had to physically intervene to prevent a fistfight (between the client and my manager).


  • It’s funny, I know exactly zero programmers (and this includes myself) who didn’t initially encounter SQL and decide it was clunky and stupid and try writing their own classes to write the SQL for them. I want to think it only took me a few weeks until I understand its actual value and purpose but I’m probably misremembering my past. The worst I ever saw, though, was a coworker who tried writing his own ORM. He had one project with classes named “AND.cs” and “OR.cs”. All they did was take an input string by reference and append " AND " or " OR " to it respectively. I’m sure I never before or since encountered a class that did less work.


  • Circa 2005 I created a mobile app (for the honest-to-god-that’s-what-MS-named-it “WinCE” OS that later became Windows Mobile) that allowed workers to survey power line networks in the field and indicate all the trees that needed to be trimmed or removed. The app used a local SqlCE database and the workers would upload their recorded data at the end of the day back in their hotel rooms using Remote Data Access, an MS technology which allowed SqlCE databases to “sync” with a master Sql Server database.

    It almost always worked flawlessly (100% during development, natch), except for once in a while when synced data would somehow end up in a weirdly corrupted, mangled state on the central server. Like, records that were lacking a primary key value (!), something that is basically impossible to achieve. I opened a ticket with MS support and we went back and forth on this for a few weeks until they basically said “yeah that’s fucked” and recommended that I modify my app to sync the same data multiple times to ensure it made it to the server correctly.

    I actually had substantial faith in MS products up to that point (facepalm).