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 - "abandoned tech"
-
So a few days ago I felt pretty h*ckin professional.
I'm an intern and my job was to get the last 2003 server off the racks (It's a government job, so it's a wonder we only have one 2003 server left). The problem being that the service running on that server cannot just be placed on a new OS. It's some custom engineering document server that was built in 2003 on a 1995 tech stack and it had been abandoned for so long that it was apparently lost to time with no hope of recovery.
"Please redesign the system. Use a modern tech stack. Have at it, she's your project, do as you wish."
Music to my ears.
First challenge is getting the data off the old server. It's a 1995 .mdb file, so the most recent version of Access that would be able to open it is 2010.
Option two: There's an "export" button that literally just vomits all 16,644 records into a tab-delimited text file. Since this option didn't require scavenging up an old version of Access, I wrote a Python script to just read the export file.
And something like 30% of the records were invalid. Why? Well, one of the fields allowed for newline characters. This was an issue because records were separated by newline. So any record with a field containing newline became invalid.
Although, this did not stop me. Not even close. I figured it out and fixed it in about 10 minutes. All records read into the program without issue.
Next for designing the database. My stack is MySQL and NodeJS, which my supervisors approved of. There was a lot of data that looked like it would fit into an integer, but one or two odd records would have something like "1050b" which mean that just a few items prevented me from having as slick of a database design as I wanted. I designed the tables, about 18 columns per record, mostly varchar(64).
Next challenge was putting the exported data into the database. At first I thought of doing it record by record from my python script. Connect to the MySQL server and just iterate over all the data I had. But what I ended up actually doing was generating a .sql file and running that on the server. This took a few tries thanks to a lot of inconsistencies in the data, but eventually, I got all 16k records in the new database and I had never been so happy.
The next two hours were very productive, designing a front end which was very clean. I had just enough time to design a rough prototype that works totally off ajax requests. I want to keep it that way so that other services can contact this data, as it may be useful to have an engineering data API.
Anyways, that was my win story of the week. I was handed a challenge; an old, decaying server full of important data, and despite the hitches one might expect from archaic data, I was able to rescue every byte. I will probably be presenting my prototype to the higher ups in Engineering sometime this week.
Happy Algo!8 -
I see software engineering mostly devolving to be simpler syntax, more widespread and reach more range of people, including non-tech ones.
That’s now obviously leading to more crappy javascript code, more abandoned frameworks, libraries, more shitty software and more dev rants.5 -
I've promised to do the Mozilla rant about the whole meritocracy thing a few days ago.. well, this is that. Along with some other stuff along the way. Haven't ranted for a couple of days man, shit happened! But losing 6 days that could've been spent on finishing my power supply project.. to a stupid cold, it got a little bit on my nerves, so that's what I've been working on for the time being. Hopefully I'll be able to finish it up in a couple of days.
1. COCKtail party thingy
Turns out that there's this conference in Brussels in a couple of days about the whole Article 13 copyright stuff. I've been letting a mail to the MEP's about it mature on my systems for a while now.. well, maturing or procrastinating, you be the judge 😛
Now I'm glad that I waited with that though. It's mostly a developer-centric insight into how the directive would be a horrible idea.. think AI, issues with context recognition, Tom Scott's video on Penistone and Scunthorpe etc etc. But maybe I can include some stuff from the event afterwards.
Also, if you're coming to the conference too, do let me know! Little devRant meet while we're at it, it'd be fucking great! I'll try to remember to bring my Christmas ducks, they've got these cute little Santa hats 😋
(P.S.: about the whole COCKtail, I saw the email while drunk and during registration I had to choose an email address.. I figured, feminazis are doing such a great job at going out of their way to find offense in everything, I figured that I'd make their job a little bit easier by sending a COCK bomb in my registration mail address, in the hopes that it finds its way to one of them.. evil, I know XD)
2. The whole feminazi stuff at Mozilla
So Mozilla hates meritocracy now? I've been wanting to rant about the big bad meritocracy for a while now. Thank you Mozilla for giving me an incentive to actually do it!
Meritocracy, feminazis think it's bad because it's about power relationships and discrimination, right? But what if I told you that that is exactly what makes great software great. Good code, good merit, is what's welcomed in software development.. or at least it should be. Because it's a job of fucking knowledge, experience, and quality! Also, meritocracy is a great thing because nobody cares if you're a professional developer in a suit, getting paid to work on a piece of OSS, or a homegamer neonazi who's coding shit in their underwear while wanking to child porn.. nobody fucking cares. If your code, your merit, is good, contribute ahead! Super inclusive, yet apparently bad because bad code is excluded to ensure the health of the project.
So what is the alternative to the big bad meritocracy? Inclusion (or as it's looked like in practice, more like exclusion) based on gender/sex, political orientation, things like that. But not actual fucking merit, the ability to write good code. How the fuck is politics and gender going to be any good at all to an inherently meritocratic craft?! Oh but yeah, it's great for inclusion. It's like females in tech. Artificial growth is just a matter of growth numbers and the only folks who like it are fucking HR and wanketeering cunts, and feminazis. Merit, that's what matters!! And have you ever considered that females are generally not interested in technology? Or for that matter, where's our inclusion movement for men in healthcare?! Gender equality my ass.
That's just my two cents on it of course. Meritocracy shouldn't be abandoned in tech. And even if it's just a matter of calling it something else. How the fuck is it a good idea to not call a pot a fucking pot just because someone might take offense at it?! It's meritocracy, call it fucking meritocracy!!! And while we're at it, call a master a fucking master and a slave a fucking slave!15 -
Now then... where do I begin 😐
TLDR - fuck charity
A bit of backstory first, I was in my first year of college when I started this project for this charity.
It started in December of last year, my tutor approached me and asked if I’d like a project to work on, for my portfolio and what not, I agreed as I thought it would be a great opportunity. Saying yes to that question is my biggest regret so far. Oh boy the pain it has caused me.
The projected started a few days after I agreed. The stack and stuff was already agreed upon by my tutors higher ups. The stack was Wordpress and a theme called ‘X theme’ I understand the use for Wordpress, they are a non tech savvy client, it will be easy for them to manage.
The project was to basically modernise the current site the charity had, simple task you might think... ohhhh no. We agreed upon a deadline, January of 2017 (spoiler, we didn’t make that headline). However the charity wanted change, after change, after change, after change, after fucking change. Every time I’d show them the new revision it was never right, they’d always want another change.
Once we hit the deadline I asked my tutor if we could just drop it. His higher ups said we had to keep going (I could of abandoned my tutor and left him to do it but I’m not a prick). Anyway, we are now in November of 2017, a whole fucking year later and the site has only just been handed off. A WHOLE FUCKING YEAR OF THIS MOTHER FUCKING COCK SUCKING PRICK WHO WOULDN’T TAKE NO FOR AN ANSWER.
Please may god be with me as we have to provide support for this site 😥😥
If anyone’s really curious as to which charity it is or the site. I’ll post it in the comments if you ask nicely enough6 -
TIL "monorepos" are a thing, where you just whack all your projects into one insanely large repo. And not just a niche thing either - used by some of the biggest tech companies.
I thought this was a code smell that everyone moved past when we abandoned subversion.
I understand the theoretical arguments around ensuring that everything can be compatible, can make large scale changes at once, etc. - but I don't really buy that in practice. Surely if you've got that many inter-dependencies going on that just points to the fact you've got crappy code with way too much internal coupling?!
Does anyone use this paradigm? To me it just sounds like, for the big companies, moving away from one huge repo was too much hassle. So they gave it a fancy new name and pretended it's the new "cool way to work" instead.4 -
Is there anyone in the whole of devRant working with VR, AR, speech or motion detection?
I keep thinking that those were just fads that disappeared, because I'm still to see a single lasting-success product.
It might be temporary, someone might invent motion control that actually works or an Alexa that does not suck (unless you speak English with an toothpaste-commercial accent), or a non-goofy AR set.
But if not a single dev in devRant is working with it, it does not seem likely.6